Commit Graph

12124 Commits

Author SHA1 Message Date
Vladimir Prus
49e9219a61 Adjust boostbook test for boostbook changes. It
seems that doxygen target now produces a target
with different name, and it does not produce
any target unless there's explicit dependency
on it. I'm not sure I like the change, but
anyway.


[SVN r39605]
2007-09-29 18:17:27 +00:00
Vladimir Prus
8b00e3a41e Adjust boostbook test for boostbook changes. It
seems that doxygen target now produces a target
with different name, and it does not produce
any target unless there's explicit dependency
on it. I'm not sure I like the change, but
anyway.


[SVN r39605]
2007-09-29 18:17:27 +00:00
Vladimir Prus
6f8b6cdea4 Adjust date
[SVN r39603]
2007-09-29 17:31:44 +00:00
Vladimir Prus
411e5f6d40 Adjust date
[SVN r39603]
2007-09-29 17:31:44 +00:00
Vladimir Prus
82de2c1737 Update download locations.
[SVN r39602]
2007-09-29 17:29:49 +00:00
Vladimir Prus
e752fc19a8 Update download locations.
[SVN r39602]
2007-09-29 17:29:49 +00:00
Vladimir Prus
c9dcace238 Update version.
[SVN r39601]
2007-09-29 17:28:10 +00:00
Vladimir Prus
94acbffc69 Update version.
[SVN r39601]
2007-09-29 17:28:10 +00:00
Vladimir Prus
ad7f3a0dc1 Summarize changes
[SVN r39597]
2007-09-29 17:12:49 +00:00
Vladimir Prus
d8fe0e3783 Summarize changes
[SVN r39597]
2007-09-29 17:12:49 +00:00
K. Noel Belcourt
aa1925001b Fix pathscale.jam so -rpath is passed correctly to the
linker.



[SVN r39563]
2007-09-27 03:41:11 +00:00
K. Noel Belcourt
957c1e8dfc Fix pathscale.jam so -rpath is passed correctly to the
linker.



[SVN r39563]
2007-09-27 03:41:11 +00:00
K. Noel Belcourt
8b734cab67 Add macros to gcc.hpp to support pathscale toolset.
Added an optimization to the -lx unix timeout code.  I
compute the amount of time the select call should sleep
until the "oldest" process times out.  This ensures that
all processes that timeout will be killed within one
second of their expiration.



[SVN r39534]
2007-09-25 23:11:12 +00:00
K. Noel Belcourt
733b716783 Add macros to gcc.hpp to support pathscale toolset.
Added an optimization to the -lx unix timeout code.  I
compute the amount of time the select call should sleep
until the "oldest" process times out.  This ensures that
all processes that timeout will be killed within one
second of their expiration.



[SVN r39534]
2007-09-25 23:11:12 +00:00
K. Noel Belcourt
19089711ac Add pgi.hpp configuration file for the Portland Group.
Fixed problems with threading, pic code, missing math
library, etc. to get mipspro toolset working better.

Updated pgi toolset to fix various problems with the
link line.



[SVN r39531]
2007-09-25 20:34:36 +00:00
K. Noel Belcourt
8ec23781c2 Add pgi.hpp configuration file for the Portland Group.
Fixed problems with threading, pic code, missing math
library, etc. to get mipspro toolset working better.

Updated pgi toolset to fix various problems with the
link line.



[SVN r39531]
2007-09-25 20:34:36 +00:00
K. Noel Belcourt
685fb4a7f8 Get pic and threading working with pathscale.
[SVN r39518]
2007-09-25 03:39:06 +00:00
K. Noel Belcourt
2c93f65b54 Get pic and threading working with pathscale.
[SVN r39518]
2007-09-25 03:39:06 +00:00
K. Noel Belcourt
7467bfb33a Fix a problem with the -lx timeout code on ppc darwin.
The intel based darwin system was killing subprocesses
okay but for some reason, ppc systems were not.  This
change fixes the timeout code so subprocesses are
properly killed on ppc darwin systems.



[SVN r39514]
2007-09-24 21:01:45 +00:00
K. Noel Belcourt
efbfed44b2 Fix a problem with the -lx timeout code on ppc darwin.
The intel based darwin system was killing subprocesses
okay but for some reason, ppc systems were not.  This
change fixes the timeout code so subprocesses are
properly killed on ppc darwin systems.



