- Jul 26, 2019
- Jul 25, 2019
-
-
Brad King authored
Merge-request: !3605
-
In commit f7eaa342 (FindMPI: Store imported target link flags as a list instead of a string, 2019-06-14, v3.15.0-rc2~2^2) we used `separate_arguments` to parse the extracted link flags and add them to `INTERFACE_LINK_LIBRARIES`. That property is not meant for link flags and CMake may de-duplicate them. This is particularly problematic for flags like `-Wl,-rpath -Wl,/path1 -Wl,-rpath -Wl,/path2`. In commit 39c572c9 (FindMPI: Updated to use INTERFACE_LINK_OPTIONS, 2019-06-24) we moved the parsed flags over to `INTERFACE_LINK_OPTIONS`, but that may still perform de-duplication. Avoid the parsing and de-duplication of flags by passing the original string via `SHELL:` instead. Fixes: #19516
-
Brad King authored
Merge-request: !3599
-
- Jul 24, 2019
-
-
Brad King authored
Since commit a13a5c94 (Replace use of CollapseCombinedPath with CollapseFullPath, 2019-03-19, v3.15.0-rc1~361^2~1), one code path now calls `CollapseFullPath` with a base path that may be relative. Backport KWSys commit c6f8e24a3 (SystemTools: Fix CollapseFullPath with relative base path, 2019-07-24) to handle such base paths. This case occurs when a build tree is placed in a directory inside a source tree such that CMake is willing to generate a relative path from the build tree to the source tree. Add a test covering this case. Fixes: #19507
-
Brad King authored
Merge-request: !3592
-
Brad King authored
Revert commit a2a90f41 (Tests: require C++14 for the Tutorial, 2019-03-21, v3.15.0-rc1~41^2~2). In commit d50b31be (Clang: For MSVC ABI do not use modes older than C++14, 2019-07-23) we fixed the C++ standard selection for GNU-like Clang with the MSVC ABI so the test code itself no longer needs to do it. In particular, changing the tests in this way broke the tutorial's narrative.
-
Brad King authored
Since commit d44c0db0 (clang: setup correct configuration in gnu mode, 2019-02-20, v3.15.0-rc1~41^2~5) we support the GNU-like Clang that targets the MSVC ABI. However, Clang cannot compile with the MSVC standard library unless it runs in a mode aware of C++14 (since MSVC itself does not even have a lower mode). When `CMAKE_CXX_STANDARD` is set to 98 or 11, use C++14 anyway. Since Clang's default mode is aware of C++14, another option is to not add any flags for 98 or 11. However, if a future Clang version ever defaults to a higher C++ standard, setting the standard to 98 or 11 should at least not use a mode higher than 14. Also revert test updates from commit 4819ff96 (Tests: fix failures with gnu mode clang on windows, 2019-03-21, v3.15.0-rc1~41^2~3) that were meant to work around the standard selection problem. Fixes: #19496
-
- Jul 23, 2019
-
-
Brad King authored
Merge-request: !3591
-
In commit fec441ec (Teach CROSSCOMPILING_EMULATOR to support arguments, 2019-05-30, v3.15.0-rc1~6^2) the new member `cmCustomCommandGenerator::EmulatorsWithArguments` was not initialized to the proper size. Fix this and add a test case covering the crash that could occur with multiple commands where an emulator appears only in a later command. Fixes: #19500 Co-Author: Brad King <brad.king@kitware.com>
-
- Jul 22, 2019
-
-
Brad King authored
Merge-request: !3585
-
Since VS 2019, the v141 toolset redistributables can be found in either the VS 2019 or VS 2017 install directory. Update the logic to search multiple versions of VS. Fixes: #19488
-
Fix the toolset v143 check from commit 33ee7793 (IRSL: Fix discovery of VS 2019 v142 toolset redistributables, 2019-04-03, v3.14.2~6^2) to check the correct variable.
-
- Jul 19, 2019
- Jul 18, 2019
-
-
Brad King authored
Merge-request: !3569
-
Brad King authored
The `AssemblerListingLocation` setting in VS project files is meant for intermediate files created during the build much like object files. When the VS 7 generator was first under development, commit 49aebe6c (new arch, 2002-09-04) placed both object files and the ASM list location in the same directory. Later commit f9aef0e4 (Generator now creates a separate intermediate files directory for each target, 2005-07-27) moved the object files to a per-target directory but the ASM list location was not moved with them. Move it now. Fixes: #19480
-
Brad King authored
Merge-request: !3568
-
Brad King authored
Merge-request: !3564
-
Fixes: #19473
-
- Jul 17, 2019
-
-
Saleem Abdulrasool authored
We should enable the soname to be setup for ELF shared libraries. Failure to do so generates binaries with incorrect names which prevents loading.
-
Saleem Abdulrasool authored
Query the number of logical CPUs available to enable parallel compilation for Swift.
-
Saleem Abdulrasool authored
The Swift driver recently learnt how to generate static libraries using the `-static` flag. This enables us to generate proper static libraries with dependency tracking with Swift as well.
-
Saleem Abdulrasool authored
When building Swift executables and libraries which import a module, an implicit link will be added by the driver. Because this links by name rather than path, the library search path needs to be provided to indicate where to find the library. For all local dependencies, add the library paths for the targets when linking. This ensures that you can link against local libraries without explicitly setting a library path. Fixes: #19304
-
Saleem Abdulrasool authored
This changes the behaviour of the generators to use a per-language library search path flag. This is needed for multi-language projects with different compilers (e.g. cl + gfortran). Since the adjusted variable has been part of the user settings, we control this based on a policy. Fixes: #19307
-
- Jul 16, 2019
-
-
Brad King authored
Merge-request: !3557
-
The module mode fallback added by commit 22e65d10 (find_package: Fixed CMAKE_FIND_PACKAGE_PREFER_CONFIG Module fallback, 2019-06-13, v3.15.0-rc2~6^2) should not be used unless the `find_package` call allows module mode. Doing so can lead to infinite recursion if a find module tries to call config mode with `find_package(... NO_MODULE)`. Fix the logic and add a test case. Fixes: #19478
-
- Jul 12, 2019
- Jul 11, 2019
-
-
Brad King authored
Merge-request: !3504
-
- Jul 10, 2019