* new/property.jam (make): New rule, constructs property set from
what the user gives. Handles implicit features.
* new/project.jam, new/targets.jam: Use 'property.make'.
[SVN r14370]
* jam_src/Jamfile, jam_src/boost-jam.spec, jam_src/patchlevel.h:
Updated version number to 3.1.1.
* jam_src/jam.c: Made JAM_VERSION three-element string.
* bootstrap.jam: When JAM_VERSION is 3.1.1 or more, call UPDATE
explicitly on all non-option element in the command line.
[SVN r14363]
* new/project.jam (project-attributes): New class to keep all the
project related data. (attritutes, attribute): New rules to access
the project attributes. (target): New rule to access the project
target for a jamfile module.
(initialize): Store attribute in project-attributes instance.
(project): Moved to jamfile module.
(assign-option): Moved with modifications to project-attributes.get.
* new/targets.jam, new/project-root.jam, new/make.jam,
new/build-system.jam: Induced changes.
[SVN r14362]
* new/project.jam (lookup): Bugfixes. (find-target): Attempt to load
project specified by project id.
Project module rules:
project: Allow empty id.
use-project: New rule.
* new/targets.jam: (basic-target.generate-source): Correct a bug in
separating target id from extra properties.
[SVN r14341]
* new/os.path.jam (join-imp): Bugfixes. (all-parents): Simplified.
(glob-in-parents): New rule.
* new/project-root.jam (load): Use 'glob-in-parent' instread of
'find-to-root', so that "project-root.load ." always work.
* new/project.jam (find-jamfile): Make use of the 'glob-in-parents'
rule.
[SVN r14339]
* new/build-request.jam (expand-with-defaults): New rule
* new/build-system.jam, new/targets.jam: Use 'expand-with-defaults' instead
of 'expand'.
* new/builtin.jam: Define new feature 'threading'.
* test/project_test3.py: Test that feature defaults are applied.
[SVN r14307]
==30721== 174984 bytes in 14582 blocks are definitely lost in loss record 20 of 25
==30721== at 0x40043BDB: malloc (vg_clientfuncs.c:100)
==30721== by 0x804E02A: addsettings (rules.c:235)
==30721== by 0x804A2AF: collect_arguments (compile.c:652)
==30721== by 0x804A759: evaluate_rule (compile.c:864)
==30721== by 0x804A072: compile_rule (compile.c:563)
==30721== by 0x804DDBC: parse_evaluate (parse.c:138)
==30721== by 0x80497FD: compile_append (compile.c:124)
[SVN r14298]
* new/build-request.jam (from-command-line): New rule.
* new/build-system.jam: Get build request from the command line,
expand it and pass to 'generate' rules.
* new/targets.jam: Use targets's properties when computing path.
* test/project_test3.py: Test the above changes.
[SVN r14283]
* new/project-root.jam (load): Really produce an error message when
project root file is not found.
* test/project_test3.py: Test for the error reporting.
[SVN r14280]
* new/targets.jam: Check for duplicate 'basic-target::generate()' calls.
Use better logic to tell is source is another main target or file.
(project-target::has-main-target): New rule.
* new/project.jam (lookup): Fixes. (find-target): Implemented.
* new/make.jam: New file, defines the 'make' rule and associated target
class.
* new/build-system.jam: Import 'make'. Generate virtual targets and
actualize them.
* new/utility.jam: Added "MkDir" rule and actions.
* test/project_test3.py: New test.
[SVN r14249]