summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'alpine-cpu_zero' into release-3.15Brad King2019-08-271-0/+2
|\ | | | | | | Merge-request: !3740
| * cmAffinity: Add include for CPU_ZERO on Alpine LinuxBrad King2019-08-271-0/+2
| | | | | | | | | | | | | | | | The definition of `CPU_ZERO` requires `<string.h>` to be included explicitly for `memset`. Since IWYU does not agree on other Linux platforms, use a pragma to silence the warning. Fixes: #19643
* | Merge branch 'cmGlobalGenerator-compilerId-lifetime' into release-3.15Brad King2019-08-271-7/+4
|\ \ | | | | | | | | | Merge-request: !3741
| * | cmGlobalGenerator: Fix CheckCompilerIdCompatibility local var lifetimeBrad King2019-08-261-7/+4
| |/ | | | | | | | | | | Save the value of the compiler id variable in storage we own so that mutating it based on a policy does not invalidate the local value for later comparisons. This was identified by Clang AddressSanitizer.
* | Merge branch 'libarchive-requirement' into release-3.15Brad King2019-08-271-1/+1
|\ \ | | | | | | | | | Merge-request: !3737
| * | libarchive: We now require at least version 3.3.3Marvin Schmidt2019-08-261-1/+1
| |/ | | | | | | It's the first version including Zstandard support.
* | Merge branch 'ninja_additional_clean_files_custom_target' into release-3.15Brad King2019-08-273-37/+53
|\ \ | | | | | | | | | Merge-request: !3739
| * | Tests: Extend MakeClean test to test various target typesSebastian Holtermann2019-08-261-37/+49
| | | | | | | | | | | | | | | This extends the MakeClean test to test the target property `ADDITIONAL_CLEAN_FILES` on executable, library and custom targets.
| * | Ninja: Add support for ADDITIONAL_CLEAN_FILES in custom targetsSebastian Holtermann2019-08-262-0/+4
| |/ | | | | | | | | | | | | This enables the support for `ADDITIONAL_CLEAN_FILES` in custom targets using the ninja generator. Fixes: #19641
* | Merge branch 'ctest-json-REQUIRED_FILES' into release-3.15Brad King2019-08-223-6/+20
|\ \ | | | | | | | | | Merge-request: !3719
| * | CTest: Fix --show-only=json-v1 output with REQUIRED_FILES propertyBrad King2019-08-223-6/+20
| |/ | | | | | | Fixes: #19629
* | Merge branch 'CrayPrgEnv-update-link-type-detection' into release-3.15Brad King2019-08-222-3/+24
|\ \ | | | | | | | | | Merge-request: !3716
| * | CrayPrgEnv: Change default linking mode based on PE versionChuck Atkins2019-08-222-3/+24
| |/ | | | | | | | | | | | | Beginning with the 19.06 release of the Cray Programming Environment, the default linking mode on XC Cray systems is dynamic instead of static. This updates the CrayPrgEnv compiler wrappers to detect the PE version being used and behave accordingly.
* | Merge branch 'FindMPI-restore-flag-vars' into release-3.15Brad King2019-08-211-1/+1
|\ \ | | | | | | | | | Merge-request: !3710
| * | FindMPI: Restore MPI_<LANG>_COMPILE_FLAGS and MPI_<LANG>_COMPILE_OPTIONSRobert Maynard2019-08-211-1/+1
| |/ | | | | | | | | | | | | | | | | | | In commit e374b9f1eb (FindMPI: Restore MPI_<LANG>_COMPILE_FLAGS as a command-line string, 2018-09-10, v3.12.3~6^2) we tried to restore the compile flags but accidentally inverted the arguments to `list(JOIN)` causing both `MPI_<LANG>_COMPILE_FLAGS` and `MPI_<LANG>_COMPILE_OPTIONS` to be empty. Issue: #18349
* | Merge branch 'ccmake-crash-on-empty-strings-property' into release-3.15Brad King2019-08-201-0/+3
|\ \ | | | | | | | | | Merge-request: !3678
| * | ccmake: handle cache entries with empty STRINGS propertyM Furkan USLU2019-08-201-0/+3
| |/ | | | | | | Fixes: #19585
* | Merge branch 'msvc-runtime-library-flang' into release-3.15Brad King2019-08-092-4/+17
|\ \ | |/ |/| | | Merge-request: !3674
| * Flang: Implement MSVC runtime library abstractionBrad King2019-08-092-4/+17
|/ | | | | | | | | | In commit fb3370b6a1 (MSVC: Add abstraction for runtime library selection, 2019-04-10, v3.15.0-rc1~229^2) we overlooked updating flags for Flang on Windows. Add them now and update the MSVCRuntimeLibrary Fortran test to work with Flang. Base the flags on those we already use for the GNU-like Clang targeting the MSVC ABI. Fixes: #19583
* CMake 3.15.2v3.15.2Brad King2019-08-071-1/+1
|
* Merge branch 'doc-relnotes-3.15' into release-3.15Brad King2019-08-071-0/+7
|\ | | | | | | Merge-request: !3664
| * Help: Add 3.15.2 release notesBrad King2019-08-071-0/+7
|/
* Merge branch 'FindGLEW-macOS' into release-3.15Brad King2019-08-061-3/+34
|\ | | | | | | Merge-request: !3656
| * FindGLEW: Fix typo in verbose log messageClaudio Fantacci2019-08-061-1/+1
| |
| * FindGLEW: Add required OpenGL dependency in macOSClaudio Fantacci2019-08-061-0/+31
| | | | | | | | | | macOS requires OpenGL as INTERFACE_LINK_LIBRARIES dependency in the GLEW targets. This commit fixes this issue.
| * FindGLEW: Fix macOS library suffix selectionClaudio Fantacci2019-08-061-2/+2
| | | | | | | | | | | | | | | | | | | | Fix logic added by commit a7d853868b (FindGLEW: Update implementation, 2019-03-13, v3.15.0-rc1~375^2~1) on macOS. macOS is recognized as both UNIX and APPLE. Consequently, the library suffix for shared and static library was set, respectively, as `.so` and `.a`, just like UNIX systems. Fix this by properly checking the OS type. Fixes: #19542
* | Merge branch 'find_package-prefer-config-not-found' into release-3.15Brad King2019-08-062-1/+9
|\ \ | | | | | | | | | Merge-request: !3653
| * | find_package: Fix prefer-config mode to not fail on missing optional packageCristian Adam2019-08-062-1/+9
| |/ | | | | | | | | | | | | | | When `CMAKE_FIND_PACKAGE_PREFER_CONFIG` mode was set to `ON`, failure to find a package was fatal even if it was not `REQUIRED`. Fix this and add a test case. Fixes: #19557
* | Merge branch 'clang-frontend-variant' into release-3.15Brad King2019-08-052-0/+32
|\ \ | | | | | | | | | Merge-request: !3650
| * | clang: Work around toolchain file use of internal CMake variablesBrad King2019-08-052-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit d44c0db0b2 (clang: setup correct configuration in gnu mode, 2019-02-20, v3.15.0-rc1~41^2~5) our Clang compiler information modules need the `CMAKE_<LANG>_COMPILER_FRONTEND_VARIANT` variable that we compute during compiler detection. However, some existing toolchain files set our internal `CMAKE_<LANG>_COMPILER_ID_RUN` variables and block that detection, but do not set the new frontend variant variable. Help them out by setting `CMAKE_<LANG>_COMPILER_FRONTEND_VARIANT` anyway. Fixes: #19515, #19539
* | | Merge branch 'fileapi-install-generators' into release-3.15Brad King2019-08-026-8/+58
|\ \ \ | | | | | | | | | | | | Merge-request: !3639
| * | | fileapi: Fix codemodel target install destination for cross-dir rulesBrad King2019-07-316-8/+58
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit e89ad0f94e (install: Allow installing targets created in another directory, 2018-06-18, v3.13.0-rc1~407^2) we support calling `install(TARGETS)` for targets created in another directory. However, install generators are associated with the directory in which the call to `install()` appears. This may not be the same directory in which the target is defined. Record in each target the list of install generators it has. Fixes: #19546
* | | Merge branch 'clang-cl-non-windows' into release-3.15Brad King2019-07-311-1/+1
|\ \ \ | | |/ | |/| | | | Merge-request: !3634
| * | clang: Restore support for clang-cl on non-Windows hostsBrad King2019-07-311-1/+1
| |/ | | | | | | | | | | | | | | | | The frontend variant detection logic added by commit 53fbe23f3f (clang: introduce CMAKE_<lang>_COMPILER_FRONTEND_VARIANT, 2019-02-20, v3.15.0-rc1~41^2~8) assumes that `clang-cl` only runs on a Windows host. It is also available on non-Windows hosts. Fix the condition. Fixes: #19544
* | Merge branch 'source_group-tree-files' into release-3.15Brad King2019-07-301-11/+4
|\ \ | | | | | | | | | Merge-request: !3630
| * | source_group: Fix regression in relative FILESBrad King2019-07-301-11/+4
| |/ | | | | | | | | | | | | | | | | | | Fix the check added in commit 8d93815d20 (source_group command ensures that FILES arguments are actually files, 2019-04-25, v3.15.0-rc1~195^2) to convert to an absolute path before checking for existence. Also simplify the conversion to an absolute path. Fixes: #19454
* | Merge branch 'vs-spectre-off' into release-3.15Brad King2019-07-305-5/+50
|\ \ | | | | | | | | | Merge-request: !3629
| * | VS: Fix mapping of `-Qspectre-` flagBrad King2019-07-305-5/+50
| |/ | | | | | | | | | | | | | | | | | | | | | | The mapping for this flag was added by commit 43aa632f57 (VS: Populate `-Qspectre-` flag table entry for v142, 2019-01-24, v3.14.0-rc1~74^2~7). However, it did not do anything because the special logic added by commit bb60ed6e72 (VS: Add flag table entry for -Qspectre, 2018-10-08, v3.13.0-rc1~4^2) to move the `SpectreMitigation` element from `ClCompile` to the top level only handled the presence of the setting and not its value. Extend the special logic to carry the value too. Fixes: #19535
* | Merge branch 'swift-with-interface-libs' into release-3.15Brad King2019-07-292-8/+12
|\ \ | |/ |/| | | Merge-request: !3624
| * Swift: Restore support for enabling with INTERFACE librariesBrad King2019-07-292-8/+12
|/ | | | | | | | | | | The check added in commit b06f4c8a74 (Swift: disallow WIN32_EXECUTABLE properties, 2019-05-31, v3.15.0-rc1~9^2) makes sense only for executables because the `WIN32_EXECUTABLE` property is defined only for them. Running the check on other target types, particularly those that do not link such as INTERFACE libraries, violates internal assumptions. In particular, `GetLinkerLanguage` should not be called on such targets. Fixes: #19528
* CMake 3.15.1v3.15.1Brad King2019-07-261-1/+1
|
* Merge branch 'doc-relnotes-3.15' into release-3.15Brad King2019-07-261-0/+17
|\ | | | | | | Merge-request: !3608
| * Help: Add 3.15.1 release notesBrad King2019-07-261-0/+17
|/
* Merge branch 'FindMPI-link-flags' into release-3.15Brad King2019-07-251-5/+2
|\ | | | | | | Merge-request: !3605
| * FindMPI: make sure computed link flags are not de-duplicatedRobert Maynard2019-07-251-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit f7eaa342de (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 39c572c9c9 (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
| * FindMPI: Updated to use INTERFACE_LINK_OPTIONSRobert Maynard2019-06-241-3/+2
| |
* | Merge branch 'makefile-depend-relative-include' into release-3.15Brad King2019-07-257-4/+47
|\ \ | | | | | | | | | Merge-request: !3599
| * | Makefile: Fix regression in dependencies on relative includesBrad King2019-07-247-4/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit a13a5c948e (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
* | | Merge branch 'backport-clang-gnulike-support' into release-3.15Brad King2019-07-2420-43/+42
|\ \ \ | | | | | | | | | | | | Merge-request: !3592
| * | | Tests: Revert "require C++14 for the Tutorial"Brad King2019-07-2413-13/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert commit a2a90f41e3 (Tests: require C++14 for the Tutorial, 2019-03-21, v3.15.0-rc1~41^2~2). In commit d50b31be35 (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.