summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* VS: Fix x64 host recognition by x86 cmake processBrad King2019-03-141-5/+10
| | | | | | | | | | | | | In commit 57e48f16f2 (VS: Add Visual Studio 16 2019 generator, 2019-01-09, v3.14.0-rc1~150^2) and commit 0fd742a6ff (VS: Teach VS 2019 generator to select host tools matching host arch, 2019-01-28, v3.14.0-rc1~63^2) we intended to select the `x64` target architecture and `x64` host tools by default on x64 host machines. Fix detection of a x64 host when CMake itself is a 32-bit x86 process. The KWSys SystemInformation `Is64Bits` member is not set correctly, which led to this bug. Pending investigation on the KWSys side, simply test ourselves via `IsWow64Process`.
* CMake 3.14.0v3.14.0Brad King2019-03-141-1/+1
|
* Merge branch 'revert-vs-msbuild-arch' into release-3.14Brad King2019-03-121-12/+0
|\ | | | | | | Merge-request: !3090
| * VS: Revert "Use MSBuild matching toolset host architecture"Brad King2019-03-121-12/+0
| | | | | | | | | | | | | | | | | | | | | | Revert commit da402a081b (VS: Use MSBuild matching toolset host architecture, 2019-01-28, v3.14.0-rc1~50^2). Multiple people have reported that the 64-bit `amd64/msbuild` tool fails in cases that the 32-bit `msbuild` works. Drop our change pending further investigation and hopefully a fix to VS. Fixes: #18904, #19037 Issue: #18219
* | Merge branch 'wix-cmake-downgrade-fix' into release-3.14Brad King2019-03-121-0/+2
|\ \ | |/ |/| | | Merge-request: !3087
| * CMake: Fix WiX installer downgrades with versioned binariesNils Gladitz2019-03-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 5b9da05b7a (Windows: Embed version information into CMake binaries, 2017-10-25, v3.11.0-rc1~411^2) our binaries have version information that prevents a `.msi` downgrade from replacing them by default. Configure the re-install mode: * a: reinstall all files regardless of version * m: rewrite all per-machine registry entries * u: rewrite all per-user registry entries * s: reinstall shortcuts and icons Fixes: #19006
* | CMake 3.14.0-rc4v3.14.0-rc4Brad King2019-03-081-1/+1
| |
* | Merge branch 'cxx-checks-warning-match' into release-3.14Brad King2019-03-071-1/+1
|\ \ | | | | | | | | | Merge-request: !3075
| * | C++ feature checks: Match warnings more strictlyBrad King2019-03-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Require the word "warning" to appear at the start of a line, after whitespace, or after a `:`. This is the same that CTest launchers use to match warnings. It avoids matching "warning" inside file paths. Fixes: #19019
* | | Merge branch 'install-no-imported-global' into release-3.14Brad King2019-03-075-1/+14
|\ \ \ | | | | | | | | | | | | Merge-request: !3071
| * | | install: Do not crash on imported global targetBrad King2019-03-075-1/+14
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit e89ad0f94e (install: Allow installing targets created in another directory, 2018-06-18, v3.13.0-rc1~407^2) the `install(TARGETS)` command may find a global-scoped target outside the calling directory. Ignore an `IMPORTED GLOBAL` target if it is found in this way. Imported targets cannot be installed, and trying to do so violates internal invariants. Fixes: #19022
* | | Merge branch 'vs-explicit-newline' into release-3.14Brad King2019-03-061-0/+1
|\ \ \ | | | | | | | | | | | | Merge-request: !3065
| * | | VS: Encode newlines in XML attributesLuca Cappa2019-03-061-0/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | Encode `\n` as `
` to avoid generating a literal newline inside an XML attribute. This is more readable and also fixes custom commands in `.csproj` files with VS 2019 RC. Fixes: #19001
* | | Merge branch 'docs-xcode-schemes' into release-3.14Brad King2019-03-063-34/+29
|\ \ \ | | | | | | | | | | | | Merge-request: !3066
| * | | Help: Remove note that Xcode scheme generator is experimentalCraig Scott2019-03-061-5/+0
| | | |
| * | | Help: Trivial typo fix for CMAKE_XCODE_GENERATE_SCHEMECraig Scott2019-03-061-1/+1
| | | |
| * | | Help: Sort lists of (CMAKE_)XCODE_SCHEME_... variables and propertiesCraig Scott2019-03-063-28/+28
| |/ /
* | | Merge branch 'docs-install-destinations' into release-3.14Brad King2019-03-051-51/+85
|\ \ \ | | | | | | | | | | | | Merge-request: !3052
| * | | Help: clarify DESTINATION and TYPE usage for install()Craig Scott2019-03-051-51/+85
| |/ /
* | | Merge branch 'ios-docs' into release-3.14Brad King2019-03-052-1/+62
|\ \ \ | | | | | | | | | | | | Merge-request: !3047
| * | | Help: CMAKE_MACOSX_BUNDLE is ON for iOS/tvOS/watchOSRuslan Baratov2019-03-051-0/+3
| | | |
| * | | Help: Example of tweaking iOS/tvOS/watchOS buildRuslan Baratov2019-03-051-0/+48
| | | | | | | | | | | | | | | | | | | | CMAKE_OSX_ARCHITECTURES and CMAKE_OSX_DEPLOYMENT_TARGET variables can be used to tweak iOS/tvOS/watchOS build
| * | | Help: find_package with fat iOS librariesRuslan Baratov2019-03-051-1/+11
| |/ /
* | | Merge branch 'ios-variable' into release-3.14Brad King2019-03-054-0/+11
|\ \ \ | | | | | | | | | | | | Merge-request: !3051
| * | | iOS: Add IOS variableRuslan Baratov2019-03-054-0/+11
| |/ / | | | | | | | | | | | | | | | | | | Since commit 11da882a12 (Apple: Introduce separate system name for iOS, tvOS, and watchOS, 2018-01-15, v3.14.0-rc1~14^2~1) we support setting `CMAKE_SYSTEM_NAME` to `iOS`. Existing iOS toolchain files already set `IOS` as a short-hand variable, so do the same here.
* | | Merge branch 'FindPython-NumPy-fix-include-dir' into release-3.14Brad King2019-03-042-3/+2
|\ \ \ | | | | | | | | | | | | Merge-request: !3053
| * | | FindPython: Fix NumPy component include directoryMarc Chevrier2019-03-042-3/+2
| |/ / | | | | | | | | | | | | | | | | | | Update the component added by commit 513e77550d (FindPython: Introduce NumPy component, 2018-12-12, v3.14.0-rc1~95^2). The `numpy/` sub-directory should not be part of the include directory. It should be part of the `#include` line.
* | | Merge branch 'vs-fortran-rc' into release-3.14Brad King2019-03-013-1/+11
|\ \ \ | |/ / |/| | | | | Merge-request: !3050
| * | VS: Fix Fortran target type selection with RC sourcesBrad King2019-03-013-1/+11
|/ / | | | | | | | | | | | | | | | | | | | | | | | | The Intel Fortran `.vfproj` files do support both Fortran and the Windows Resource compiler (`.rc)` files. Prior to CMake 3.9 we did not support that, but commit 2c9f35789d (VS: Decide project type by linker lang as fallback, 2017-03-30, v3.9.0-rc1~340^2) accidentally enabled it. It was then broken by commit d3d2c3cd49 (VS: Fix Fortran target type selection when linking C++ targets, 2019-02-04, v3.14.0-rc1~13^2). Restore support for Fortran+RC in VS projects and add a test case. Fixes: #19002
* | CMake 3.14.0-rc3v3.14.0-rc3Brad King2019-03-011-1/+1
| |
* | Merge branch 'findjni-paths' into release-3.14Brad King2019-03-011-52/+47
|\ \ | | | | | | | | | Merge-request: !3042
| * | FindJNI: Unify path search, fix support for Java 9Christian Pfeiffer2019-03-011-52/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Java 9 restructured the standard location of the AWT libraries due to the removal of the JRE/JDK separation. We should check all possible combinations of subdirectories to the Java root directories to ensure that the libraries will be found after an upgrade. Furthermore, a root directory would contain both, include and library paths, so the search should be unified to ease maintenance on the module.
* | | Merge branch 'ExternalProject-fix-log-in-custom-stamp' into release-3.14Brad King2019-03-011-2/+14
|\ \ \ | | | | | | | | | | | | Merge-request: !3045
| * | | ExternalProject: Restore default log dir with custom stamp dirBrad King2019-03-011-2/+14
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit b6f6cac378 (ExternalProject: add LOG_DIR option that allows overriding of log location, 2018-10-12, v3.14.0-rc1~515^2~1) the log directory got its own option. The intention was to fall back to the stamp directory by default. However, the implementation actually only falls back to the same default as the stamp directory and does not consider a custom stamp dir. Update the default log dir computation to fall back to whatever is the final selection for the stamp dir. Fixes: #19000
* | | Merge branch 'cuda_device_link_handle_frameworks' into release-3.14Brad King2019-03-011-0/+12
|\ \ \ | | | | | | | | | | | | Merge-request: !3039
| * | | CUDA: Filter out -framework arguments during device linkingRobert Maynard2019-02-281-0/+12
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | The filter in commit e768d96c74 (CUDA: Filter out host link flags during device linking, 2018-10-22, v3.13.0-rc2~4^2~2^2) removes `-framework` but not the framework name that comes after it. Revise the logic to remove both. Fixes: #18911
* | | Merge branch 'vs2019' into release-3.14Brad King2019-02-282-9/+1
|\ \ \ | | | | | | | | | | | | Merge-request: !3044
| * | | Help: Update VS 2019 generator release note for preview 4Brad King2019-02-281-1/+1
| | | |
| * | | VS: Drop workaround needed only for VS 2019 preview 2 and 3Brad King2019-02-281-8/+0
| |/ / | | | | | | | | | | | | | | | | | | | | | A temporary workaround added by commit 626c51f47b (VS: Update for Visual Studio 2019 Preview 2, 2019-01-24, v3.14.0-rc1~74^2) is no longer needed as of VS 2019 preview 4. Fixes: #18898
* | | Merge branch 'backport-check-std-size-cbegin-cend' into release-3.14Brad King2019-02-272-2/+18
|\ \ \ | | | | | | | | | | | | Merge-request: !3030
| * | | Extend C++17/C++14 feature checks to cover more standard library APIsMathieu Garaud2019-02-272-2/+18
| |/ / | | | | | | | | | | | | | | | | | | Make sure `std::cbegin`, `std::cend`, and `std::size` work in C++17 or C++14 mode before choosing the corresponding standard level for compiling CMake itself. This helps in cases that the compiler is using a standard library too old to support the full standard level chosen.
* | | Merge branch 'FindThreads-revert-libc-check' into release-3.14Brad King2019-02-271-11/+3
|\ \ \ | | | | | | | | | | | | Merge-request: !3022
| * | | FindThreads: Revert libc symbol check to pthread_createBrad King2019-02-271-13/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit e9a1ddc594 (FindThreads: Replace the pthread symbol checking in libc., 2018-11-18, v3.14.0-rc1~292^2) we check libc for `pthread_kill` instead of `pthread_create`. However, on FreeBSD `pthread_kill` is in libc but not `pthread_create`. Discussion in the original merge request for the above commit also considered `pthread_key_create`, `pthread_self`, and `pthread_attr_init`. Every symbol seems to have some reason it is not an appropriate choice. Revert to the pre-3.14 behavior of using `pthread_create` pending further investigation.
| * | | FindThreads: Fix libc check to use proper header for pthread_killBrad King2019-02-261-2/+4
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In commit e9a1ddc594 (FindThreads: Replace the pthread symbol checking in libc., 2018-11-18, v3.14.0-rc1~292^2) we switched to checking for `pthread_kill` in libc but did not update the symbol check's header file to match. Add `signal.h` to get `pthread_kill`. Keep `pthread.h` anyway since the purpose of the check is to verify that the pthread API works. Fixes: #18984
* | | Merge branch 'cmake_role-vs-fix' into release-3.14Brad King2019-02-273-1/+8
|\ \ \ | | | | | | | | | | | | Merge-request: !3028
| * | | CMAKE_ROLE: Fix value in --build for Visual Studio generatorsKyle Edwards2019-02-263-1/+8
| | | | | | | | | | | | | | | | Fixes: #18990
* | | | Merge branch 'docs-rpath-origin-apple' into release-3.14Brad King2019-02-271-7/+7
|\ \ \ \ | | | | | | | | | | | | | | | Merge-request: !3020
| * | | | Help: Fix minor inaccuracies of what BUILD_RPATH_USE_ORIGIN affectsCraig Scott2019-02-271-7/+7
| | |/ / | |/| |
* | | | Merge branch 'FindOctave-remove' into release-3.14Brad King2019-02-2710-266/+0
|\ \ \ \ | | | | | | | | | | | | | | | Merge-request: !3027
| * | | | FindOctave: Remove module pending further workBrad King2019-02-2610-266/+0
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `FindOctave` module added by commit 170bcb6fdc (FindOctave: Add module to find GNU octave, 2018-11-17, v3.14.0-rc1~283^2) has a few problems in its implementation that need to be worked out before the module can be included in a CMake release. These were missed during review. Remove the module for now. It can be restored later with a fresh review. Issue: #18991