From: Owen Shepherd Date: Sun, 12 Aug 2012 18:47:31 +0000 (+0100) Subject: * New feature check macro system. See _PDCLIB_aux.h for details X-Git-Url: https://pd.if.org/git/?a=commitdiff_plain;h=1cc4363093c919f79eafac209bb5c41548d3f88f;hp=1cc4363093c919f79eafac209bb5c41548d3f88f;p=pdclib * 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 * changed to use new feature test system for strdup + strndup * add strndup implementation * 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. ---