* new/targets.jam (main-target.generate) Add extra path component to
virtual target which free properties are not equal to project's.
(basic-target.generate): Pass refined properties to 'construct'.
(virtual-target.extra-path): New rule.
(virtual-target.actualize): Make use of extra path.
* new/property.jam (take-free): New rule.
[SVN r14396]
* new/target.jam (main-target.generate): Give a more detailed error
message when no alternative is found. (basic-target.generate):
Don't exit with error when requirements can't be satisfied. Just
return an error string.
[SVN r14393]
* new/targets.jam (main-target.generate): Select the alternative
based on the list of non-free requirements.
* new/property.jam (remove-free): New rule, removes free property from
a property set.
[SVN r14391]
* test/TestCmd.py: Cause the names of preserved directories to be
printed.
* test/test_system.html: Document "PRESERVE*" environmental variables
and "pass_test"/"fail_test" methods.
[SVN r14389]
* 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]
* 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/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]
* 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]
* new/targets.jam: Considerably changed.
* new/project.jam: Projects now return project targets via 'target' rule.
Requirements are inherited. Renames 'subinclude(s)' to 'subproject(s)'.
(find-jamfile): Rewritten, which fixes some bugs.
* new/project-root/jam: (print): Sort projects first by they id, which
makes order more predictable.
* test/project-test1.py: Also run test from the 'project-test1' dir.
* test/project-test2.py: New test.
[SVN r13681]
* test/BoostBuild.py (Tester.__init__): New paremeter 'arguments'. Add
BOOST_BUILD_PATH to the command line.
(Tester.set_tree): Make files writable after copying.
(Tester.copy): New method
(Test.read): Open file in read mode.
* test/test_system.html: Documented the above changes. Small cleanups.
* new/test.jam: Remove bootstrap code.
* new/readme.txt: Changed command line for running unit tests.
[SVN r13678]
* property.jam (refine-properties): New rule.
* feature.jam: New feature attribute 'link-incompatible'.
* test.jam: Test the property module.
[SVN r13640]