* New feature check macro system. See _PDCLIB_aux.h for details
* remove "#pragma weak" from strdup.c. It's nonportable and shouldn't be
necessary
* <string.h> changed to use new feature test system for strdup + strndup
* add strndup implementation
* <assert.h> more reliable handling of error messages
Build system:
* The CoreMake system is dead. It proved to be unscalable
* The old Make based system is gone, also
* We now use a Jam based system (requires the latest FT_Jam). Reasons:
* Make is hard to scale in a non-recursive manner. The interactions get
intractably complex
* The build system depended upon GNU Make. GNU Make's license (the GPLv3) is
about as diametrically opposed to PDCLib's CC0 as you can get without being
closed source
* Jam is actually more portable. In particular, it doesn't require a Unix
emulation layer (unlike GMake)
* The Jam system, as is, can be incorporated into the build system of a larger
project.
Why Jam?
* GNU make is too low level. It also incorporates too much magic: it can spend
significant ammounts of time trying to update source files from SCCS and RCS
files for example (a feature it is doubtful somebody has used in the last
decade)
* Systems like CMake are too high level: CMake is very difficult to use in a
cross compilation environment.
* Systems like Scons and Waf pose similar issues. Scons is also incredibly
slow.