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

344 Commits

Author SHA1 Message Date
Dave Abrahams
b070ace73b Use import rule
[SVN r20170]
2003-09-24 00:01:11 +00:00
Vladimir Prus
eb57a08007 Fix BB39: project root constants are available also in project-root module
itself.


[SVN r20077]
2003-09-16 14:54:09 +00:00
Vladimir Prus
f14bd42a06 Make msvc happy.
[SVN r20019]
2003-09-11 08:12:58 +00:00
Vladimir Prus
d02a14907d Bugfix: allow a generator to create two targets of the same type.
* new/generators.jam
  (generator.__init__): Use parallel lists to store prefixes and postfixes
  for a name, not mapping with type as a key, since type is not unique.
  (generator.generated-targets): Adjust.


[SVN r19990]
2003-09-10 07:39:45 +00:00
Vladimir Prus
73ed2c3209 Add 'glob' rule to Jamfile context.
[SVN r19914]
2003-09-04 11:19:03 +00:00
Vladimir Prus
7addaa692b Remove support for old-style target ids.
[SVN r19913]
2003-09-04 11:06:14 +00:00
Vladimir Prus
b9e4d182de Bugfix. Allow "project-root" to work in Jamfile, again.
Thanks to Peter Schoen for bugreport.

* new/project.jam (initialize): Set 'project-root-module' attribute.
* new/project_root.py: New test.


[SVN r19899]
2003-09-01 14:00:26 +00:00
Vladimir Prus
a57311af2f Fix a hard error whenever a target is skipped. Thanks to
Christopher Currie for spotting this bug.


[SVN r19854]
2003-08-29 08:48:15 +00:00
Vladimir Prus
1c13c89653 Python 2.3 fixes. Use __rmul__ for fixed mode operations on List, not
__coerce__, since it works in a wrong way and might be removed in future.


[SVN r19806]
2003-08-27 13:57:47 +00:00
Vladimir Prus
64cb75be03 Test toolset inheritance
[SVN r19461]
2003-08-05 06:10:58 +00:00
Vladimir Prus
81dc7f094b Rename 'xclass' to 'class'.
[SVN r19458]
2003-08-05 05:25:33 +00:00
Vladimir Prus
a8291718dd Rename 'xnew' to just 'new'.
[SVN r19434]
2003-08-04 11:12:30 +00:00
Vladimir Prus
96ba56a2e9 Drop all style classes support.
[SVN r19433]
2003-08-04 10:53:34 +00:00
Vladimir Prus
fe09f7e4fe Move abstract-target hierarchy to new classes.
[SVN r19428]
2003-08-04 09:22:29 +00:00
Vladimir Prus
07fbff6420 Move generators to new-style classes.
[SVN r19427]
2003-08-04 09:19:54 +00:00
Vladimir Prus
262fff312e Speed up module imports.
* jam_src/builtins.c: New builtins IMPORT_MODULE and IMPORTED_MODULES.
  jam_src/rules.c: (bindrule): Refactor. (lookup_rule): New function.

* kernel/modules.jam: Make use of IMPORT_MODULE.


[SVN r19422]
2003-08-04 08:45:41 +00:00
Vladimir Prus
67164c9531 Correct the copyright.
[SVN r19325]
2003-07-28 08:25:29 +00:00
Vladimir Prus
095aec20c9 Bugfix. Keep the same suffix when staging files.
[SVN r19324]
2003-07-28 08:18:20 +00:00
Vladimir Prus
dce232a600 Weaken multiple main target default build check. Must be identical
rather then only defined on first.

The previous behaviour did not work when there were "default-build" attribute
on project and two alternatives for a main target.

Patch from Michael Stevens.


[SVN r19303]
2003-07-25 07:58:47 +00:00
Vladimir Prus
86c21bd202 Patch from Pedro Ferreira to implement <tag> feature.
* new/targets.jam
  (basic-target.tag-name): New rule.
  (basic-target.generate-really): Temporary change self.name

* test/tag.py: New test.


