Commit Graph

83 Commits

Author SHA1 Message Date
Daniel Pfeifer 7a649111cd Use string(APPEND) in Tests
Automate with:

find Tests -type f -print0 | xargs -0 perl -i -0pe \
's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
2016-07-28 00:43:04 +02:00
Gregor Jasny 5b04aa31b8 Xcode: Disable test for system include dirs 2016-02-08 12:48:35 +01:00
Brad King 560b3e9f1d Tests: Remove incorrect indentation from Complex test comment 2015-01-22 14:11:46 -05:00
Clinton Stimpson 9a8ab86645 Encoding: Modify tests to work using non-ascii paths.
For complex*, CustomCommand and OutDir tests, non-ascii paths
are avoided in test code by using relative paths, and setting
the working when running the test.  This also avoids the
need to internationalize the test code.

For RunCMake.GeneratorExpression, use a UTF-8 encoding in
file(STRINGS) to retrieve the compiled absolute path correctly.
2015-01-08 20:56:51 -07:00
Brad King 7d47c69365 Drop compatibility with CMake < 2.4
Drop all behavior activated by setting CMAKE_BACKWARDS_COMPATIBILITY to
a value lower than 2.4, and generate an error when projects or the user
attempt to do so.  In the error suggest using a CMake 2.8.x release.

Teach cmake_minimum_required to warn about projects that do not require
at least CMake 2.4.  They are not supported by CMake >= 3.0.

Replace the documentation of CMAKE_BACKWARDS_COMPATIBILITY with a
reference to policy CMP0001.
2013-10-23 08:54:31 -04:00
James Bigler 5ab1259140 Use PRE_LINK instead of PRE_BUILD when testing PRE_LINK. 2013-03-04 13:21:41 -07:00
Kitware Robot 9db3116226 Remove CMake-language block-end command arguments
Ancient versions of CMake required else(), endif(), and similar block
termination commands to have arguments matching the command starting the
block.  This is no longer the preferred style.

Run the following shell code:

for c in else endif endforeach endfunction endmacro endwhile; do
    echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/'
done >convert.sed &&
git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' |
egrep -z -v '^(Utilities/cm|Source/kwsys/)' |
egrep -z -v 'Tests/CMakeTests/While-Endwhile-' |
xargs -0 sed -i -f convert.sed &&
rm convert.sed
2012-08-13 14:19:16 -04:00
Kitware Robot 77543bde41 Convert CMake-language commands to lower case
Ancient CMake versions required upper-case commands.  Later command
names became case-insensitive.  Now the preferred style is lower-case.

Run the following shell code:

cmake --help-command-list |
grep -v "cmake version" |
while read c; do
    echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g'
done >convert.sed &&
git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' |
egrep -z -v '^(Utilities/cm|Source/kwsys/)' |
xargs -0 sed -i -f convert.sed &&
rm convert.sed
2012-08-13 14:19:16 -04:00
Kitware Robot 7bbaa4283d Remove trailing whitespace from most CMake and C/C++ code
Our Git commit hooks disallow modification or addition of lines with
trailing whitespace.  Wipe out all remnants of trailing whitespace
everywhere except third-party code.

Run the following shell code:

git ls-files -z -- \
 bootstrap doxygen.config '*.readme' \
 '*.c' '*.cmake' '*.cpp' '*.cxx' \
 '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \
 '*.mm' '*.pike' '*.py' '*.txt' '*.vim' |
egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' |
egrep -z -v '^(Modules/CPack\..*\.in)' |
xargs -0 sed -i 's/ \+$//'
2012-08-13 14:18:39 -04:00
Brad King 53d31c2426 complex: Remove unused option to test CMakeLib
Now that the Complex tests do not depend on cmSystemTools or other
classes from CMakeLib the COMPLEX_TEST_CMAKELIB option is useless.
2011-12-23 16:16:57 -05:00
Brad King 49d6dd67f1 complex: Simplify test for single-character exe name
Run the test executable as a custom command instead of depending on
cmSystemTools::RunSingleCommand.
2011-12-23 16:16:52 -05:00
Brad King 76ac88b730 complex: Move GeneratedFileStream test to CMakeLibTests
This test belongs in the CMakeLibTests test driver executable which
correctly links to CMakeLib.  Fix incorrect library link order in the
Complex tests exposed by this change.
2011-12-23 16:16:50 -05:00
Bill Hoffman f578381e66 Fix vs2010 project generation error when HEADER_FILE_ONLY is set.
In vs2010 a bad project file could be generated if a .c or .cxx file
was marked with HEADER_FILE_ONLY, if it was in a library that contained
both c and c++ code.  This fixes the error in the code, and adds a test
for this case.
2010-12-20 15:25:16 -05:00
Bill Hoffman fb51d98562 Switch to using libarchive from libtar for cpack and cmake -E tar
This allows for a built in bzip and zip capability, so external tools
will not be needed for these packagers.  The cmake -E tar xf should be
able to handle all compression types now as well.
2009-10-30 13:10:56 -04:00
Brad King d1aa17a7b0 ENH: Remove CMAKE_ANSI_CFLAGS from tests
As of CMake 2.6 this variable is not defined, and the ANSI flags for the
HP compiler are simply hard-coded in the default C flags.
2009-07-08 11:41:48 -04:00
Bill Hoffman 46b9a884ac ENH: make this test pass if new curl is on 2008-11-21 16:10:09 -05:00
Bill Hoffman 0f88ea3993 ENH: only link in curl directories that exist, this will help with vs6 nmake 2008-11-20 14:06:57 -05:00
Bill Hoffman bc1f0e1b11 ENH: make it work if new curl is on 2008-11-19 01:15:41 -05:00
Bill Hoffman 32ac624352 ENH: make it work if new curl is on 2008-11-18 09:37:31 -05:00
Brad King fff812db95 ENH: Add if(TARGET) command
It is useful to be able to test if a target has been created.  Often
targets are created only inside conditions.  Rather than storing the
result of the condition manually for testing by other parts of the
project, it is much easier for the other parts to just test for the
target's existence.  This will also be useful when find-modules start
reporting results with IMPORTED targets and projects want to test if a
certain target is available.
2008-08-20 11:45:16 -04:00
Bill Hoffman 378ca535a4 ENH: complex must link to curl now 2008-02-07 08:55:56 -05:00
Brad King 88b31bd007 ENH: Adding test for using HEADER_FILE_ONLY to avoid building a .cxx file. 2007-11-19 14:27:43 -05:00
Brad King b384218ec1 BUG: Disable test of feature that is not documented or implemented everywhere. 2007-05-16 11:40:53 -04:00
Brad King adcd87c976 BUG: Fixed cmLocalVisualStudio7Generator to deal with quotes in macro definitions properly. This addresses bug#4983. 2007-05-09 10:18:31 -04:00
Brad King a4d2dc4366 ENH: Added smoke test for user-value flag mapping for VS IDE. 2007-02-01 12:02:24 -05:00
Brad King b646183f44 ENH: Added explicit name for option to test CMakeLib. Added option to disable testing of CMakeLib if system utility libraries are used until linking made easier. 2006-10-19 14:45:41 -04:00
Brad King 16b781360c BUG: Run testSystemDir test only if -isystem flag is available. 2006-10-05 11:30:44 -04:00
Brad King c11cf31c9b ENH: Adding SYSTEM option to INCLUDE_DIRECTORIES command. This addresses bug #3462. 2006-10-05 08:55:59 -04:00
Brad King fcd500289b ENH: Renamed NOT_IN_ALL to EXCLUDE_FROM_ALL. 2006-10-02 12:01:20 -04:00
Brad King 1d9f287af7 ENH: Added NOT_IN_ALL option for ADD_LIBRARY and ADD_EXECUTABLE to avoid building the targets by default. 2006-10-02 11:14:00 -04:00
Brad King 07ec25e383 ENH: Added test for linking to a static library that is next to a shared library. See bug#1644 for related changes. 2006-09-15 14:31:24 -04:00
Brad King 24b55bfe11 BUG: Make sure sources with unknown extensions are not compiled by VS. 2006-08-03 09:26:36 -04:00
Brad King 1973efbab2 ENH: Adding test for source files and header files with the same base name in the same target. 2006-08-01 10:49:15 -04:00
Brad King 9a74185695 BUG: Fix REMOVE_DEFINITIONS command to not remove substrings. 2006-05-23 12:51:26 -04:00
Bill Hoffman 1c44342cff ENH: remove duplicate file name test because it fails on xcode 2006-04-17 18:10:16 -04:00
Bill Hoffman 0f8603acc2 ENH: allow multiple files with the same name in different sub dirs test 2006-04-17 13:59:23 -04:00
Ken Martin eb773486f3 ENH: added testing for new features 2006-03-22 15:01:22 -05:00
Bill Hoffman 07ef88c985 ENH: add COMPILE_FLAGS to targets 2006-01-25 08:38:06 -05:00
Bill Hoffman ac58fb88b9 ENH: more fixes for watcom 2006-01-17 14:35:04 -05:00
Bill Hoffman 9891260a6d ENH: add support for watcom wmake and wcl386 2006-01-17 10:21:45 -05:00
Andy Cedilnik 456276278f BUG: Now really fix the test 2005-12-28 20:04:13 -05:00
Andy Cedilnik 26b75693cb COMP: Fix test 2005-12-28 19:31:48 -05:00
Andy Cedilnik 2fcd41323b COMP: Fix complex test and fix bootstrap 2005-12-28 17:02:16 -05:00
Bill Hoffman 12ed2c85d9 ENH: make sure CMAKE_C_FLAGS are not clobbered 2005-08-01 09:44:44 -04:00
Bill Hoffman efc41c634c ENH: use ansi flags 2005-07-31 22:25:39 -04:00
Bill Hoffman 8dc6db4777 ENH: add new test to make sure c and cxx flags are going to the right files 2005-07-29 11:56:31 -04:00
Ken Martin 2e4258efc1 ENH: shift to using ADD_SUBDIRECTORY 2005-06-08 12:26:32 -04:00
Bill Hoffman 7007b41dcb ENH: fix library ordering stuff to use a topological sort 2005-03-02 17:49:11 -05:00
Brad King b40219372e ENH: Added full pre-build/pre-link/post-build testing for both library and executable targets. 2005-02-25 09:31:55 -05:00
Andy Cedilnik 197ba0bdd6 ENH: Link to cmzlib 2005-01-27 10:13:38 -05:00