summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* file(DOWNLOAD): Change EXPECTED_HASH to take ALGO=valueBrad King2012-09-191-6/+6
| | | | | | Make the EXPECTED_HASH option take only a single value instead of two to avoid handling sub-keyword arguments. This is also consistent with URL_HASH in ExternalProject.
* Merge topic 'generator-expression-refactor'Brad King2012-09-198-7/+136
|\ | | | | | | | | | | 91011bd cmGeneratorExpression: Port users to two-stage processing f1eacf0 cmGeneratorExpression: Re-write for multi-stage evaluation
| * cmGeneratorExpression: Re-write for multi-stage evaluationStephen Kelly2012-09-188-7/+136
| | | | | | | | | | | | | | | | The expressions may be parsed and then cached and evaluated multiple times. They are evaluated lazily so that literals such as ',' can be treated as universal parameter separators, and can be processed from results without appearing literally, and without interfering with the parsing/evaluation of the entire expression.
* | Merge topic 'ExternalProject-check-hashes'David Cole2012-09-181-1/+1
|\ \ | | | | | | | | | | | | | | | c266461 Add SSL_VERIFYPEER and CAINFO file options to ExternalProject_Add. beb8a83 ExternalProject: Generalize URL_MD5 option to URL_HASH
| * | ExternalProject: Generalize URL_MD5 option to URL_HASHBrad King2012-09-111-1/+1
| | | | | | | | | | | | Add support for SHA algorithms.
* | | Merge topic 'if-version-depth'David Cole2012-09-181-0/+7
|\ \ \ | |/ / |/| | | | | | | | dfa0ebd if: Compare up to 8 components in VERSION tests
| * | if: Compare up to 8 components in VERSION testsBrad King2012-09-111-0/+7
| |/ | | | | | | | | | | | | | | | | | | Extend the number of components tested by if(... VERSION_LESS ...) if(... VERSION_EQUAL ...) if(... VERSION_GREATER ...) from 4 to 8. The latter is a more extreme maximum.
* | file(DOWNLOAD): Generalize EXPECTED_MD5 to EXPECTED_HASHBill Hoffman2012-09-111-0/+53
|/ | | | Add support for SHA algorithms.
* Merge topic 'msvc-compiler-info'Brad King2012-08-311-0/+11
|\ | | | | | | | | 16fa7b7 VS: Fix MSVC_IDE definition recently broken by refactoring
| * VS: Fix MSVC_IDE definition recently broken by refactoringBrad King2012-08-301-0/+11
| | | | | | | | | | | | In commit 485a940e (VS: Simplify MSVC version reporting, 2012-08-23) we accidentally flipped the 0/1 values of MSVC_IDE. Flip them back and teach the CheckCompilerRelatedVariables test to check the variable.
| * Merge branch 'cmake-platform-info-version' into msvc-compiler-infoBrad King2012-08-301-1/+1
| |\ | | | | | | | | | | | | | | | | | | Conflicts: Modules/CMakeTestCCompiler.cmake Modules/CMakeTestCXXCompiler.cmake Modules/Platform/Windows-cl.cmake
* | \ Merge topic 'fix-Qt-casing'Brad King2012-08-301-4/+4
|\ \ \ | | | | | | | | | | | | | | | | 3252149 Fix casing of 'Qt' in docs, comments and user-visible strings.
| * | | Fix casing of 'Qt' in docs, comments and user-visible strings.Stephen Kelly2012-08-281-4/+4
| | | | | | | | | | | | | | | | | | | | QT (cue-tea) is Apple QuickTime. Qt (cute) is the C++ framework.
* | | | Merge topic 'cmake-platform-info-version'Brad King2012-08-301-1/+1
|\ \ \ \ | |/ / / |/| | / | | |/ | |/| | | | | | | e5fee8a Store ABI detection results in compiler information files 3df81b4 Move CMAKE_<LANG>_COMPILER_WORKS to compiler information files 7195aca Make platform information files specific to the CMake version
| * | Make platform information files specific to the CMake versionBrad King2012-08-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | At the top of a build tree we configure inside the CMakeFiles directory files such as "CMakeSystem.cmake" and "CMake<lang>Compiler.cmake" to save information detected about the system and compilers in use. The method of detection and the exact results store varies across CMake versions as things improve. This leads to problems when loading files configured by a different version of CMake. Previously we ignored such existing files only if the major.minor part of the CMake version component changed, and depended on the CMakeCache.txt to tell us the last version of CMake that wrote the files. This led to problems if the user deletes the CMakeCache.txt or we add required information to the files in a patch-level release of CMake (still a "feature point" release by modern CMake versioning convention). Ensure that we always have version-consistent platform information files by storing them in a subdirectory named with the CMake version. Every version of CMake will do its own system and compiler identification checks even when a build tree has already been configured by another version of CMake. Stored results will not clobber those from other versions of CMake which may be run again on the same tree in the future. Loaded results will match what the system and language modules expect. Rename the undocumented variable CMAKE_PLATFORM_ROOT_BIN to CMAKE_PLATFORM_INFO_DIR to clarify its purpose. The new variable points at the version-specific directory while the old variable did not.
* | | Merge topic 'ide-compiler-id'David Cole2012-08-244-0/+56
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | 403ead6 Document CMAKE_<LANG>_COMPILER_(ID|VERSION) values 8be51f6 Test variables CMAKE_(C|CXX|Fortran)_COMPILER(|_ID|_VERSION) ec22a9b Cleanly enable a language in multiple subdirectories 66cb335 VS: Detect the compiler id and tool location 89595d6 VS10: Define CMAKE_VS_PLATFORM_TOOLSET variable 965a69d Xcode: Detect the compiler id and tool location 9a9e1ee CMakeDetermineCompilerId: Prepare to detect IDE compiler id b8b5c83 Re-order C/C++/Fortran compiler determination logic
| * | Test variables CMAKE_(C|CXX|Fortran)_COMPILER(|_ID|_VERSION)Brad King2012-08-224-0/+56
| |/ | | | | | | | | | | Add tests CMakeOnly.CompilerId(C|CXX|Fortran) to check that the basic compiler tool path, vendor, and version variables have been set as expected.
* | Merge topic 'compile-definitions-unique'David Cole2012-08-246-0/+80
|\ \ | | | | | | | | | | | | | | | | | | | | | f0a1065 Rename files from main.cpp to more meaningful names. ca7fb14 Fix the test setting COMPILE_DEFINITIONS target property 733deb6 Fix CompileDefinitions test on Visual Studio. 3dae652 Don't duplicate -D defines sent to the compiler.
| * | Rename files from main.cpp to more meaningful names.Stephen Kelly2012-08-225-5/+5
| | | | | | | | | | | | | | | | | | Because the main file for the dummy-executable and the actual compile test were both called main.cpp, they were overwriting each other during in-source builds.
| * | Fix the test setting COMPILE_DEFINITIONS target propertyStephen Kelly2012-08-211-1/+1
| | |
| * | Fix CompileDefinitions test on Visual Studio.Stephen Kelly2012-08-212-1/+10
| | | | | | | | | | | | Avoid testing unsupported spaces in define values.
| * | Don't duplicate -D defines sent to the compiler.Stephen Kelly2012-08-206-0/+71
| |/ | | | | | | | | | | | | | | | | | | | | There is no need to do so. Be consistent with include directories and ensure uniqueness. This requires changing the API of the cmLocalGenerator::AppendDefines method, and changing the generators to match. The test unfortunately can't test for uniqueness, but it at least verifies that nothing gets lost.
* | Merge topic 'test-ObjectLibrary-lang'David Cole2012-08-242-2/+2
|\ \ | | | | | | | | | | | | 94c08b3 Tests/ObjectLibrary: Do not enable CXX in subdirectories
| * | Tests/ObjectLibrary: Do not enable CXX in subdirectoriesBrad King2012-08-202-2/+2
| |/ | | | | | | | | | | | | | | In commit b237dbd8 (Xcode: Fix object library references in multi-project trees, 2012-08-03) we accidentally enabled CXX in the subdiretories of this test by invoking project() with only one argument. The top-level directory of the test enables only C, so do this in the subdirectories too.
* | Merge topic 'RemoveNonworkingKDE4Test'David Cole2012-08-202-104/+0
|\ \ | | | | | | | | | | | | 11f23fe remove non-working KDE4 test
| * | remove non-working KDE4 testAlex Neundorf2012-08-162-104/+0
| |/ | | | | | | Alex
* | Merge topic 'hg-modules'David Cole2012-08-203-3/+74
|\ \ | | | | | | | | | | | | | | | 91053cd ExternalProject: Add Mercurial (hg) repository support ea5bfb1 Add FindHg module to find Mercurial
| * | ExternalProject: Add Mercurial (hg) repository supportBrad King2012-08-162-2/+73
| | | | | | | | | | | | | | | | | | | | | Add options HG_REPOSITORY and HG_TAG to specify an external project hosted in a Mercurial repository. Teach ExternalProject to clone the repository and update from it. Extend the ExternalProject test to try a Mercurial repository when hg is available.
| * | Add FindHg module to find MercurialBrad King2012-08-141-1/+1
| |/ | | | | | | Also teach the CMakeOnly.AllFindModules to verify Hg version detection.
* | Merge topic 'list-command-argument-fixes'David Cole2012-08-201-0/+11
|\ \ | | | | | | | | | | | | | | | 08c71ac CMake.List test: explicitely test with lists containing only an empty string 52d9c38 list command: error on too many arguments
| * | CMake.List test: explicitely test with lists containing only an empty stringRolf Eike Beer2012-08-151-0/+11
| |/
* | Merge topic 'more-endif-closing-style-cleanups'David Cole2012-08-203-18/+8
|\ \ | | | | | | | | | | | | 84b49be Remove CMake multiline block-end command arguments
| * | Remove CMake multiline block-end command argumentsMarcin Wojdyr2012-08-153-18/+8
| |/ | | | | | | removing arguments omitted in 9db3116226cb99fcf54e936c833953abcde9b729
* | Merge topic 'xcode-asm'David Cole2012-08-201-1/+2
|\ \ | | | | | | | | | | | | | | | 97140d3 Tests/Assembler: Do not use assembler in universal binaries f3477ed Xcode: Set ASM source language in project file (#13472)
| * | Tests/Assembler: Do not use assembler in universal binariesBrad King2012-08-151-1/+2
| | | | | | | | | | | | | | | If CMAKE_OSX_ARCHITECTURES is set then the computed assembler .s source file may not work for all architectures. Skip it in that case.
| * | Xcode: Set ASM source language in project file (#13472)Brad King2012-08-151-1/+1
| | | | | | | | | | | | | | | | | | Also teach the Assembler test to build under Xcode. Suggested-by: Tobias Pape <tobiaspape@gmail.com>
* | | Merge topic 'clang-asm'David Cole2012-08-201-1/+1
|\ \ \ | |/ / | | | | | | | | | 7e8471c Recognize Clang ASM support (#13473)
| * | Recognize Clang ASM support (#13473)Brad King2012-08-151-1/+1
| |/ | | | | | | | | | | | | | | | | Since commit 571dc748 (Recognize Clang C and C++ compilers, 2010-05-17) we recognize Clang C and C++ support. Add Compiler/Clang-ASM.cmake to enable use of Clang for ASM too. Also teach Assembler test to try Clang as an assembler. Suggested-by: Tobias Pape <tobiaspape@gmail.com>
* | Merge topic 'generator-expression-conditions'David Cole2012-08-2018-0/+161
|\ \ | | | | | | | | | | | | | | | 9d9f616 Add $<CONFIG:...> boolean query generator expression ebf05ab Add boolean generator expressions
| * | Add $<CONFIG:...> boolean query generator expressionBrad King2012-08-156-0/+17
| | | | | | | | | | | | | | | | | | | | | This expression evaluates to '1' or '0' to indicate whether the build configuration for which the expression is evaluated matches tha named configuration. In combination with the "$<0:...>" and "$<1:...>" expressions this allows per-configuration content to be generated.
| * | Add boolean generator expressionsBrad King2012-08-1515-0/+144
| |/ | | | | | | | | | | | | | | | | | | | | | | | | Add generator expressions that combine and use boolean test results: $<0:...> = empty string (ignores "...") $<1:...> = content of "..." $<AND:?[,?]...> = '1' if all '?' are '1', else '0' $<OR:?[,?]...> = '0' if all '?' are '0', else '1' $<NOT:?> = '0' if '?' is '1', else '1' These will be useful to evaluate (future) boolean query expressions and condition content on the results. Include tests and documentation.
* | CheckTypeSize: add a test for size of struct membersRolf Eike Beer2012-08-144-2/+68
|/
* Fix WarnUnusedUnusedViaUnset test pass/fail regexBrad King2012-08-141-2/+2
| | | | | | | After conversion of Modules .cmake files to lower case the FAIL_REGULAR_EXPRESSION for this test matched warnings in modules other than the test line itself. Make the pass and fail regular expressions specific to the file containing the lines they are testing.
* Remove CMake-language block-end command argumentsKitware Robot2012-08-13139-1131/+1131
| | | | | | | | | | | | | | | | | 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
* Convert CMake-language commands to lower caseKitware Robot2012-08-13201-4632/+4632
| | | | | | | | | | | | | | | | | 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
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-13111-497/+497
| | | | | | | | | | | | | | | | | 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/ \+$//'
* Merge topic 'xcode-object-dir'David Cole2012-08-132-0/+2
|\ | | | | | | | | b237dbd Xcode: Fix object library references in multi-project trees (#13452)
| * Xcode: Fix object library references in multi-project trees (#13452)Brad King2012-08-032-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In cmGlobalXCodeGenerator::Generate we generate a .xcodeproj for each directory in the tree containing a project() command. First we iteratively use SetGenerationRoot to add "ALL_BUILD" and other targets to each project. This leaves "CurrentProject" set to the last project when we invoke cmGlobalGenerator::Generate, which is not the same as the top-level project if any subdirectories invoke the project() command. When cmGlobalGenerator::Generate reaches CreateGeneratorTargets it constructs cmGeneratorTarget and calls ComputeTargetObjects exactly once per target. In this context the value of CurrentProject is undefined so we cannot pass it to GetObjectsNormalDirectory. Use "$(PROJECT_NAME)" instead so it will adapt automatically to each project. Also teach Tests/ObjectLibrary to cover this case.
* | Merge topic 'mixed-lib-to-lib64'David Cole2012-08-1313-0/+63
|\ \ | |/ |/| | | | | | | | | | | | | af80da3 remove lib64 Unix paths if the respective lib path is also given 733726e find_library: Fix mixed lib->lib64 (non-)conversion cases (#13419) 54add62 find_library: Simplify lib->lib<arch> expansion 6ca2f82 find_library: Refactor lib->lib64 conversion 1fe4b82 find_library: Add test covering lib->lib64 cases
| * find_library: Fix mixed lib->lib64 (non-)conversion cases (#13419)Brad King2012-07-201-2/+2
| | | | | | | | | | | | | | | | When a search path contains multiple "lib/" instances we previously converted all or none. This fails for cases where only some of the multiple instances must be converted. Teach AddArchitecturePaths to generate all combinations that exist. Uncomment these cases in the CMakeOnly.find_library test now that they work.