Commit Graph

10158 Commits

Author SHA1 Message Date
Brad King 2aaa967715 KWSys: Fix process tree kill on 64-bit Windows
We enumerate processes to identify those whose parent is being killed so
that we can recursively kill the children.  Enumeration uses the
Process32(First|Next) windows API functions, which accept PROCESSENTRY32
objects to be filled.  This commit corrects the declaration of the entry
structure to account for its size on 64-bit Windows.
2009-11-30 16:30:19 -05:00
Zach Mullen b286e6ec7f Document new timeout command line option 2009-11-30 16:12:24 -05:00
Zach Mullen c17ce46c73 Align test output for timeout condition. 2009-11-30 16:09:00 -05:00
Zach Mullen a52c0118d4 Added the --timeout option to ctest command line. This sets a global timeout on all tests if no more specific timeout is set on them. 2009-11-30 16:08:11 -05:00
Brad King b21f1eaeae KWSys: Restore SIGSTOP/SIGKILL to end process tree
On UNIX systems we kill a tree of processes by performing a DFS walk of
the tree.  We send SIGSTOP to each process encountered, recursively
handle its children, and then send SIGKILL.

We once used the above approach in the past, but it was removed by the
commit "Do not send both SIGSTOP and SIGKILL when killing a process".
The commit was meant to work-around an OS X 10.3 bug in which the child
would not always honor SIGKILL after SIGSTOP.  At the time we wrongly
assumed that the process tree remains intact after SIGKILL and before
the child is reaped.  In fact the grandchildren may be re-parented to
ppid=1 even before the child is reaped, which causes the DFS walk to
miss them.
2009-11-30 13:14:02 -05:00
Brad King 4f43c1f276 Singly-quote target names for Watcom linker
The Watcom tools do their own command-line parsing and do not accept
double-quotes.  Instead we single-quote the target output name when
invoking wlink and other Watcom tools.  This fixes support for spaces in
the target output directory path when it is not under the build tree.
2009-11-30 11:16:24 -05:00
KWSys Robot 997f20b93b KWSys Nightly Date Stamp 2009-11-29 23:55:49 -05:00
KWSys Robot b936065084 KWSys Nightly Date Stamp 2009-11-28 23:55:57 -05:00
KWSys Robot d93bd3ac42 KWSys Nightly Date Stamp 2009-11-27 23:56:03 -05:00
KWSys Robot 8e7a630ff6 KWSys Nightly Date Stamp 2009-11-26 23:56:07 -05:00
KWSys Robot e802130fe2 KWSys Nightly Date Stamp 2009-11-25 23:56:11 -05:00
Zach Mullen de5d22ce1c BUG 9969: document set_tests_properties TIMEOUT property. 2009-11-25 11:25:04 -05:00
KWSys Robot f81a3dfff2 KWSys Nightly Date Stamp 2009-11-24 23:56:18 -05:00
Bill Hoffman 5d62c50732 Fix for bug #9965 -i was not passed to -E commands. 2009-11-24 20:13:29 -05:00
Zach Mullen 254d267e36 Mac has gettimeofday defined, but cmsys wasn't aware of that, so it was falling back to using time() which only provides second resolution. Fixed to allow usec res. 2009-11-24 14:10:05 -05:00
Zach Mullen 0ae0780055 BUG 9961: ctest --help should not display a Generators section 2009-11-24 11:46:06 -05:00
Brad King 02db43239b Teach link_directories to recognize relative paths
We create CMake Policy CMP0015 to make link_directories() treat relative
paths with respect to the source tree while retaining compatibility.
This makes it consistent with include_directories() and other commands.

