Commit Graph

30 Commits

Author SHA1 Message Date
Steven Watanabe
fb07490ec7 Tests that use the compiler need user-config.jam or they will fail if the toolset requires non-default initialization.
[SVN r83618]
2013-03-28 00:16:19 +00:00
Jurko Gospodnetić
343b4d6532 Updated the internal Boost Build testing system to use the Python subprocess module (introduced in Python 2.4) for running external processes instead of popen2 (deprecated since Python 2.6). We are already using Python 2.4 features in this codebase so there is no need to support Python releases older than 2.4.
Related changes:
  * BoostBuild.Tester & TestCmd.TestCmd interfaces now accept external process parameters as a list of strings, thus avoiding problems with parsing arguments containing spaces.
  * Avoided a potential process hang in case an external process being run prints out enough output to fill up the OS's pipe buffer (OS would pause the process until someone read the data from the pipe but the testing framework would not do this until the process in question had terminated).

[SVN r79448]
2012-07-12 12:55:25 +00:00
Jurko Gospodnetić
c5e5b5324e Boost Build cleanup - minor stylistic internal Boost Build test script & testing system changes.
[SVN r79445]
2012-07-12 12:22:14 +00:00
Jurko Gospodnetić
41125133ad Boost Build cleanup - minor stylistic changes & comment typo corrections.
[SVN r79166]
2012-06-29 17:59:49 +00:00
Jurko Gospodnetić
f20f88b91d Renamed differently named Jamroot and Jamfile files throughout Boost Build's test suite to jamroot.jam & jamfile.jam. Stylistic changes throughout the whole Boost Build test suite.
[SVN r48504]
2008-08-31 21:42:27 +00:00
Rene Rivera
602b6d8b13 Add/update copyrights+license (with help of a shell script).
[SVN r35856]
2006-11-05 18:13:42 +00:00
Vladimir Prus
f3c3972678 Allow <name> work for 'install', when there's a single source
[SVN r33064]
2006-02-21 13:08:53 +00:00
Vladimir Prus
190b0a3ba4 When installing .cpp files, don't scan them for #includes. It's pointless,
we don't compile.

Thanks to Franz Schnyder for the bug report.


[SVN r31756]
2005-11-23 16:10:41 +00:00
Vladimir Prus
08b36b749e Unbreak <install-source-root> when building from subdirectories.
[SVN r29803]
2005-06-27 12:19:50 +00:00
Vladimir Prus
ce2a4be582 Additional test.
[SVN r27593]
2005-03-10 09:51:34 +00:00
Vladimir Prus
23c772bad5 Change tree installing. Replace preserve-path feature with a
install-source-root feature which specifies the base path to which all
paths are relative.


[SVN r27592]
2005-03-10 09:47:37 +00:00
Vladimir Prus
08b10e27c8 Introduce a new property, preserve-path, which can be used to make the
'install' rule preserve relative paths of sources when installing them.


[SVN r27587]
2005-03-09 09:08:27 +00:00
Vladimir Prus
411ad9eae7 Some renames:
- 'stage' -> 'install'
- 'traverse-dependencies' -> 'install-dependencies'
- 'include-type' -> 'install-type'.


[SVN r26833]
2005-01-24 10:08:07 +00:00
Vladimir Prus
ded834410d Fix a recent regression: <location>. did not work.
[SVN r26598]
2004-12-29 11:04:09 +00:00
Vladimir Prus
4c7ff2913c More type declaration cleanup.
* build/type.jam (register): Remove the 'main' parameter.
* other files: Don't pass the 'main' parameter.


[SVN r26449]
2004-12-06 13:59:51 +00:00
Vladimir Prus
bc7ed1a9d5 Handle <dependency> for 'stage'.
* tools/stage.jam
  (copy-file, relink-file): Add stage's dependency properies to
  the staged targets properties, so that <dependency> is copied too.

* test/stage.py: New test.


[SVN r26420]
2004-12-03 14:24:32 +00:00
Vladimir Prus
fb138e9ded When 'stage' is used with <traverse-dependencies>on, do not follow the <use>
property, since it's typically used when only headers are used.

* build/virtual-target.jam (subvariant.all-referenced-targets): Return
  the names of properties.
