summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'cdash_version_check'Brad King2016-11-112-0/+2
|\ | | | | | | | | | | d3633731 Do not query CDash for version f725b20b Update tests that expect uncompressed output
| * Update tests that expect uncompressed outputZack Galbreath2016-11-082-0/+2
| | | | | | | | Pass --no-compressed-output to ctest for tests that expect uncompressed output.
* | Merge topic 'ctest_memcheck_defect_count'Brad King2016-11-118-2/+46
|\ \ | | | | | | | | | | | | 3a523eec ctest_memcheck: Add DEFECT_COUNT option to capture defect count
| * | ctest_memcheck: Add DEFECT_COUNT option to capture defect countBetsy McPhail2016-11-098-2/+46
| | |
* | | Merge topic 'imported-interface-libname'Brad King2016-11-0910-0/+144
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 09cda9d5 Allow imported INTERFACE libraries to specify a link library name 1d1f1eeb cmTarget: Refactor GetMappedConfig to choose location property up front 479932fa cmTarget: Add comment clarifying interface library special case 925e4270 cmTarget: Clarify comments in GetMappedConfig
| * | Allow imported INTERFACE libraries to specify a link library nameBrad King2016-11-0910-0/+144
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add an `IMPORTED_LIBNAME[_<CONFIG>]` target property to specify a library name to be placed on the link line in place of an interface library since it has no library file of its own. Restrict use of the property to imported `INTERFACE` libraries. This will be particularly useful for find modules that need to provide imported libraries from system SDKs where the full path to the library file is not known. Now such find modules will be able to provide an imported interface library and set `IMPORTED_LIBNAME` to refer to the SDK library by name. Issue: #15267
* | CPack/RPM test for Suggests tagAlexander Adam2016-11-054-0/+41
|/ | | | | | | Suggests tag was not present in older versions of rpmbuild so we test that the rpm package is always generated either with Suggests tag present or skipped if not supported.
* Features: Test cycle diagnostic with language standard meta-featureBrad King2016-11-022-3/+3
| | | | | | | The `cxx_static_assert` feature may be available in C++ 98 mode of some compilers or not available at all in others. Intstead of using an individual feature to test cyclic requirement of a feature requiring C++ 11, use the `std_cxx_11` meta-feature that has exactly this meaning.
* Merge topic 'custom-command-CROSSCOMPILING_EMULATOR'Brad King2016-11-015-7/+42
|\ | | | | | | | | | | f648b9be Tests: Check that CROSSCOMPILING_EMULATOR is not used on imported targets e7480d67 Fix custom command target substitution with CROSSCOMPILING_EMULATOR
| * Tests: Check that CROSSCOMPILING_EMULATOR is not used on imported targetsBrad King2016-10-284-6/+40
| |
| * Fix custom command target substitution with CROSSCOMPILING_EMULATORBrad King2016-10-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | In commit v3.6.0-rc1~88^2 (CustomCommandGenerator: Add support for CROSSCOMPILING_EMULATOR, 2016-05-04) logic was introduced to substitute a target's `CROSSCOMPILING_EMULATOR` for argv0 in a custom command. However, it broke the case when the argv0 was a target name and now fails to expand the target name to its location at the same time as inserting the emulator. Fix the latter case. Inspired-by: Brian Maher <brian@brimworks.com> Closes: #16288
* | Tests: Add case for Xcode per-config per-source COMPILE_FLAGS diagnosticBrad King2016-10-284-0/+14
|/
* Ninja: Use binary dir for `$subdir/all` targetsAlexis Murzeau2016-10-246-0/+19
| | | | | | | | | | The targets added by commit v3.6.0-rc1~240^2~2 (Ninja: Add `$subdir/all` targets, 2016-03-11) use as `$subdir` the relative path from the top of the source tree to the current source directory. This is not correct when using `add_subdirectory(test test_bin)`. Instead we need to use the relative path from the top of the binary tree to the current binary directory as was done for related targets by commit v3.7.0-rc1~268^2 (Ninja: Add `$subdir/{test,install,package}` targets, 2016-08-05).
* Merge topic 'ninja-diagnose-missing-tool'Brad King2016-10-214-0/+13
|\ | | | | | | | | | | 010560be Ninja: Fail early on when ninja build tool does not run 2d3aa942 cmGlobalGenerator: Allow FindMakeProgram to fail
| * Ninja: Fail early on when ninja build tool does not runBrad King2016-10-204-0/+13
| | | | | | | | | | | | | | | | Diagnose failure to run `ninja --version` and abort early. Otherwise we end up aborting with a confusing message about ninja version "" being too old. Closes: #16378
* | Merge topic 'android-armeabi-c++_static'Brad King2016-10-211-5/+0
|\ \ | |/ |/| | | | | 43f4326e Android: Fix support for armeabi with c++_static
| * Android: Fix support for armeabi with c++_staticBrad King2016-10-211-5/+0
| | | | | | | | | | | | | | | | Add missing "unwind" and "atomic" libraries needed for this combination. See `${ndk}/sources/cxx-stl/llvm-libc++/libs/armeabi/libc++.a` for the libraries the NDK uses. Issue: #16380
| * Merge branch 'ExternalProject-fix-CMAKE_CACHE_ARGS-list' into releaseBrad King2016-10-104-2/+24
| |\
| * \ Merge branch 'android-export-has-cpp' into releaseBrad King2016-10-074-1/+10
| |\ \
* | \ \ Merge topic 'propagate_ctest_use_launchers'Brad King2016-10-183-0/+7
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 19beee46 ctest_configure: Propagate CTEST_USE_LAUNCHERS from caller to project
| * | | | ctest_configure: Propagate CTEST_USE_LAUNCHERS from caller to projectBill Hoffman2016-10-173-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If `CTEST_USE_LAUNCHERS` is `TRUE` in a CTest script then the `ctest_configure` command will add `-DCTEST_USE_LAUNCHERS:BOOL=TRUE` to the cmake command used to configure the project. This allows a project to only set `CTEST_USE_LAUNCHERS` in a ctest script and have launchers work.
* | | | | cmTarget: Move sanity checks and computed property access to callersStephen Kelly2016-10-161-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The GetProperty method is now just accessing contained data, meaning it can be implemented in cmState. Remove the cmMakefile context from the signature as a result and remove the overload with the same signature. Add a GetComputedProperty to cmTarget so that templates can be properly instantiated. Otherwise the Commands would need to be able to reach the specializations which are currently in cmTarget.cxx. As a side-effect, the CMP0026 warning now gives a backtrace to the target when issued from a generator expression.
* | | | | Merge topic 'vs-host-x64-tools'Brad King2016-10-1410-0/+39
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d079e71c VS: Provide an option to use x64 host tools 779939a0 Help: Document VS and Xcode toolset selection
| * | | | | VS: Provide an option to use x64 host toolsBrad King2016-10-1410-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Visual Studio provides toolchains that are themselves built for 32-bit or 64-bit host architectures. By default it uses the 32-bit tools, but it can be told to prefer the 64-bit tools on 64-bit hosts. Extend the `CMAKE_GENERATOR_TOOLSET` specification to provide a way to request use of the 64-bit host tools. Closes: #15622
* | | | | | Merge topic 'ExternalProject-fix-CMAKE_CACHE_ARGS-list'Brad King2016-10-134-2/+24
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | a3c98cb3 ExternalProject: Fix regression in passing list to CMAKE_CACHE_ARGS
| * | | | | ExternalProject: Fix regression in passing list to CMAKE_CACHE_ARGSMax Smolens2016-10-104-2/+24
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix passing a list to the CMAKE_CACHE_ARGS and CMAKE_CACHE_DEFAULT_ARGS options of ExternalProject_Add. Following commit v3.7.0-rc1~273^2~1 (prefer list(APPEND) over string(APPEND) where appropriate, 2016-08-08), the semicolon list separator after the first list element was missing in the generated cache.
* | | | | Merge topic 'test-cpack-improve-failure-messages'Brad King2016-10-101-2/+4
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 7f90d5e5 Tests: Improve RunCMake.CPack_* failure message formatting
| * | | | | Tests: Improve RunCMake.CPack_* failure message formattingBrad King2016-10-071-2/+4
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | Format a `message(FATAL_ERROR)` call with markup to make the generated message more readable so that the difference between the actual and expected results is easier to see.
* | | | | Merge topic 'android-export-has-cpp'Brad King2016-10-104-1/+10
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | dda6775c Android: Record use of C++ by static libs in exported Android.mk files
| * | | | Android: Record use of C++ by static libs in exported Android.mk filesBrad King2016-10-074-1/+10
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | When a `PREBUILT_STATIC_LIBRARY` uses C++ in its sources then the `.a` file will have a link-time dependency on the C++ runtime libraries. Android NDK r14 will add a way to give this information to the NDK build system by adding a `LOCAL_HAS_CPP` setting to the `Android.mk` file. Add this for exported static libraries that use C++.
* | | | Merge topic 'android-cxxabi'Brad King2016-10-102-0/+5
|\ \ \ \ | |_|/ / |/| | / | | |/ | |/| 8cdac469 Android: Fix support for cxxabi.h with libc++
| * | Android: Fix support for cxxabi.h with libc++Brad King2016-10-072-0/+5
| | | | | | | | | | | | | | | | | | Additional include directories are needed for this on some STL types. Closes: #16350
* | | CPack/RPM single debuginfo packagingDomen Vrankar2016-10-0710-0/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | Generate a single debuginfo package even if components packaging is enabled. This makes issue #15668 resolution feature complete. Closes: #15486
* | | CPack/RPM learned defining main componentDomen Vrankar2016-10-075-0/+32
|/ / | | | | | | | | | | Main component rpm package is generated without component suffix in filename and package name.
* | Android: Suppress -Wattributes warnings in test case buildsBrad King2016-10-061-2/+2
|/ | | | | | | | | | | | | | We use `-Werror` in the Android test builds to make sure there are no warnings that we care about (e.g. unused flags). However, the NDK r13 tools produce a warning about their own builtins: ``` <built-in>: In function 'float abs(float)': <built-in>: warning: conflicts with previous declaration here [-Wattributes] ``` Suppress this warning so that we can continue using `-Werror` but tolerate these warnings.
* Merge topic 'add-setup-projects-tests-module'Brad King2016-10-0116-0/+148
|\ | | | | | | | | 130784e0 AndroidTestUtilities: Add module to help drive Android device tests
| * AndroidTestUtilities: Add module to help drive Android device testsSchuyler Kylstra2016-09-3016-0/+148
| | | | | | | | | | | | Add a module to manage the data needed for the project tests. It will move the test data to the build directory and transfer necessary data to an Android device if that is enabled.
* | Merge topic 'cmake_parse_arguments-PARSE_ARGV-multi-value'Brad King2016-09-295-19/+92
|\ \ | | | | | | | | | | | | | | | 66c70cd9 cmake_parse_arguments: Add additional unit tests 41291b20 cmake_parse_arguments: Fix PARSE_ARGV multi-value argument handling
| * | cmake_parse_arguments: Add additional unit testsMatthew Woehlke2016-09-285-29/+84
| | | | | | | | | | | | Add additional unit tests for some corner cases in argument splitting.
| * | cmake_parse_arguments: Fix PARSE_ARGV multi-value argument handlingMatthew Woehlke2016-09-281-2/+20
| |/ | | | | | | | | | | | | | | | | The `PARSE_ARGV` mode was recently added to help functions properly parse their arguments even when those arguments may be quoted and contain literal `;` in their values. Fix the implementation to encode `;`s in reported multi-value arguments and in `UNPARSED_ARGUMENTS` so that `;`s in the individual values are preserved in the lists. This allows clients to access all their argument values correctly.
* | Merge topic 'fix-explicit-RC'Brad King2016-09-293-1/+5
|\ \ | | | | | | | | | | | | | | | 9c5238df project: Fix support for explicit RC language 40c04821 Tests: Decide earlier whether to test resources
| * | project: Fix support for explicit RC languageBrad King2016-09-283-1/+5
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | The check added in commit v3.6.0-rc1~293^2 (Diagnose recursive project/enable_language without crashing, 2016-03-07) broke support for enabling `RC` explicitly along with other languages like `C`. The reason is that we enable all listed languages at once so the internal `enable_language(RC)` that we do while enabling `C` or `CXX` on some platforms triggers the recursion check if `RC` is explicitly listed. Ideally we should refactor things to only enable one language at a time, but for now it is simplest to just exclude `RC` from the explicit list until other languages are enabled, and then enable it. Closes: #16330
* | Tests: Add newline to RunCMake.CPack_RPM SOURCE_PACKAGE caseBrad King2016-09-281-1/+1
|/ | | | | | The `main.cpp` that this test generates needs a newline so that compilers do not warn about a missing newline. Otherwise the warning causes RunCMake infrastructure to detect unexpected output.
* Tests: Fix RunCMake.CTest output match to tolerate line number changesBrad King2016-09-271-3/+3
|
* Merge topic 'cpack-rpm-debuginfo-sources'Brad King2016-09-272-2/+10
|\ | | | | | | | | | | | | 39c7d62c CPack/RPM debuginfo packaging documentation dd3c938a CPack/RPM debuginfo directories to sources b78fcf0d CPack/RPM debuginfo packages must contain sources
| * CPack/RPM debuginfo directories to sourcesDomen Vrankar2016-09-271-2/+2
| | | | | | | | | | | | List of sources must be split into paths parts so that debuginfo package cleans up after itself.
| * CPack/RPM debuginfo packages must contain sourcesDomen Vrankar2016-09-272-2/+10
| | | | | | | | | | Issue #15668 fix was missing relevant source files in debuginfo package.
* | Fix XCODE_ATTRIBUTE_..._LOCATION target property lookupBrad King2016-09-223-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit v3.5.0-rc1~272^2~16 (cmGeneratorTarget: Add API for property keys, 2015-10-25) changed the Xcode generator implementation of `XCODE_ATTRIBUTE_...` properties to use the target `GetProperty` method on each `XCODE_ATTRIBUTE_...` property listed by `GetPropertyKeys` instead of looping over the property entries directly. This made the lookup of property names of the form `XCODE_ATTRIBUTE_..._LOCATION` accidentally trigger the computed property logic for the undocumented/legacy `<CONFIG>_LOCATION` property. Of course the computed property value is not the same as the value stored in the `XCODE_ATTRIBUTE_..._LOCATION` property. Fix the computed property logic to avoid triggering on `XCODE_ATTRIBUTE_...` attributes. Closes: #16319
* | Merge topic 'test-fixtures'Brad King2016-09-2216-0/+207
|\ \ | | | | | | | | | | | | 73f47c9e CTest: Add support for test fixtures
| * | CTest: Add support for test fixturesCraig Scott2016-09-2016-0/+207
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add new test properties: * FIXTURES_SETUP * FIXTURES_CLEANUP * FIXTURES_REQUIRED to specify the roles and dependencies of tests providing/using test fixtures.