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

3037 Commits

Author SHA1 Message Date
Vladimir Prus
df07c2c756 Fix command line example. Closes #1880.
[SVN r45449]
2008-05-17 07:13:03 +00:00
Vladimir Prus
cd383ab8d9 Add missing import.
Fixes #1911. Patch from Steven Watanabe.


[SVN r45447]
2008-05-17 06:52:20 +00:00
Vladimir Prus
21c6457971 Consistently use symlinks when installing Boost.
* Jamroot: use symlink, not hardlink
    * tools/build/v2/tools/symlink.jam: Implement fallback
    for doing symlinks on Windows.

Fixes #1902.  Thanks to Frank Mori Hess for the patch.


[SVN r45445]
2008-05-17 06:14:11 +00:00
Jurko Gospodnetić
e80bd8aa53 Minor stylistic changes.
[SVN r45305]
2008-05-12 18:35:56 +00:00
Jurko Gospodnetić
f0e9614df5 Documented that modules.call-in and modules.call-locally rules may forward at most 8 parameters to the rules they call. Also removed the extra unused $(9) parameter forwarding in the modules.call-locally rule.
[SVN r45304]
2008-05-12 18:31:59 +00:00
Vladimir Prus
0379ad1100 Move userman.pdf to a http location
[SVN r45303]
2008-05-12 17:46:54 +00:00
Roland Schwarz
39bc8e75e3 Same name for header only libs as in boost root.
[SVN r45250]
2008-05-09 14:41:00 +00:00
Vladimir Prus
7920b4bba3 Don't assign build properties as target's usage requirements when it fails to
generate.

We try to avoid building the same target twice, by caching the result of
previous calls to target.generate, and returning it if a build request
with the same property set is made.  When the target fails to generate,
for example due to <build>no property, we used to store the entire
build property set as the usage requirements of the build. This is clearly,
wrong, this patch makes us store <build>no as usage requirements instead.

Fixes #1816.


[SVN r45245]
2008-05-09 08:03:35 +00:00
Jurko Gospodnetić
d539f344a3 Minor stylistic comment change.
[SVN r45168]
2008-05-06 09:34:20 +00:00
Jurko Gospodnetić
901a0a4386 Removed a duplicated test case.
[SVN r45167]
2008-05-06 09:33:53 +00:00
Jurko Gospodnetić
f6e31ac68e Patch for the NORMALIZE_PATH builtin Boost Jam rule as well as an appropriate update for the path.jam Boost Build module where that rule was being used to implement path.join and related operations.
As it was written before the rule had 'random' behavior in some borderline cases such as: not passing it a parameter, passing it a folder whose path starts with one or two backslashes (as opposed to slashes) or passing it an invalid rooted path with enough '..' path elements to take it 'before the root path'. In those cases it would cause an access violation, 'incorrectly' un-root the path (i.e. remove the leading slash) or simply remove a 'random' path modification respectively. Also the rule is now more tiny bit more efficient and much better documented.

  Invalid rooted paths with enough '..' path elements to take them 'before the root path' are now recognized and an empty list is returned.

  Due to this rule having such 'messy' behavior the path.join rule and its user make-NT rule had some twisted logic in them to work around all the problems this caused. This patch invalidates the logic in question and replaces it with a much simpler one (detailed comments added).

  Other NORMALIZE_PATH callers should not be affected since both the old and the new version work the same on 'regular' paths (i.e. those not mentioned above).

  The new functionality for recognizing Boost Jam versions has been used to make Boost Build scripts use the old path functionality when using Boost Jam older than 3.1.17 and use the new functionality otherwise. As consequence, now anyone using the trunk version of Boost Build and an older 3.1.17 version of Boost.Jam will need to recompile their Boost Jam executable.

  The patch does not cause any Boost Build or Boost Jam tests to fail.

  Added a related NORMALIZE_PATH Boost Jam test. Note that this test causes Boost Jam versions built prior to this patch to crash (access violation).

  Added additional internal Boost Build tests for the path.jam module testing how it handles some invalid Windows paths.


