NEW features of smake-1.2a29: - Print the current directory in case it a exitcode != 0 - Support for :: rules added. This is not POSIX but historic use in makefiles. - Intermediate target nodes are now fully initialized. - Smake now appends to dependency lists even when the new definition is found in a new makefile (-f option). Before, smake did overwrite such definitions. - Smake now changes the type from environment macro definitions into target definitions if the same name is later found in a Makefile. This is eg. needed if the environment contains host=foo and the Makefile contains host: host.c - If a second explicit rule for a target is found and it contains command definitions, smake now no longer overwrites the list of command line definitions with the new list but keeps the first definition. - If a second explicit rule for a target is found and it contains no command definitions, smake now no longer kills the old definitions. - Smake now warns if the dynamic macros '$*' & '$<' are used on commands for explicit Target Rules. Note that Sun Make as well as GNU make are broken in this area (*) and smake's behavor is the best a make program may do. *) Sun Make calls (even though this is an _explicit_ rule) the implicit rule check and looks for possible implicit sources. If a possible implicit source file exists, '$<' is set to that name even though it is completely unrelated to the explicit rule. If a fitting entry from .SUFFIXES: exists, '$@' is stripped to create '$*'. GNU make returns the first name from the dependency list for '$<' and strips '$@' using a fitting entry from .SUFFIXES: to create '$*'. - smake no longer tries to "make" the content from o_list of a NAME=val type object. - smake no longer has a command line macro limit of 64, the command line macros are now inside allocated memory - smake no longer has a -f makefile option limit of 32, the makefile names are now inside allocated memory WARNING: Do not use 'winzip' to extract the tar file! Winzip cannot extract symbolic links correctly. Joerg