Changes between Version 1 and Version 2 of kmk
- Timestamp:
- Nov 23, 2006, 10:19:46 PM (18 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
kmk
v1 v2 1 {{{kmk}}} is the {{{make}}} program in [wiki:kBuild kBuild], e.g. it is what you invoke from the commandline or editor to perform the actual build. {{{kmk}}} is based on the latest [wiki: GNUmake GNU make] release, currently 3.81, but provides a bunch of additional features required by the [wiki:kBuild kBuild] makefile scripts.1 {{{kmk}}} is the {{{make}}} program in [wiki:kBuild kBuild], e.g. it is what you invoke from the commandline or editor to perform the actual build. {{{kmk}}} is based on the latest [wiki:'GNU make'] release, currently 3.81, but provides a bunch of additional features required by the [wiki:kBuild kBuild] makefile scripts. 2 2 3 Why not use vanilla [wiki: GNUmake GNU make]? There are several reasons:4 * When [wiki:kBuild kBuild] was reborn using [wiki: GNUmake GNU make] (an earlier incarnation of the project was based on FreeBSD make) the 3.81 release was about 2 years ahead. [wiki:kBuild kBuild] relies on many features introduced after 3.80. Requiring 3.81 to be installed still isn't a viable option.5 * Be able to add new features without having trouble getting them accepted or having to wait 3-4 years until the next [wiki: GNUmake GNU make] version is released and makes it out to all the corners of the world.3 Why not use vanilla [wiki:'GNU make']? There are several reasons: 4 * When [wiki:kBuild kBuild] was reborn using [wiki:'GNU make'] (an earlier incarnation of the project was based on FreeBSD make) the 3.81 release was about 2 years ahead. [wiki:kBuild kBuild] relies on many features introduced after 3.80. Requiring 3.81 to be installed still isn't a viable option. 5 * Be able to add new features without having trouble getting them accepted or having to wait 3-4 years until the next [wiki:'GNU make'] version is released and makes it out to all the corners of the world. 6 6 * Be able to fix bugs fast, same reasoning as above. 7 * Not having to require a specific, perhaps even unreleased, [wiki: GNUmake GNU make] version.8 * Not having to deal with missing features and bugs specific to various [wiki: GNUmake GNU make] versions and ports.7 * Not having to require a specific, perhaps even unreleased, [wiki:'GNU make'] version. 8 * Not having to deal with missing features and bugs specific to various [wiki:'GNU make'] versions and ports. 9 9 * Finally, because we can. :-) 10 10 11 The current {{{kmk}}} code contains the following changes from [wiki: GNUmake GNU make]:11 The current {{{kmk}}} code contains the following changes from [wiki:'GNU make']: 12 12 * It has some extra predefined variables: 13 13 * {{{KMK_VERSION}}}