[SVN r39514]
2007-09-24 21:01:45 +00:00
Rene Rivera
f0f0ed36dd Make per target manifest files and a single global catalog files, so that one can have multiple boostbook targets in one project.
[SVN r39506]
2007-09-24 13:24:23 +00:00
Rene Rivera
6587f9cb97 Make per target manifest files and a single global catalog files, so that one can have multiple boostbook targets in one project.
[SVN r39506]
2007-09-24 13:24:23 +00:00
Markus Schöpflin
be9e478dfa Add needed include (according to XOPEN) for definition of WIFEXITED and WEXITSTATUS.
[SVN r39499]
2007-09-24 07:38:35 +00:00
Markus Schöpflin
c42e01f88d Add needed include (according to XOPEN) for definition of WIFEXITED and WEXITSTATUS.
[SVN r39499]
2007-09-24 07:38:35 +00:00
Markus Schöpflin
ee12ae74e0 Removed unused variable.
[SVN r39498]
2007-09-24 07:31:43 +00:00
Markus Schöpflin
bb6a78bebe Removed unused variable.
[SVN r39498]
2007-09-24 07:31:43 +00:00
K. Noel Belcourt
5b0fd488b3 Fix problems with Pathscale toolset (-G and -h options
are unknown).   Thanks John Maddock for pointing these
out.



[SVN r39492]
2007-09-23 21:31:43 +00:00
K. Noel Belcourt
08a3ad9922 Fix problems with Pathscale toolset (-G and -h options
are unknown).   Thanks John Maddock for pointing these
out.



[SVN r39492]
2007-09-23 21:31:43 +00:00
K. Noel Belcourt
27447ae6fa Another patch to fix the -lx timeout code. Some actions spawn
sub-processes after bjam forks a new process (for example, after
g++ is forked by bjam, g++ then forks sub-processes like cc1plus).
The timeout code would kill the g++ process, but might not kill
the subprocesses spawned by g++.

I fixed this problem by making the bjam fork'ed process (g++) a 
session leader by calling setsid() before calling exec.  The setsid 
call, in essence, gives all child processes a parent process id 
(ppid) of the g++ process id.  This guarantees that killing g++ 
will kill all child processes spawned by g++ as well.

One last comment on the maximum process time before a process is actually
killed.  The worst case process elapsed time is 2x seconds if -lx is
given.  The reason is that a process might be one second away from being
killed and, if there's no other signal activity, the select function will
wait x seconds before timing out and killing any active processes.  So
if you say -lx and monitor a build known to have lengthy processes, you 
may see a process with up to 2x seconds of time before it is killed.



[SVN r39467]
2007-09-21 22:38:17 +00:00
K. Noel Belcourt
2f5d59569d Another patch to fix the -lx timeout code. Some actions spawn
sub-processes after bjam forks a new process (for example, after
g++ is forked by bjam, g++ then forks sub-processes like cc1plus).
The timeout code would kill the g++ process, but might not kill
the subprocesses spawned by g++.

I fixed this problem by making the bjam fork'ed process (g++) a 
session leader by calling setsid() before calling exec.  The setsid 
call, in essence, gives all child processes a parent process id 
(ppid) of the g++ process id.  This guarantees that killing g++ 
will kill all child processes spawned by g++ as well.

One last comment on the maximum process time before a process is actually
killed.  The worst case process elapsed time is 2x seconds if -lx is
given.  The reason is that a process might be one second away from being
killed and, if there's no other signal activity, the select function will
wait x seconds before timing out and killing any active processes.  So
if you say -lx and monitor a build known to have lengthy processes, you 
may see a process with up to 2x seconds of time before it is killed.



[SVN r39467]
2007-09-21 22:38:17 +00:00
Rene Rivera
1052ed2cbc Adjust timing to avoid spurious test failures on busy machines.
[SVN r39466]
2007-09-21 21:01:45 +00:00
K. Noel Belcourt
fcd347ebde Added diagnostic message to output.c to inform users
when a process has timed out and been killed.

Because timed out processes now emit a diagnostic, I
had to update option_l.jam so we wouldn't break test.sh
when it runs.

Minor cleanup to execunix.c to remove unneeded code
and to set the process exit status as returned from
waitpid.  The exit status is used to identify timed
out processes so we can emit a diagnostic to the user.



[SVN r39423]
2007-09-20 19:06:54 +00:00
K. Noel Belcourt
b98a038361 Added diagnostic message to output.c to inform users
when a process has timed out and been killed.

Because timed out processes now emit a diagnostic, I
had to update option_l.jam so we wouldn't break test.sh
when it runs.

Minor cleanup to execunix.c to remove unneeded code
and to set the process exit status as returned from
waitpid.  The exit status is used to identify timed
out processes so we can emit a diagnostic to the user.



