- Mar 29, 2019
-
-
Brad King authored
Merge-request: !3157
-
Brad King authored
The implicit include directory extraction added by commit 5990ecb7 (Compute implicit include directories from compiler output, 2018-12-07, v3.14.0-rc1~108^2) leaves paths like `/usr/lib/../include` unchanged. Fix the logic to canonicalize such paths (e.g. to `/usr/include`) as we do for implicit link directories already. This is important to ensure the set of implicit directories is represented in the same form as the include directories that will be compared to them. Issue: #19095
-
Brad King authored
Merge-request: !3159
-
Brad King authored
Merge-request: !3160
- Mar 28, 2019
-
-
Both commit 88ecfd8b (CPackIFW: Add some options, 2016-11-11, v3.8.0-rc1~248^2) and commit e5089c56 (CPackIFW: Add some options, 2017-01-24, v3.8.0-rc1~53^2) added some options to this macro's documentation and implementation, but the actual processing of the parsed options was never added. Add it now. Reviewed-by:
Konstantin Podsvirov <konstantin@podsvirov.pro>
-
The `cmLocalGenerator::GetIncludeDirectoriesImplicit` method is called by `cmQtAutoGenInitializer` to get the compiler's list of implicit include directories. Since commit 557b2d6e (Fix regression in -I/usr/include exclusion logic, 2019-02-13, v3.14.0-rc2~6^2~2) the method hard-codes exclusion of `/usr/include` for historical reasons. However, it should not be reported as a real implicit include directory unless the compiler really has it. Refactor the logic to distinguish the hard-coded exclusion of `/usr/include` from the real list of implicit include directories. Fixes: #19100
-
- Mar 27, 2019
- Mar 26, 2019
-
-
Brad King authored
Our documented standard for find module variable names is to match the case of the find module package name. This was overlooked when the module was added by commit 84e7920b (FindFontconfig: Add module to find Fontconfig, 2018-09-27, v3.14.0-rc1~523^2). The module was released with the upper case names in CMake 3.14.0, so fix it to have camel case names in 3.14.1. This is incompatible but anyone using a given release series should be using the latest patch on it and we've made breaking fixups on newly released features like this before. Reported-by:
Christophe Giboudeaux <christophe@krop.fr> Fixes: #19094
-
When the current source file is not found the FilePath variable was left with the previous path content. In case the previous file had less lines than the current one and there are 'line' entries for the current one with higher number we ended up in a buffer overflow while indexing the previous file entry with a line number higher. By clearing the FilePath, the empty() guard triggers correctly on an empty path and it avoid modifying the wrong data.
-
Brad King authored
Merge-request: !3151
-
- Mar 25, 2019
-
-
Brad King authored
Merge-request: !3140
-
Brad King authored
Any `include_directories()` calls in toolchain files are used during our ABI detection step even though it does not include any system headers. Since commit 5990ecb7 (Compute implicit include directories from compiler output, 2018-12-07, v3.14.0-rc1~108^2), that check is also used to detect implicit include directories. Any `include_directories()` in a toolchain file are detected as implicit and later excluded from explicit specification on compiler command lines, thus breaking the purpose of the calls in the first place. Fix the implicit include directory detection step to avoid using paths from `include_directories()` calls in the toolchain file. Fixes: #19079
-
- Mar 21, 2019
-
-
Brad King authored
Merge-request: !3133
-
- Mar 20, 2019
-
-
Brad King authored
According to ARMCC 5.06 documentation: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0472m/chr1359125007083.html the compiler may define `__GNUC__` in addition to `__ARMCC_VERSION`. Re-order our preprocessor checks to consider the ARM-specific macro first so that the ARM compiler is not mistaken for a GNU compiler. Fixes: #19065
-
Brad King authored
Do not process interface libraries in ways that expect build information to be present internally. This filtering was left out of the extra generator accidentally when interface libraries were introduced, but it worked by accident until commit 76ad2ecb (Order SYSTEM include directories after non-system directories, 2018-04-13, v3.12.0-rc1~179^2) added a code path that was not tolerated. Fixes: #18363
- Mar 14, 2019
-
-
Brad King authored
Merge-request: !3105
-
Brad King authored
Since commit c76c1ea2 (find_program: Consider CWD only for paths with separator, 2018-05-31, v3.13.0-rc1~413^2) we accidentally convert the leading `//` to just `/` on results with Windows network paths. This was caused by `CollapseCombinedPath` being less robust than `CollapseFullPath`. Restore use of the latter but in a way that preserves the requirement of the above commit to support candidates that are themselves absolute. Fixes: #19049 Issue: #19050
-
Brad King authored
Merge-request: !3103
-
Marc Chevrier authored
Ensure interpreter and libraries architecture matches CMake build configuration. Update documentation about interpreter constraints. Fixes: #19024
-
Brad King authored
Merge-request: !3102
-
Brad King authored
In commit 57e48f16 (VS: Add Visual Studio 16 2019 generator, 2019-01-09, v3.14.0-rc1~150^2) and commit 0fd742a6 (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`.
-
- Mar 12, 2019
-
-
Brad King authored
Merge-request: !3090
-
Brad King authored
Revert commit da402a08 (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
-
Brad King authored
Merge-request: !3087
-
Since commit 5b9da05b (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
-
- Mar 08, 2019
-
- Mar 07, 2019
-
-
Brad King authored
Merge-request: !3075
-
Brad King authored
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
-
Brad King authored
Merge-request: !3071
-
Brad King authored
Since commit e89ad0f9 (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
-
- Mar 06, 2019
-
-
Brad King authored
Merge-request: !3065
-