summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'vs-16.4-custom-command-inputs'Brad King2020-01-291-1/+7
|\ | | | | | | | | | | | | 58b0674687 VS: Tell VS 16.4 not to verify SYMBOLIC custom command inputs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4297
| * VS: Tell VS 16.4 not to verify SYMBOLIC custom command inputsBrad King2020-01-281-1/+7
| | | | | | | | | | | | | | | | | | Extend the fix from commit 0578239d3a (VS: Tell VS 16.4 not to verify SYMBOLIC custom command outputs, 2019-09-23, v3.15.4~2^2) to apply to SYMBOLIC *inputs* too. This is needed when there is a chain of custom commands that use symbolic paths for ordering. Fixes: #20179
* | Merge topic 'mixed-mode-multi-arch'Brad King2020-01-291-0/+11
|\ \ | | | | | | | | | | | | | | | | | | 15f6606abd Swift: disallow multiple `CMAKE_OSX_ARCHITECTURES` with Swift Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4283
| * | Swift: disallow multiple `CMAKE_OSX_ARCHITECTURES` with SwiftSaleem Abdulrasool2020-01-281-0/+11
| | | | | | | | | | | | | | | This disallows the use of multiple values in `CMAKE_OSX_ARCHITECTURES` with Swift which does not support FAT compilation.
* | | Merge topic 'mf-json-type'Brad King2020-01-291-3/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 5a72ffb33a cmMakefile: Fix construction of Json::Value from fixed-size int types Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4291
| * | | cmMakefile: Fix construction of Json::Value from fixed-size int typesRaul Tambre2020-01-281-3/+2
| |/ / | | | | | | | | | | | | | | | | | | Cast to the Json-provided fixed-size integer types rather than assuming that the `std::*` variants match. Fixes: #20278
* | | CMake Nightly Date StampKitware Robot2020-01-291-1/+1
| | |
* | | Merge topic 'mf-typo'Brad King2020-01-281-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 7b6af980eb cmMakefile: Fix spelling typo in comment Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4292
| * | | cmMakefile: Fix spelling typo in commentMasashi Fujita2020-01-281-1/+1
| |/ /
* | | Merge topic 'ninja-1.10'Brad King2020-01-285-5/+36
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ccaa0bccc4 Ninja: Do not clean metadata when re-generating inside a running build 657820a00b Ninja: Track when running to re-generate during a build b12b013028 Ninja: Factor metadata cleanup into dedicated method 5d92e60d81 Ninja: Skip cleandead and recompact if build.ninja is missing dd0a4718fd Ninja: Fix CMAKE_NINJA_OUTPUT_PATH_PREFIX with Ninja 1.10 0944caaebb Tests: Fix RunCMake.CMP0037 test with Ninja 1.10 9d4883cce5 Tests: Fix RunCMake.Ninja test for Ninja 1.10 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4290
| * | | Ninja: Do not clean metadata when re-generating inside a running buildBrad King2020-01-271-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When `ninja` re-runs CMake to re-generate the build system, do not try to use the ninja tools to update metadata on Windows. The outer ninja process is already holding the files open. Issue: #20274
| * | | Ninja: Track when running to re-generate during a buildBrad King2020-01-274-1/+7
| | | | | | | | | | | | | | | | | | | | Tell CMake explicitly when it is re-running inside a `ninja` invocation to re-generate the build system.
| * | | Ninja: Factor metadata cleanup into dedicated methodBrad King2020-01-272-0/+6
| | | |
| * | | Ninja: Skip cleandead and recompact if build.ninja is missingBrad King2020-01-271-2/+10
| | | | | | | | | | | | | | | | | | | | In error cases the `build.ninja` file may not exist. Skip running ninja tools that require it so that we do not generate additional errors.
| * | | Ninja: Fix CMAKE_NINJA_OUTPUT_PATH_PREFIX with Ninja 1.10Brad King2020-01-271-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ninja 1.10 tools we use since commit fb18215904 (Ninja: clean ninja metadata once generated, 2019-05-13) expect `build.ninja` to be available and loadable. In commit 6cc74b6140 (cmGlobalNinjaGenerator: avoid cleandead and recompact in Ninja-Multi, 2020-01-22) we added a condition to exclude the tools in a case where `build.ninja` is not available. Generalize that condition using a local variable and extend it for the case that `build.ninja` is not loadable in the current directory because it is meant to be a sub-ninja for a higher directory.
* | | | Merge topic 'xcode-top-level-only-with-object-library'Brad King2020-01-281-2/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 64304fe72b Xcode: Fix post build script for 'top level project only' opt Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4284
| * | | | Xcode: Fix post build script for 'top level project only' optYauheni Khnykin2020-01-271-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When CMAKE_XCODE_GENERATE_TOP_LEVEL_PROJECT_ONLY is set on Xcode generator created post build scripts which tried to call XCODE_DEPEND_HELPER.make script in subproject. But XCODE_DEPEND_HELPER.make don't exist in subprojects when mentioned option is set on. Fixes: #20262
* | | | | Merge topic 'dot-dir'Brad King2020-01-281-2/+7
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 830a7d8803 cmArchiveWrite: Remove ./ suffix from zip archives Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4288
| * | | | | cmArchiveWrite: Remove ./ suffix from zip archivesCristian Adam2020-01-271-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: #20238
* | | | | | Merge topic 'modernize-memory-management'Brad King2020-01-282-15/+15
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b50b2755da cmComputeLinkInformation: modernize memory management Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4285
| * | | | | | cmComputeLinkInformation: modernize memory managementMarc Chevrier2020-01-262-15/+15
| |/ / / / /
* | | | | | Merge topic 'clang-tidy-driver-mode'Brad King2020-01-282-2/+14
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f6f4eb0907 clang-tidy: Add driver mode argument Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4208
| * | | | | | clang-tidy: Add driver mode argumentHanjiang Yu2020-01-272-2/+14
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `clang-tidy` does not infer driver mode if it is not provided with a JSON compilation database. This is exactly the way cmake launches it. Hence clang-tidy will only use the default driver mode. Add an explicit driver mode argument to avoid this.
* | | | | | Merge topic 'append-std-string'Brad King2020-01-2821-110/+98
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1398517f31 AppendProperty: convert value param to std::string Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4282
| * | | | | | AppendProperty: convert value param to std::stringVitaly Stakhovsky2020-01-2521-110/+98
| |/ / / / /
* | | | | | Merge topic 'osx-version-flags'Brad King2020-01-284-13/+36
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6a84f0b791 macOS: Test OSX_COMPATIBILITY_VERSION and OSX_CURRENT_VERSION properties 4a62e3d97c macOS: Add OSX_COMPATIBILITY_VERSION and OSX_CURRENT_VERSION properties Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4274
| * | | | | | macOS: Add OSX_COMPATIBILITY_VERSION and OSX_CURRENT_VERSION propertiesIsuru Fernando2020-01-244-13/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #17652
* | | | | | | Merge topic 'cmsting-stl-compatibility'Brad King2020-01-283-50/+165
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 8f839d02e3 cm::String: enhance compatibility with STL Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4281
| * | | | | | | cm::String: enhance compatibility with STLMarc Chevrier2020-01-253-50/+165
| | |/ / / / / | |/| | | | |
* | | | | | | Merge topic 'QNX_CMAKE_SYSROOT'Brad King2020-01-281-1/+7
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 32a6ab1f3b QNX: Add support for CMAKE_SYSROOT Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4277
| * | | | | | | QNX: Add support for CMAKE_SYSROOTStephen Kelly2020-01-271-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QCC is a wrapper around GCC, but it is not a fully transparent wrapper. Some compile options need to be passed to GCC using a `-Wc` option. QCC does not support --sysroot, so setting CMAKE_SYSROOT in a toolchain file currently does not work. This means that it is likely that no one is setting CMAKE_SYSROOT in existing QNC toolchain files. Override the GCC option for sysroot in the QCC.cmake file with -Wc,-isysroot. This exposes a further issue in that the QNX SDK does not follow the same architectural folder structure as linux uses. That is, on linux systems, architecture-specific libraries might be in <sysroot>/usr/lib/<arch> such as /usr/lib/x86_64-linux-gnu/libcurl.so CMake models this by suffixing the <arch> onto lib directories when searching for libraries. The QNX SDK is structured differently such that the <arch> should be used as a prefix: <sysroot>/<arch>/usr/lib such as <sysroot>/x86_64/usr/lib/libcurl.so Add a variable for platform configuration to set whether to prefix or suffix the <arch> and set that in the QCC.cmake. Use the directory structure of the QNX SDK to compute the <arch> from the implicit library directories. The assumption is that the arch will be a single directory directly below the CMAKE_SYSROOT, below which the usr/ prefix occurs. It would not be appropriate to instruct users to make the <arch> part of the sysroot when specified in the toolchain file because: 1. That would be non-DRY - The QCC wrapper already determines the <arch> by the -V argument passed to the compiler, specified in the toolchain file as the CMAKE_C_COMPILER_TARGET variable. 2. The includes in the QNX SDK are not below the <arch> directory. So, the location of the <arch> in the full path is different on QNX compared to, say an embedded linux platform, but the intent is the same. Add documentation to recommend the use of CMAKE_SYSROOT in a QNX toolchain file. As the CMAKE_SYSROOT is always the same for QNX, it would be possible to simply set it in QCC.cmake. However, that would change behavior for existing users as when CMAKE_SYSROOT is set, files/paths outside of the CMAKE_SYSROOT do not get found. The <arch> prefixing is only enabled in cmSearchPath.cxx if CMAKE_SYSROOT is set. This ensures that the user gets consistency in the current state without CMAKE_SYSROOT, and gets better consistency when using CMAKE_SYSROOT.
* | | | | | | | Merge topic 'cuda_runtime_library_controls'Brad King2020-01-286-34/+72
|\ \ \ \ \ \ \ \ | |_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0d0145138f CUDA: Add abstraction for cuda runtime selection Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4178
| * | | | | | | CUDA: Add abstraction for cuda runtime selectionRobert Maynard2020-01-276-34/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #17559 Replace our hard-coded default of cudart=static with a first-class abstraction to select the runtime library from an enumeration of logical names.
* | | | | | | | CMake Nightly Date StampKitware Robot2020-01-281-1/+1
| |_|_|_|_|/ / |/| | | | | |
* | | | | | | Merge topic 'fix-ninja-multi-framework-header'Brad King2020-01-272-8/+26
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 63c9cd2088 Ninja Multi-Config: Fix bug with MacOS frameworks Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4279
| * | | | | | | Ninja Multi-Config: Fix bug with MacOS frameworksKyle Edwards2020-01-242-8/+26
| | | | | | | |
* | | | | | | | Merge topic 'depend-on-target-real-name'Brad King2020-01-271-1/+2
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 08699cec68 add_custom_command: Fix dependency on macOS framework target Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4273
| * | | | | | | | add_custom_command: Fix dependency on macOS framework targetBrad King2020-01-241-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the `DEPENDS` option names a logical target name, convert to the "real" path of that target rather than any of the symlink-provided alternative file names. This makes the dependencies consistent with the outputs named by link rules producing the target artifacts. Fixes: #20264
* | | | | | | | | Merge topic 'csharp-no-valued-macros'Brad King2020-01-271-0/+4
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | effd4d0569 CSharp: Do not pass definitions with values Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4267
| * | | | | | | | | CSharp: Do not pass definitions with valuesSumit Bhardwaj2020-01-241-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Microsoft C# tooling does not accept definitions with values. Filter them out. Fixes: #19817
* | | | | | | | | | Merge topic 'cpack-dmg-breaklongline'Brad King2020-01-271-2/+3
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4a3a7d5f5d CPack/DragNDrop: Fix word corruption in BreakLongLines Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4275
| * | | | | | | | | | CPack/DragNDrop: Fix word corruption in BreakLongLinesKoray Kilinc2020-01-241-2/+3
| | |/ / / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | When the lines are wrapped the leading characters of the next word were being lost
* | | | | | | | | | Merge topic 'cpack-dmg-rtf-for-sla'Brad King2020-01-271-10/+31
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9571929701 CPack/DragNDrop: Support RTF licenses Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4270
| * | | | | | | | | | CPack/DragNDrop: Support RTF licensesAndrew Fuller2020-01-241-10/+31
| |/ / / / / / / / /
* | | | | | | | | | Merge topic 'makefiles-suppress-vcs-implicit-rules'Brad King2020-01-271-3/+9
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 879e56f336 makefiles: suppress RCS and SCCS implicit rules Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4264
| * | | | | | | | | | makefiles: suppress RCS and SCCS implicit rulesBen Boeckel2020-01-241-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are not suffix rules and are not suppressed by the empty `.SUFFIXES` recipe. Additionally, the old `SUFFIXES =` code didn't actually accomplish this, so remove it.
* | | | | | | | | | | CMake Nightly Date StampKitware Robot2020-01-271-1/+1
| |_|_|_|_|_|_|_|/ / |/| | | | | | | | |
* | | | | | | | | | CMake Nightly Date StampKitware Robot2020-01-261-1/+1
| |_|_|_|_|_|/ / / |/| | | | | | | |
* | | | | | | | | CMake Nightly Date StampKitware Robot2020-01-251-1/+1
| |_|_|/ / / / / |/| | | | | | |
* | | | | | | | Merge topic 'ninja-multi-cross-configs'Brad King2020-01-243-14/+64
|\ \ \ \ \ \ \ \ | |_|_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b7a2baf38c Ninja Multi-Config: Add variable to control configs used in cross-config build Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4269