[SVN r19298]
2003-07-24 13:57:45 +00:00
Vladimir Prus
a2cbcc3485 Unbreak the test on Windows.
[SVN r19258]
2003-07-22 09:31:45 +00:00
Vladimir Prus
0f3a093787 Python 2.1 compatibility.
[SVN r19255]
2003-07-22 09:02:09 +00:00
Vladimir Prus
7868755b80 Fix BB46 (inline targets renaming).
* new/targets.jam
  (project-target.add-alternative): New rule.
  (project-target.build-main-targets): New rule.
  (project-target.generate, project-target.main-target,
   project-target.has-main-target): Call 'build-main-targets'
  (project-target.rename-main-target): Remove.

  (main-target-sources): Use 'rename', not project.rename-main-target.
  (main-target-alternative): Simplify.

* test/inline.py: Test for fix.


[SVN r19245]
2003-07-21 08:30:20 +00:00
Vladimir Prus
e7885b762b Bugfix: conditionals properties was misbehaving when there were ":" in
property value.

* new/property.jam
  (evaluate-conditionals-in-context): Don't be greedy in regex.

* test/conditionals3.py: New test.


[SVN r19243]
2003-07-21 07:17:19 +00:00
Vladimir Prus
ee7194978b Unbreak STLport and railsys test.
* tools/stlport.jam
  (stlport-target-class.generate): New method.

* test/test_all.py: Run 'railsys' again.


[SVN r19242]
2003-07-21 06:43:28 +00:00
Vladimir Prus
b99efeacea Work on BB43 (hang on loop in main target references).
* new/targets.jam
  (start-building, end-building): New rules.
  (main-target.generate): Call the above rules.

* test/loop.py: New test.


[SVN r19241]
2003-07-21 06:21:27 +00:00
Vladimir Prus
bde62b8a07 Fix BB38 (composite properties expansion buggy).
* new/build-request.jam
  (expand-no-defaults): Don't expand composites.

* new/targets.jam
  (main-target.generate): Expand composites.

* test/property_expansion.py: New test.


[SVN r19240]
2003-07-21 05:55:42 +00:00
Vladimir Prus
67c208aa05 Fix a bug which caused non-free feature to appear twice in property set.
[SVN r19239]
2003-07-21 05:34:15 +00:00
Vladimir Prus
7be0988b89 Add missing file.
[SVN r18932]
2003-07-03 10:11:38 +00:00
Vladimir Prus
60e89037fb Implement inline main targets.
* new/targets.jam
  (main-target-sources): New rule.
  (abstract-target.rename): New rule
  (project-target.rename-main-target): New rule.


[SVN r18923]
2003-07-03 07:23:26 +00:00
Vladimir Prus
d9389bf4c0 Make searched targets really work on borland.
* new/builtin.jam
  (lib-generator): Remove.
  (lib-target-class): New class. Target class is more powerfull then
  generator, here.

* new/generators.jam
  (construct): New argument 'return-all'.

* bew/property-set.jam
  (property-set.add-raw): New method.


[SVN r18917]
2003-07-02 12:23:50 +00:00
Vladimir Prus
c51bffadef Add --preserve option to test system.
[SVN r18915]
2003-07-02 11:46:19 +00:00
Vladimir Prus
808127309e Robustify dependency_test.
[SVN r18907]
2003-07-01 14:10:03 +00:00
Vladimir Prus
0cd8d6599d Change the core so that both "existing" and "updated" modifiers are both
allowed.


[SVN r18901]
2003-07-01 09:45:56 +00:00
Vladimir Prus
1d55c1e7bd The "explicit" targets are now specified by "explicit" rule in Jamfile,
not by project attribute. The problem with the previous interface was
that it was not possible to mark target as explicit anywhere else,
such as in helper module which declares target in project module, or
in toolset module.

* new/targets.jam
  (project-target.mark-target-as-explicit): New rule
  (project-target.targets-to-build): Use self.explicit-targets.

* new/project.jam
  (project-attributes.set): Don't allow 'explicit-targets'.


