Commit Graph

10675 Commits

Author SHA1 Message Date
David Cole b2634b6aa3 Detect CMake warnings and errors in build output.
Fix niggly in ExternalProject that would inadvertently
create a log file of output when a command was explicitly
set to the empty string.

Also, increase the default value for showing context
around build errors to 10 lines, up from 6. Also add
the ability to customize this setting so that users
can put it back to 6 or even lower if they want, or
show more if they want.
2010-07-10 15:04:31 -04:00
KWSys Robot 92473b32ce KWSys Nightly Date Stamp 2010-07-10 00:10:26 -04:00
Brad King 70154efef8 KWSys: Avoid undefined behavior in Process crash tests
Clang is smart enough to recognize that "*(int*)0=0" invokes undefined
behavior, warns, and produces an "undefined instruction".  The message
in commit "Avoid Clang optimizer bug in testProcess-[45]" (2010-07-02)
is incorrect; this is not a Clang bug.  It really is undefined
behavior.  Use "*(int*)1=0" to produce a crash instead.
2010-07-09 10:40:06 -04:00
KWSys Robot a1a4a2cb6d KWSys Nightly Date Stamp 2010-07-09 00:10:23 -04:00
KWSys Robot d6a8fedfbf KWSys Nightly Date Stamp 2010-07-08 00:10:22 -04:00
KWSys Robot f2dc6a664d KWSys Nightly Date Stamp 2010-07-07 00:10:31 -04:00
Brad King 28a16d1cc4 Merge branch 'improve-test-cost-sorting' 2010-07-06 10:24:31 -04:00
Brad King fd3e95f3ef Merge branch 'fix-test-dependency-bug' 2010-07-06 10:22:04 -04:00
Brad King 54b1dc4161 Merge branch 'fix-cmake-conversion-warnings' 2010-07-06 10:20:50 -04:00
Brad King a5d67513a2 Merge branch 'user-override-try-compile' 2010-07-06 10:18:45 -04:00
KWSys Robot f74baa4fcf KWSys Nightly Date Stamp 2010-07-06 00:10:23 -04:00
KWSys Robot c0468481f8 KWSys Nightly Date Stamp 2010-07-05 00:10:20 -04:00
KWSys Robot efee95cd71 KWSys Nightly Date Stamp 2010-07-04 00:10:23 -04:00
KWSys Robot 4b661784b4 KWSys Nightly Date Stamp 2010-07-03 00:10:23 -04:00
Brad King c3389d4ce2 KWSys: Avoid Clang optimizer bug in testProcess-[45]
Clang's optimizer, as of clang version 2.8 (trunk 107463), produces the
undefined instruction 'ud2' for the code "*(int*)0=0" on OS X x86_64.
It causes our crash tests to fail because the child process exits with
an invalid instruction instead of a segmentation fault.  Work around the
bug by using "*(int*)1=0" in this case.
2010-07-02 14:00:04 -04:00
KWSys Robot 9f3524f469 KWSys Nightly Date Stamp 2010-07-02 00:10:19 -04:00
Zach Mullen 142edf8ad4 More robust cost-based scheduling impl 2010-07-01 14:10:49 -04:00
KWSys Robot 6ebb4843a6 KWSys Nightly Date Stamp 2010-07-01 00:10:21 -04:00
Brad King 3b26fa13c4 KWSys: Optionally suppress consistent test failures
Add option KWSYS_TEST_BOGUS_FAILURES that can be set by a containing
project or in the CMake cache to list tests known to fail consistently
on a buggy system.
2010-06-30 11:42:08 -04:00
Brad King b84220b287 KWSys: Use short fallback timeout for Process tests
If any of the KWSys Process tests take more than a minute or two then
something is wrong.  There is no need to wait for a long default
timeout.
2010-06-30 11:41:59 -04:00
Zach Mullen 3e52000a07 Fix cycle detection for test dependencies 2010-06-30 10:39:17 -04:00
Brad King 050af165bb Fix integer conversions in cpack
These were revealed by GCC's -Wconversion option.
2010-06-30 09:57:07 -04:00
KWSys Robot b65cd9b70b KWSys Nightly Date Stamp 2010-06-30 00:10:24 -04:00
Brad King ccd8c69728 Merge branch 'vs-ps3-projects' 2010-06-29 14:36:12 -04:00
Brad King 0bcf88ff74 Merge branch 'fix-warnings' 2010-06-29 14:33:10 -04:00
Brad King fec71d8016 Fix signed/unsigned comparison warnings in ccmake
Commit ff1f8d0b (Fix or cast more integer conversions in cmake) changed
a member type from int to size_t.  Update the types of variables
compared to these values to be unsigned also.
2010-06-29 11:09:36 -04:00
Brad King c8ea2705a7 Use same type in both cases of '?:' operator
Both possible result values need to be convertible to the same type.
Some compilers fail to recognize that they can construct std::string
from the empty string literal, so state it explicitly.
2010-06-29 10:01:59 -04:00
Brad King ff1f8d0b53 Fix or cast more integer conversions in cmake
These were revealed by GCC's -Wconversion option.  Fix types where it is
easy to do so.  Cast in cases we know the integer will not be truncated.
2010-06-29 09:52:12 -04:00
Brad King 5c16024fbb KWSys: Pass ptrdiff_t check result to System.c
Since commit "Provide unix-sytle command line parsing" (2009-07-13) the
reference to KWSYS_C_HAS_PTRDIFF_T in System.c has been meaningless
because the macro was never passed to the compiler!
2010-06-29 08:50:03 -04:00
Brad King d2222d529d KWSys: Cleanup putenv leak option implementation
Define KWSYS_DO_NOT_CLEAN_PUTENV only for the implementation.  It does
not need to be configured in the interface of "Configure.hxx".
2010-06-29 08:50:03 -04:00
David Genest 295b5b60df Honor CMAKE_USER_MAKE_RULES_OVERRIDE in try_compile (#10902) 2010-06-29 08:29:41 -04:00
KWSys Robot 198e00f6e8 KWSys Nightly Date Stamp 2010-06-29 00:10:22 -04:00
Brad King 13ca4ef665 VS: Always separate preprocessor defs by semicolon (#10902)
Separation by ',' only works in VS 2008 and below and does not work in
the PlayStation3 VS plugin.  Separation by ';' works in VS 10 and all
prior versions.
2010-06-28 16:20:01 -04:00
KWSys Robot a55aee5cdd KWSys Nightly Date Stamp 2010-06-28 00:10:23 -04:00
David Cole 415900ba77 Eliminate -Wconversion warnings.
Change types of local variables, or casting, or re-arrange
expressions to get rid of "conversion may alter value" warnings
as seen on recent dashboard submissions from londinium.kitware.
2010-06-27 11:22:05 -04:00
KWSys Robot 4745f4996b KWSys Nightly Date Stamp 2010-06-27 00:10:22 -04:00
KWSys Robot b699509aee KWSys Nightly Date Stamp 2010-06-26 00:10:24 -04:00
Brad King 6fc4cd8680 Fix or cast integer conversions in cmake
These were revealed by GCC's -Wconversion option.  Fix types where it is
easy to do so.  Cast in cases we know the integer will not be truncated.
2010-06-25 09:05:15 -04:00
KWSys Robot da0190a4a7 KWSys Nightly Date Stamp 2010-06-25 00:10:17 -04:00
Brad King 566bb2d078 Merge branch 'ctest-git-empty-commits' 2010-06-24 10:41:20 -04:00
Brad King b86a551ede Merge branch 'vs10-path-issue' 2010-06-24 10:40:26 -04:00
Brad King 5890f562e3 Merge branch 'fix-ctest-parallel' 2010-06-24 10:40:19 -04:00
Brad King 73144a8f1c Merge branch 'fix_ctest_failure_code' 2010-06-24 10:35:10 -04:00
KWSys Robot 0d400c373e KWSys Nightly Date Stamp 2010-06-24 00:01:06 -04:00
Zach Mullen 1a4c0c55c7 Parallel CTest hangs if serial test has depends 2010-06-23 17:18:59 -04:00
David Cole d710a78a34 For VS10: Really use full path file names.
I naively assumed in my previous commit that the Convert call
would correctly convert a relative path file name correctly
relative to the makefile's current output directory. It actually
converts it relative to the process's current working directory.
So it would be different depending on how you launched cmake-gui.
This commit ensures that the generated files are always the same
by starting with a full path to begin with, based on the makefile
GetCurrentOutputDirectory method.
2010-06-23 16:39:28 -04:00
Brad King bbfe241c6a CTest: Parse empty Git commits correctly
Git's diff-tree format has no '\n'-terminated blank line at the end of
its commit message body block if there are no diff lines.  Instead the
message body is terminated by '\0' and there is no diff section.  Teach
CTest to parse the format in this case.
2010-06-23 09:14:43 -04:00
KWSys Robot b141862564 KWSys Nightly Date Stamp 2010-06-23 00:01:16 -04:00
Brad King 71cefc35c0 Merge branch 'script-mode-keep-makeflags' 2010-06-22 09:59:20 -04:00
Brad King d4206dc62b Merge branch 'vs10-path-issue' 2010-06-22 09:58:57 -04:00
Brad King 0336d822cc Merge branch 'doc_ctest_build_target' 2010-06-22 09:56:53 -04:00
Brad King 3efb7f34a4 Merge branch 'fix-stoptime-mem-leak' 2010-06-22 09:56:39 -04:00
Bill Hoffman 8f8c1edca2 Fix for bug #10859, ctest exit exception incorrectly reported.
CTest was using the return value from the program instead of the
exit exception value for the process.
2010-06-22 09:55:09 -04:00
KWSys Robot d7770578d1 KWSys Nightly Date Stamp 2010-06-22 00:01:22 -04:00
David Cole 616462ce45 Use full path file names to express dependencies.
This is especially important for the Visual Studio 10
generator and its quirky current working directory
behavior.

Also, emit more information about exactly what files are
out of date when cmakeCheckStampFile returns false.
2010-06-21 11:53:48 -04:00
Brad King 0a7c551bf6 Preserve ENV{MAKEFLAGS} in CMake script mode
Commit 02f7cfbc (Need to remove the MAKEFLAGS when cmake starts,
2003-05-13) removed the MAKEFLAGS environment variable when CMake starts
to prevent try_compile() from inheriting "make -i".  This is unnecessary
in script mode (cmake -P).  Instead remove the variable only when
configuring a project.
2010-06-21 10:50:11 -04:00
KWSys Robot e45a600a0f KWSys Nightly Date Stamp 2010-06-21 00:01:04 -04:00
KWSys Robot dc2f8590d1 KWSys Nightly Date Stamp 2010-06-20 00:01:04 -04:00
KWSys Robot 10c84dc10e KWSys Nightly Date Stamp 2010-06-19 00:01:04 -04:00
KWSys Robot abe355ef1c KWSys Nightly Date Stamp 2010-06-18 00:01:02 -04:00
David Cole 9082fc8a47 Use full path file names in generate.stamp.list.
The full path file names are important for Visual Studio 10, which
apparently changes the current working directory when running
custom command rules.
2010-06-17 17:12:57 -04:00
KWSys Robot d7f8df694a KWSys Nightly Date Stamp 2010-06-17 00:01:03 -04:00
KWSys Robot 2da22e7f5c KWSys Nightly Date Stamp 2010-06-16 00:01:04 -04:00
Brad King b4aa834900 Merge branch 'ctest-git-flexibility' 2010-06-15 14:10:41 -04:00
Brad King a8a10d0f6a Merge branch 'vs10-source-groups' 2010-06-15 14:07:58 -04:00
Brad King e82d918322 Merge branch 'coverage_exclusion_from_glob' 2010-06-15 14:07:02 -04:00
Brad King 5444bd6ca3 Merge branch 'tru64-make-includes' 2010-06-15 14:03:26 -04:00
Brad King c9f8bbf226 Merge branch 'tru64-cmOStringStream-vtable' 2010-06-15 14:03:12 -04:00
Brad King 8209300a6b Merge branch 'source-file-property-documentation' 2010-06-15 13:59:58 -04:00
Brad King d9b2da139d Merge branch 'mingw-response-files' 2010-06-15 13:58:58 -04:00
Zach Mullen 6e7f182318 Document ctest_build() TARGET option 2010-06-15 10:43:30 -04:00
Zach Mullen 960dc2b10f Do not exit if stoptime is passed. 2010-06-15 10:29:35 -04:00
KWSys Robot d714b18ac5 KWSys Nightly Date Stamp 2010-06-15 00:01:07 -04:00
Brad King c592df8377 Tru64: Use full-path include directives in Makefiles (#10569)
Tru64's make(1) resolves relative paths in "include" directives with
respect to the includer.  This is inconsistent with all other known make
tools.  Note that this make tool treats the path literally so we cannot
use our standard FULL path code which escapes spaces.  Instead qualify
the paths with $(CMAKE_BINARY_DIR) to avoid the problem.
2010-06-14 13:06:39 -04:00
KWSys Robot f7f8396337 KWSys Nightly Date Stamp 2010-06-14 00:01:03 -04:00
KWSys Robot 8d29fa46ab KWSys Nightly Date Stamp 2010-06-13 00:01:02 -04:00
KWSys Robot a7abcd1442 KWSys Nightly Date Stamp 2010-06-12 00:01:05 -04:00
Christoph Watzl 2d9dc9ac65 Fix nested source groups with VS 10 (#9863)
Add intermediate (but empty) source group filters for the container
groups.
2010-06-11 15:44:55 -04:00
Zach Mullen 9d6567a269 Extra coverage glob should subtract the explicitly defined excluded files 2010-06-11 14:17:00 -04:00
Brad King b9e3c243d4 KWSys: Teach Process to error on empty command
Do not try to execute a child with no command line.  Previously this led
to a silent hang.
2010-06-11 11:00:38 -04:00
Brad King 60478de3e5 KWSys: Process tree kill for Solaris 2010-06-11 10:15:19 -04:00
KWSys Robot 6ce85691eb KWSys Nightly Date Stamp 2010-06-11 00:01:32 -04:00
Brad King f20d091a2c Tru64: Place cmOStringStream vtable uniquely (#10541)
GCC places the vtable in the object implementing the first non-pure,
non-inline virtual method.  Since the symbol is not weak on Tru64, make
the location unique by putting the destructor in a single object file.
2010-06-10 15:22:40 -04:00
Zach Mullen d0d1cdd71b Mock checksum failure output for old CDash versions 2010-06-10 15:02:24 -04:00
Zach Mullen af5ef0c969 Testing for CTest checksum 2010-06-10 12:25:49 -04:00
Brad King 3f92947524 KWSys: Configure DynamicLoader library prefix/suffix
The DynamicLoader::LibPrefix and DynamicLoader::LibExtension methods
previously hard-coded the module name components for each platform.  Set
them from the CMAKE_SHARED_MODULE_PREFIX and CMAKE_SHARED_MODULE_SUFFIX
CMake variables instead.  This ensures consistency in a program that
uses these methods to construct the file names for its own modules.
2010-06-10 09:26:32 -04:00
KWSys Robot c452d5b646 KWSys Nightly Date Stamp 2010-06-10 00:01:03 -04:00
Brad King beabb3319e Document scope of source file properties
Also remove out-dated list of source file properties from the
set_source_files_properties command.
2010-06-09 13:18:42 -04:00
KWSys Robot 86de1d6504 KWSys Nightly Date Stamp 2010-06-09 00:01:09 -04:00
Brad King c3781efb28 ctest_update: Support Git upstream branch rewrites
Use 'git fetch' followed by 'git reset' to update the source tree.  This
is better than 'git pull' because it can handle a rewritten upstream
branch and does not leave local modifications.  After fetch, parse
FETCH_HEAD to find the merge head that 'git pull' would choose to track
the upstream branch.  Then reset to the selected head.

In the normal fast-forward case the behavior remains unchanged.
However, now local modifications and commits will be erased, and
upstream rewrites are handled smoothly.  This ensures that the upstream
branch is tested as expected.
2010-06-08 16:50:17 -04:00
Brad King 2eae651acc ctest_update: Support custom Git update command
Define CTest configuration variable CTEST_GIT_UPDATE_CUSTOM to set a
custom command line for updating Git-managed source trees.
2010-06-08 16:12:28 -04:00
KWSys Robot ddf0de132b KWSys Nightly Date Stamp 2010-06-08 00:01:03 -04:00
Brad King 6cf1ccd632 Merge branch 'per-config-link-flags' 2010-06-07 14:36:28 -04:00
Brad King 608406bf55 Merge branch 'ctest-update-git-submodule' 2010-06-07 14:34:28 -04:00
Brad King 6f96e32bfd Merge branch 'cpack-remove-temp-dir' 2010-06-07 14:33:38 -04:00
Brad King efffb7b979 Merge branch 'file-write-umask' 2010-06-07 14:30:33 -04:00
Brad King 0d07e4379e Merge branch 'improve-file-download'
Conflicts:
	Modules/ExternalProject.cmake
2010-06-07 14:26:24 -04:00
Brad King a03e85f13c Merge branch 'add-git-to-ExternalProject'
Conflicts:
	Modules/ExternalProject.cmake
2010-06-07 14:23:45 -04:00
Brad King cbd0fa3013 Merge branch 'php-coverage' 2010-06-07 14:19:56 -04:00
Brad King 378c33480e Merge branch 'qtdialog' 2010-06-07 14:19:14 -04:00