1 [+] PWD/Pwd built-in added; usage:
3 [+] SORT/Sort built-in added; usage:
4 sorted = [ SORT $(list) ] ;
5 [+] COMMAND/Command built-in added; usage:
6 res = [ COMMAND shellcmd-list [[ : options ]] ];
8 exit-status, exit-code:
9 return exit code as last list element
11 don't return command output
13 don't trim command output;
14 default: trim left and right
16 don't left-trim command output
18 don't right-trim command output
19 status-first, code-first:
22 parse output as list (break on whitespaces -- <= ' ')
24 don't break on spaces (' ') when 'parse-output' activated
26 don't break on tabs ('\t') when 'parse-output' activated
27 no-nl-break, no-lf-break:
28 don't break on LF ('\n') when 'parse-output' activated
30 don't break on CR ('\r') when 'parse-output' activated
31 [+] COMMAND/Command built-in synthax changed; new synthax:
32 res = [ COMMAND shellcmd-list [[ : options ]] ];
33 new options (added to common description)
34 [+] COMMAND/Command built-in now can parse command output
37 # VAR = [ RemoveOpt options-to-remove : options-list ] ;
38 # remove options from list
39 [+] rule RemoveOptWild
40 # VAR = [ RemoveOpt regexp-options-to-remove : options-list ] ;
41 # remove options from list with egrep-like regexps
44 # set compile flags for profile; works only for gcc/g++
46 # none, default: don't change
47 # empty: remove optimisation flags
48 # speed: optimise for speed and pIII
49 # size: optimise for size
50 # debug: don't optimize, add debug info
52 [+] rule ObjectNoAliasing
53 # ObjectNoAliasing filelist ;
54 # turn off aliasing optimization for specified files
55 # works only for gcc/g++
57 [*] MainC++ wasn't working properly
58 [*] XXXC++ variables changed to XXXC++ZZZ
59 [+] LOCATE_BIN and ALL_LOCATE_BIN variables added (for Main and MainC++ targets)
60 so now one can do something like this:
61 ALL_LOCATE_TARGET = $(TOP)/build/obj ;
62 ALL_LOCATE_BIN = $(TOP)/build ;
63 and have a nice bunch of *.o files in build/obj and binary in build/
64 [+] new rule: lib-config
65 call $(1) --cflags and $(1) --libs (many libs provides such configurators)
66 add necessary flags to compiler and linker vars
67 return "tan" (non-empty string) if library is present
68 if $(2) != "" -- don't add flags, just check
69 [+] PATH_SEPARATOR variable added
70 [*] build process changed (.o and .a moved to subdir)
71 [+] allow []...] and [^]...] in globs (so ranges can include ']')
72 [+] :Q now quotes all special shell chars, not only '\'
73 [*] some regexprs was broken by tab expansion; fixed
74 [*] OPTIMC++ renamed to C++OPTIM
76 [+] LOCATE_LIB, LOCATE_LIBSO and ALL_LOCATE_LIB[SO] variables added (for Library and SharedLibrary targets)
77 so now one can do something like this:
78 ALL_LOCATE_TARGET = $(TOP)/build/obj ;
79 ALL_LOCATE_LIB = $(TOP)/build/liba ;
80 ALL_LOCATE_LIBSO = $(TOP)/build/libso ;
81 ALL_LOCATE_BIN = $(TOP)/build ;
82 and have a nice bunch of files in various dirs.
84 [*] JAMCMDARGS now set before parsing Jamfiles (and what sense was to set it after? %-)
85 [+] JAM_TARGETS variable added; scripts are free to modify it, so we can easy define targets from whithin