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

365 Commits

Author SHA1 Message Date
Vladimir Prus
e06fd02fd3 Work-in-progress on better library handling.
* new/builtin.jam
  (link-action.adjust-properties): Remove.
  (linking-generator.generated-targets): Do what adjust-properties used to do.
  (linking-generator.run): Convert <library> properties to sources.
  (exe-generator): New class.


[SVN r20455]
2003-10-22 16:18:08 +00:00
Vladimir Prus
0ce601c7c4 Fix a bug in the "stage" rule. It was changing target suffix in some cases.
Thanks to Peter Steiner for bug report.


[SVN r20454]
2003-10-22 16:12:38 +00:00
Vladimir Prus
31f991df08 Handle hardcode-dll-paths a little bit differently.
* new/targets.jam
  (basic-target.compute-usage-requirements): Add second parameter 'targets'.

* new/builtin.jam
  (lib-target-class.compute-usage-requirements): Add proper <dll-path>
  properties when <hardcode-dll-paths> in in properties.

  (lib-target.adjust-properties): Don't handle <hardcode-dll-paths>.


[SVN r20441]
2003-10-21 10:44:06 +00:00
Vladimir Prus
2eb6750dbd Fix a problem with 'use-project' which refers to child project. Thanks
to Austin Bingham for the bug report.

* new/project.jam
  (load): Don't mark project as loaded here.
  (load-jamfile): Mark it as loaded here.


[SVN r20439]
2003-10-21 09:24:47 +00:00
Vladimir Prus
65f1575010 Bugfix. It was not possible to specify empty suffix to a type if
base type had nonempty suffix.


[SVN r20435]
2003-10-21 07:24:28 +00:00
Vladimir Prus
27feec6546 Remove support for using project-root.jam in place of Jamfile.
* new/project-roots.jam
  (project-root-context.project): Remove.

* new/project.jam
  (find): Simplify.
  (find-jamfile): Optimize.


[SVN r20432]
2003-10-21 06:12:49 +00:00
Vladimir Prus
e1855f185b Fix a bug which caused double loading of Jamfile in some cases. Also,
simplify some things.

* new/project.jam
  (load): Tweak
  (lookup): Remove.
  (find): Simplify.


[SVN r20430]
2003-10-21 05:47:39 +00:00
Vladimir Prus
c680a9f536 Don't run 'regression' on win, since it's not working there, yet.
[SVN r20336]
2003-10-10 13:18:22 +00:00
Vladimir Prus
a1b29a83bf Rename <dependency> to <use>.
[SVN r20335]
2003-10-10 12:49:06 +00:00
Vladimir Prus
8f266da2f3 Drop useless test which causes problems on windows.
[SVN r20334]
2003-10-10 12:28:04 +00:00
Vladimir Prus
be6d8827f8 Make the test platform-neutral.
[SVN r20332]
2003-10-10 12:18:40 +00:00
Vladimir Prus
d8e841f82b Improve alternative selection.
* new/targets.jam
  (main-target.select-alternative): Rewrite.
  (main-target.generate-really): Issue error in all cases where best
  alternative could not be found.
  (basic-target.match): Renamed from 'match-rank' and changed.

* boost_build_v2.html: Document new algorithm.

* test/alternatives.py: More tests.


[SVN r20331]
2003-10-10 12:14:59 +00:00
Vladimir Prus
e498a3c659 Make the 'regression' test case work on windows with gcc.
[SVN r20299]
2003-10-08 05:49:57 +00:00
Vladimir Prus
c16af47862 Bugfix: path-constant rule was mishandling absolute paths on Windows.
[SVN r20297]
2003-10-08 05:40:16 +00:00
Vladimir Prus
a96df6afec Add tests for regression system.
[SVN r20280]
2003-10-07 13:03:04 +00:00
Vladimir Prus
d83a0f6b10 Bugfix.
* new/BoostBuild.py
  (Tester.touch): Fix so that it can accept List instances.


[SVN r20279]
2003-10-07 12:50:17 +00:00
Dave Abrahams
70abb18d65 Removed all property-adjuster references and the associated test.
[SVN r20207]
2003-09-29 15:27:47 +00:00
Vladimir Prus
e0f6581f55 Enable some previously commented out test.
[SVN r20205]
2003-09-29 15:17:18 +00:00
Vladimir Prus
16abe38d49 Implement a somewhat better link-compatibility check.
* new/targets.jam
  (basic-target.check-for-link-compatibility): New rule.
  (basic-target.generate-sources, basic-target.generate): Call the above.


[SVN r20191]
2003-09-26 11:13:42 +00:00
Vladimir Prus
2ee0f0be56 Drop the notion of link-compatibility. We don't really want it for
projects, and for individual targets, it will reappear later.

* new/property.jam:
  (refine): Don't check for link-compatibility.

* new/targets.jam
  (project-target.generate): Don't call 'refine' and don't emit any
  warnings.

  (basic-target.match-rank): The alternative selection mechanism dependended
  on link-compatibility in some way. Work around the difference in semantic
  we have now. This will be resolved in a more clean way later.

* new/property-set.jam
  (property-set.link-incompatible, property-set.link-incompatible-with):
  New methods.


[SVN r20190]
2003-09-26 10:22:22 +00:00
Vladimir Prus
a6fb42c53c Implement <implicit-dependency> feature.
* new/virtual-target.jam
  (subvariant-dg.implicit-includes): New method.
  (subvariant-dg.__init__): Check for <implcit-dependency>, not all
  dependency features.

* new/builtin.jam
  (compile-action.adjust-properties): Call 'implicit-includes'.


[SVN r20174]
2003-09-24 06:13:01 +00:00
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