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

2970 Commits

Author SHA1 Message Date
Jurko Gospodnetić
1b601354c0 Implemented a patch contributed by Igor Nazarenko reimplementing the list_sort() function to use a C qsort() function instead of a hand-crafted merge-sort algorithm. Makes some list sortings (e.g. 1,2,1,2,1,2,1,2,...) extremely faster, in turn significantly speeding up some project builds.
[SVN r44195]
2008-04-11 21:03:06 +00:00
Jurko Gospodnetić
116f956f3c Comment typo correction.
[SVN r44172]
2008-04-11 10:51:43 +00:00
Rene Rivera
69edbd4ede Initial support for cross-compiling to ARM architecture.
[SVN r44167]
2008-04-11 07:50:47 +00:00
Rene Rivera
272cddf6d7 Add support for toolset requirements at the definition level.
[SVN r44166]
2008-04-11 05:36:28 +00:00
Rene Rivera
7e238d9b7c Use local sorted() function to support Python < 2.4.
[SVN r44165]
2008-04-11 05:34:00 +00:00
Rene Rivera
a70059725f Add ARM architecture/instrustion-set.
[SVN r44139]
2008-04-09 21:20:28 +00:00
Jurko Gospodnetić
d7407a9ee1 Fixed a bug with bjam not handling the '\' root Windows path correctly without its drive letter being specified. One effect could be seen by MkDir rule on such a path always attempting to create its base folder even if that folder already exists. For example if you attempted to create folder '\Projects\XYZ\BuildDir' it would incorrectly think that '\Projects' folder does not exist and attempt to create it - thus causing the whole build to fail due to the underlying OS mkdir command failing.
This was caused by the file_dirscan() function in the filent.c module not working correctly when passed '\' as its dir. It then messed up when formatting its file-selection parameter for the _findfirst()/findfirst() API and constructed it as '\/*' which caused that API to fail and return -1 which was in turn being interpreted as 'file not found'.


[SVN r44088]
2008-04-07 10:32:09 +00:00
Jurko Gospodnetić
556474bbb2 Solved the problem with child process returning the value 259 (Windows constant STILL_ACTIVE) causing bjam never to detect that it exited and therefore keep running in an endless loop. Done by relying on the Windows WaitForMultipleObjects() function to detect when a process has exited instead of GetExitCodeProcess(). The later function's MSDN article (http://msdn2.microsoft.com/en-us/library/ms683189(VS.85).aspx) warns about this problem.
Solved the problem with bjam going into an active wait state, hogging up processor resources, when waiting for one of its child processes to terminate while not all of its available child process slots are being used. To see this bug in action, try compiling a simple C++ program on a 2 processor PC with the -j 2 command-line option and watching how much processor resources bjam uses while linking. Was caused by treating unused process slots as used in the try_wait() function, causing the WaitForMultipleObjects() Windows API call to exit instantly with an error which was then getting incorrectly interpreted as a timeout, starting the whole cycle anew.

  Solved a race condition between bjam's output reading/child process termination detection and the child process's output generation/termination which could have caused bjam not to collect the terminated process's final output.

  Extracted all GetExitCodeProcess() API calls into one location so it no longer gets called in three separate places.

  Minor comment changes in code touched by previous fixes.


[SVN r44087]
2008-04-07 09:55:18 +00:00
Jurko Gospodnetić
16996b4c0f Made the msvc toolset registration example consistent with its comment and added an additional one specifying the exact msvc version. Many stylistic comment changes.
[SVN r44086]
2008-04-06 22:36:59 +00:00
Vladimir Prus
55ac085435 Make xsltproc more usable standalone.
* tools/xsltproc.jam (xslt-xsltproc): Bind STYLESHEET.
	(xslt-xsltproc-dir): Likewise.

Thanks to Eric Woodruff for the bug report.


[SVN r44067]
2008-04-06 05:00:28 +00:00
Hartmut Kaiser
bdbfd15c54 Reverted unintenional changes.
[SVN r44060]
2008-04-05 17:03:16 +00:00
Hartmut Kaiser
238521ffb2 Reverted accidental change.
[SVN r44024]
2008-04-04 01:26:47 +00:00
Hartmut Kaiser
3d8074631b Wave: Some updates to the new 'preprocess_pragma_output' example. This fixes ticket #1752.
[SVN r44023]
2008-04-04 01:22:12 +00:00
Vladimir Prus
753d256a8b Fix 64-bit static libs on vacpp.
Patch from Christopher Cambly.


[SVN r43994]
2008-04-02 05:21:58 +00:00
Vladimir Prus
42cc564420 Remove leftover debug code
[SVN r43993]
2008-04-02 05:15:43 +00:00
Vladimir Prus
03bbc2448d Ubreak loading of build-system.jam.
[SVN r43991]
2008-04-01 18:39:55 +00:00
Vladimir Prus
02e16a934e For BoostBuild regression test, handle OSX intel.
Patch from Hugo Duncan.


[SVN r43989]
2008-04-01 18:22:21 +00:00
Vladimir Prus
a4c0303922 Allow "bjam path/to/file" to work.
[SVN r43986]
2008-04-01 17:40:39 +00:00
K. Noel Belcourt
73ee7119d2 Fix typo (forgot space before semi-colon).
[SVN r43920]
2008-03-29 02:03:29 +00:00
K. Noel Belcourt
bec988cac1 Fix address-model support for 32/64 bit code generation.
Replaced -mcmodel with -m32 / -m64.



[SVN r43900]
2008-03-28 02:10:04 +00:00
Vladimir Prus
12563e5b93 Fix #1698 (http://svn.boost.org/trac/boost/ticket/1698).
* build/virtual-target.jam (register): Ignore
    differences in incidental dependency features.


[SVN r43721]
2008-03-19 10:51:45 +00:00
K. Noel Belcourt
fe18a855d5 A user-config.jam that defined multiple python toolsets exposed
an error in the python.jam init rule.  Moved the feature
definition out of the init rule to avoid the feature redefinition
error.



[SVN r43566]
2008-03-11 17:57:54 +00:00
Vladimir Prus
2020628f5f Fix PCH on OSX
[SVN r43537]
2008-03-07 16:18:13 +00:00
Vladimir Prus
cb15d70fd4 Arrange for HPP source to be scanned for #includes, too.
This fixes PCH not being rebuild when some other headers
included from HPP being compiled change.

Thanks to Pierre-Luc Neron for the bug report.


[SVN r43527]
2008-03-06 06:57:27 +00:00
Vladimir Prus
6a0d9f9b3a Add 'pythonpath' feature to specify additional PYTHONPATH elements.
Make bpl-test correctly set dependencies if used with multiple .pyd
sources.

Patch from Joshua Napoli.


[SVN r43526]
2008-03-06 06:06:17 +00:00
Vladimir Prus
06c5eea393 Recognize that fact, for that for intel-win, <runtime-debuggin>
matters and should be added to the library name.


[SVN r43405]
2008-02-24 12:59:04 +00:00
Rene Rivera
57e521f9da Use the configured python interpreter instead of assuming it's in the path.
[SVN r43336]
2008-02-20 23:01:43 +00:00
Rene Rivera
cf7bf4fe90 Add the <python.interpreter> to all requirements to allow other toolsets to use the currently configured python instead of relying on python being in the path.
[SVN r43335]
2008-02-20 22:50:03 +00:00
Jurko Gospodnetić
c96c83b8cf Made the msvc toolset always explicitly enable or disable rtti support based on the <rtti> feature value instead of only setting it if <rtti>on and depending on it being disabled by default. The original behaviour did not work well with msvc 8.0 for which there was not way to disable rtti support as that compiler enables rtti support by default.
[SVN r43282]
2008-02-16 17:03:54 +00:00
Jurko Gospodnetić
3b2d214ead Added support for compiling C++ programs without RTTI support using the gcc toolset.
[SVN r43281]
2008-02-16 16:53:33 +00:00
Jurko Gospodnetić
cff99a8f17 Corrected comments related to the allowed linker & linker-type values. Minor stylistic changes.
[SVN r43280]
2008-02-16 16:50:42 +00:00
K. Noel Belcourt
014bb9e606 I've added the -single_module option to the intel-darwin.link.dll
action to fix this linker error when linking dylibs:

ld: common symbols not allowed with MH_DYLIB output format with the -multi_module option
boost/bin.v2/libs/system/build/intel-darwin-9.1/debug/macosx-version-10.4/error_code.o 
  definition of common __ZGVZNK5boost6system14error_category7messageEiE1s (size 16)
boost/bin.v2/libs/system/build/intel-darwin-9.1/debug/macosx-version-10.4/error_code.o 
  definition of common __ZZNK5boost6system14error_category7messageEiE1s (size 16)

though I would note that the common symbols problem occurs in a number of
other libraries (test, graph, spirit, ...) as well.



[SVN r43179]
2008-02-08 17:53:50 +00:00
K. Noel Belcourt
23aa013e45 Force PPC Darwin to use fork instead of vfork. This change
requires both the parent and child process to explicitly set
the process group id. Vfork guarantees the child process 
runs to the exec before it releases the parent process.  
Now that we use fork instead of vfork, it's possible for the 
parent to wait on the child process without having the child 
setpgid on itself.  This eliminates spurious hangs on ppc
darwin caused by either a race condition between vfork and
execvp, or a bug in the vfork implementation.

Added a test to ensure we don't try to read from the
stderr pipe descriptor if the descriptor's not valid.



[SVN r43176]
2008-02-08 16:32:35 +00:00
Douglas Gregor
70a5f0acfd Support for non-blocking MPI operations in Python, from Andreas Kloeckner
[SVN r43165]
2008-02-07 21:08:09 +00:00
Vladimir Prus
37f89fbf3d Fix <framework> with no path.
Patch from Jon Olsson.


[SVN r43152]
2008-02-07 11:04:30 +00:00
Vladimir Prus
f79e21815c Attempt to unbreak <library-file>
[SVN r43147]
2008-02-07 10:17:03 +00:00
K. Noel Belcourt
f7dc1379f8 Fix a typo in pgi.jam that prevented shared libraries
from being built correctly.



[SVN r43052]
2008-02-02 02:41:23 +00:00
Jurko Gospodnetić
e8237dea5d Added the missing end-of-line character when outputting DEBUG_SEARCH debug messages from file_build1(). This cleans up the -d+6 bjam output a lot.
[SVN r43046]
2008-02-01 01:49:16 +00:00
Jurko Gospodnetić
f2a6ad5a04 Corrected outputting native Windows paths so that it works correctly for absolute paths without the drive letter being explicitly specified, e.g. \aaa\bbb or /aaa/bbb.
[SVN r43045]
2008-02-01 00:46:50 +00:00
Jurko Gospodnetić
1860d4be8b Minor stylistic spacing changes. Remove trailing spaces.
[SVN r43044]
2008-02-01 00:44:23 +00:00
Jurko Gospodnetić
bbc3127902 Reverted changes made in rev 43038 which seem to have been committed by mistake and include some user specific settings in it local to the comitter's environment while this file is intended to be used as generic template for actual user-config.jam files and do nothing in case user does not specify his own settings there.
[SVN r43043]
2008-02-01 00:27:31 +00:00
Hartmut Kaiser
695a351df2 Wave: fixed expanding_function_like_macro()
[SVN r43038]
2008-01-31 20:57:47 +00:00
Vladimir Prus
54afe639fd Disable relinking when <target-os> is either windows or cygwin.
Fixes #1062.


[SVN r43008]
2008-01-29 06:40:06 +00:00
Vladimir Prus
fecca01612 Retain top-level boost-build.jam
[SVN r43007]
2008-01-29 06:28:09 +00:00
K. Noel Belcourt
c78a1ef596 Fixed a typo to yesterdays patch.
[SVN r42971]
2008-01-25 19:52:47 +00:00
K. Noel Belcourt
227781ad31 Changed the -soname and -shared options in intel-darwin.jam
to use -dynamiclib and -install_name, as done in darwin.jam.
Apparently the Intel compilers on the Mac support the same 
options as gcc for setting the internal dynamic library name.



[SVN r42960]
2008-01-25 04:41:16 +00:00
Eric Niebler
f6700e9537 fix quickbook scanner to recognize the [import ...] block
[SVN r42939]
2008-01-23 23:25:24 +00:00
Jurko Gospodnetić
a27f366998 Minor stylistic changes:
* Removed trailing spaces.
  * Added a comment for code discovering the user's home-directories.
  * Removed a stale regex import.
  * Removed an old corpse 'identity' rule found inside the __test__ rule.

[SVN r42884]
2008-01-20 20:18:50 +00:00
Jurko Gospodnetić
228bba284b Stylistic changes. Removed trailing spaces. Removed empty lines. Corrected comment typos and wording.
[SVN r42837]
2008-01-18 01:14:17 +00:00
Jurko Gospodnetić
1fefa3985b Minor stylistic comment changes. Removed trailing spaces.
[SVN r42801]
2008-01-15 21:13:52 +00:00