[SVN r39423]
2007-09-20 19:06:54 +00:00
Rene Rivera
f267ee63a7 Add partial code for indicating to the output function that a command finished because of a timeout.
[SVN r39416]
2007-09-20 16:31:44 +00:00
Rene Rivera
36e3b43722 Add partial code for indicating to the output function that a command finished because of a timeout.
[SVN r39416]
2007-09-20 16:31:44 +00:00
Boris Gubenko
6f669e0b40 add -AA to link actions, remove +DD64
[SVN r39409]
2007-09-20 12:42:27 +00:00
Boris Gubenko
cba8401523 add -AA to link actions, remove +DD64
[SVN r39409]
2007-09-20 12:42:27 +00:00
Rene Rivera
5449daceab Now that the exec*.c files are really platform specific, adjust the build script to only build the needed ones for MinGW.
[SVN r39400]
2007-09-20 04:36:27 +00:00
Rene Rivera
ed293dd9ad Now that the exec*.c files are really platform specific, adjust the build script to only build the needed ones for MinGW.
[SVN r39400]
2007-09-20 04:36:27 +00:00
K. Noel Belcourt
e50a11396b Fix a bug Chris Cambly reported with the timeout code on
AIX.  Apparently AIX doesn't permit a forked process to 
reference (set) memory in the parent's address space.  No 
other system seems to object to this practice but it taught
me a lesson!

The fix was to move the call to get the child process start 
time directly before calling vfork.  This isn't really fair 
to the forked process as we start counting time against the
child process that we haven't even forked (we count the 
vfork/exec call overhead against the child process).

Tested Rene's test.sh script on Sun, Linux, AIX, and Sgi.



[SVN r39399]
2007-09-20 04:11:11 +00:00
K. Noel Belcourt
cdffd8e28e Fix a bug Chris Cambly reported with the timeout code on
AIX.  Apparently AIX doesn't permit a forked process to 
reference (set) memory in the parent's address space.  No 
other system seems to object to this practice but it taught
me a lesson!

The fix was to move the call to get the child process start 
time directly before calling vfork.  This isn't really fair 
to the forked process as we start counting time against the
child process that we haven't even forked (we count the 
vfork/exec call overhead against the child process).

Tested Rene's test.sh script on Sun, Linux, AIX, and Sgi.



[SVN r39399]
2007-09-20 04:11:11 +00:00
Rene Rivera
a37493c285 Work around boostbook path issues.
[SVN r39397]
2007-09-19 19:47:25 +00:00
Rene Rivera
733d202e9d Make get-values preserve the values exactly, instead of treating them like paths and hence munging them.
[SVN r39395]
2007-09-19 19:29:31 +00:00
Rene Rivera
08458f4597 Make get-values preserve the values exactly, instead of treating them like paths and hence munging them.
[SVN r39395]
2007-09-19 19:29:31 +00:00
Rene Rivera
26281fe0d4 Remove some outdated comments as some bugs are now fixed. Try to work around boostbook XSL.
[SVN r39385]
2007-09-19 04:54:30 +00:00
K. Noel Belcourt
6307475e08 Update the mipspro.jam file so have the compiler
emit each referenced template in the object file
where referenced and then rely on the linker to
remove duplicates.

Added some missing macros to sgi_mipspro.hpp.



[SVN r39382]
2007-09-19 02:59:00 +00:00
K. Noel Belcourt
7aa07c8664 Update the mipspro.jam file so have the compiler
emit each referenced template in the object file
where referenced and then rely on the linker to
remove duplicates.

Added some missing macros to sgi_mipspro.hpp.



[SVN r39382]
2007-09-19 02:59:00 +00:00
K. Noel Belcourt
5431dfdbd2 Remove unnecessary overhead in execunix.c related to
the timeout implementation.  Also removed unused variables
as diagnosed by the Sgi (mipspro) compiler.

Fixed const-correctness error in operations.hpp that
Sgi complained about.

There's no strerror_r function on Irix 6.5 so I replaced
it with a strerror call.

With these changes, I can now build process jam log and
start running Sgi tests.



[SVN r39378]
2007-09-18 22:46:26 +00:00
K. Noel Belcourt
30607d79c5 Remove unnecessary overhead in execunix.c related to
the timeout implementation.  Also removed unused variables
as diagnosed by the Sgi (mipspro) compiler.

Fixed const-correctness error in operations.hpp that
Sgi complained about.

There's no strerror_r function on Irix 6.5 so I replaced
it with a strerror call.

With these changes, I can now build process jam log and
start running Sgi tests.



[SVN r39378]
2007-09-18 22:46:26 +00:00
Rene Rivera
9b86b6de5a Replace breaks, to remove warnings, with custom structural templates.
[SVN r39367]
2007-09-18 17:02:04 +00:00