summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
Commit message (Collapse)AuthorAgeFilesLines
* Tests: Add RunCMake.BuildDepends testBrad King2015-09-177-0/+79
| | | | | This will allow more granular checks than the main BuildDepends test. Start with a simple single-source C program.
* Tests: Teach RunCMake infrastructure to use custom check.cmake fileBrad King2015-09-171-1/+5
|
* Tests: Teach RunCMake to tolerate 'Bullseye Testing' lines in test outputBrad King2015-09-171-1/+1
| | | | | | | | | | When testing under Bullseye coverage, some tests get lines on stderr of the form: ... Bullseye Testing Technology ... Remove such lines from output before matching because they are not representative of the actual test output.
* Tests: Teach RunCMake to tolerate 'Time Machine' lines in test outputBrad King2015-09-171-1/+1
| | | | | | | | | On some OS X machines some tests get lines on stderr of the form: ... attempting to exclude an item from Time Machine by path ... produced by the system. Remove such lines from output before matching because they are not representative of the actual test output.
* Merge topic 'test-search-ordering'Brad King2015-09-165-0/+12
|\ | | | | | | | | | | | | 7a6e5f06 Tests: Cover find_program when the environment duplicate some HINTS 40122975 Merge branch 'fix-bad-search-ordering' into test-search-ordering 02440154 find_*: Fix search order when the environment duplicates some HINTS
| * Tests: Cover find_program when the environment duplicate some HINTSBrad King2015-09-155-0/+12
| | | | | | | | Reported-by: Marc CHEVRIER <marc.chevrier@sap.com>
* | Tests: Cover set_property for buildsystem directory propertiesBrad King2015-09-119-0/+22
| | | | | | | | | | | | | | | | | | | | | | | | Extend the RunCMake.set_property test with cases covering buildsystem directory properties: * COMPILE_DEFINITIONS * COMPILE_OPTIONS * INCLUDE_DIRECTORIES Also test a non-buildsystem property to document the equivalence in behavior.
* | cmTarget: Only append non-empty values to buildsystem properties.Stephen Kelly2015-09-115-5/+5
| | | | | | | | | | | | This is a change in behavior from CMake 3.3, but there is no semantic meaning to empty entries in buildsystem properties. This also restores behavior to that of CMake 2.8.10.
* | Merge topic 'cpack-cmake-special-characters-mangling'Brad King2015-09-104-0/+14
|\ \ | | | | | | | | | | | | 2a7772ff CPack: don't mangle CMake-special characters when applying default settings
| * | CPack: don't mangle CMake-special characters when applying default settingsRoman Donchenko2015-09-094-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mangling is prevented by using a function instead of a macro for setting default value of some CPack variables. Function is meant for internal use in CPack.cmake only. Old macro is deprecated but kept for backwards compatibility - was intended for internal use only as it can't be used for CPack after CPack.cmake script is included. Patch removes local workarounds that were required by old macro, fixes default setting of variables that by default inherit value from another variable that already went through old default setting macro (e.g. value of CPACK_PACKAGE_INSTALL_REGISTRY_KEY caused error for wrong escapes if CPACK_PACKAGE_INSTALL_DIRECTORY contained escaped back slashes) and provides a test for correct escaping of characters.
* | | CPack/Deb: enable per component setting of dependenciesDomen Vrankar2015-09-092-12/+37
|/ /
* | Merge topic 'more-swift2-fixes'Brad King2015-09-093-4/+0
|\ \ | |/ |/| | | | | | | | | | | | | 9cdf6ef4 Swift: Add proper Swift compiler test 1aa29f0d Swift: Remove positive Swift language tests d778a1c2 Swift: Require Xcode 6.1 and for MacOS X at least SDK 10.10 4da60024 Swift: Fix Compiler-Id detection for Swift 2 874a265c Swift: Make SwiftMix compatible with Swift 2
| * Swift: Remove positive Swift language testsGregor Jasny2015-09-063-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | It's relatively complex to determine in advance if a Xcode, SDK, and Deployment Target configuration is capable of running Swift. For example the following combinations do not work: * deployment target < OS X 10.9 * Xcode 6.2 and macosx10.9 SDK * Xcode 7 Beta 6 and macosx10.10 SDK Until we found out how to query Xcode for Swift support in a reliable way, the RunCMake.Swift test cases will be restricted to negative ones.
* | Merge topic 'fix-buildsystem-target-properties'Brad King2015-09-0816-7/+41
|\ \ | | | | | | | | | | | | | | | | | | b9856862 Tests: Cover set_property for buildsystem target properties 407ff47e cmTarget: Fix memory leak when SOURCES property is cleared cf74fc24 cmTarget: Fix buildsystem property empty value set and append operations
| * | Tests: Cover set_property for buildsystem target propertiesBrad King2015-09-0316-7/+41
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the RunCMake.set_property test with cases covering buildsystem target properties: * COMPILE_DEFINITIONS * COMPILE_FEATURES * COMPILE_OPTIONS * INCLUDE_DIRECTORIES * LINK_LIBRARIES * SOURCES Also test a non-buildsystem property to document the current difference in behavior. Refactor the existing LINK_LIBRARIES case to the same more-extensive test as the rest. Use the output generated by CMake 3.3 as the expected output for each test case.
* | Merge topic 'find_program-NAMES_PER_DIR'Brad King2015-09-0816-0/+43
|\ \ | |/ |/| | | | | | | | | | | | | | | 8ea7611b find_program: Optionally consider all names in each directory fc1990c9 cmFindProgramCommand: Re-implement search using more flexible approach fdbfc9f6 Tests: Add explicit testing for find_program 907a919b cmSystemTools: Drop unused StringEndsWith method ed4de3c9 cmFindProgramCommand: Use Names member instead of passing it bf32b95e cmFindLibraryCommand: Avoid repeating search for the same name
| * find_program: Optionally consider all names in each directoryBrad King2015-09-023-0/+8
| | | | | | | | | | | | | | When more than one value is given to the NAMES option this command by default will consider one name at a time and search every directory for it. Add a NAMES_PER_DIR option to tell this command to consider one directory at a time and search for all names in it.
| * Tests: Add explicit testing for find_programBrad King2015-09-0214-0/+35
| | | | | | | | | | | | Previously this command was tested only implicitly as part of larger tests. Add a RunCMake.find_program test to cover find_program cases specifically and independently.
* | Merge topic 'add-link-search-static-properties-defaults'Brad King2015-09-036-2/+8
|\ \ | |/ |/| | | | | 18d7f8fb Tests: Move LINK_SEARCH_{START,END}_STATIC case to dedicated test
| * Tests: Move LINK_SEARCH_{START,END}_STATIC case to dedicated testBrad King2015-09-026-2/+8
| | | | | | | | | | | | | | | | | | | | The test case added to RunCMake.set_property by commit 675ef165 (Allow LINK_SEARCH_{START,END}_STATIC props to have default values, 2015-08-07) is not a test of the set_property command and so belongs in its own test case. Create a new RunCMake.LinkStatic test to cover cases related to static linking. While at it, simplify the LINK_SEARCH_STATIC test case to enable only C.
* | Merge topic 'fix-ios-install'Brad King2015-09-015-1/+29
|\ \ | | | | | | | | | | | | | | | | | | ad262917 Xcode: Add unit test for iOS project install (#12506) 48fe617e Fix installation of iOS targets (#12506) d2c2319d Replace CMAKE_XCODE_EFFECTIVE_PLATFORMS with call to PlatformIsAppleIos
| * | Xcode: Add unit test for iOS project install (#12506)Gregor Jasny2015-08-264-0/+29
| | |
| * | Replace CMAKE_XCODE_EFFECTIVE_PLATFORMS with call to PlatformIsAppleIosGregor Jasny2015-08-251-1/+0
| | | | | | | | | | | | | | | | | | | | | Currently the CMAKE_XCODE_EFFECTIVE_PLATFORMS property acts only as a kind of toggle switch to enable iOS project layout features. But instead of relying on this undocumented property, better detect the presence of an iOS SDK directly.
* | | Merge topic 'cpack-config-generation-test'Brad King2015-08-316-0/+21
|\ \ \ | | | | | | | | | | | | | | | | 674dc0b3 CPack generator independent tests
| * | | CPack generator independent testsRoman Donchenko2015-08-286-0/+21
| |/ / | | | | | | | | | | | | | | | | | | | | | CPackConfig.cmake file generation from CMake test suite. Currently it contains only a simple test without special characters in variable value. Test is not part of RunCMake/CPack as those tests are expected to be run for a specified generator.
* | | Darwin: Add support for tbd library stub filesGregor Jasny2015-08-244-0/+27
|/ / | | | | | | | | | | | | | | Starting with Xcode 7 the OSX and iOS SDKs contain only stub files for dynamic system libraries. These stub files contain some meta data and a list of exported sysbols in plain text. They are handled by the toolchain like regular dylibs.
* | Merge topic 'ios-app-bundle-layout'Brad King2015-08-243-0/+81
|\ \ | | | | | | | | | | | | 744e6c49 Fix iOS Bundle layouts (#15669)
| * | Fix iOS Bundle layouts (#15669)Gregor Jasny2015-08-243-0/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In contrast to Mac OS X App bundle layout the iOS one lacks the Contents/MacOSX structure. See also the Bundle Structures documentation in Mac Developer Library: https://developer.apple.com/library/mac/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html For now detect iOS targets by checking the SDK name/path.
* | | include_directories: Fix regression in BEFORE option (#15693)Brad King2015-08-213-0/+6
| | | | | | | | | | | | | | | | | | Refactoring in commit 6ed9c7e0 (cmState: Host buildsystem properties for directories, 2015-07-18) broke include_directories(BEFORE). Fix it and add a test case.
* | | Merge topic 'OUTPUT_NAME-genex-no-recursion'Brad King2015-08-215-0/+10
|\ \ \ | | | | | | | | | | | | | | | | 3c37d264 cmGeneratorTarget: Avoid recursion in GetOutputName method
| * | | cmGeneratorTarget: Avoid recursion in GetOutputName methodRobert Goulet2015-08-205-0/+10
| |/ / | | | | | | | | | | | | | | | Since support for generator expressions was added to OUTPUT_NAME it is possible for project code to cause recursion in this method by using a $<TARGET_FILE> genex. Detect and reject such cases.
* | | get_filename_component: Teach new BASE_DIR parameter.James Johnston2015-08-181-0/+33
|/ / | | | | | | | | | | In the get_filename_component command, add a new BASE_DIR parameter to use with the ABSOLUTE and REALPATH options. This will be used when finding an absolute path from a relative path.
* | Merge topic 'use-generator-target'Brad King2015-08-172-0/+11
|\ \ | | | | | | | | | | | | 9b449e9c cmComputeLinkInformation: Lookup a target only if we have one
| * | cmComputeLinkInformation: Lookup a target only if we have oneBrad King2015-08-132-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | The change in commit 27252b24 (cmComputeLinkInformation: Simplify generator object access, 2015-08-02) broke the conditional use of a target introduced in commit 41abdc17 (cmGeneratorTarget: Move GetSOName from cmTarget, 2015-08-04). Restore the conditional lookup. Add a test case that hacks platform information variables to trigger this code everywhere.
* | | Merge topic 'OUTPUT_DIRECTORY-genex'Brad King2015-08-134-0/+9
|\ \ \ | |_|/ |/| | | | | | | | | | | d25819bc Add generator expression support to OUTPUT_DIRECTORY target properties e36a05fd cmTarget: Detect and diagnose recursion in GetOutputInfo
| * | Add generator expression support to OUTPUT_DIRECTORY target propertiesRobert Goulet2015-08-124-0/+9
| | | | | | | | | | | | | | | | | | | | | If {ARCHIVE,LIBRARY,RUNTIME}_OUTPUT_DIRECTORY is set with a genex then do not add the per-config subdirectory on multi-config generators. This will allow projects to use $<CONFIG> to place the per-config part of the directory path somewhere other than the end.
* | | Allow LINK_SEARCH_{START,END}_STATIC props to have default values.Chuck Atkins2015-08-133-0/+79
|/ / | | | | | | | | | | Use the CMAKE_LINK_SEARCH_START_STATIC and CMAKE_LINK_SEARCH_END_STATIC variables to initialize the LINK_SEARCH_START_STATIC and LINK_SEARCH_END_STATIC target properties respectively.
* | Merge topic 'fix-get-filename-component'Brad King2015-08-102-1/+78
|\ \ | | | | | | | | | | | | | | | | | | d035e968 get_filename_component: Fix bug where CACHE was ignored. 38ed5866 get_filename_component: Added initial tests for PROGRAM component. 772ca69f get_filename_component: Tests now check for proper CACHE usage.
| * | get_filename_component: Fix bug where CACHE was ignored.James Johnston2015-08-061-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If PROGRAM_ARGS is provided to get_filename_component, fix bug where the command failed to honor the CACHE argument. Added test cases to RunCMake.get_filename_component that fail when the bug is not fixed to prevent regressions. Signed-off-by: James Johnston <johnstonj.public@codenest.com>
| * | get_filename_component: Added initial tests for PROGRAM component.James Johnston2015-08-061-0/+12
| | | | | | | | | | | | | | | | | | | | | The RunCMake.get_filename_component test now tests basic functionality of the PROGRAM component argument of get_filename_component. Signed-off-by: James Johnston <johnstonj.public@codenest.com>
| * | get_filename_component: Tests now check for proper CACHE usage.James Johnston2015-08-062-1/+34
| |/ | | | | | | | | | | | | | | The RunCMake.get_filename_component test was improved to assert that each test variable outputted by get_filename_component is or is not a cache variable, as per the particular test. Signed-off-by: James Johnston <johnstonj.public@codenest.com>
* | Merge topic 'change-nmake-env-warning'Brad King2015-08-107-0/+152
|\ \ | | | | | | | | | | | | afeb4eb2 nmake/jom: Only warn about bad VS environment if compiler not found.
| * | nmake/jom: Only warn about bad VS environment if compiler not found.James Johnston2015-08-067-0/+152
| |/ | | | | | | | | | | | | nmake and jom generators no longer warn about missing INCLUDE/LIB environment variables unless the C/CXX compiler cannot be found. This is useful if the user does not want to use these generators with the Visual C++ compiler, or they do not want to enable any language.
* | Reject TARGET_PDB_FILE for imported targets instead of crashingBrad King2015-08-064-0/+12
|/ | | | Reported-by: Justin Borodinsky <justin.borodinsky@gmail.com>
* Merge topic 'cpack-rpm-documentation-fixes'Brad King2015-08-0611-2/+155
|\ | | | | | | | | | | | | | | | | | | 94226751 Tests/RunCMake/CPack: Add dependencies tests 105011e0 Tests/RunCMake/CPack: Bump verify result cmake version d882d477 Tests/RunCMake/CPack/DEB: Add getPackageInfo helper function 145735b7 Tests/RunCMake/CPack: Enable CXX language in tests e26f53a8 CPack/RPM: missing PACKAGE_CONFLICTS documentation 64aacb24 CPack/RPM: undocumented variables
| * Tests/RunCMake/CPack: Add dependencies testsDomen Vrankar2015-08-068-0/+143
| | | | | | | | | | Add tests for RPM and DEB package test for currently supported dependency features (requires, provides, conflicts, ...).
| * Tests/RunCMake/CPack: Bump verify result cmake versionDomen Vrankar2015-08-061-1/+1
| | | | | | | | | | Bumped version to current cmake version so that we always use latest policies.
| * Tests/RunCMake/CPack/DEB: Add getPackageInfo helper functionDomen Vrankar2015-08-061-0/+10
| | | | | | | | | | getPackageInfo helper function returns package info for provided deb package file
| * Tests/RunCMake/CPack: Enable CXX language in testsDomen Vrankar2015-08-061-1/+1
| | | | | | | | | | Enable CXX language for CPack tests so that they may compile binaries if needed.
* | Merge topic 'cmState-policies'Brad King2015-08-0611-0/+40
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 757a1f54 cmState: Move PolicyState from cmMakefile. 52dbe654 cmState: Record the end position of each directory. 65a5e0c6 cmLinkedTree: Add Clear API. 34835433 cmState: Add Type for policy scope. af0de01c cmState: Remove call stack parent tracking. 6ae8b30b cmMakefile: Move policy barriers inside cmState scopes. a5fc17b5 cmMakefile: Re-order policy entries and barriers. 0a01e6c6 cmState: Add Snapshot Type accessor. f0005bb4 Tests: Verify generate-time policy scope behavior.