* tools/stage.jam (stage-target-class.collect-targets): Filter out <use>

Thanks to Jurgen Hunold for the bug report.


[SVN r26052]
2004-11-01 16:10:41 +00:00
Vladimir Prus
3f70a26a20 Allow the 'stage' rule to traverse dependencies.
* build/virtual-target.jam
  (subvariant.__init__): New parameter 'sources'.
  (subvariant.all-referenced-targets): New method.

* build/targets.jam
  (basic-target.create-subvariant): New parameter 'sources'.

* built/type.jam
  (is-subtype): New rule.

* tools/stage.jam
  (stage-target-class.construct): Traverse dependencies when requested.
  (stage-target-class.collect-targets): New method.


[SVN r20534]
2003-10-29 06:08:44 +00:00
Vladimir Prus
d88803f3cb 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
5dc40cd49a Bugfix.
* new/stage.jam
  (stage-target-class.construct): Pass the result via
  'virtual-target.register'. I wonder if virtual targets should
   be create via 'virtual-target.create' which will invoke
  'virtual-target.register' internally. Passing via 'register' was forgotten
   in many places.

* test/stage.py: New test.


[SVN r18497]
2003-05-22 13:23:40 +00:00
Vladimir Prus
b47cd2d0ea Workaround a big BUG. The test must pass now, however.
[SVN r18103]
2003-03-27 15:46:14 +00:00
Dave Abrahams
7ac1d52126 Adjust for Win32
[SVN r18030]
2003-03-20 13:48:59 +00:00
Vladimir Prus
06b75a7d71 Bugfix. Make values of path-constants into absolute paths, so that they
can be used without problems as values of path features.


[SVN r17908]
2003-03-14 07:50:19 +00:00
Vladimir Prus
352bc8c515 Improve stage rule, allowing to specify location in requirements. This
allows short name for stage targets which install to global locations.


[SVN r17508]
2003-02-18 11:25:04 +00:00
Vladimir Prus
2f58129645 Automatically adjust suffixes when running tests.
[SVN r17505]
2003-02-18 08:32:57 +00:00
Vladimir Prus
3099d7337f Win32 fix.
[SVN r16910]
2003-01-15 12:03:08 +00:00
Vladimir Prus
41b44f946c Fix the stage rule, so that it allows sources with directory names.
* new/stage.jam:
   (stage-target-class): Strip directory names when determining the name of
   the target file.

* test/stage.py: Update the test.


[SVN r16892]
2003-01-13 16:28:47 +00:00
Vladimir Prus
d9217ebe21 Make stage.py work on NT/MinGW.
[SVN r16835]
2003-01-09 16:08:51 +00:00
Vladimir Prus
149a9f83ef Improve shared/static linking interface and
introduce separate <link-runtime> feature.
Allow to use the 'lib' rule to declare
libraries that should be searched for.

* builtin.jam: Remove 'shared' features. Introduce
   'link' and 'link-runtime'.
   (searched-lib-target): New class
   (searched-lib-generator): New generator.
   (lib-action): New class, derived from 'action'.
   Handles instances of 'searched-lib-target' in sources.
   Also, moves all libraries from sources to property value,
   so that we can repeat them twice in command line.
   (lib-generator): Generator which uses 'lib-action'.

* generators.jam: Allow empty list of sources everywhere.

* virtual-target.jam (file-target): Split into
   'abstract-file-target' and 'file-target'.
   (abstra
  (action.actualize-sources): New rule. Allows to
  handle the fact that some sources are special,
  and should not become $(>) in action body.


[SVN r16573]
2002-12-09 10:02:37 +00:00
Vladimir Prus
75230dc75a First implementation of "stage" and "prebuilt" rule.
* new/common.jam (copy): New rule.

* new/targets.jam (main-target.generate): Use a different
   algorith for selecting subvariant. Favour one with
   the longest intersection of requirements with build
   properties.

* new/virtual-target.jam (virtual-target): Eliminate 'subvariant'
   attribute. Use properties of action to for the same
   purpose. New methods 'set-path' and 'extra-grist'.


[SVN r16129]
2002-11-06 10:26:11 +00:00