/* $Id: ChangeLog 855 2007-02-26 21:59:05Z bird $ */ The change log has been discontinued. check the trac timeline instead: http://svn.netlabs.org/kbuild/timeline 2006-12-03: - kBuild/bin/x86.win32: o Rebuild and cleaned out dlls that mv and sed required. - sed: o Fixed parsing of single quoted arguments on windows. 2006-12-02: - kmk: o Fixed bugs dealing with the order SDK properties was applied to sources. 2006-12-01: - kBuild: o Added support for compiling resource files. o Fixed bug causing object files take from the SOURCES to be cleaned up. 2006-11-25: - kmk, kBuild: o Added mv as builtin command. o Added cat as builtin command. o Added GNU sed version 4.1.5 and ported it to MSC. o Added rmdir as builtin and external command. o Made mkdir not modify the argument strings. o Made mkdir deal properly with DOS slashes on OS/2 and Windows. 2006-11-24: - kBuild/bin/x86.win32/kmk.exe, kBuild/bin/x86.linux/kmk: o Rebuilt with current code. - kBuild/footer.kmk: o Fixed some issues with SDKS and linking. - kmk: o Fixed bug in the sdk walking in kbuild_collect_source_prop. o Added --pretty-command-printing for simplifying makefile debugging. 2006-11-23: - dist/portage: o Hacked together two ebuilds for the Gentoo Portage. - Config.kmk, Makefile.kmk: o #6: Hacking *nix install build for Gentoo. - src/gmake/Makefile.kmk, src/lib/Makefile: o Always include header.kmk when testing BUILD_TARGET*. - kBuild/header.kmk: o BUILD_TYPE defaults to 'release'. - kBuild/tools/GCC*.kmk: o Cleaned up the -s and -g usage. - kBuild/bin/x86.win32, kBuild/bin/x86.linux: o Rebuilt with current code. - kBuild/footer.kmk: o #3: Clean link output files. - kBuild/header.kmk, kmk: o #6: Did code changes for unix installation. Will do install goals when creating the gentoo ebuild. o #5: Proper versioning. (#5) - kmk: o Support SDK.$(BUILD_TARGET_ARCH) too (only bug). o Fixed a bug when gather SDKs. 2006-09-28: - kBuild/header.kmk, kBuild/env.sh, kBuild/tools/GCC4MACH.kmk, kBuild/bin/x86.darwin/, src/gmake, Config.kmk: o Initial Mac OS X / Darwin bootstrapping. 2006-09-23: - kBuild/footer.kmk: o Recursive template inheritance. - kBuild/header.kmk, kBuild/footer.kmk: o Removed some checks for features which are present in both gmake 3.81 and kmk. Anyone trying to bootstrap kBuild will have to build gmake 3.81 first. - Config.kmk, src/gmake, src/lib, src/kDepPre, src/kDepIDB: o Allow all kinds of ways of saying Windows in BUILD_TARGET. - kBuild/bin/x86.win32/: o Rebuilt kmk.exe. - kBuild/bin/x86.os2/: o Added kDepPre.exe and kDepIDB.exe. o Rebuilt kmk.exe and kmk_gmake.exe. - src/gmake: o Update KMK_FEATURES to include the optimizations from earlier this week. o Regenerated config.h.os2 and make adjustments to make it all build quietly on OS/2. - kBuild/envos2.cmd: o Environment script (REXX) for OS/2. 2006-09-19: - kBuild/bin/x86.win32/: o Rebuilt kmk.exe and kmk_gmake.exe. - src/gmake: o Fixed some optimization bugs in kbuild.c. 2006-09-18: - kBuild/gmake: o Don't send put j1 in MAKEFLAGS on windows, somehow that doesn't work. o Fixed some variable name typos in kbuild.c. o Fixed missing expansion in kbuild_lookup_variable. o A real attempt at fixing the double quoting problem on windows. ash seems to want a space between a double quote enclosing the last argument on the commandline and the double quote enclosing the commandline (the -c argument). o Fixed a newline escape problem when using batch_mode_shell on windows with kmk_ash. 2006-09-17: - kBuild/gmake: o Optimization summary: libc from ~21 seconds -> 7-8 seconds (os2/nt). o Optimized appending new stuff to variables. (major win) o Optimized variable memory value allocation avoiding a bunch of unnecessary copying and allocating. o Added kBuild specific functions for speeding up source processing. o Fixed assertion in w32_fixcase when shell doesn't have a full path and some other case. 2006-09-16: - kBuild/header.kmk: o Turn off command dependencies when using vanilla GNU Make. - kBuild/footer.kmk: o Made up my mind about the command depency blocker variables; NO_LINK_CMDS_DEPS and NO_COMPILE_CMDS_DEPS. - src/gmake: o Added kmk_gmake which is (almost) vanilla GNU Make. o kmk_ash wants batch files on windows or the double quotes will get screwed up. o Make sure kmk_builtin commands don't get batch files and odd weird stuff. o Cleaning up the modifications. Changes are now either configurable or marked, and dead stuff has been removed (dll shell). 2006-09-15: - kBuild/bin/x86.win32/kmk.exe: o Built new code. - kBuild/header.kmk: o DIRDEP is now the same on all platforms (fixed with 3.81 merge). - kBuild/bin/x86.linux/kmk: o Built new code on system360. - src/gmake: o Some parallel job fixes. o Regenerated config.h.linux on system360. o Fixed stat("dir/", &st) on windows and some warnings. o Merge with GNU Make v3.81 (vendor/gnumake/2005-05-16 -> vendor/gnumake/current). 2006-03-26: - kBuild/bin/x86.os2/: o Rebuilt the OS/2 tools. - src/gmake/variable.c, src/gmake/variable.h, src/gmake/make.h: o Attempt at speeding up performance on OS/2. - src/gmake/kmkbuiltin/rm.c: o OS/2 wants -R. - src/gmake/read.c: o Don't call glob() unless there is a wildcard pattern in the name. This speed things up a bit, at least on FreeBSD and especially on OS/2. - Config.kmk: o Added -pg for profile builds on OS/2. 2006-02-22: bird - kBuild/tools/MINGW32.kmk: o Corrected dependencies to match those generated by GCC3. 2006-02-09: bird - kBuild/tools/YASM.kmk: o Initial config. 2006-01-20: bird - kBuild/footer.kmk, kBuild/header.kmk: o Check for PACKING.$(BUILD_TARGET) as well. Added a quick evaluation of PACKING[.*] in the footer. 2006-01-18: bird - kBuild/footer.kmk, kBuild/header.kmk: o Packing pass change - uses PACKING var instead of packing::. - kBuild/footer.kmk: o Added mode,uid and gid to file INSTALLS. o Implemented template inheritance (_EXTENDS). 2006-01-14: bird - kBuild/env.sh: o Corrected the tool list. - kBuild/bin/x86.linux/: o Rebuild with current tree and static linage. (rhel3) - kBuild/tools/VCC70.kmk: o Enabled new dependcies. o Must use PDB macro to get the case correct on the idb file passed to kDepIDB. - src/lib/kDep.c: o Fixed missing slash fixing o Changed kDepPre error prefix to kDep. 2006-01-12: bird - kBuild/tools/VCC70.kmk: o Use DEP_IDB on win32. - kBuild/header.kmk: o Added DEP_IDB and DEP_IDB_EXT. - kBuild/bin/x86.win32/: o Rebuild with current source, adding kDepIDB. - src/kDepIDB/kDepIDB.c: o Initial coding. (This is a VC++ dependency extractor.) - src/kDepPre/kDepPre.c, src/lib/kDep.h, src/lib/kDep.c, Config.kmk: o Created a library for the dep*() functions. o Removed the IDB hacks from kDepPre. 2006-01-11: bird - kBuild/tools/vcc70.kmk: o Prepared for new IDB based dependencies.s - kBuild/footer.kmk: o Parallel build fixing. - src/gmake/job.c: o Fixed bad parallel bug. - src/gmake/main.c: o Enabled multiple jobs for recursive kmk processes on win32 despite the problems. - src/kDepPre/kDepPre.c: o Added extremely rough support for VC++ IDB files (/FD + /Fd). 2005-12-18: bird - kBuild/*.kmk, kBuild/tools/*.kmk: o Finally I've got around to implement command dependencies. o Use $(INSTALL) instead of $(RM) + $(CP). o More install features. - kBuild/bin/x86.[linux|win32|os2]/: o Rebuilt all the utils. o Renamed all unix utilites so they start with a kmk_ prefix and don't override any local unix utils. - src/gmake/kmkbuiltin/*, src/gmake/kmkbuiltin.c, src/gmake/kmkbuiltin.h, src/gmake/variables.c, src/gmake/Makefile.kmk: o Ported all the builtins to windows - now rebuild works again! o Fixed a few error case bugs in the builtins. o Disabled the -R and -r options for rm and cp. o Added kmk_install / kmk_builtin_install from BSD. 2005-12-13: bird - kBuild/bin/x86.linux/kmk, kBuild/bin/x86.linux/kmk_append, kBuild/bin/x86.linux/kmk_cp, kBuild/bin/x86.linux/kmk_echo, kBuild/bin/x86.linux/kmk_mkdir, kBuild/bin/x86.linux/kmk_rm: o Rebuild with current sources. - src/gmake/Makefile: o Prefixed external tools with kmk_. 2005-12-12: bird - kBuild/footer.kmk, kBuild/header.kmk: o Generic pass stuff. o Enabled and weeded out the new target install method. o Added separate install target type. o Added separate installs pass. o Fixed those $$$$(PATH_) problems. o General clean up removing lot's of duplicate stuff. - kBuild/tools/ALP.kmk, kBuild/tools/GCC.kmk, kBuild/tools/GCC3.kmk, kBuild/tools/GCC3OMF.kmk, kBuild/tools/MINGW32.kmk, kBuild/tools/NASM.kmk, kBuild/tools/VCC70.kmk: o Adjusted to new parameters for the link rules. o List all output files as targets for the rules. - kBuild/config.kmk, kBuild/cfg/x86.win32.va2003.kmk: o Removed early attempts which isn't used anylonger. - src/gmake/remake.c, src/gmake/commands.c, src/gmake/commands.h: o Fixed not parallel assertion on targets with no commands. 2005-12-11: bird - src/gmake/kmkbuiltin/append.c, src/gmake/kmkbuiltin.h, src/gmake/kmkbuiltin.c, src/gmake/Makefile.kmk, src/gmake/variables.c: o New command 'append' which appends text to a file, creating the file if necessary. o KMK_BUILTIN is listing the supported commands (used to be "1"). - src/gmake/kmkbuiltin/cp_utils.c: o Add O_BINARY to all open calls. - src/gmake/function.c: o Fixed abspath on OS/2. - src/kDepPre/kDepPre.c: o Killed some warnings and made it build on OS/2 and FreeBSD. 2005-11-07: bird - kBuild/tools/VCC70.kmk: o Use the new -s option for dependencies. - src/kDepPre/kDepPre.c, kBuild/bin/x86.linux/kDepPre, kBuild/bin/x86.win32/kDepPre.exe: o Added new option -s for generating stub dependencies just like -Wp,-MP. - kBuild/tools/GCC3.kmk, kBuild/tools/GCC3OMF.kmk: o Added -Wp,-MP to compile jobs for better dependencies. 2005-10-31: bird - kBuild/tools/VCC70.kmk: o Use the -f option with kDepPre to make sure nt/wine/cl doesn't screw up the path casing anywhere. - kBuild/bin/x86.linux/kDepPre, kBuild/bin/x86.win32/kDepPre.exe: o Rebuild with latest code. 2005-10-30: bird - kBuild/env.sh: o amd64. o kDepCCxx -> kDepPre. Ash. - kBuild/bin/amd64.linux/kDepPre, src/kDepPre/kDepPre.c: o Fix case option - need it on unix for cl.exe with wine. 2005-10-29: bird - kBuild/bin/amd64.linux/kDepPre, src/kDepPre/kDepPre.c: o Strip drive letters on non-PC OSes. 2005-10-28: bird - kBuild/footer.h: o Fixed a couple of defaults so it all works right on amd64. - kBuild/bin/amd64.linux/: o Added binaries. ash is 32-bit! 2005-10-14: bird - src/kDepPre/kDepPre.c, kBuild/bin/x86.win32/kDepPre.exe: o Corrected bug in line skipping where two lines would be skipped. o Corrected slashes on win32. 2005-10-03: bird - src/kDepPre/kDepPre.c, kBuild/bin/x86.win32/kDepPre.exe: o Fixed stupid stupid bug in the win32 case correcting code. Rebuilt the win32 binary. 2005-08-11: bird - kBuild/footer.kmk: o Enh. the _OBJECT_BASE hack for stripping of source paths within the project. - kBuild/tools/VCC70.kmk: o Use $(tolower ) to construct the right .pdb names for cleanup. - src/gmake/read.c: o print target name 'target pattern' errors. - kBuild/header.kmk: o Use $(abspath ). - src/gmake/variable.c: o Added KMK_FEATURES which indicates what's present+working and what's not. - src/gmake/w32/pathstuff.c, src/kDepPre/kDepPre.c, src/kDepPre/Makefile.kmk: o Fixed casing paths on win32. - src/gmake/function.c, src/gmake/Makefile.kmk: o Fixed $(abspath ) on Win32 and OS/2. o Added $(tolower ) and $(toupper ). 2005-06-16: bird - ALL: o Bootstrap and ported to FreeBSD 5.x on AMD64. 2005-05-06: bird - ALL: o Working on the build system of the build system. :-) o Ported the kmkbuiltin stuff to OS/2 as a prep to the win32 effort. [missing a lot!] 2002-10-15: bird - ALL: o Created a somewhat rought directory structure. - src/fastdep: o Imported current sources from ODIN32. - src/kmk: o Imported current sources from the freebsd tree. 2002-10-15: ktk - ALL: Create repository.