| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| | |
Merge-request: !2965
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The quoting added by commit 8c5221fb1f (try_compile: Preserve special
characters in COMPILE_DEFINITIONS, 2019-01-21, v3.14.0-rc1~108^2~3)
broke the case that the `COMPILE_DEFINITIONS` value contains a `;`.
Without the quoting the `;` would be generated literally in an unquoted
argument in the test `CMakeLists.txt` file and would then be expanded.
With quoting the `;` is preserved, which is not the old behavior.
Fix this by expanding the `;`-list ahead of time. Add test cases for
behavior with both `#` and `;`.
This was noticed with the PGI compiler where we set
`CMAKE_CXX*_STANDARD_COMPILE_OPTION` to values like `--c++17;-A`. The
symptom had also been observed while preparing commit ef8f237686
(ParseImplicitIncludeInfo: add SunPro Fortran and PGI compiler, Cray
fix, 2019-01-29, v3.14.0-rc1~26^2~2) but was not recognized at the time
as a regression. Revert the workaround added by that commit.
Fixes: #18919
|
|\ \
| | |
| | |
| | | |
Merge-request: !2962
|
| |/
| |
| |
| |
| |
| |
| |
| | |
The check added by commit 0a29a31161 (VS2017: Verify Windows 8.1 SDK
before using it, 2017-04-25, v3.8.1~2^2) used the wrong path to
`windows.h` within the SDK, leading to it never being detected.
Fixes: #18923
|
|\ \
| | |
| | |
| | | |
Merge-request: !2958
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The naming convention for submodule files varies across compilers. Add
a table to the compiler information modules and thread the information
through to the Fortran module dependency parser. Fill out the table for
compiler ids known to support Fortran submodules.
Fixes: #18746
|
| | | |
|
| |/ |
|
|\ \
| | |
| | |
| | | |
Merge-request: !2956
|
| |/
| |
| |
| |
| |
| |
| | |
The `cmsys/Enconding.h` include had a typo in its surrounding ifdef,
possibly causing a missing function declaration (`cmsysEncoding_DupToWide`).
As this is C code, this resulted in the code compiling, but with a truncated
return value, possibly causing crashes.
|
|\ \
| | |
| | |
| | | |
Merge-request: !2957
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since commit 5990ecb741 (Compute implicit include directories from
compiler output, 2018-12-07, v3.14.0-rc1~108^2) the values of the
`CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES` variables are computed from
a real compiler invocation. In this case the paths under the sysroot
should already have the sysroot prefix so we should no longer have to
add the sysroot prefix. However, it is also possible for project code
to add its own paths to `CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES`
without the sysroot prefix and expect the historical addition of the
sysroot prefix to be preserved.
Try to account for both cases by conditionally adding the sysroot prefix
on implicit include directories that do not already have it.
|
| | | |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The change in commit 15ad830062 (Refactor exclusion of -I/usr/include to
avoid per-language values, 2019-01-21, v3.14.0-rc1~108^2~4) caused the
exclusion to apply to Fortran, but it was only meant for C, CXX, and
CUDA. The purpose of the change was to prepare for the value of
`CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES` to be computed from the
actual compiler instead of hard-coded. We need to preserve exclusion of
`-I/usr/include` if the compiler has any implicit include directory that
looks intended to replace it, e.g. `<sdk>/usr/include` on macOS.
Fixes: #18914
|
|\ \
| | |
| | |
| | | |
Merge-request: !2954
|
| |/
| |
| |
| | |
Fixes: #18894
|
|\ \
| | |
| | |
| | | |
Merge-request: !2943
|
| | |
| | |
| | |
| | | |
-- Also change variable name to CMAKE_GHS_NO_SOURCE_GROUP_FILE
|
|\ \ \
| |/ /
|/| |
| | | |
Merge-request: !2937
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since commit dc6888573d (Pass EXCLUDE_FROM_ALL from directory to
targets, 2019-01-15, v3.14.0-rc1~83^2) we automatically forward the
`EXCLUDE_FROM_ALL` to targets as they are created. This regressed
support for interface libraries on which the property is not allowed.
Skip forwarding the `EXCLUDE_FROM_ALL` property for interface libraries.
It is not needed on them because they do not participate in the
generated build system anyway.
Fixes: #18896
|
|\ \
| | |
| | |
| | | |
Merge-request: !2919
|
| |/
| |
| |
| | |
Closes: #18396
|
|\ \
| | |
| | |
| | | |
Merge-request: !2923
|
| |/
| |
| |
| |
| |
| | |
Warning disables are transferred to the VS IDE `<NoWarn>` node.
Fixes: #18878
|
|/ |
|
|\
| |
| |
| |
| |
| |
| |
| | |
850ef90a66 CUDA: Honor CUDA_RESOLVE_DEVICE_SYMBOLS for more target types
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2900
|
| |
| |
| |
| |
| |
| |
| | |
`CUDA_RESOLVE_DEVICE_SYMBOLS` can be used with shared, module, and
executable target types. This relaxation is to allow for better
interoperability with linkers that automatically do CUDA device symbol
resolution and have no way to disable it.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
a28caabf45 Autogen: AUTOMOC support for files with the same name but different extensions
1f802295f2 Autogen: Extend the SameName test with same name but different extension files
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2920
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This adds support for AUTOMOC to moc header files with the same but different
extensions (e.g `obj.h`, `obj.hpp`, `obj.hxx`). If a moc file would appear
multiple times in `mocs_compilation.cpp`, a number suffix is appended
to the name to make it unique.
Closes #14489
|
|/ / |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
9ddbf4c6e6 Merge branch 'upstream-KWSys' into update-kwsys
8372c05472 KWSys 2019-02-05 (65802a20)
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2918
|
| | |
| | |
| | |
| | |
| | | |
* upstream-KWSys:
KWSys 2019-02-05 (65802a20)
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
b6cf086267 Autogen: Iterate over makefile sources only once
ed0fa784eb cmSystemTools: Let `GetFileFormat` accept a `std::stding const&`
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2909
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
In QtAutoGen we used to iterate over all makefile source two times to
extract file parameters for moc and uic respectively. This patch merges both
iterations into one loop. This makes the code easier to understand and likely
faster to execute as well.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
The `const char*` used formerly was converted to a `std::string`
internally anyway.
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
d3d2c3cd49 VS: Fix Fortran target type selection when linking C++ targets
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2913
|
| | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Since commit 2c9f35789d (VS: Decide project type by linker lang as
fallback, 2017-03-30, v3.9.0-rc1~340^2) we consider the linker language
when detecting whether to generate a `.vfproj` or `.vcxproj` file.
However, this could cause C-only projects to become `.vfproj` files if
they link to Fortran projects. Instead we should consider only the
`LINKER_LANGUAGE` property on the target itself. This approach is
already used for CSharp. It allows project code to specify the project
file type for a target with no sources but does not allow linked targets
to affect it.
Fixes: #18687
|
|\ \ \ \
| |_|_|/
|/| | |
| | | |
| | | |
| | | |
| | | | |
96dece6dc1 Xcode: Update default Swift language version for Xcode 10.2
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2912
|
| |/ /
| | |
| | |
| | |
| | |
| | | |
Xcode 10.2 no longer supports Swift language versions before 4.0.
Fixes: #18871
|
|/ / |
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
254b7260f4 cmSourceFile: Check if a file is GENERATED first in the full path computation
cd8a930d61 cmSourceFile: Refactor FindFullPath method
6d407ae439 Use cmSourceFile::GetIsGenerated
2ddf3f4467 cmSourceFile: Add IsGenerated method
b9d44fc350 cmSourceFile: Additional static property strings
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2908
|
| |
| |
| |
| |
| |
| |
| | |
In `cmSourceFile::FindFullPath` check first if the file is GENERATED before
aborting on `FindFullPathFailed`. This allows recomputation of the full path
when the GENERATED property was set after the file path was computed with an
error.
|
| |
| |
| |
| |
| | |
Refactors the cmSourceFile::FindFullPath method to
use lambdas.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
All cmSourceFiles are checked at least once whether they're `GENERATED` or not.
This adds a convenience method `GetIsGenerated` that returns a private
boolean cache variable `IsGenerated`. `IsGenerated` is updated every time the
`GENERATED` property is written.
|
| | |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
f5d72be57a VS: Fix deployment for WinCE projects
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2907
|
| |/
| |
| |
| | |
Fixes: #18868
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
cff026dbc0 VS: Fix WinRT component references
6c21722adb Tests: Fix VSWinStorePhone test with Windows 10 SDK 17763
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2906
|