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

1213 Commits

Author SHA1 Message Date
Steven Watanabe
30d35ce80d Make order stable. This restores the old behavior of printing includes in alphabetical order. When I added the topological sort for includes, it caused directories with no constraints to be printed in reverse alphabetical order under some circumstances. This broke existing users who relied on the original order. While I believe that users should not depend on any order for include directories that is not explicitly stated, I'd rather not gratuitously break such uses. This is especially true since explicitly ordered includes only worked in the simplest cases prior to my topological sort patch. 2015-02-28 14:16:34 -07:00
Oliver Kowalke
4a3a99bf30 check __aarch64__ for ARM
Macro __arm__ is not set on Aarch64 architecture
2015-02-25 12:23:40 +03:00
K. Noel Belcourt
f5b31b30aa Block signals to end of exec_cmd. 2015-01-02 16:25:18 -07:00
K. Noel Belcourt
87fa34a0c8 Fix typo in the cleanup to setpgid in parent process. 2014-12-29 08:40:51 -07:00
K. Noel Belcourt
dbb521a6ba Remove bogus setpgid diagnostic. 2014-12-28 22:01:42 -07:00
K. Noel Belcourt
b1e0b621c4 Make system call conform to posix.2 signal handling
a la Steven's APUE, pg 314.
2014-12-28 21:57:18 -07:00
Jessica Hamilton
7f0d33a7b0 haiku: platform support 2014-11-25 09:13:21 +03:00
Alain Miniussi
d21102f2a1 Detect the intel compiler in the environement.
The mentioned 'standard' path were quite old (9.0, last Intel
compiler version is 15.x as on Oct 2014). Keept the legacy
detection though.

Build in 64 bit (seems more common).
2014-11-06 09:54:22 +03:00
K. Noel Belcourt
156bc5c42e Make setpgid checks non-fatal.
Comment out the call to exit following a failed
called to setpgid.  Can re-enable in the future.
2014-10-24 18:11:34 -06:00
K. Noel Belcourt
7bcbc5ac31 Check setpgid return value in parent and child.
A user is having trouble with calls to setpgid failing
with EPERM and we're not sure whether it's the call to
the parent, or child process that is the source of the
failure.  Add check with explicit indication whether
the parent of child failed.
2014-10-24 16:40:47 -06:00
kjedruczyk
c79ea493ff Fixed null ptr dereference in executable_path on solaris when getexecname fails. 2014-10-24 11:05:42 +04:00
Jurko
f929602088 Return valid exit code from Windows batch scripts.
Technique used for setting Windows batch script exit codes in Boost.Build worked
correctly when the script is called from a Windows shell process and then checked
from inside that process. However, when run from a temporary shell process that
needs to terminate after running the script, such a process would always return
exit code 0.

This prevented anyone automating those scripts from detecting their success/
failure status by using their exit code without adding an additional batch script
layer.

For example, consider the following two script files:

  ret666.cmd:
    exit /b 666

  wrapper.cmd:
    call ret666.cmd

They both 'should return the value 666' and when run directly from a cmd.exe
console indeed both do (they set the shell process's ERRORLEVEL environment
variable to 666). However, when run like this:
  cmd /c <script-name>
running ret666.cmd causes the temporary cmd.exe process to exit with exit code
666, while running wrapper.cmd causes it to exit with exit code 0.
2014-10-24 11:03:15 +04:00
Noel Belcourt
252b5aa019 Block SIGCHLD during select.
Select was losing child termination signals so we explictly
block SIGCHLD during select, and unblock after select returns.
Tested on 256 core smp system, no hangs or zombies.  Thanks
to Alain Miniussi <alain.miniussi@oca.eu> for reporting this.
2014-10-21 00:23:53 -06:00
Jürgen Hunold
20a3fb2981 Merge pull request #5 from jivancic/more_than_64_jobs
[b2] support more than 64 parallel jobs (-j)
2014-07-02 16:55:03 +02:00
Marcel Raad
a106dd3798 Add support for MSVC 14 2014-06-11 21:14:03 +02:00
Steven Watanabe
d782ec52d0 Don't exit immediately on Windows if JAMSHELL is % and CreateProcess fails. 2014-04-03 14:13:33 -07:00
Steven Watanabe
23032af425 Parentheses are not allowed in REMs. Fixes #9800. 2014-04-03 09:13:53 -07:00
Steven Watanabe
702d40baf9 Fix build with MinGW. Fixes #9301. 2014-04-03 09:00:19 -07:00
Steven Watanabe
9732c695d1 Fix bug in pathnt.c that caused the results of GLOB to be downcased under some circumstances. 2014-03-24 15:18:37 -07:00
Steven Watanabe
9fb7faedcc Increment Boost.Build version 2014-03-07 12:24:12 -08:00
Steven Watanabe
7f8aac5d5e Add support for junctions on Windows 2014-02-06 14:54:40 -08:00
Dan Smith
28b7d5f82f Export BOOST_JAM_TOOLSET to calling script.
This change allows top-level scripts to determine which
toolchain was used by Boost.Build engine bootstrap process.
Top-level script of Boost C++ Libraries will be updated
separately.
2014-02-01 14:05:31 +04:00
K. Noel Belcourt
0ef40cb867 Need to bump MAXJOBS to 256.
Having to move to larger smp clusters so need more build
parallelism.
2014-01-29 10:22:01 -07:00
Juraj Ivančić
d2cf5aed72 Avoid creating a thread if remaining jobs can be placed in the same array as thread handles.
If we have to wait for, e.g. 65 jobs, first we create a thread which waits for first 63.
The remaining two can be waited on by the same WFMO call which waits for thread
completion. This will avoid creating 2 threads in this case.
2014-01-14 16:11:37 +01:00
Juraj Ivančić
db6c3d7a79 Support more than 64 parallel jobs (-j).
Windows WaitForMultipleObjects() can wait on max. 64 handles. This limitation is overcome by splitting the handle set into parts which are of adequate size, and spawning a thread which does the waiting.
2014-01-14 14:05:29 +01:00
Jürgen Hunold
4d5c1f1306 Ignore build directories 2013-12-20 11:33:30 +01:00
Steven Watanabe
c1395b4961 Make the handling of actions that produce multiple targets more correct.
[SVN r86561]
2013-11-04 22:35:14 +00:00
Eric Niebler
5e39960efd mingw patch for bootstrap from Stephan T. Lavavej, refs #8762
[SVN r86460]
2013-10-26 21:02:15 +00:00
Jürgen Hunold
acac696eac Fix #8754: Add support for upcoming msvc-12.0
Thanks to Lars Viklund for the patch

