2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-17 01:32:12 +00:00
Commit Graph

162 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
46aa5c661a Forgotten file.
[SVN r15301]
2002-09-13 12:16:17 +00:00
Dave Abrahams
b84699b2d1 Added commentary
[SVN r15287]
2002-09-13 01:50:09 +00:00
Rene Rivera
c494029fa4 Implement hiding of local rules by default. Use --help-enable=show-locals to show them regardless.
[SVN r15280]
2002-09-12 22:26:56 +00:00
Rene Rivera
2b045385ba Fix for when varaibles are edclared with an empty value.
[SVN r15279]
2002-09-12 22:00:23 +00:00
Vladimir Prus
b58ad30fe2 Output generator debugging messages only if there's
"--debug-generators" option in the command line.


[SVN r15265]
2002-09-11 15:25:18 +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
835b82eeae Correction to the previous commit.
[SVN r14925]
2002-08-16 14:18:58 +00:00
Vladimir Prus
c3d228af10 Wholesale commit of generators.
[SVN r14924]
2002-08-16 14:13:15 +00:00
Vladimir Prus
9e0161be21 New rules.
* new/assert.jam (in, not-in): New rules.
    * new/class.jam (is-instance): New rule.
    * new/utility.jam (str, equal, less): New rules.
    * new/container.jam
        (container.str, container.sort, container.equal): New rules.


[SVN r14923]
2002-08-16 13:58:23 +00:00
Vladimir Prus
5102991ec2 New rules.
* new/sequence.jam (max-element): New rule.
        (select-highest-ranked): New rule.
    * new/numers.jam (__test__): Temporary disable all try/catch, since
        errors.jam can't handle recursive try/catch yet, and loads
        sequence, which in turns load numbers, in "catch" implementation.


[SVN r14922]
2002-08-16 13:50:17 +00:00
Vladimir Prus
9e8f904cdf Added new transformation.
[SVN r14921]
2002-08-16 13:25:26 +00:00
Vladimir Prus
07c5b1928f Bugfix.
* new/numbers.jam (less): Now really accept zero.


[SVN r14895]
2002-08-15 16:13:28 +00:00
Vladimir Prus
32f895a1be Facilitate new main target rules creation.
* new/targets.jam (make-target-alternative): New rule, which handles
        applying project requirements and default build, when needed.
    * new/make.jam (make): Use the above rule.


[SVN r14894]
2002-08-15 16:01:45 +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
53724b79e2 Allow gcc,borland/runtime-link=static to work on command line.
[SVN r14883]
2002-08-15 08:29:45 +00:00
Vladimir Prus
348fd8be34 Allow loading modules in the same directory to work in all cases.
* new/modules.jam (import) Use the directory of the calling module
        as additional search path element.
    * examples-v2/make/project-root.jam: Remove workaround.


[SVN r14879]
2002-08-15 07:11:29 +00:00
Vladimir Prus
50c79c69fd Forgotten change for V2 example.
[SVN r14878]
2002-08-15 07:09:22 +00:00
Vladimir Prus
a0cfe4076e Documentation update.
* boost_build_v2.html: Extend feature description. Change wordings in
        some places.
    * new/feature.jam: Remove comments that are now in boost_build_v2.html.


[SVN r14782]
2002-08-12 10:35:24 +00:00
Vladimir Prus
5375bed958 Allow to associate rules with features/properties, to be used for
special things like stlport.

    * new/feature.jam (action, run-actions): New rules.


[SVN r14781]
2002-08-12 10:28:08 +00:00
Vladimir Prus
f8f524cf9a Make 'path.jam' documentation parsable by doc.jam and tweak them.
[SVN r14757]
2002-08-09 14:37:14 +00:00
Vladimir Prus
07284ad6a7 Renamed 'os.path.jam' to 'path.jam'.
[SVN r14753]
2002-08-09 11:43:47 +00:00
Vladimir Prus
80c96a8efe Introduce 'incidental' features.
* new/feature.jam: The above change.
    * new/property.jam
      (remove): Renamed & generalized from 'remove-free'.
      (take): Likewise.


[SVN r14752]
2002-08-09 11:37:59 +00:00
Rene Rivera
eb2959e2d3 Added import of user project-root rules into projects.
[SVN r14727]
2002-08-07 03:45:45 +00:00
Rene Rivera
301ad67f12 Respect blank lines in printed sections to separate paragraphs.
[SVN r14706]
2002-08-06 05:43:39 +00:00
Rene Rivera
de740a93fa Sort modules printed on --help-all request.
[SVN r14705]
2002-08-06 05:42:33 +00:00
Rene Rivera
9f9a0190cc Refactor to minimize the number of symbols in the user modules.
Add use-project rule in project root context.
Add project-root rule in project context.


[SVN r14703]
2002-08-06 04:10:21 +00:00
Vladimir Prus
4d2cc0617f Added example transformation sequences.
[SVN r14579]
2002-07-24 09:44:57 +00:00
Vladimir Prus
e55ef3a1cb Optimization.
* new/class.jam (__init__) Get only first element of backtrace.


[SVN r14564]
2002-07-22 17:44:21 +00:00
Vladimir Prus
224a7f7741 Improved 'vector'.
* new/container.jam (vector.indices): New rule.
    * new/targets.jam: Use the new rule.


[SVN r14528]
2002-07-19 12:57:23 +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
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
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
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
Rene Rivera
0be5e56d68 Fixed hang when encountering "}" followed by whitespace in a rule.
Added --help-enable=debug to print out parsing trace.


[SVN r14373]
2002-07-09 15:22:12 +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
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
Rene Rivera
d7ec3eeda0 Removed some dead code.
Cleaned up some of the formatting.
Added --help-option=detailed, to print detailed docs as part of the summary docs.


[SVN r14361]
2002-07-09 07:49:55 +00:00
Vladimir Prus
ed30bfc6c8 Comment tweak.
[SVN r14360]
2002-07-09 07:35:39 +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
5c02cc13dc Add "--dump-project" command line option.
[SVN r14340]
2002-07-08 09:50:43 +00:00
Vladimir Prus
eeeb69680e Some bugfixes and simplifications.
* 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]
2002-07-08 09:49:28 +00:00
Vladimir Prus
bceebcf3a1 Bugfix in 'property.refine'.
[SVN r14338]
2002-07-08 09:34:01 +00:00
Rene Rivera
2390d3c642 Most of the parsing is done, and generating docs. Minimally usefull as inline help.
[SVN r14334]
2002-07-08 06:40:46 +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