Commit Graph

10168 Commits

Author SHA1 Message Date
David Cole 0b38bb4c53 Fix issue #2336 - honor the -C arg to ctest. Honor it for all stages of running -D dashboards from the command line and running ctest_configure, ctest_build and ctest_test commands in -S scripts. Also, allow a script to change it by setting the CTEST_CONFIGURATION_TYPE variable: allows for multiple configuration build/test cycles within one script. Add a new signature for the cmake command build_command that accepts CONFIGURATION as one argument. The original build_command signature is still there, but now marked as deprecated in the documentation. Of course... also add CTestConfig tests to verify that -C is honored for -D dashboards and -S scripts. 2009-12-04 12:09:01 -05:00
KWSys Robot d2f1dac136 KWSys Nightly Date Stamp 2009-12-03 23:55:24 -05:00
KWSys Robot 5b0f15f509 KWSys Nightly Date Stamp 2009-12-02 23:55:34 -05:00
Bill Hoffman 22c37b2b19 Hanle the case where a test can not be run because it is a bad executable. 2009-12-02 16:37:43 -05:00
Brad King 9daa4a6c3f Remove CMAKE_SHARED_MODULE_RUNTIME_${lang}_FLAG
This platform configuration variable is unused.  Modules are built using
the value of CMAKE_SHARED_LIBRARY_RUNTIME_${lang}_FLAG.
2009-12-02 15:17:32 -05:00
Brad King 8c5d817779 Fix .vfproj files with per-source settings
The Intel Fortran plugin to VS defines VFFortranCompilerTool as the
compiler tool.  This commit fixes generated projects to use that tool
for per-source settings instead of VCCLCompilerTool.  We were already
using it for target-wide compiler settings.
2009-12-02 11:49:52 -05:00
KWSys Robot cdc9ef3b5a KWSys Nightly Date Stamp 2009-12-01 23:55:35 -05:00
Brad King 1a5f209e62 KWSys: List processes with "ps -ef" on OpenSolaris
In order to kill process trees we need to list all processes to find
those whose parent we are killing.  We implement process listing on
OpenSolaris by using "ps -ef" and parsing the resulting format:

     UID   PID  PPID   C    STIME TTY         TIME CMD
     %*s    %d    %d   %*[^\n]\n
2009-12-01 08:37:14 -05:00
Brad King be36c14bea KWSys: Use "ps -Af" for process list on QNX
In order to kill process trees we need to list all processes to find
those whose parent we are killing.  We implement process listing on QNX
using "ps -Af" and parsing the resulting format:

  UID        PID       PPID  C STIME TTY          TIME CMD
  %*d         %d         %d  %*[^\n]\n
2009-12-01 08:10:22 -05:00
KWSys Robot afef52454e KWSys Nightly Date Stamp 2009-11-30 23:55:43 -05:00
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