[SVN r45158]
2008-05-05 22:37:19 +00:00
Jurko Gospodnetić
2d8bf7a748 Removed some old corpse comments and debugging output code related to functionality long removed in revision 29361. Minor stylistic comment changes.
[SVN r45145]
2008-05-05 16:01:21 +00:00
Jurko Gospodnetić
84a9f25f9f Fixed a bug causing Boost Jam not to handle target file names specified as both short and long file names correctly. Bug fixed by making bindtarget() function map names to TARGETs by using their long file names.
When scanning directories and creating a list of all their content (filent.c) it would identify all the located files and folders using their long file names. On the other hand, referencing a target using its short file name inside a Jam script caused Boost Jam to reference those files twice using two separate TARGET structures - one identified using the file's short name and one using the file's long name.

  One bad example was the MkDir which would always attempt to create a folder identified by its short name even if that folder already existed (due to the NOUPDATE rule getting applied on the incorrect TARGET).

  The change does not affect targets whose names do not represent existing file names.

  Also, it seems to me that the short_path_to_long_path() call in file_dirscan() in the filent.c module should most likely be moved to file_info() in the filesys.c module. This would make mapping file names to file_info_t & TARGET structures consistent. However, I have not done this in this patch just to make the patch as minimal as possible.

  Prepared tests have been do nothing on non Windows platforms.


[SVN r45144]
2008-05-05 15:52:56 +00:00
Vladimir Prus
8a3864ebba Allow to separately specify include, lib and bin paths for Qt4.
Patch from tr1gun <tr1gun@gmx.net>


[SVN r45143]
2008-05-05 15:24:56 +00:00
Jurko Gospodnetić
f2a34599a5 Corrected a typo in the tools/build/v2/tools/common.jam __test__ rule causing it to mess up the global .name variable in the os.jam module. This was effectively causing an internal os.jam module test to fail when you ran 'bjam --debug'.
[SVN r45121]
2008-05-04 23:59:21 +00:00
Jurko Gospodnetić
65a07b4ac6 Minor stylistic changes.
[SVN r45120]
2008-05-04 23:55:56 +00:00
Rene Rivera
87ffe6e910 Work around for specifying test names with periods in them which creates "duplicate" target names.
[SVN r45117]
2008-05-04 19:46:59 +00:00
Jurko Gospodnetić
bef69d66e7 Removed the old and no longer existing 'new' folder form the internal Boost Build path.
[SVN r45106]
2008-05-04 03:30:15 +00:00
Jurko Gospodnetić
80ce6cfa53 Minor stylistic changes preparing for a more substantial patch without cluttering it with this.
[SVN r45105]
2008-05-04 03:19:19 +00:00
Jurko Gospodnetić
bb17751785 Simplified the stage.copy-file() rule. Minor stylistic changes.
[SVN r45104]
2008-05-04 02:11:21 +00:00
Jurko Gospodnetić
637bbb0173 Cleaned up and better documented how the path.make-NT and path.join rules work. Corrected some minor flaws like the path.join rule returning only the initial path element in case its second path element was empty but there were more elements after it. This is the preparation for cleaning up the NORMALIZE_PATH builtin Boost Jam rule that is causing this implementation to be so messy.
[SVN r45103]
2008-05-04 02:01:52 +00:00
Jurko Gospodnetić
0fc8c56a28 Minor stylistic comment change.
[SVN r45102]
2008-05-04 01:58:58 +00:00
Jurko Gospodnetić
24e776fb73 Fixed a bug in the tools/build/v2/util/numbers.jam module related to numbers.log10 & numbers.less rules not working correctly with numbers that have leading zeroes. Added related regression tests.
Among other things this was breaking the new Boost Jam version detection functionality in some realistic cases. Added related regression tests.

