summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'backport-3.14-fix-EXCLUDE_FROM_ALL-subdir-all'Brad King2019-09-3019-102/+162
|\
| * Restore "all" target in subdirectories marked EXCLUDE_FROM_ALLBrad King2019-09-3017-38/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | The "all" target in each directory is supposed to have targets from that directory even if the directory itself is marked `EXCLUDE_FROM_ALL` in its parent. This was broken by commit dc6888573d (Pass EXCLUDE_FROM_ALL from directory to targets, 2019-01-15, v3.14.0-rc1~83^2) which made the participation of a target in "all" independent of context. Revert much of the logic change from that commit to restore the old behavior. Then re-implement the behavior intended by the commit to keep its test working. Extend the test to cover the old behavior too. Fixes: #19753
| * Tests: Clarify target names in RunCMake.add_subdirectory ExcludeFromAllBrad King2019-09-264-6/+9
| | | | | | | | | | Rename the `baz` target to `subinc` to clarify that its role is to be included even though it is in an otherwise excluded subdirectory.
| * Tests: Revise RunCMake.add_subdirectory ExcludeFromAll to avoid globbingBrad King2019-09-264-61/+43
| | | | | | | | Also simplify the clean step.
| * Tests: Teach RunCMake to support a custom working directoryBrad King2019-09-241-1/+4
| |
| * CMake 3.14.6v3.14.6Brad King2019-07-161-1/+1
| |
| * Merge branch 'FindBISON-CMP0088-SourcePath' into release-3.14Brad King2019-07-122-3/+17
| |\ | | | | | | | | | Merge-request: !3549
| * \ Merge branch 'backport-implicit-includes-cray-hlist' into release-3.14Brad King2019-07-098-2/+167
| |\ \ | | | | | | | | | | | | Merge-request: !3532
| * \ \ Merge branch 'android-pie-cmp0083' into release-3.14Brad King2019-06-192-0/+26
| |\ \ \ | | | | | | | | | | | | | | | Merge-request: !3459
* | | | | Makefiles: Revert "Make build root targets ... recursive"Brad King2019-09-271-5/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert the main logic change from commit 827da1119e (Makefiles: Make build root targets "all", "clean" and "preinstall" recursive, 2019-05-17, v3.15.0-rc1~96^2~2) for the "all" and "preinstall" targets. The commit cleaned up the Makefile generator to use the same logic for the "all" target in the top-level directory as for subdirectories. It exposed a long-existing bug that caused the "all" target in a subdirectory to include the "all" targets from sub-subdirectories even if they are marked `EXCLUDE_FROM_ALL`. The `Tests/SubDir` test should fail but the problem is currently covered up by another bug introduced by commit dc6888573d (Pass EXCLUDE_FROM_ALL from directory to targets, 2019-01-15, v3.14.0-rc1~83^2) that causes the "all" targets in `EXCLUDE_FROM_ALL` subdirectories to be empty. Revert the top-level "all" and "preinstall" targets to the old approach to prepare to fix the latter bug without exposing the long-existing bug at the top-level. Leave the "clean" target in the new approach because it does not honor `EXCLUDE_FROM_ALL` anyway. Issue: #19753
* | | | | CMake 3.15.3v3.15.3Brad King2019-09-041-1/+1
| | | | |
* | | | | Merge branch 'FindBoost-1.71' into release-3.15Brad King2019-09-041-9/+15
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | Merge-request: !3780
| * | | | | FindBoost: Tolerate future Boost INTERFACE librariesBrad King2019-09-041-8/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 0dd6772a89 (FindBoost: Add legacy variables and targets for compatibility, 2019-06-14, v3.15.0-rc2~3^2~1) we query imported targets provided by `BoostConfig.cmake` for their `IMPORTED_LOCATION_<cfg>`. Querying this property is not allowed on INTERFACE libraries, so add a condition to avoid doing so in case Boost adds one in the future. Suggested-by: Alexander Grund <alexander.grund@tu-dresden.de> Issue: #19656, #19402
| * | | | | FindBoost: Clarify role of legacy variables in warning messageBrad King2019-09-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revise the wording of the warning added by commit 0dd6772a89 (FindBoost: Add legacy variables and targets for compatibility, 2019-06-14, v3.15.0-rc2~3^2~1) to refer to the old variables as "legacy" rather than "standard". Suggested-by: Alexander Grund <alexander.grund@tu-dresden.de> Issue: #19402
* | | | | | Merge branch 'FindBoost-1.71' into release-3.15Brad King2019-08-302-18/+36
|\ \ \ \ \ \ | |/ / / / / | | | | | | | | | | | | Merge-request: !3763
| * | | | | FindBoost: Add support for Boost 1.71Brad King2019-08-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Run `Utilities/Scripts/BoostScanDeps.cmake` with the Boost 1.71.0 sources to compute dependencies. They are the same as Boost 1.70. Fixes: #19658
| * | | | | FindBoost: Unwrap compatibility INTERFACE targets for legacy variablesBrad King2019-08-302-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 0dd6772a89 (FindBoost: Add legacy variables and targets for compatibility, 2019-06-14, v3.15.0-rc2~3^2~1) we extract information from imported targets provided by upstream `BoostConfig.cmake` files. However, upstream Boost 1.71 provides some imported targets only for compatibility. They are just INTERFACE libraries that wrap around the real target named by `INTERFACE_LINK_LIBRARIES`. Unwrap this layer so we can extract the real imported location. Fixes: #19656
| * | | | | FindBoost: Remove incorrect 1.70 timer dependencyBrad King2019-08-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Running `Utilities/Scripts/BoostScanDeps.cmake` with the Boost 1.70.0 sources shows that the `timer` component no longer depends on `system`. This is consistent with upstream Boost Timer commit `43eecbd071`.
| * | | | | FindBoost: Simplify conditional block for last known versionBrad King2019-08-301-16/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A version newer than we know about will be large enough to enter the block for the last known version so we can put the warning there.
* | | | | | Merge branch 'fileapi-CMP0037-OLD' into release-3.15Brad King2019-08-301-0/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !3760
| * | | | | | fileapi: Fix codemodel v2 target file name for CMP0037 OLD behaviorBrad King2019-08-301-0/+6
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With CMP0037 OLD behavior, executable and library target names may contain a slash. Avoid constructing file names with slashes. Fixes: #19653
* | | | | | Merge branch 'backport-find-no-name' into release-3.15Brad King2019-08-284-1/+5
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !3751
| * | | | | | find_path: Fix crash on empty old-style list of namesBrad King2019-08-284-1/+5
| |/ / / / / | | | | | | | | | | | | | | | | | | Fixes: #19651
* | | | | | Merge branch 'autogen_fix_use_after_move' into release-3.15Brad King2019-08-272-3/+3
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Merge-request: !3745
| * | | | | | Autogen: Fix AUTOUIC segfault, when file includes colliding ui_*.h fileSebastian Holtermann2019-08-272-3/+3
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a case of use after move of a `std::shared_ptr` in `AUTOUIC`. It triggered a segfault, when the error message for colliding `ui_*.h` includes in different files was computed.
* | | | | | 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.