summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge topic 'GNUInstallDirs-no-system'Brad King2020-01-314-10/+22
|\ | | | | | | | | | | | | c18ed7236d GNUInstallDirs: Warn when CMAKE_SYSTEM_NAME is not set Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4300
| * GNUInstallDirs: Warn when CMAKE_SYSTEM_NAME is not setVitaly Lipatov2020-01-304-10/+22
| | | | | | | | | | | | If a project writes `include(GNUInstallDirs)` before `project()` then `CMAKE_SYSTEM_NAME` may not be set and an incorrect `LIBDIR` may be computed. Warn about this case.
* | CMake Nightly Date StampKitware Robot2020-01-311-1/+1
| |
* | Merge topic 'automoc-using-depfiles'Brad King2020-01-3031-28/+3657
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | aebfbcaa46 AutoGen: Use depfiles for the XXX_autogen ninja targets f765fdea03 AutoGen: Use moc's feature to output dependencies f8c505d4b3 Add a parser for GCC-style depfiles Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Jan Niklas Hasse <jhasse@bixense.com> Merge-request: !4221
| * | AutoGen: Use depfiles for the XXX_autogen ninja targetsJoerg Bornemann2020-01-284-6/+170
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The XXX_autogen targets are implemented as utility commands, which means they always run, even if there weren't any changes. For the Ninja generator and Qt >= 5.15 we're taking a different approach: This commit adds custom commands that create XXX_autogen/timestamp files. Those custom commands have a depfile assigned that is generated from the depfiles that were created by moc. The XXX_autogen targets merely wrap the XXX_autogen/timestamp custom commands. Fixes: #18749
| * | AutoGen: Use moc's feature to output dependenciesJoerg Bornemann2020-01-2810-21/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Qt version 5.15.0 moc learned to output the dependencies of the generated file. This commit enhances JobCompileMocT to read the dependency file written by moc. The dependencies are stored in the same cache that's used for the dependencies determined by dependency filters. The dependency filter functionality is turned off if moc's dependency output feature is used. Fixes: #17750 Fixes: #19058
| * | Add a parser for GCC-style depfilesJoerg Bornemann2020-01-2820-1/+3390
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce the function cmReadGccDepfile that parses a GCC-style depfile and returns its content. The implementation uses a lexer that is modeled after the re2c implementation in Ninja. The sample files of the autotest have been created with gcc 8.3.0. This depfile reader is to be used by the Autogen facility to make use of the depfiles that are generated by Qt's meta object compiler.
* | | Merge topic 'std-string-cleanup'Brad King2020-01-3025-94/+85
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | bbc07e4561 Source: use std::string in place of const char* Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4299
| * | | Source: use std::string in place of const char*Vitaly Stakhovsky2020-01-2925-94/+85
| | | |
* | | | Merge topic 'document_cmake_reserved_names'Brad King2020-01-303-0/+10
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | 2158ef3e44 Help: Document which variable names CMake reserves. Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4298
| * | | Help: Document which variable names CMake reserves.Robert Maynard2020-01-293-0/+10
| | | |
* | | | CMake Nightly Date StampKitware Robot2020-01-301-1/+1
| |/ / |/| |
* | | Merge branch 'release-3.15'Brad King2020-01-290-0/+0
|\ \ \
| * \ \ Merge branch 'vs-16.4-custom-command-inputs' into release-3.15Brad King2020-01-281-1/+7
| |\ \ \ | | | | | | | | | | | | | | | Merge-request: !4297
* | \ \ \ Merge branch 'release-3.16'Brad King2020-01-290-0/+0
|\ \ \ \ \
| * \ \ \ \ Merge topic 'vs-16.4-custom-command-inputs' into release-3.16Brad 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
* | | | | | 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-295-0/+24
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-285-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This disallows the use of multiple values in `CMAKE_OSX_ARCHITECTURES` with Swift which does not support FAT compilation.
* | | | | | | Merge topic 'FindCUDAToolkit-target-guards'Brad King2020-01-291-45/+28
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 916d54dfb3 FindCUDAToolkit: Fix behavior on multiple calls b452e2bd6a FindCUDAToolkit: Fix CUDA::* target guard logic Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4293
| * | | | | | | FindCUDAToolkit: Fix behavior on multiple callsRodolfo Lima2020-01-281-41/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update `_CUDAToolkit_find_and_add_import_lib` to create and add dependencies to a target in one step that shared a single guard against repeated definitions. Otherwise we were adding dependencies again on every call. Fixes: #20282
| * | | | | | | FindCUDAToolkit: Fix CUDA::* target guard logicRodolfo Lima2020-01-281-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue: #20282
* | | | | | | | Merge topic 'stl-support-make_unique-supports-array'Brad King2020-01-291-1/+36
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fa828b8fba STL support: make_unique can now handle array Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4295
| * | | | | | | | STL support: make_unique can now handle arrayMarc Chevrier2020-01-281-1/+36
| | | | | | | | |
* | | | | | | | | Merge topic 'fortran-subdir-simplify'Brad King2020-01-291-9/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a7b844d6d4 CMakeAddFortranSubdirectory: Simplfy logic to always build subdir Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4296
| * | | | | | | | | CMakeAddFortranSubdirectory: Simplfy logic to always build subdirBrad King2020-01-281-9/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the case that we use ExternalProject_Add to drive the subdirectory build, replace the `forcebuild` step with the official `BUILD_ALWAYS` option. Issue: #20179
* | | | | | | | | | Merge topic 'blas-intel-mkl'Brad King2020-01-292-121/+232
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4d7c69208e Find{BLAS,LAPACK}: Search always in dynamic linker paths fde5fcbc71 Find{BLAS,LAPACK}: Avoid repeated setting of prefered library suffixes fd1d4b823f Find{BLAS,LAPACK}: Fixed incorrect static library suffix for Apple c60c847510 Find{BLAS,LAPACK}: Added support for MKL single dynamic library 59dbff6daa Find{BLAS,LAPACK}: Added support for static MKL required linker flags 6bd9cee638 Find{BLAS,LAPACK}: Fixed detection of MKL, and several MKL improvements Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !4246
| * | | | | | | | | | Find{BLAS,LAPACK}: Search always in dynamic linker pathsMario Emmenlauer2020-01-282-16/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the search in the dynamic linker paths 'LIB', 'LD_LIBRARY_PATH' and 'DYLD_LIBRARY_PATH' was dependent on the value of the environment variable 'MKLROOT'. If MKLROOT was given, the dynamic linker paths where not searched. This seems slightly counter-intuitive. This PR changes the behavior so that MKLROOT is searched first, but if unsuccesful, the dynamic linker paths are tried as well.
| * | | | | | | | | | Find{BLAS,LAPACK}: Avoid repeated setting of prefered library suffixesMario Emmenlauer2020-01-282-28/+28
| | | | | | | | | | |
| * | | | | | | | | | Find{BLAS,LAPACK}: Fixed incorrect static library suffix for AppleMario Emmenlauer2020-01-282-6/+0
| | | | | | | | | | |
| * | | | | | | | | | Find{BLAS,LAPACK}: Added support for MKL single dynamic libraryMario Emmenlauer2020-01-282-0/+8
| | | | | | | | | | |
| * | | | | | | | | | Find{BLAS,LAPACK}: Added support for static MKL required linker flagsMario Emmenlauer2020-01-282-67/+75
| | | | | | | | | | |
| * | | | | | | | | | Find{BLAS,LAPACK}: Fixed detection of MKL, and several MKL improvementsMario Emmenlauer2020-01-282-50/+155
| | |_|_|/ / / / / / | |/| | | | | | | |
* | | | | | | | | | 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-287-7/+60
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | | | | | Tests: Fix RunCMake.CMP0037 test with Ninja 1.10Brad King2020-01-271-2/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The CMP0037 OLD and WARN cases that actually use reserved target names like `all` produce `build.ninja` files with duplicate build statements producing the same output. With Ninja 1.10 and above we run ninja tools at the end of generation that require `build.ninja` to be loadable. It is not loadable for these test cases, so skip them.
| * | | | | | | | Tests: Fix RunCMake.Ninja test for Ninja 1.10Brad King2020-01-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With Ninja 1.10 we run the cleandead and recompact tools after generation. These require that `build.ninja` be loadable. Update the `CustomCommandJobPool` case to define the referenced job pools to make `build.ninja` loadable.
* | | | | | | | | Merge topic 'xcode-top-level-only-with-object-library'Brad King2020-01-285-2/+29
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-275-2/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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