2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-16 13:22:11 +00:00
Commit Graph

97 Commits

Author SHA1 Message Date
Vladimir Prus
c46c7fdae0 Prevent creating two equivivalent virtual targets. This, in particular,
prevents complining the same source twice with the same properties.
Also allow generators to change source names using patterns.

    * new/generators.jam (generator): Accept name patterns together with
        target types.
        (generator.generated-targets): Use name patterns. Transform generated
        targets with 'virtual-targets.register', to eliminate duplicate
        virtual targets.


[SVN r15302]
2002-09-13 12:19:42 +00:00
Vladimir Prus
556ae33347 Added generators test to the test suite.
[SVN r15269]
2002-09-11 15:56:56 +00:00
Vladimir Prus
23e47181a9 Small fix.
[SVN r15268]
2002-09-11 15:54:39 +00:00
Dave Abrahams
503f434ea3 More cygwin/NT compatibility fixes
[SVN r15267]
2002-09-11 15:40:32 +00:00
Dave Abrahams
f175af9955 Workaround for cywgin/NT build
[SVN r15263]
2002-09-11 14:37:25 +00:00
Vladimir Prus
4950f269d3 Some cleanups. At the same time, allowed several suffixes to target types
(e.g. "cpp" and "cxx").


[SVN r15262]
2002-09-11 14:18:52 +00:00
Vladimir Prus
00be3e6cc4 Added future generators test -- not automated now.
[SVN r14926]
2002-08-16 14:25:22 +00:00
Vladimir Prus
0d6ed73e1d Created a new file 'common.jam' to keep rules not specific to a toolset.
* new/targets.jam: Use 'common' instead of 'utility'.
    * test/project_test3.py: Test that 'clean' works.
    * test/svn_tree.py: Sync with upstream revision 2944. Fix a bug
       which caused empty directory to be treated as file.


[SVN r14886]
2002-08-15 09:29:49 +00:00
Vladimir Prus
0318e1da7c Propagate only propagated properties.
[SVN r14884]
2002-08-15 08:42:08 +00:00
Vladimir Prus
c4ca067b26 More checks for 'use-project' in project root module.
[SVN r14707]
2002-08-06 07:01:19 +00:00
Rene Rivera
99da6d0a8b Add call to project root use-project for testing.
[SVN r14704]
2002-08-06 04:10:55 +00:00
Vladimir Prus
0239d83337 Made names of preserved directories printed by tests.
* test/TestCmd.py (TestCmd.cleanup): Print the names of preserved
        directories. Reset self._dirlist even if directories are preserved.
    * test/BoostBuild.py (Tester.cleanup): New method.


[SVN r14489]
2002-07-17 09:16:37 +00:00
Vladimir Prus
38a1af562f Deleted project_test2 and moved the interesting tests from it to project_test4.
[SVN r14404]
2002-07-11 10:01:53 +00:00
Vladimir Prus
5f0728f3fa Renamed the 'subproject' rule to 'build-project' in UI.
[SVN r14403]
2002-07-11 09:41:29 +00:00
Vladimir Prus
5dfeb8a97f Recover project_test3 to life.
[SVN r14399]
2002-07-10 16:27:25 +00:00
Vladimir Prus
8c2434fe71 Work on issue 577833: Finish target paths.
* 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]
2002-07-10 16:05:15 +00:00
Vladimir Prus
668108dda5 Changed reporting of unability to satisfy a build request.
* 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]
2002-07-10 09:06:24 +00:00
Vladimir Prus
62670d109e Forgotten file.
[SVN r14392]
2002-07-10 08:43:11 +00:00
Vladimir Prus
5d5132bfae Implemented main target alternative selection.
* 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]
2002-07-10 08:37:31 +00:00
Vladimir Prus
6cc0cb4072 Bugfix.
[SVN r14390]
2002-07-10 07:31:57 +00:00
Vladimir Prus
8fcfdd3d94 Test system tweaks.
* 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]
2002-07-10 07:31:24 +00:00
Vladimir Prus
580bc7b910 Work around the fact that our tests change the current directory.
[SVN r14375]
2002-07-09 16:01:34 +00:00
Vladimir Prus
89944ebd21 Specifying target properties in target references now actually work.
* new/targets.jam (basic-target.generate-source): Fix regex.
    * test/project_test4.py: New test.