[SVN r84983]
2013-07-08 13:12:18 +00:00
Steven Watanabe
df2b34d63c Initial supprort for creating symlinks in the git layout.
[SVN r84524]
2013-05-27 00:02:43 +00:00
Steven Watanabe
ba1a63750c Increment Boost.Build version.
[SVN r84445]
2013-05-23 16:38:02 +00:00
Vladimir Prus
956bfb8dd6 Unreak compilation with Python support.
[SVN r84083]
2013-04-29 11:00:25 +00:00
Steven Watanabe
061f998f43 Optimize member function calls to use less string manipulation.
[SVN r83937]
2013-04-16 23:54:54 +00:00
Steven Watanabe
1f1f57dd08 Optimize generator.match-rank
[SVN r83933]
2013-04-16 20:48:13 +00:00
Steven Watanabe
dddeab8810 Enable /GL. It seems to help about 10%.
[SVN r83921]
2013-04-15 23:48:28 +00:00
Steven Watanabe
840dff3727 Eliminate some extra list_copy/INSTR_POPs.
[SVN r83920]
2013-04-15 23:30:36 +00:00
Steven Watanabe
700087b6cb Small optimization for [ on target return var ].
[SVN r83919]
2013-04-15 22:55:49 +00:00
Steven Watanabe
f9c3758b83 Skip searching inside non-existant directories.
[SVN r83892]
2013-04-14 02:40:08 +00:00
Steven Watanabe
2402d57e65 Revert [80304]. It's badly broken. (a) the buffer size is wrong, and (b) strncpy is the wrong function here.
[SVN r83889]
2013-04-14 00:09:21 +00:00
Steven Watanabe
24e81a0202 Don't create a separate timestamp table. The file table already contains everything we need.
[SVN r83888]
2013-04-13 23:09:57 +00:00
Steven Watanabe
43a8ec898f Fix valgrind errors
[SVN r83886]
2013-04-13 22:34:45 +00:00
Steven Watanabe
3f5c9749a7 Separate the code for recording explicit bindings from search.
[SVN r83858]
2013-04-12 20:36:52 +00:00
Steven Watanabe
2a75a35f2e Implement sequence.transform as a native rule.
[SVN r83855]
2013-04-11 22:55:25 +00:00
Steven Watanabe
5246c76b45 Add the size of the hash object itself to the profiling output.
[SVN r83853]
2013-04-11 22:52:16 +00:00
Steven Watanabe
67a4c83e87 Avoid creating the hash in an object when it isn't needed.
[SVN r83834]
2013-04-10 18:50:33 +00:00
Steven Watanabe
d9edc2aae8 Make property-set.get a native-rule. Use a binary search instead of creating a hash table. Reduces memory usage by 20% in trunk/status.
[SVN r83826]
2013-04-09 22:16:35 +00:00
Steven Watanabe
0009cda003 Optimize property-set initialization by reducing passing of large lists.
[SVN r83825]
2013-04-09 21:07:47 +00:00
Steven Watanabe
f7ca478bdd Adjust regex to improve performance.
[SVN r83821]
2013-04-09 19:25:12 +00:00
Steven Watanabe
f72b3ad06b Implement native_rules for regex.split and regex.replace.
[SVN r83816]
2013-04-08 19:43:36 +00:00
Steven Watanabe
62b79b8ebe Special case for $(x:G)
[SVN r83812]
2013-04-08 17:40:28 +00:00