Skip to content

Releases: TheMilkies/Cate

Cate v2.6

12 Nov 09:48
Compare
Choose a tag to compare

More automation

Cate can now automatically

  1. set a library's out-name.
  2. set include path, if it's empty and a directory named "include" is present.
  3. recurse over include paths (don't ask).

Fixes

  • Single file projects can now be force-rebuilt.

Cate v2.5

01 Nov 09:15
Compare
Choose a tag to compare

What's new?

Syntax

You are no longer required to write the object's name

Project proj;
.files = {"main.c"};
.build();

Include can now be recursed

proj.incs = recursive("include/");

Bug fixes:

  • You no longer have to add -L to local libraries.

Cate 2.4: Subrecursion

23 Oct 13:25
Compare
Choose a tag to compare

Finally, Subrecursion has been added and Cate no longer segfaults when property is invalid.

Cate V2.3

16 Oct 08:43
Compare
Choose a tag to compare

Not much has changed, read readme.md

Cate v2.2

09 Oct 14:11
Compare
Choose a tag to compare

Smolization!

In this Cate update you get properties called smol and threading!

threading adds -pthread to your flags, it doesn't magically threadize your code.
smol runs a command after build that makes the built executable (sometimes up to 60%) smaller with minimal to no performance loss.

Cate can now build one-file projects more efficiently!

Cate v2.1

30 Sep 10:37
Compare
Choose a tag to compare

Linking

Now you can tell Cate if to link a project or not

Project proj;
proj.link = false;
proj.files = recursive("src/*,c");
proj.build();

Cate v2.0: Hopefully the last update.

24 Sep 23:07
Compare
Choose a tag to compare

Cate has finally been completed. it still has minor bugs but we don't really feel like fixing them

New features:

  • clear() method for objects
  • -f flag to forcefully rebuild a project or library
  • -l flag to list catefiles in directory, or catefiles directory specified in .catel

Improvements

  • better errors
  • better highlighting in errors
  • more meaningful errors
  • default files (build.cate, cate/build.cate) that don't require catel
  • more ways to setup include_paths and build_directory
  • default compiler is cc now!

Catel

Catel finally has consistent namings:
old:

dir cate
default build.cate

new:

dir cate
def build.cate
  • Catel now defaults to dir cate, you can just def TARGET in your Catel file now

The end (hopefully)

It's been fun! We just finished Cate and now have the best build system for us. We'll thankfully never have to touch Makefiles and CMakeLists.txts ever again!

We can not look up:

  • "cmake templates"
  • "makefile recursive syntax example that works"
  • "cmake syntax error with no info"
    And actually be productive!

Cate will only be updated if we find a new issue we haven't encountered in the past month of using it daily.

Cate v1.3.0

04 Sep 22:55
Compare
Choose a tag to compare

Major minor changes

By using Cate we noticed a few things that weren't that great. Well we changed them!

  • You can now add a declared library to a project with this syntax: p.libs = {example_library};.
  • Default compiler is now cc,
  • Added the -h flag for help,
  • Added Catel, a simple file format for specifying your catefiles directory and default catefile.

Cate v1.2.10

03 Sep 10:14
Compare
Choose a tag to compare

Minor bug fix

  • If you use the -t flag with a non-integer value, it will not crash anymore!
  • Better error for when an integer is missing in the -t flag

Cate is now generally a bit faster! there is only a minor speed difference between commands without the .cate ending, which is a massive improvement

Cate v1.2.9

30 Aug 17:12
Compare
Choose a tag to compare

Minor changes to Cate's inner workings

Cate is a bit slower now but it can

  • build can now create folders it needs
    that's it.