Changes based on patch from Alex.  See issue #9697.
2009-11-24 11:16:38 -05:00
Brad King e1548142fb CTest: Move initial checkout to ctest_start()
In CTest command-driven script mode we support starting without a source
tree.  Previously the ctest_start() command would do some initialization
but could not do anything that required CTestConfig.cmake from the input
source tree.  Later, ctest_update() would run CTEST_CHECKOUT_COMMAND to
create the source tree, and then re-initialize everything.  This
delayed-initialization approach led to many complicated cases of which
only some worked.  For example, the second initialization only worked
correctly in Nightly mode and simply failed for Experimental and
Continuous builds.

A simpler solution is to run CTEST_CHECKOUT_COMMAND during ctest_start()
and then have a single initialization path.  In principle this change in
behavior could break scripts that set the checkout command after
ctest_start() but before ctest_update().  However, the convention we've
always followed has been to set all variables before ctest_start().

See issue #9450.
2009-11-24 08:58:59 -05:00
Brad King c2ba35787e CTest: Simplify Initialize method signature
We make the cmCTest::Initialize method private since it is only called
from inside the class implementation.  We also combine the two boolean
arguments into one since they both meant the same thing.
2009-11-24 08:58:48 -05:00
Brad King a03f801f7f Suppress Intel float-equality test warnings
We suppress Intel warning 1572 because the cases where we do equality
tests are valid.  Since this project does not do numerical computations
we need not worry about real instances against which this warning
protects.
2009-11-24 08:57:06 -05:00
KWSys Robot 24106f8600 KWSys Nightly Date Stamp 2009-11-23 23:56:25 -05:00
Clinton Stimpson b3023d2587 Remove dependence on Qt/STL support. 2009-11-23 17:30:00 -05:00
Brad King 574902fef2 KWSys: Work-around llvm-gcc-4.2 optimizer bug
Under -O3 optimization this compiler breaks our testProcess.c source file.
We force -O0 for the file to avoid the problem.
2009-11-23 15:31:29 -05:00
Bill Hoffman c4e002fd49 64 bit should be setting 64 bit and not 32 bit. 2009-11-23 14:09:24 -05:00
KWSys Robot 62acb921f3 KWSys Nightly Date Stamp 2009-11-22 23:56:29 -05:00
Alexander Neundorf 2d9c72c7e5 improve system/compiler specific settings of Eclipse
-use CMAKE_EXECUTABLE_FORMAT and CMAKE_SYSTEM_NAME to decide which binary
parsers to load (ELF/Mach O/PE)
-use CMAKE_(C|CXX)_COMPILER_ID to load the respective compiler error parser
-remove EclipseToolchainType, which was a mixture between compiler and operating system

Alex
2009-11-22 05:01:04 -05:00
KWSys Robot 892accffba KWSys Nightly Date Stamp 2009-11-21 23:56:35 -05:00
Alexander Neundorf 679c1422b4 -document CMAKE_EXTRA_GENERATOR
Alex
2009-11-21 19:07:03 -05:00
KWSys Robot d06ec80d0c KWSys Nightly Date Stamp 2009-11-20 23:56:43 -05:00
Brad King 9ec851bc90 KWSys: Set CMP0003 to NEW
The commit "Enable loose loop constructs in KWSys" set the minimum
required CMake version to 2.4.5.  This regressed the setting of CMP0003,
so we restore it in this commit.
2009-11-20 12:04:08 -05:00
Bill Hoffman 268448b891 Teach VS generators to set the MACHINE type correctly. 2009-11-20 11:55:28 -05:00
Brad King bbbdf54a35 Fix KWSys FundamentalType for Universal Binaries
The FundamentalType header needs to know type sizes at preprocessing
time.  This commit teaches it to avoid using CHECK_TYPE_SIZE because the
macro does not work for types whose size varies across architectuers in
Mac OS X universal binaries.  Fortunately the Mac compilers provide just
enough information to detect the needed type sizes during preprocessing.

We now use preprocessor macros instead of configuration tests whenever
they are available.  As a side effect this reduces the number of
try-compiles needed with GCC.

