summaryrefslogtreecommitdiffstats
path: root/Tests
Commit message (Collapse)AuthorAgeFilesLines
* SwigTest: Update for swig_add_library and add lua exampleDaniele E. Domenichelli2016-11-111-2/+11
|
* Merge topic 'import-librhash'Brad King2016-11-104-0/+38
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cd8a57ae Add option to build CMake against a system librhash 71180fc8 FindLibRHash: Add module to find the librhash package 3216e94c Remove unused cm_sha2 infrastructure 5420278d Port hash computation to cmCryptoHash 9a596b33 cmCryptoHash: Re-implement in terms of librhash 47f91a61 cmCryptoHash: Avoid using subclasses at client sites d0ff3e70 librhash: Port to KWIML for ABI and integer type information 465a85fb librhash: Avoid signed left-shift overflow fc2cb74f librhash: Implement bswap_32 as a function even in strict C90 mode 0bd333bc librhash: Implement bswap_64 even in strict C90 mode 7189d62c librhash: Use __builtin_bswap{32,64} on Clang af7ebf8a librhash: Install COPYING file with CMake documentation bb01f20e librhash: Disable warnings to avoid changing 3rd party code 31bb727f librhash: Build the library within CMake 53048afa librhash: Remove source fragments not needed for CMake 5cb1b345 Merge branch 'upstream-librhash' into import-librhash ...
| * FindLibRHash: Add module to find the librhash packageBrad King2016-11-104-0/+38
| | | | | | | | | | | | Add it to a private source directory that is not installed so that we can use it for building CMake itself. This will allow it to mature before being distributed publicly.
* | Merge topic 'drop-kwstyle'Brad King2016-11-091-14/+0
|\ \ | | | | | | | | | | | | 36f9f0f8 Drop KWStyle checks in favor of clang-format and Git hooks
| * | Drop KWStyle checks in favor of clang-format and Git hooksBrad King2016-11-081-14/+0
| | | | | | | | | | | | | | | | | | We now define code layout by clang-format and enforce whitespace with Git hooks. There is no need to run KWStyle anymore, as all we used it to check was line length anyway.
* | | Merge topic 'imported-interface-libname'Brad King2016-11-0914-2/+173
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 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-0914-2/+173
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Features: Test feature propagation with language standard meta-featureBrad King2016-11-021-4/+4
| | | | | | | 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 propagation of a feature requiring C++ 11, use the `std_cxx_11` meta-feature that has exactly this meaning.
* Features: Add meta-features requesting awareness of a particular standardBrad King2016-11-021-0/+2
| | | | | | | | | | A common use case of `target_compile_features` is simply to specify that the compiler should be run in a mode that is aware of e.g. C++11. Some projects simply specify a particular C++11-only feature to request this. Provide a first-class way to do this by naming features after the corresponding language standard. Record them as always available in the corresponding standard level so that requesting them always ensures that standard (or higher) is used.
* 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
| |
* | Add generator expression support to per-source COMPILE_FLAGSZsolt Parragi2016-10-282-0/+4
|/ | | | | | This allows users to specify different genex-based compile flags for each file in a target, e.g. compiling just a single file with `Od/Ox` in release builds on Visual Studio.
* Merge topic 'cmake-server-handshake-improvements'Brad King2016-10-281-2/+2
|\ | | | | | | | | | | 42ccbee1 server-mode: Handle generator toolset and platform in handshake d792491c cmake-server: Better error reporting during handshake
| * cmake-server: Better error reporting during handshakeTobias Hunger2016-10-271-2/+2
| | | | | | | | | | | | | | Catch more problematic input during handshake and report failure. These were caught before when trying to configure, but it is way better to get these reports early.
* | Features: Fix cxx_right_angle_brackets compiler feature testAlex Wang2016-10-251-1/+3
| | | | | | | | | | | | | | The clang-format pass in commit v3.6.0-rc1~54^2~1 (Revise C++ coding style using clang-format, 2016-05-16) changed the template right angle brackets from `>>` to `> >`, which defeats the purpose of this test. Change it back and exclude this content from formatting.
* | Merge topic 'ninja-subdir-binary-dir'Brad King2016-10-256-0/+19
|\ \ | | | | | | | | | | | | | | | | | | 87cc9bfc Merge branch 'backport-ninja-subdir-binary-dir' into ninja-subdir-binary-dir e983bd32 Ninja: Use binary dir for `$subdir/all` targets 42db2ebc Ninja: Use binary dir for `$subdir/all` targets
| * | 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 'cmake-server-message-quoting'Brad King2016-10-251-5/+5
|\ \ \ | |/ / |/| / | |/ | | 9b8dc79c cmake-server: Change message wrapper to avoid ambiguity with content
| * cmake-server: Change message wrapper to avoid ambiguity with contentBrad King2016-10-241-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Change our message wrapper from [== CMake Server ==[ ... ]== CMake Server ==] to [== "CMake Server" ==[ ... ]== "CMake Server" ==] to guarantee that no JSON content can ever contain the ending string (because it would be encoded as `]== \"CMake Server\" ==]`).
* | BootstrapTest: Use --parallel=... argument.Daniel Pfeifer2016-10-212-4/+9
| | | | | | | | | | | | Determine the number of processors and provide it to the bootstrap script. Also make sure this test does not run parallel with other tests.
* | Merge topic 'allow-fallback-config-mapping'Brad King2016-10-212-0/+10
|\ \ | | | | | | | | | | | | | | | | | | 587ab322 Tests: Add test for MAP_IMPORTED_CONFIG_<CONFIG> empty fallback 149d49ea Teach MAP_IMPORTED_CONFIG_<CONFIG> to support configuration-less import 60d73393 Help: Format MAP_IMPORTED_CONFIG_<CONFIG> documentation
| * | Tests: Add test for MAP_IMPORTED_CONFIG_<CONFIG> empty fallbackBrad King2016-10-202-0/+10
| | |
* | | 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 'fix-Android-NsightTegra' into releaseBrad King2016-10-182-1/+4
| |\ \
| * \ \ Merge branch 'ninja-framework-POST_BUILD' into releaseBrad King2016-10-131-0/+5
| |\ \ \
| * \ \ \ Merge branch 'ExternalProject-fix-CMAKE_CACHE_ARGS-list' into releaseBrad King2016-10-104-2/+24
| |\ \ \ \
* | \ \ \ \ Merge topic 'ExternalData-multiple-hashes'Brad King2016-10-195-0/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 33a9aaa8 ExternalData: Add support for multiple hash algorithms
| * | | | | | ExternalData: Add support for multiple hash algorithmsMatt McCormick2016-10-185-0/+6
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for projects to have `Data.txt.md5` *and* `Data.txt.sha512` where the content links hold hashes for the same file. Check all `ExternalData_URL_TEMPLATES` entries in order for all available hashes. The data acquisition is considered a failure if none of the available URL resources has any of the given hashes. This makes it possible to have multiple data server resources where all servers do not support all hashing algorithms.
* | | | | | Merge topic 'fix-Android-NsightTegra'Brad King2016-10-192-1/+4
|\ \ \ \ \ \ | |/ / / / / |/| | | | / | | |_|_|/ | |/| | | | | | | | | | | | | 9af881d8 Tests: Add VSNsightTegra test for VS 2015 6739d240 Tests: Fix VSNsightTegra test on Android NDK r12b 06c39612 VS: Fix NVIDIA Nsight Tegra Visual Studio Edition support
| * | | | Tests: Add VSNsightTegra test for VS 2015Brad King2016-10-181-0/+3
| | | | |
| * | | | Tests: Fix VSNsightTegra test on Android NDK r12bBrad King2016-10-181-1/+1
| |/ / / | | | | | | | | | | | | | | | | Test with architecture `armv7-a` instead of `armv7-a-hard` because the latter is supporte supported only with NDK revisions r9c to r11c.
| * | | 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.
* | | | | | Merge topic 'math-EXPR-unary'Brad King2016-10-181-0/+3
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2810e561 math(EXPR): Add support for unary `+` and `-` expressions 834f52a6 cmExprParser: Revise indentation style to match rest of CMake 7aaed265 cmExprParser: Port to bison 3
| * | | | | | math(EXPR): Add support for unary `+` and `-` expressionsBrad King2016-10-141-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes: #8996
* | | | | | | 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 'ninja-framework-POST_BUILD'Brad King2016-10-141-0/+5
|\ \ \ \ \ \ \ | | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | 20278872 Ninja: Fix POST_BUILD commands on macOS Frameworks
| * | | | | | Ninja: Fix POST_BUILD commands on macOS FrameworksBrad King2016-10-131-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The condition added by commit v2.8.12~179^2 (OS X: Fix regression handling frameworks for Ninja, 2013-07-16) for excluding use of versioning symlinks on macOS Frameworks must match that used for POST_BUILD selection. Otherwise we place the POST_BUILD commands after a symlink step that is never added. Closes: #16363
* | | | | | | 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.