[SVN r45100]
2008-05-04 01:27:09 +00:00
Jurko Gospodnetić
629b5cfbd8 Added functionality for more easily testing the Boost Jam version from Jamfiles. Now you can use the version.check-jam-version rule, as in [ versions.check-jam-version 3 1 17 ] which will return true if the current Boost Jam version is at least 3.1.17. Added related internal Boost Build tests for the new functionality.
[SVN r45096]
2008-05-03 23:30:59 +00:00
Jurko Gospodnetić
1cc21ab203 Upgraded some internal Boost Build tests. Minor stylistic changes.
[SVN r45095]
2008-05-03 23:27:00 +00:00
Jurko Gospodnetić
c4eed608ea Made it clear that Boost Build's Windows path handling does not handle paths with multiple successive path separator characters. Added several missing internal path.jam module tests. Minor stylistic changes.
[SVN r45079]
2008-05-03 17:22:08 +00:00
Jurko Gospodnetić
0031762d55 Removed a TODO comment related to the 'NOTFILE all ;' statement in tools/build/v2/build-system.jam and replace with a better explanation comment. Dead code removal, Comment typo corrections. Minor stylistic changes.
[SVN r45072]
2008-05-03 16:32:23 +00:00
Jurko Gospodnetić
d7edf299d8 Cleaned up the main Boost Build module a bit related to how it processes explicit file (not target) references specified on the command line. Improved the related unit test. Minor stylistic changes.
[SVN r45070]
2008-05-03 16:05:17 +00:00
Jurko Gospodnetić
0d6f3188c8 Updated the documentation for Boost.Build's 'path' & 'propagated' feature attributes. Minor stylistic changes.
[SVN r45067]
2008-05-03 13:17:37 +00:00
Rene Rivera
14497e22c5 Fix running -dumpversion when g++ command is multi-part.
[SVN r45056]
2008-05-03 03:42:08 +00:00
Jurko Gospodnetić
cbdffe59fb Corrected some small typos in the Boost.Build documentation. Added more links. Minor stylistic changes.
[SVN r45039]
2008-05-02 19:41:43 +00:00
Jurko Gospodnetić
47b22866b8 Minor stylistic Boost Build code changes.
[SVN r45023]
2008-05-02 15:26:44 +00:00
Jurko Gospodnetić
b800e2be7a Updated the Boost Build test system's documentation about Tester.run_build_system() parameters. Minor stylistic changes.
[SVN r45005]
2008-05-02 01:02:01 +00:00
Jurko Gospodnetić
e10cbb7c2a Minor stylistic changes.
[SVN r45004]
2008-05-02 00:57:29 +00:00
Jurko Gospodnetić
91c3a8c504 Added a new regression test making sure that the Boost Jam SORT builtin rule does not start getting quadratic behavior in some special cases as well as testing that the sorting algorithm works correctly. Related to the patch committed in revision 44195. Trimmed trailing spaces in tools/build/v2/test/test_all.py.
[SVN r45001]
2008-05-02 00:36:23 +00:00
Jurko Gospodnetić
9f994d6c90 Added support for tests checking that a build run did not take longer than expected to finish. Minor stylistic changes.
[SVN r45000]
2008-05-02 00:12:29 +00:00
Jurko Gospodnetić
c0f2cc300c Minor stylistic changes.
[SVN r44999]
2008-05-02 00:10:09 +00:00
Jurko Gospodnetić
692d2cb469 Minor stylistic changes.
[SVN r44995]
2008-05-01 21:19:11 +00:00
Jurko Gospodnetić
4372b775a9 Upgraded the internal Boost Build test system so it can be run from folders whose names contain spaces on Windows. Also added a workaround for a Python bug on Windows where it has some undocumented behavior when starting processes using commands containing quotes.
[SVN r44993]
2008-05-01 20:22:12 +00:00
Jurko Gospodnetić
eff732b908 Fixed a bug with BOOST_BUILD_PATH not getting set correctly in Boost Build unit tests in case it contained spaces.
[SVN r44991]
2008-05-01 19:47:37 +00:00
Jurko Gospodnetić
21648313a7 Updated the Boost Build test system documentation. Now all the command line options are described. Several function descriptions updated.
[SVN r44983]
2008-05-01 17:08:04 +00:00
Jurko Gospodnetić
f23d32f8b2 Updated the main Tester class comment in tools/build/v2/build/v2/test/BoostBuild.py describing all of its available constructor parameters. Minor stylistic changes.
[SVN r44982]
2008-05-01 17:06:02 +00:00
Jurko Gospodnetić
a4fc3f6257 Added explanation comments for match_exact() and match_re() functions in tools/build/v2/test/TestCmd.py. Removed corpse interpreted member from the TescCmd class and the related setter function in tools/build/v2/test/TestCmd.py. Minor stylistic comment changes.
[SVN r44981]
2008-05-01 17:04:22 +00:00
Jurko Gospodnetić
9ed056bac3 Minor stylistic comment changes.
[SVN r44980]
2008-05-01 17:01:03 +00:00
Jurko Gospodnetić
c36072398f Boost Build comment typo corrections and minor stylistic changes.
[SVN r44975]
2008-05-01 15:09:58 +00:00
Jurko Gospodnetić
912a38a70c Boost Build documentation typo correction. Removed trailing spaces. Minor stylistic changes.
[SVN r44971]
2008-05-01 10:03:15 +00:00
Jurko Gospodnetić
6e3eb35cca Renamed the Tester.wait_for_time_change() function to Tester.wait_for_time_change_since_last_build() to avoid confusion.
[SVN r44970]
2008-05-01 09:55:47 +00:00
Jurko Gospodnetić
c98691d310 Consistently converted tabs to spaces in tools/build/v2/test/BoostBuild.py to avoid confusion reading the Python source.
[SVN r44969]
2008-05-01 09:39:45 +00:00
Jurko Gospodnetić
6f19d6966d Corrected a typo in the Boost Build documentation.
[SVN r44953]
2008-04-30 20:58:05 +00:00
Jurko Gospodnetić
9a3718ddc3 Removed trailing spaces from tools/build/v2/build/modifiers.jam.
[SVN r44949]
2008-04-30 20:00:24 +00:00