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

369 Commits

Author SHA1 Message Date
Vladimir Prus
b2ed2fe8f5 Fix some obscure bugs.
* new/virtual-target.jam (clone-template): Improve interface and logic.

    * new/make.jam (make-target-class.construct): Set type and suffix on
    generated targets.

    * new/generators.jam (construct): Make sure all targets have known
     types.


[SVN r15766]
2002-10-07 13:08:04 +00:00
Vladimir Prus
4fdfbd4680 Bugfix.
[SVN r15714]
2002-10-04 15:23:46 +00:00
Vladimir Prus
e3bcf1d1b0 Cleanup.
[SVN r15711]
2002-10-04 14:50:34 +00:00
Vladimir Prus
a7ead880c1 Increase Boost.Jam version to 3.1.3.
[SVN r15710]
2002-10-04 14:25:11 +00:00
Vladimir Prus
43f2565a2d Allow directory part in names of source files.
[SVN r15708]
2002-10-04 13:59:25 +00:00
Vladimir Prus
bba2939592 Implement path features.
* property.jam (translate-paths): New rule.

    * targets.jam (main-target-alternative): Translate path
      properties.

    * project.jam (project-attributes.set): Likewise.

    * builtin.jam (variant): Fixes.


[SVN r15707]
2002-10-04 13:48:38 +00:00
Vladimir Prus
791b5ad620 Implement variant declaration.
* builtin.jam (variant): New rule.

    * build-system.jam: Unconditionally add <toolset>gcc to build
        request. Will be fixed when toolset support is ready.

    * feature.jam (extend-feature): Bugfix.


[SVN r15678]
2002-10-03 16:29:21 +00:00
Vladimir Prus
455019d5dc Propagate free properties in build request to all directly requested targets.
* targets.jam
        (abstract-target.direct-build-request): New rule.
        (project-target.direct-build-request): New rule.
        (main-target.direct-build-request): New rule.
        (main-target.generate): Use data stored by
        'direct-build-request' to adjust build properties.

    * build-system.jam: Call 'direct-build-request' on project
         target in "."

    * feature.jam (feature): Don't allow propagated free features.


[SVN r15677]
2002-10-03 15:18:59 +00:00
Vladimir Prus
2977f296d2 Skip projects when property refinement for them fails.
Skip main targets when no alternative can be build.
Issue error when 'construct' for alternative fails.


[SVN r15676]
2002-10-03 15:01:09 +00:00
Vladimir Prus
2e9065c102 Cleanups.
[SVN r15651]
2002-10-02 16:13:54 +00:00
Vladimir Prus
bb77bf428a Bufgix.
* make1.c (make1): Do not process any stacked targets when interrupted.