[SVN r18900]
2003-07-01 06:46:15 +00:00
Vladimir Prus
3951fbdb98 Update build system for bjam changes.
[SVN r18890]
2003-06-30 14:28:05 +00:00
Vladimir Prus
3ea74bbb4f Handle include dependencies between generated sources correctly.
[SVN r18889]
2003-06-30 14:24:20 +00:00
Vladimir Prus
059b164b4c Bugfix: make searched libraries really work on borland.
[SVN r18867]
2003-06-24 12:43:11 +00:00
Vladimir Prus
8a325d5576 Enable 'custom_generator' test.
[SVN r18833]
2003-06-18 06:37:43 +00:00
Vladimir Prus
3bcac7043d Implement new target-id syntax.
[SVN r18780]
2003-06-11 12:22:03 +00:00
Vladimir Prus
876db3471e Compile C files with C compiler, not C++. This commit would close BB32, if
it included MSVC...

* new/toolset.jam:
  Allow action names with dots, so that we can set flags for
   gcc.compile.c, gcc.compile and gcc and combine those flags.

* tools/gcc.jam: Use 'gcc' for compiling C files. There's still a problem:
   'init' rules does not allow to configure name of C compiler. Also, don't
   declare flags individually for gcc.link and gcc.link-dll.

* tools/borland.jam: Force C++ compile when needed.


[SVN r18774]
2003-06-11 08:40:45 +00:00
Vladimir Prus
68b0b38622 Allow project-root.jam to act as Jamfile.
* new/project-root.jam (project-root-context.project): New rule
  (find-project-rule): New rule, factored out of 'load' so that it can
  be used elsewhere.

* new/project.jam (find): When project is not yet known, try loading
  project-root, not only Jamfile.


[SVN r18759]
2003-06-10 11:07:56 +00:00
Vladimir Prus
f5c9b75e3c Update railsys for recent changes.
[SVN r18694]
2003-06-06 10:06:14 +00:00
Vladimir Prus
140e8a9103 Refactorings. Now usage requirements that should be propagated to dependents
are communiated via return value of 'abstract-target.generate', not as
attribute of virtual target. The advantage is that we can return usage
requirements, even if no targets were created.

Also, usage requirements is not really attribute of virtual target. If several
virtual targets are created for one main target, the previous code would set
the same usage requirements on all virtual targets.


[SVN r18689]
2003-06-06 09:02:36 +00:00
Vladimir Prus
736169e2b3 Don't warn when dependency main target produced nothing.
* new/targets.jam
  (basic-target.check-for-unused-sources): Don't warn when group
  of targets originated from one main target is empty.


[SVN r18686]
2003-06-06 06:29:31 +00:00
Vladimir Prus
ecbc945e8e Simplify project-id and target-id handling.
* new/project.jam
  (lookup) Don't support project location in front of "@".
  (lookup-with-load): Remove.
  (find): New rule.
  (find-target): move to...

* new/target.jam
  (find): Here. And simplify.


[SVN r18667]
2003-06-04 13:30:45 +00:00
Vladimir Prus
43f3855045 Remove 'boost-build.jam' files from 'railsys' test, since they mess up
testing.


[SVN r18583]
2003-05-28 11:32:01 +00:00
Vladimir Prus
a87f41243c Bugfix from Michael Stevens: when directory names contained regex
metacharacters, Boost.Build misbehaved.

* new/path.jam
  (all-parents): Don't use regex to strip path prefix, use a more robust
    approach.

* test/bad_dirname.py: New test.


[SVN r18576]
2003-05-28 07:11:50 +00:00
Dave Abrahams
d9d8785236 Enabled sorting of BBv2 modules into subdirectories
build-system.jam - moved from tools/build/new to tools/build

boost-build.jam - moved from tools/build/new to tools/build/kernel
bootstrap.jam
errors.jam
modules.jam

test/BoostBuild.py   - adjusted for the above modification
test/boost-build.jam

project-root.jam - renamed to "project-roots.jam" to avoid confusion
                   and conflict with the user's project-root.jam file

project.jam                           - adjusted for the above renaming
test/project-test1/project-test1.jam

type.jam - broke a circular module dependency


[SVN r18575]
2003-05-28 01:33:38 +00:00
Dave Abrahams
7035a065ab Give a little feedback about the current directory when a test fails
[SVN r18571]
2003-05-27 23:59:03 +00:00