summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* WCDH: Ignore language standard meta-featuresBrad King2016-11-021-1/+6
| | | | | | The `{c,cxx}_std_*` features are meant for use with `target_compile_features` but do not make sense for use with WriteCompilerDetectionHeader. Filter them out of any requested list.
* Features: Add meta-features requesting awareness of a particular standardBrad King2016-11-026-0/+33
| | | | | | | | | | 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.
* Features: Centralize per-compiler recording macrosBrad King2016-11-0211-64/+38
| | | | | Simplify and de-duplicate per-compiler feature recording macros and convert to a centralized per-language macro.
* Features: Do not record features on MSVC < 2010Brad King2016-11-021-1/+3
| | | | | | | We have no feature tests for versions of VS older than 2010, so do not even call `record_compiler_features` for such versions. This is consistent with other compilers where we call this macro only for versions for which we have recorded features.
* Merge branch 'release'Brad King2016-11-020-0/+0
|\
| * Merge branch 'doc-cmake-qt-fixes' into releaseBrad King2016-11-021-1/+1
| |\
| * \ Merge branch 'cpack-doc-typos' into releaseBrad King2016-11-022-7/+7
| |\ \
| * \ \ Merge branch 'fix-macos-sysroot' into releaseBrad King2016-11-022-30/+2
| |\ \ \
* | \ \ \ Merge topic 'doc-cmake-qt-fixes'Brad King2016-11-020-0/+0
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | | | | | | | | | | | 1c52e651 Help: Update example Qt 5 find_package call to add missing component 4c802a32 Help: Update example Qt 5 find_package call to use COMPONENTS
| * | | | Help: Update example Qt 5 find_package call to add missing componentThiago M. de C. Marques2016-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running CMake on it caused the following error: error: Target "publisher" links to target "Qt5::DBus" but the target was not found. Perhaps a find_package() call is missing for an IMPORTED target, or an ALIAS target is missing? Add the missing DBus component.
| * | | | Help: Update example Qt 5 find_package call to use COMPONENTSMarcus D. Hanwell2016-11-021-1/+1
| | | | |
* | | | | Merge topic 'doc-cmake-qt-missing-dbus'Brad King2016-11-021-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 13bc31aa Help: Update example Qt 5 find_package call to add missing component
| * | | | | Help: Update example Qt 5 find_package call to add missing componentThiago M. de C. Marques2016-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running CMake on it caused the following error: error: Target "publisher" links to target "Qt5::DBus" but the target was not found. Perhaps a find_package() call is missing for an IMPORTED target, or an ALIAS target is missing? Add the missing DBus component.
* | | | | | Merge topic 'cpack-doc-typos'Brad King2016-11-022-4/+4
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | 4ab3b0c4 CPackRPM: Fix incorrect variable name in documentation e6460e7d CPackDeb: Fix incorrect variable name in documentation
| * | | | | CPackRPM: Fix incorrect variable name in documentationAlex Turbov2016-11-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `CPACK_RPM_COMPONENT_INSTALL` is the correct variable to set to enable component packaging. `CPACK_RPM_PACKAGE_COMPONENT` is just set to a component name when CPack calls corresponding installer.
| * | | | | CPackDeb: Fix incorrect variable name in documentationAlex Turbov2016-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `CPACK_DEB_COMPONENT_INSTALL` is the correct variable to set to enable component packaging. `CPACK_DEB_PACKAGE_COMPONENT` is just set to a component name when CPack calls corresponding installer.
* | | | | | Merge topic 'fix_compiler_arg1'Brad King2016-11-021-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | cfbf857b cmRulePlaceholderExpander: Fix CMAKE_<LANG>_COMPILER_ARG1 replacement
| * | | | | | cmRulePlaceholderExpander: Fix CMAKE_<LANG>_COMPILER_ARG1 replacementZack Galbreath2016-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactoring in commit b29425f7 (cmLocalGenerator: Populate a container of mappings for replacements, 2016-10-09) broke substitution of this placeholder by storing the wrong key in the new replacement map. Use the proper key, `CMAKE_<LANG>_COMPILER_ARG1`.
* | | | | | | Merge topic 'fix-macos-sysroot'Brad King2016-11-022-30/+2
|\ \ \ \ \ \ \ | | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | 93504190 Darwin: Remove deployment target version check 542d52f9 Revert "Xcode: Convert maybe unversioned OSX sysroot into versioned SDK path"
| * | | | | | Darwin: Remove deployment target version checkGregor Jasny2016-11-012-26/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Starting with Xcode 8 the SDK folder also contains an unversioned entry: MacOSX.sdk MacOSX10.12.sdk -> MacOSX.sdk If this unversioned path is used CMake cannot detect the SDK version. Furthermore, querying the SDK version via xcodebuild -sdk <sysroot> -version Path gives bogus results for the Command Line Tools installed into `/`. The OS X deployment target version and SDK version are not as tied as they once were, so this check is now more trouble than it is worth. Simply remove it. Closes: #16323
| * | | | | | Revert "Xcode: Convert maybe unversioned OSX sysroot into versioned SDK path"Gregor Jasny2016-11-011-4/+2
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit v3.7.0-rc1~48^2 (Xcode: Convert maybe unversioned OSX sysroot into versioned SDK path, 2016-09-25). The replacement of `else()` with `if(CMAKE_OSX_SYSROOT)` defeats the prior handling of `if("x${CMAKE_OSX_SYSROOT}" MATCHES "/")`. This causes the combination -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING="" -DCMAKE_OSX_SYSROOT:STRING=/ to not be honored and `-isysroot` to be emitted as a compiler flag universally. We will need another solution to the problem the now-reverted commit was meant to address. Closes: #16394
* | | | | | Merge topic 'UseSWIG-SWIG_OUTFILE_DIR'Brad King2016-11-022-3/+19
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8444b984 UseSWIG: Add option to specify swig output file directory
| * | | | | | UseSWIG: Add option to specify swig output file directoryCong Zhang2016-11-012-3/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `swig` has two output-related options: * `-o <outfile>`: Set name of C/C++ output file to <outfile> * `-outdir <dir>`: Set language-specific files output directory to <dir> We already have `CMAKE_SWIG_OUTDIR` for the latter. Add a new `SWIG_OUTFILE_DIR` option for the former.
* | | | | | | CMake Nightly Date StampKitware Robot2016-11-021-1/+1
| |_|_|_|/ / |/| | | | |
* | | | | | Merge topic 'find-qt5-docs'Brad King2016-11-011-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ff11989c Help: Update example Qt 5 find_package call to use COMPONENTS
| * | | | | | Help: Update example Qt 5 find_package call to use COMPONENTSMarcus D. Hanwell2016-11-011-1/+1
|/ / / / / /
* | | | | | Merge topic 'doc-tweaks'Brad King2016-11-012-2/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 311d0376 Help: Document error behavior of file(REMOVE/REMOVE_RECURSE) 77e78af1 Help: Clarify how to run sequential commands in execute_process
| * | | | | | Help: Document error behavior of file(REMOVE/REMOVE_RECURSE)Christian Fetzer2016-11-011-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Clarifies that there is no need to surround file(REMOVE/REMOVE_RECURSE) calls by `if(EXISTS)` as non existent files are silently ignored.
| * | | | | | Help: Clarify how to run sequential commands in execute_processChristian Fetzer2016-11-011-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The execute_process command starts all commands in parallel (in order for the piping to work). Mention this explicitly and also add a note about how to execute commands sequentially.
* | | | | | | Merge topic 'CPackDeb-doc-typos'Brad King2016-11-011-3/+3
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | / / | | |_|_|/ / | |/| | | | c75b8910 CPackDeb: fix copy-n-paste typos in documentation
| * | | | | CPackDeb: fix copy-n-paste typos in documentationAlex Turbov2016-11-011-3/+3
| | |/ / / | |/| | |
* | | | | Merge branch 'release'Brad King2016-11-010-0/+0
|\ \ \ \ \ | | |_|_|/ | |/| | |
| * | | | Merge branch 'FindMatlab-fix-typo' into releaseBrad King2016-10-282-3/+3
| |\ \ \ \
| * \ \ \ \ Merge branch 'FindMatlab-9.1' into releaseBrad King2016-10-281-0/+1
| |\ \ \ \ \
* | \ \ \ \ \ Merge topic 'custom-command-CROSSCOMPILING_EMULATOR'Brad King2016-11-017-21/+77
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-283-15/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | | | | Merge topic 'FindSDL-sound-fix'Brad King2016-11-011-4/+3
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f2ff9495 FindSDL_sound: Fix SDL_SOUND_LIBRARIES result value
| * | | | | | | | FindSDL_sound: Fix SDL_SOUND_LIBRARIES result valueBrad King2016-10-281-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The value is meant to be a plain-variable ;-list. Remove quotes and caching. Patch-by: Aleksey Chernov (virx on gitlab.kitware.com) Closes: #16390
* | | | | | | | | Merge topic 'FindMatlab-fix-typo'Brad King2016-11-012-3/+3
|\ \ \ \ \ \ \ \ \ | | |_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | f2de7079 FindMatlab: Fix typo in matlab_add_unit_test implementation
| * | | | | | | | FindMatlab: Fix typo in matlab_add_unit_test implementationMatthew Woehlke2016-10-282-3/+3
| | |_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix typo in variable used to communicate between matlab_add_unit_test and its helper script MatlabTestsRedirect.cmake that was introduced in commit v3.7.0-rc1~116^2 (FindMatlab: Extend matlab_add_unit_test to run arbitrary test code, 2016-08-30).
* | | | | | | | Merge topic 'FindMatlab-9.1'Brad King2016-11-011-0/+1
|\ \ \ \ \ \ \ \ | | |_|_|_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | e29f33cd FindMatlab: Add support for Matlab 2016b (9.1)
| * | | | | | | FindMatlab: Add support for Matlab 2016b (9.1)Francesco Romano2016-10-281-0/+1
| |/ / / / / /
* | | | | | | Merge topic 'src-COMPILE_FLAGS-genex'Brad King2016-11-0115-15/+95
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9a58517d Tests: Add case for Xcode per-config per-source COMPILE_FLAGS diagnostic 1e4bb358 Add generator expression support to per-source COMPILE_FLAGS
| * | | | | | | 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-2811-15/+81
| | |_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 'st2-env-vars-variable'Brad King2016-11-015-1/+66
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 95805d72 Sublime: Add option to specify env vars for the .sublime-project
| * | | | | | | Sublime: Add option to specify env vars for the .sublime-projectBruno Pedrosa2016-10-275-1/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a `CMAKE_SUBLIME_TEXT_2_ENV_SETTINGS` variable to control addition of env vars in the `.sublime-project`. Closes: #16387
* | | | | | | | Merge topic 'clang-tidy'Brad King2016-11-0120-48/+46
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5214bb35 Avoid some copies 602b78aa Remove redundant c_str() calls c58c739d Use the empty method to check for emptiness