See issue #9913.
2009-11-20 08:38:18 -05:00
Brad King 1136b97647 Create KWSYS_PLATFORM_INFO_TEST macro
This macro helps KWSys perform try-compile tests that extract 'INFO'
strings out of compiled binaries.  It works for CMake 2.6 and above.
On CMake 2.4 it always returns an empty list of information values,
so this should be used only as an optimization until 2.6 is required.
2009-11-20 08:37:56 -05:00
Brad King 2d80c9e31a Check for 'long long' without computing size
In KWSys IOStream we need to detect whether 'long long' exists but we do
not need its size.  We avoid using CHECK_TYPE_SIZE because it does not
work for types whose size varies across architectuers in Mac OS X
universal binaries.  See issue #9913.
2009-11-20 08:37:33 -05:00
Brad King 2a789187fc Enable loose loop constructs in KWSys
We set CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS in KWSys's CMakeLists.txt file
to enable simpler endif() syntax for CMake 2.4.
2009-11-20 08:37:10 -05:00
KWSys Robot c6f13b97ea KWSys Nightly Date Stamp 2009-11-19 23:56:47 -05:00
KWSys Robot 59334dc8a4 KWSys Nightly Date Stamp 2009-11-18 23:56:53 -05:00
Brad King 5ca6f158d4 Use backslashes in VS 10 library dependencies
The list of libraries to be linked into the current target must be
specified using windows slashes to that UNC paths such as

  \\server\share\somelibrary.lib

work correctly.  See issue #9917.
2009-11-18 16:14:36 -05:00
Brad King c7b0dbb3fc Fix VS 10 value of CMAKE_CFG_INTDIR
VS 10 provides $(Configuration) and $(ConfigurationName) but only the
former is documented so we prefer it.  This also makes CMAKE_CFG_INTDIR
consistent with its documentation.  See issue #9916.
2009-11-18 15:50:29 -05:00
David Cole ba21622048 Fix bogus calls to GetMemoryStatus and GetMemoryStatusEx: need to set the dwLength member of the struct prior to calling. Otherwise it's just a garbage value from the stack. Also, pay attention to return value of GetMemoryStatusEx: if it indicates failure then just return 0 without using any of the other data the call returns. 2009-11-18 11:22:38 -05:00
Brad King 5fbefd66dc Fix get_filename_component(... REALPATH) work dir
The commit "Fix get_filename_component ABSOLUTE mode" broke REALPATH
treatment of relative paths because it stopped storing the absolute path
in local variable 'filename'.  This commit fixes the call to GetRealPath
to use the proper local variable and adds a test.
2009-11-18 10:56:40 -05:00
KWSys Robot 77fddc1f65 KWSys Nightly Date Stamp 2009-11-17 23:57:01 -05:00
KWSys Robot a52ebca54c KWSys Nightly Date Stamp 2009-11-16 23:57:05 -05:00
Bill Hoffman b1fe517688 Try to fix missing size_t on qnx 2009-11-16 17:03:59 -05:00
Luis Ibanez 69fdf711fe COMP: Fixing return type of the Get methods associated with variables that
were changed from "unsigned long" to "size_t" to solve warnings about
      64 bits to 32 bits truncations.
2009-11-16 12:43:44 -05:00
Zach Mullen 2921fa96ed Handle multiple carriage return issue on windows VS9. Also make sure that running ctest in showonly mode does not kill our cost store, since many ctest tests do this and corrupt our cost data. 2009-11-16 10:58:43 -05:00
KWSys Robot 8ec9935099 KWSys Nightly Date Stamp 2009-11-15 23:57:13 -05:00
Luis Ibanez 7f601830a2 COMP: Fixing type declarations and type conversions that could potentially
truncate 64 bits types into 32 bits types.
2009-11-15 15:57:06 -05:00
KWSys Robot bc303427bf KWSys Nightly Date Stamp 2009-11-14 23:57:18 -05:00
Bill Hoffman 22fb266d06 use different tar format to handle longer file names 2009-11-14 08:48:32 -05:00