* bjam; bump to version 3.1.12
* bjam; make it possible to build in MinGW/MSYS shell
* bjam; move profile code to debug.h/c to make it available for use everywhere
* bjam; cache all filesystem query operations, Unix and Windows only, include PWD and scanning
* bjam; add memory profile info, and sprinkle throught code
* bbv2; rewrite some while() loops into for() loops to reduce time and memory
* bbv2; keep a single instance counter instead of one per type to reduce memory use
* bjam+bbv2; change NORMALIZE_PATH builtin to join path parts to reduce memory use
[SVN r31177]
* jam_src/modules.c: (import_module, imported_modules): New functions.
* jam_src/builtins.c (builtin_import_module, builtin_imported_modules):
Just call the above.
* new/class.jam: Add some extra tests.
[SVN r19424]
virtual-target.jam.
- Added the missing explicit imports, now that we don't dump
everything into the global module with qualification
- stopped using the feature-space hack for temporary testing states of
the feature module. Instead we move its global variable definitions
to a temporary module.
- the way feature.action was invoking the rule it was being passed was
evil. Now you pass (even local) rules without qualification and
they are invoked in the source module context.
- module __test__ rules are always executed in a separate module, so
that their import dependencies can be separated from those of the
module being tested.
- better reporting of circular module-loading dependencies
implemented.
- minor changes:
property-set.jam: moved .empty initialization to avert circular
load dependency .
symlink.jam: fixed global variable naming.
[SVN r18407]
* class.jam; Use new "::" syntax.
* doc.jam; Change comment parsing to keep leading whitespaces.
* doc.jam; Fix problem when a rule's argument has the same name as an inner rule.
* print.jam; Implement ReST syntax of "::" to indicate preformatted text. All forms of the ReST syntax are supported, and the additional form of a preformated paragraph with the first line as "::".
[SVN r16244]
* virtual-target.jam (virtual-target.actualize): Accept
'scanner' parameter and create different actual targets
for different values of that parameter.
(virtual-target.includes): Remove.
(binding): New rule
(remember-binding): New rule.
* type.jam (set-scanner): New rule. (get-scanner): New rule.
* scanner.jam: New file.
* class.jam (__init__): Define __name__ in class scopes.
* builtin.jam (c-scanner): New scanner class, associated with CPP
files.
[SVN r15644]
* new/class.jam: Import all rules from the 'class' module into a class
instance module, not into a class module.
* new/targets.jam: Remove explicit import from 'class' in ctor.
[SVN r13829]