summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* CMake 3.19.4v3.19.4Brad King2021-01-281-1/+1
|
* Merge topic 'vs-sdk-selection' into release-3.19Brad King2021-01-214-3/+14
|\ | | | | | | | | | | | | 1e67482daf VS: Generalize Win10 max SDK version to all VS generators Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5721
| * VS: Generalize Win10 max SDK version to all VS generatorsjonathan molinatto2021-01-204-3/+14
| | | | | | | | | | | | | | | | | | | | | | The `CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION_MAXIMUM` variable added in CMake 3.19 by commit ba497111f6 (VS: Add option for custom Win10 SDK version maximum, 2020-08-20, v3.19.0-rc1~262^2) was documented as if it worked for all generators but implemented only to override CMake's builtin default for the VS 2015 max SDK version. Generalize the variable to set a custom max SDK version for later VS versions too. Fixes: #21720
* | file(GET_RUNTIME_DEPENDENCIES): Fix weak macOS libraries not detectedBianca van Schaik2021-01-201-1/+1
|/ | | | | | | | Starting with Clang 12, `otool -l` reports `LC_LOAD_WEAK_DYLIB` instead of `LC_LOAD_DYLIB` for weakly linked libraries. Update the implementation of `file(GET_RUNTIME_DEPENDENCIES)` to recognize these. Fixes: #21684
* Restore support for cross-compiling CMake itselfMarc Chevrier2021-01-181-1/+7
| | | | | | | In commit eb583b0a66 (cmake_path command: path management, 2020-07-23, v3.19.0-rc1~216^2~1) we added a `try_run`. In cross-compilation mode, C++ features tests must avoid running tests if there is no emulator defined.
* CMake 3.19.3v3.19.3Brad King2021-01-131-1/+1
|
* Merge topic 'trace_expand_bracket' into release-3.19Brad King2021-01-121-1/+1
|\ | | | | | | | | | | | | e6e7f2cab9 cmMakefile: Don't expand bracket arguments in --trace-expand Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5687
| * cmMakefile: Don't expand bracket arguments in --trace-expandRaul Tambre2021-01-111-1/+1
| | | | | | | | | | | | Bracket arguments are literal and shouldn't be expanded. Fixes #21671.
* | cmake-gui: Restore linking of Qt resourcesKyle Edwards2021-01-111-2/+3
|/ | | | | | | | Refactoring in commit 41e223deb3 (CMake GUI: Split up into libraries, add test shim, 2020-09-14, v3.19.0-rc1~116^2~2) broke linking of Qt resources, such as the Add/Remove Entry button icons. Fixes: #21682
* Merge topic 'rel-macos-modern' into release-3.19Brad King2021-01-081-0/+3
|\ | | | | | | | | | | | | | | | | | | | | 6410425e5b ci: build separate macOS packages for macOS 10.13+ and macOS 10.10+ bbec5a03c8 Utilities/Release: Add script to build Qt 5.15.2 macOS universal binaries 97e238f61b Utilities/Release: Fix macOS Qt 5.9 build script umask 2c5f30b472 cmake-gui: Fix macOS styling for binaries distributed with Qt 5.10+ 3679b74a69 gitlab-ci: update upload jobs to go to cmake.org Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5672
| * cmake-gui: Fix macOS styling for binaries distributed with Qt 5.10+Brad King2021-01-071-0/+3
| | | | | | | | | | | | | | | | According to https://bugreports.qt.io/browse/QTBUG-59428, Qt 5.10 and above moved macOS style handling into a separate `qmacstyle` plugin. Install the plugin in our `CMake.app` package on macOS. Issue: #21606
* | Xcode: Use deterministic object ids for script build phasesBrad King2021-01-062-10/+14
| | | | | | | | | | | | | | | | | | | | The Xcode "new build system" only considers a script build phase up to date if it has run before, even if outputs are newer than inputs. Use a deterministic object id for script build phases associated with custom commands so that they do not need to re-run after CMake re-generates the project. Fixes: #21669
* | cmGlobalXCodeGenerator: Add infrastructure for deterministic object idsBrad King2021-01-062-15/+28
| |
* | cmGlobalXCodeGenerator: Adopt pbxproj object id generationBrad King2021-01-066-28/+30
|/
* cmSystemTools: Revert use of MOVEFILE_WRITE_THROUGH by RenameFile on WindowsBrad King2020-12-171-2/+1
| | | | | | | | | Revert commit d78c22aa64 (cmSystemTools: Improve RenameFile on Windows with MOVEFILE_WRITE_THROUGH, 2020-08-25, v3.19.0-rc1~243^2~3). Using this flag causes the operation to fail frequently in some environments. Drop it for now pending further investigation. Fixes: #21571
* CMake 3.19.2v3.19.2Brad King2020-12-161-1/+1
|
* cmake-gui: Restore completion during path editingBrad King2020-12-151-9/+14
| | | | | | | | | | Revert commit 0fc1818831 (QCMakeWidgets: replace QDirModel, 2020-06-15, v3.19.0-rc1~696^2). `QFileSystemModel` is not a drop-in replacement for `QDirModel`. Additional changes are needed to make it work fully. Revert the change and suppress the `QDirModel` deprecation warning pending further investigation. Fixes: #21589
* Merge topic 'ispc_control_header_suffixes' into release-3.19Brad King2020-12-155-6/+27
|\ | | | | | | | | | | | | c9a50f3556 ISPC: Generated Headers suffix configurable with a better default Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5597
| * ISPC: Generated Headers suffix configurable with a better defaultRobert Maynard2020-12-145-6/+27
| | | | | | | | | | | | | | | | | | The target property `ISPC_HEADER_SUFFIX` and associated global variable now can control the suffix used when generating the C/C++ interoperability ISPC headers. In addition the default suffix is now "_ispc.h" which matches the common convention that the ISPC compiler team uses and recommends.
* | Merge topic 'support_CMAKE_VFS_OVERLAY_for_rc_compilation' into release-3.19Brad King2020-12-151-4/+16
|\ \ | | | | | | | | | | | | | | | | | | 18ee6d7e32 llvm-rc: Add CMAKE_VFS_OVERLAY to the preprocessing flags Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5604
| * | llvm-rc: Add CMAKE_VFS_OVERLAY to the preprocessing flagsThomas Bernard2020-12-141-4/+16
| |/ | | | | | | Issue: #20658
* | Merge branch 'backport-ninja-no-cleandead' into ninja-no-cleandeadBrad King2020-12-142-15/+1
|\ \ | |/ |/|
| * Ninja: Remove cleandead on regenerationBrad King2020-12-142-15/+1
| | | | | | | | | | | | | | | | | | | | | | Remove the `cleandead` tool invocation added by commit fb18215904 (Ninja: clean ninja metadata once generated, 2019-05-13, v3.17.0-rc1~207^2). The tool deletes files that were not previously deleted by regenerating the build system. Also, there are use cases where no-longer-generated files should not be removed, such as Qt's TS files. Fixes: #21549
| * CMake 3.17.5v3.17.5Brad King2020-09-151-1/+1
| |
* | Merge topic 'install-properties' into release-3.19Brad King2020-12-141-0/+2
|\ \ | | | | | | | | | | | | | | | | | | 63db7ae9c4 cmake: Clear INSTALL file properties between runs Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5603
| * | cmake: Clear INSTALL file properties between runsBrad King2020-12-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Do not keep state across separate project configurations. This is particularly important in `cmake-gui` where those configurations can be for separate projects. Fixes: #21580
* | | execute_process: Improve COMMAND_ERROR_IS_FATAL error capture scenariosAsit Dhal2020-12-101-31/+87
|/ / | | | | | | | | | | | | | | | | | | | | 1. COMMAND_ERROR_IS_FATAL ANY will capture errors if the exit code is non zero, there is a timeout or an abnormal exit. 2. COMMAND_ERROR_IS_FATAL LAST will capture if only the last process has an exit code non zero, there is a timeout or an abnormal exit. Fixes: #21562
* | Merge topic 'correct_ispc_path_computation' into release-3.19Brad King2020-12-083-14/+31
|\ \ | | | | | | | | | | | | | | | | | | | | | 9af93fef11 ISPC: Handle OBJECT sources in different directories 72ae15ebcb ISPC: Ninja properly compute ISPC_HEADER_DIRECTORY location Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5581
| * | ISPC: Handle OBJECT sources in different directoriesRobert Maynard2020-12-072-8/+22
| | |
| * | ISPC: Ninja properly compute ISPC_HEADER_DIRECTORY locationRobert Maynard2020-12-071-6/+9
| | |
* | | macOS: Add architecture flags only for native ASM dialectRaul Tambre2020-12-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | ASM dialects like NASM have languages names such as ASM_NASM. However such ASM dialects don't support the architecture flags, so match only the full name. Fixes #21553.
* | | Merge topic 'export-namelink' into release-3.19Brad King2020-12-024-8/+19
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 38bcb5c0a3 export: Do not fail generation for separate namelink only case Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5556
| * | | export: Do not fail generation for separate namelink only caseDeniz Bahadir2020-12-014-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the change from commit 64690f6df0 (export: Do not fail generation for namelink-only case, 2020-10-09, v3.19.0-rc1~7^2) to also handle separate namelink-only and namelink-skip calls. Fixes: #21529
* | | | Merge topic 'ninja-regen-metadata' into release-3.19Brad King2020-12-012-2/+11
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 73d1c78bf4 ci: update to use ninja 1.10.2 11f4259362 Ninja: Clean metadata after regen during build on Windows with 1.10.2+ Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5555
| * | | | Ninja: Clean metadata after regen during build on Windows with 1.10.2+Brad King2020-11-302-2/+11
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ninja 1.10.2 fixes support for `generator = 1` rules that run metadata update commands during regeneration while a build is running. Update the condition added by commit ccaa0bccc4 (Ninja: Do not clean metadata when re-generating inside a running build, 2020-01-27, v3.17.0-rc1~73^2) to remove our workaround when Ninja is new enough. Fixes: #20274
* | | | PCH: Fix compiler errors on iOS multi-arch using Ninja Multi-ConfigCristian Adam2020-11-301-2/+4
|/ / / | | | | | | | | | Fixes: #21401
* | | QNX: Do not disable compiler extensions for CMake itselfStephen Kelly2020-11-251-3/+6
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `set(CMAKE_CXX_EXTENSIONS FALSE)` option has the effect of passing compile option `-std=c++NN` instead of `-std=gnu++NN`. On some platforms, the latter form (or the secondary effects that it has, such as setting _XOPEN_SOURCE) is required. This typically affects platforms such as mingw, cygwin and QNX. The GNU-like compiers default to `-std=gnu++NN`, which means that users can typically build source code on those platforms by default. While the `set(CMAKE_CXX_EXTENSIONS FALSE)` option was set here in commit f034b0f6 (CMake compilation: do not use compiler extensions, 2020-03-14), the other changes in that commit added `#defines` which become required in the absense of use of `-std=gnu++NN`. However, only platforms regularly tested in the cmake dashboard were ported, as is reasonable. That made CMake fail to compile on QNX and perhaps other platforms which for which no one is submitting regular testing to the cmake dashboard. Make the `set(CMAKE_CXX_EXTENSIONS FALSE)` option conditional on non-QNX to restore the QNX build. Issue: #21503
* | CMake 3.19.1v3.19.1Brad King2020-11-241-1/+1
| |
* | Merge topic 'policy-cmp0111-iface' into release-3.19Brad King2020-11-242-28/+31
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | 54ef732b0c cmVisualStudio10TargetGenerator: Avoid GetFullPath on INTERFACE library f06f4b517c cmTarget: Do not enforce CMP0111 on imported INTERFACE libraries 43c95df8fb Tests: Match RunCMake.CMP0111 stderr more strictly Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5530
| * | cmVisualStudio10TargetGenerator: Avoid GetFullPath on INTERFACE libraryBrad King2020-11-231-1/+2
| | | | | | | | | | | | Issue: #21470
| * | cmTarget: Do not enforce CMP0111 on imported INTERFACE librariesBrad King2020-11-231-27/+29
| | | | | | | | | | | | | | | | | | | | | | | | Fix logic added by commit 359c500a24 (cmTarget: Raise error if imported target location is not set, 2020-08-08, v3.19.0-rc1~273^2) to exclude INTERFACE libraries from the policy. They have no location. Fixes: #21470
* | | Merge topic 'fix-find-make-program' into release-3.19Brad King2020-11-244-1/+29
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | ef91fb02f3 cmGlobalGenerator: FindMakeProgram() at a generator-specific time Acked-by: Kitware Robot <kwrobot@kitware.com> Acked-by: Frank Dana <ferdnyc@gmail.com> Merge-request: !5529
| * | | cmGlobalGenerator: FindMakeProgram() at a generator-specific timeKyle Edwards2020-11-234-1/+29
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | d5b5c192 moved FindMakeProgram() to an earlier time, which resulted in CMAKE_MAKE_PROGRAM not being read from the toolchain file. Change it to only call FindMakeProgram() early in the specific cases of Visual Studio and Xcode, and restore the old behavior for all other generators. Fixes: #21486
* | | Merge topic 'xcode-cc-work-dir' into release-3.19Brad King2020-11-241-3/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | 36921d2d23 Xcode: Fix custom command work-dir placeholders in "new build system" Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5527
| * | | Xcode: Fix custom command work-dir placeholders in "new build system"Brad King2020-11-231-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The placeholders for `CONFIGURATION` and `EFFECTIVE_PLATFORM_NAME` need to be handled in the `WORKING_DIRECTORY` of custom commands just as we already do for the `COMMAND`. Fixes: #21483
* | | | Merge topic 'cmFileTime-fix-overflow' into release-3.19Brad King2020-11-242-27/+40
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | b4c994f69c cmFileTime: Fix overflow on time computation Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5526
| * | | cmFileTime: Fix overflow on time computationMarc Chevrier2020-11-232-27/+40
| |/ / | | | | | | | | | | | | | | | On Windows, time starting point is Januray, 1st of 1601. So computing number of nanoseconds from this date exceeds 64bit capabilities.
* | | Merge topic 'fix-compile-db-crash' into release-3.19Brad King2020-11-231-6/+10
|\ \ \ | |/ / |/| | | | | | | | | | | | | | 67e2130c96 Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile rule Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !5521
| * | Makefiles: Fix CMAKE_EXPORT_COMPILE_COMMANDS crash with custom compile ruleBrad King2020-11-201-6/+10
| | | | | | | | | | | | Fixes: #21471
* | | Revert "specify language flag when source LANGUAGE property is set"Brad King2020-11-194-32/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit 74b1c9fc8e (Explicitly specify language flag when source LANGUAGE property is set, 2020-06-01, v3.19.0-rc1~722^2) and the lookup tables from its two immediate ancestors. The purpose of that change was to convert an explicit `LANGUAGE` source file property into an explicit language specification compiler flag like `-x c`. This seems reasonable since the property is documented as meaning "indicate what programming language the source file is". It is also needed to help compilers deal with non-standard source file extensions they don't recognize. However, some projects have been setting `LANGUAGE C` on `.S` assembler source files to mean "use the C compiler". Passing `-x c` for them breaks the build because the `.S` sources are not written in C. These projects should be updated to use `enable_language(ASM)`, for which CMake often chooses the C compiler as the assembler when using toolchains that support it (which would have to be the case for projects using the approach). Revert the change for now to preserve the old behavior for such projects. We can re-introduce it with a policy in a future version of CMake. Fixes: #21469 Issue: #14516, #20716