[SVN r15650]
2002-10-02 15:11:36 +00:00
Vladimir Prus
9029c81fce Test for poor main's per-source requirements.
* new/builtin.jam: Make 'obj' main type.
    * new/generators-test/*: Try compiling the same CPP file with
        different defines and linking in the same exe.


[SVN r15649]
2002-10-02 12:38:13 +00:00
Vladimir Prus
8c7b0f4796 Move a file, mistakenly added on RC branch, to the trunk.
[SVN r15648]
2002-10-02 12:12:27 +00:00
Vladimir Prus
511b07358e Dependency scanning implementation.
* jam_src/builtins.c: New builtin SEARCH_FOR_TARGET.

    * jam_src/rules.c
         (bind_explicitly_located_targets): New function.
         (search_for_target): New function.

    * jam_src/make.c (make): Call 'bind_explicitly_located_targets()'
        immediately on entering.

    * jam_src/search.c (call_bind_rule): No longer 'static'.

    * new/builtin.jam (c-scanner.process): Real implementation.

    * test/dependency_test.py: Really test for dependencies.


[SVN r15646]
2002-10-02 11:56:32 +00:00
Vladimir Prus
c06b10384a Infrastructure for dependency scanning.
* 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]
2002-10-02 10:04:03 +00:00
Vladimir Prus
44f3faf761 Adjust include paths for compilations, so that generated headers are found.
* virtual-target.jam (traverse): New rule, returns a list of
    targets, given the graph root.
  (subvariant-dg): New class, to keep all targets for a given
    subvariant.
  (virtual-target.dg): New rule to access subvariant-dg.
  (virtual-target.path): New rule

* targets.jam (main-target.generate): Assign subvariant dg to all
  created targets.

* builtin.jam (compile-action.adjust-properties): Use subvariant
  dg to find all targets, their location, and add those location
  to include path.


[SVN r15619]
2002-10-01 17:00:24 +00:00
Vladimir Prus
b53b5af5e0 Added hooks to allow special property adjustment for generators and actions.
For example, this would allow compilers to add generated headers into include
path.

	* virtual-target.jam (action.adjust-properties): New rule.
	  (clone-action-template): Don't slice cloned object.

	* generators.jam (generator.action-class): New rule, to allow
	  overriding action class on per-generator basis.

	* builtin.jam (compile-action): New class.
	    (C-compiling-generator): New class.

	* gcc.jam: Use C-compiling-generator for gcc. Honor includes.


[SVN r15618]
2002-10-01 16:31:31 +00:00
Vladimir Prus
8166d286fe Made STATIC-LIB and SHARED-LIB derived from LIB.
[SVN r15617]
2002-10-01 15:13:01 +00:00
Vladimir Prus
05c24dcc43 Top-level invocation of generator.construct-dbg now returns only target of
requested types.

     * new/generators.jam (construct-dbg): The above change.
     * new/type.jam (is-derived): New rule.


[SVN r15614]
2002-10-01 15:06:33 +00:00
Vladimir Prus
f2c695ebe8 Tweak test system.
[SVN r15611]
2002-10-01 14:55:52 +00:00
Vladimir Prus
c3044a4ce5 New rules and fixes.
* sequence.jam (merge): Bugfix.

    * regex.jam (transform): New rule.

    * property.jam (select): New rule, selects properties, given
         a list of features.


[SVN r15610]
2002-10-01 14:50:25 +00:00
Vladimir Prus
58738ec933 Improve RPM spec per suggestions from Malte Starostik and Steve Robbins.
[SVN r15608]
2002-10-01 14:33:47 +00:00
Dave Abrahams
0667a2755d Bug fix
[SVN r15536]
2002-09-28 08:03:38 +00:00
Dave Abrahams
9a5f0a5194 Suppress warning
[SVN r15535]
2002-09-28 08:03:19 +00:00
Vladimir Prus
609dd1f6ab Introduced SHARED-LIB and STATIC-LIB target types. Also introduced LIB target
type and a generator, which relays either to SHARED-LIB or STATIC-LIB,
depending of the value of "shared" feature.


[SVN r15529]
2002-09-27 07:35:03 +00:00
Rene Rivera
712c61a485 Fix for compiling with CodeWarrior.
[SVN r15503]
2002-09-25 05:53:35 +00:00
Dave Abrahams
99e3987837 Apply patch from "Markus Schöpflin" <markus.schoepflin@ginit-technology.com>
[SVN r15494]
2002-09-24 13:47:57 +00:00
Vladimir Prus
7caaaac870 Work in progress.
- Got rid of vectors of vectors in generators code. That was not only slow, it
  was also troublesome.
- Started work on transformation caching. Works but needs review/cleanup.


[SVN r15465]
2002-09-20 12:50:44 +00:00
Vladimir Prus
01a74fcd32 Simplication/optimization.
[SVN r15464]
2002-09-20 12:29:03 +00:00
Dave Abrahams
6bdeaa81e4 Checkin work in progress before I lose it through some terrible accident ;-)
[SVN r15379]
2002-09-16 13:56:02 +00:00
Rene Rivera
19719f969a Some cleanup of code.
Rewrote the handling of help arguments to be even easier to use.
Added descriptions for all the top level --help arguments.
Added descriptions of help options.
Added a few more control arguments in preparation for HTML type output.


[SVN r15342]
2002-09-15 20:08:03 +00:00
Vladimir Prus
e7eab4c752 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
52c57c06f5 Forgotten file.
[SVN r15301]
2002-09-13 12:16:17 +00:00
Dave Abrahams
bdb6a9e71c Added commentary
[SVN r15287]
2002-09-13 01:50:09 +00:00
Rene Rivera
4f3357c3f4 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
3f15eb554f Fix for when varaibles are edclared with an empty value.
[SVN r15279]
2002-09-12 22:00:23 +00:00
Vladimir Prus
2796e8f328 Added generators test to the test suite.
[SVN r15269]
2002-09-11 15:56:56 +00:00
Vladimir Prus
ba4cc2976f Small fix.
[SVN r15268]
2002-09-11 15:54:39 +00:00
Dave Abrahams
12807f87fc More cygwin/NT compatibility fixes
[SVN r15267]
2002-09-11 15:40:32 +00:00
Vladimir Prus
9e538ffcea 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
Dave Abrahams
4711f64f4e Workaround for cywgin/NT build
[SVN r15263]
2002-09-11 14:37:25 +00:00
Vladimir Prus
021c2e550d 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
3fbc22a8c1 Doc clarifications.
[SVN r15251]
2002-09-10 12:52:36 +00:00
Vladimir Prus
cb4806c251 Added development plan.
[SVN r15250]
2002-09-10 10:06:06 +00:00
Dave Abrahams
f41f552156 VC7 builds
[SVN r15236]
2002-09-09 14:05:10 +00:00
Dave Abrahams
fc0720b830 Apply patch for building with VC7
[SVN r15196]
2002-09-07 18:08:50 +00:00
Toon Knapen
de39477e27 IBM cc does not understand C++ comment (leading //).
Changed into using C-style comments (/* */)


[SVN r15187]
2002-09-06 21:03:10 +00:00
Rene Rivera
127dce071b TABS, EOLs+EOFs.
[SVN r15177]
2002-09-06 14:40:30 +00:00
Dave Abrahams
7dc57cc6a2 Implemented less-liberal conversion rules
[SVN r15136]
2002-09-02 23:23:27 +00:00
Dave Abrahams
9f496d0cb2 Added quotes for the VC++ libraries
[SVN r15110]
2002-08-29 14:51:29 +00:00