[SVN r14374]
2002-07-09 15:57:21 +00:00
Vladimir Prus
01273f0738 Documented project-test3.
[SVN r14371]
2002-07-09 15:05:06 +00:00
Vladimir Prus
798abcef16 Allow to use implicit features in some places.
* 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]
2002-07-09 15:03:04 +00:00
Vladimir Prus
c9e01dd049 Removed obsolete test system and tests.
[SVN r14364]
2002-07-09 09:05:59 +00:00
Vladimir Prus
27268e2ba7 Work on the issue 578618. Moved all the data out of jamfile modules.
* 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]
2002-07-09 07:56:51 +00:00
Vladimir Prus
243d78a4b0 Test that targets from projects with different project roots can be used
together.


[SVN r14349]
2002-07-08 11:35:17 +00:00
Vladimir Prus
53150ba4b7 Cleanups.
* new/targets.jam: (main-target.alternatives): Renamed from
      'main-target.variants'. Comment improvements.


[SVN r14342]
2002-07-08 10:38:54 +00:00
Vladimir Prus
d108c7d3d3 Using targets from other projects implemented.
* 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]
2002-07-08 10:26:57 +00:00
Vladimir Prus
d17b0bfea5 Restore project_test2.py to life again.
[SVN r14337]
2002-07-08 09:30:19 +00:00
Dave Abrahams
1b355b296c incorporate defaults into build-request.expand
[SVN r14311]
2002-07-05 16:17:12 +00:00
Vladimir Prus
0bfc1049ee Apply feature defaults when building.
* 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]
2002-07-05 15:09:28 +00:00
Vladimir Prus
9b2e0e8beb Unbreak project_test2.
[SVN r14284]
2002-07-02 15:07:43 +00:00
Vladimir Prus
65920dfb95 Implemented getting build request from the command line.
* 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]
2002-07-02 15:02:04 +00:00
Vladimir Prus
c9c1a714d4 Project root loading tweaks.
* 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]
2002-07-02 14:14:45 +00:00
Vladimir Prus
eb2d01be19 Fix typo in the previous commit.
[SVN r14276]
2002-07-02 11:41:17 +00:00
Vladimir Prus
804f00a488 Made project_test3 work on windows.
[SVN r14275]
2002-07-02 11:37:54 +00:00
Vladimir Prus
a607cd9ece Test system improvements w.r.t. file content matching.
* test/BoostBuild.py (Tester.read_and_strip, Tester.expect_content):
        New methods.
    * test/test_system.html: Document the above methods.


[SVN r14274]
2002-07-02 10:34:43 +00:00
Dave Abrahams
3392742d1e improved property.as-path
[SVN r14269]
2002-07-01 20:05:37 +00:00
Vladimir Prus
082c25530d Beginning of the 'make' rule.
* 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]
2002-06-27 14:00:30 +00:00
Vladimir Prus
955dad43a6 Fix a bug in the previous commit.
[SVN r14248]
2002-06-27 13:41:35 +00:00
Vladimir Prus
f0a1a314c3 Futher cleanups. Tests now pass.
* new/targets.jam: Rename 'abstract-target::local-name' to 'name'. Rename
        'abstract-target::name()' to 'abstract-target::full-name()'.
    * test/project-test2/project-test2.jam: Induces change.


[SVN r14247]
2002-06-27 11:00:05 +00:00
Vladimir Prus
b82cff2b59 Don't wait after each run of bjam. Instead, wait for time change before
making any change to filesystem by the tester classes.


[SVN r14238]
2002-06-25 14:55:27 +00:00
Dave Abrahams
56a7244dd3 Merged from RC_1_28_0
[SVN r13944]
2002-05-16 00:56:42 +00:00
Dave Abrahams
2880452c0c fix tabs and line-endings
[SVN r13774]
2002-05-09 14:24:57 +00:00
Dave Abrahams
afb0ec71a3 Restored to health on non-NT systems
[SVN r13742]
2002-05-08 11:39:23 +00:00
Vladimir Prus
90f969f273 * test/project_test1.py: Remove trailing whitespace, so that the test
work again, after 'print' fixes.


[SVN r13712]
2002-05-07 07:17:20 +00:00
Dave Abrahams
062d2f1a64 Clear environment before testing
[SVN r13696]
2002-05-06 21:09:03 +00:00
Dave Abrahams
16fad74455 bug fix
[SVN r13695]
2002-05-06 20:59:53 +00:00