In this twelfth release of Curie, I've gone through all the aging sources and headers and updated the documentation format to be in line with the format I've been using for libefgy. Bugs in the makefiles have also been fixed, undocumented functions have been documented and some of the functions that were never implemented but exposed in the headers have been removed.
One new and noteworthy feature of the makefiles is that it is now possible to compile Curie and a Curie-based project, e.g. Duat, in the same context. To do so, simply check out a project like Duat as a subdirectory of the Curie repository, then use the 'make' command as usual. This is quite useful when trying to cross-compile the library and code depending on it, or whenever you just don't want to install the library for some reason.
Seriously, though, this release has been 4 years in the making - and about 8 weeks of that went into actual coding as opposed to work on other projects. Either way, it's about time to present the latest batch of changes to the world at large.
Libcurie can now handle CPIO files - or CPIO archive streams. Why would I waste my time implementing CPIO instead of using Tar? Well, the format is older and binary, two qualities that I really like. It's also much, much MUCH easier to parse in a stream.
There's probably other changes, too. It's been 4 years and I used to have lots of plans...
Sometimes things just... bitrust. It's a beautiful and natural process, that time itself seems to stir quite eagerly. For this reason I had to cut things that nobody used, or liked, or even expected from a high-/lowlevel C library that can't make up its mind about how high its level is:
* libcurie-math is gone - most of the effort that went into that went into libefgy instead: https://github.com/jyujin/libefgy * libcurie++ is gone - as much as it pains me to say this, C++ probably isn't too useful in tight, lowlevel circumstances * icemake has been replaced by a good ol' makefile. Yep, that happened.
I've no idea where things will go from here, but after seeing that the old code has been on hold for 4-ish years now, something had to be done; so I figured I'd try to get the repository up to speed and just release it the way it is right now.
The master repository is at http://git.becquerel.org/kyuba/curie.git -- a Github mirror is provided at https://github.com/jyujin/curie - if you need tarballs or zip files, check out the release's page on Github: https://github.com/jyujin/curie/releases/tag/release-11
Documentation is available at http://ef.gy/documentation/curie