| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
c5cc4ddac4 MSVC: Add support for C17
6561b032bc MSVC: Tolerate c_std_17 and c_std_23 features on older compiler versions
22f804e0ec MSVC: Refactor C compile features table for C90, C99, and C11
Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !6677
|
| |
| |
| |
| |
| |
| | |
C17 support has been available in MSVC since VS 16.8.
Fixes: #22816
|
| |
| |
| |
| |
| |
| |
| | |
MSVC `cl` versions prior to 19.27 had no `-std:c*` flags for C
standards. List the `c_std_{17,23}` features anyway. This allows
projects to at least attempt compilation with these compilers since they
do not have any modes.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The custom "no modes" `cmake_record_c_compile_features` implementation
should only be used in `cl` versions prior to 19.27 because they had no
`-std:c*` flags for C standards. For 19.27 we need a different custom
implementation to account for partial C11 support. For 19.28 and above
we can use the default implementation through the `*__HAS_FULL_SUPPORT`
settings.
We already use this pattern in the MSVC C++ compile feature table.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
caeaabb356 FindVulkan: Add version support
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6669
|
| | |
| | |
| | |
| | |
| | | |
The version is constructed in the form <major>.<minor>.<patch> e.g.
1.2.189.
|
|\ \ \
| |/ /
|/| /
| |/
| |
| |
| | |
51a2afe6e7 CPack/IFW: Add support for QtIFW 4.2
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6674
|
| | |
|
|\ \
| |/
| |
| |
| |
| |
| | |
3d0e2775a5 HIP: Add missing space when appending --cuda-host-only
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6662
|
| |
| |
| |
| | |
Fixes: #22805
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
5dd981539f BinUtils: Avoid llvm-strip versions older than Clang 11
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6655
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
1ab7c3cd28 CheckSymbolExists: Work around GCC failure with -pedantic-errors option
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6656
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
GCC mistakenly issues the pedantic warning "ISO C forbids conversion of
function pointer to object pointer type". With -pedantic-errors in the
compile flags, that diagnostic prevents check_symbol_exists() from
detecting function symbols.
The solution is to filter out -pedantic-errors (and -Werror, just to be
future proof) before invoking try_compile().
Fixes: #13208
|
|\ \ \ \
| |/ / /
|/| | /
| | |/
| |/|
| | |
| | | |
5dd981539f BinUtils: Avoid llvm-strip versions older than Clang 11
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6655
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since commit cf82300a63 (BinUtils: Clarify search logic and make it more
consistent, 2021-05-27, v3.21.0-rc1~119^2~2) we correctly prefer the
more-specific name `llvm-strip` over `strip` when using Clang. However,
`llvm-strip` from Clang versions prior to 11 require extra flags to
strip everything. Until our `install(TARGETS)` logic learns to add
those flags, avoid using older versions of `llvm-strip` by default.
Fixes: #22785
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
3958ed878f LCC: Add policy CMP0129 regarding interpreting LCC as GNU
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6643
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Due to MCST LCC compiler identification is now changed to LCC,
there should be a way for old projects to still identify it as GNU,
as it was before.
This commits adds the policy:
CMP0129: Compiler id for MCST LCC compilers is now LCC, not GNU.
This policy controls such a behavior.
OLD behaivior is to treat LCC as GNU, NEW is to treat is as LCC.
|
|\ \ \ \
| | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
46e9ff5729 Restore honoring CMAKE_GENERATOR_INSTANCE in toolchain file
42418b02f7 Android: Refactor sysroot detection under Visual Studio
44a86d0b38 cmake_host_system_information: Add undocumented VS_MSBUILD_COMMAND key
6999b87133 cmGlobalVisualStudio10Generator: Add method to find MSBuild early
7f730464be cmGlobalGenerator: Add method to check if generator is at least VS 10
8917b8512f cmGlobalVisualStudioVersionedGenerator: Allow repeating SetGeneratorInstance
6511654164 cmGlobalVisualStudio10Generator: Allow subclasses to reset MSBuild search
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !6646
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Since commit 6051a49c78 (Visual Studio: Add Android support, 2020-06-12,
v3.19.0-rc1~619^2) we run MSBuild to build a sample project to detect
the sysroot. Previously we relied on `CMAKE_VS_MSBUILD_COMMAND` being
available. That required commit d5b5c19278 (cmGlobalGenerator:
FindMakeProgram() before CMakeDetermineSystem, 2020-06-15,
v3.19.0-rc1~619^2~3) to make it available early enough. However, that
ordering broke `CMAKE_GENERATOR_INSTANCE` so we need to prepare to
revert it. Use `cmake_host_system_information` to get the location of
MSBuild under a VS generator instead.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The target properties `CUDA_SEPARABLE_COMPILATION` and `CUDA_PTX_COMPILATION`
now aren't mutually exclusive and can now be used together on the same
target.
|
|\ \ \ \
| |_|/ /
|/| | |
| | | |
| | | |
| | | |
| | | | |
3f9b40dab7 Generic-ELF: Add platform module to configure the .elf file extension
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6630
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The `.elf` extension is a common convention used for embedded binaries.
Both Arm and RISC-V use the ELF file format for executables.
Configuring the `.elf` file extension is typically done incorrectly.
Most embedded developers set this in toolchain files, which is not
the correct place.
This is typically accomplished through a hack by setting the individual
language file extensions for C, CXX, and ASM.
Multiple CMake issues in the past have been opened related to this.
* #16538
* #20163
* #17880
A platform module makes it simpler and less error prone for developers
targeting these ubiquitous bare-metal platforms.
This PR attempts to solve this globally with a generic platform.
This could also be solved by using more specific platform modules, such
as one for each of bare-metal Arm and RISC-V.
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
02b2607a5c Help: Add release note for MCST LCC compiler support
e5d9fce03f LCC: Add dedicated support for MCST LCC compiler
2b9ef77944 CPack/DEB: deal with broken dpkg-shlibdeps on E2K architecture
0995c75301 Tests/RPM: skip tests tat rely on debugedit if it's not found
ea55ac9a51 Tests/RunCMake/CommandLine: Deal with locales that are different from English
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6608
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Divert LCC compiler as a new one, instead of treating it as GNU.
Since old times, Elbrus C/C++/Fortran Compiler (LCC) by MCST has been
passing checks for GNU compilers, so it has been identified as GNU.
Now, with intent of seriously upstreaming its support, it has been
added as a separate LCC compiler, and its version displays not a
supported GCC version, but LCC version itself (e.g. LCC 1.25.19 instead
of GNU 7.3.0).
This commit adds its support for detection, and also converts basically
every check like 'is this compiler GNU?' to 'is this compiler GNU or
LCC?'. The only places where this check is untouched, is where it
regards other platforms where LCC is unavailable (primarily non-Linux),
and where it REALLY differs from GNU compiler.
Note: this transition may break software that are already ported to
Elbrus, but hardly relies that LCC will be detected as GNU; still such
software is not known.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
"OS Elbrus" (OSL for short), a reference Linux distro for E2K (Elbrus)
platform may have broken dpkg-shlibdeps, that doesn't specify
dependencies correctly. In this case, the only reliable way is to
explicitly set dependencies of libc6 and lcc-libs, and then warn user
to let him know this list may be incomplete. This commit does that.
This fix has no effect on correctly working dpkg-shlibdeps, so when
this bug will be fixed in new versions of OSL, CPack will work as
expected with these distros.
|
|\ \ \ \ \
| | |_|/ /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | | |
7123c8fdbf CheckLanguage: Don't pass CMAKE_CUDA_HOST_COMPILER for Visual Studio
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6633
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | | |
Visual Studio doesn't support specifying it and if we do we get a warning.
Fixes: #22712
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | | |
5d178fcc53 CTest: Add CTEST_SUBMIT_INACTIVITY_TIMEOUT variable
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !6584
|
| | | |
| | | |
| | | |
| | | | |
Fixes: #22617
|
| |\ \ \
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | | |
ef47e18ad0 MSVC: Tolerate cxx_std_23 feature on older compiler versions
Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !6614
|
|\ \ \ \
| | |_|/
| |/| | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
VS 2022 Preview 5 renamed the redist directories from `Microsoft.VC142.*`
to `Microsoft.VC143.*` in order to match the `v143` toolset name.
Fixes: #22586
|
| |\ \ \
| | | |/
| | |/|
| | | | |
Merge-request: !6614
|
| |\ \ \
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
6658e260d4 GNUInstallDirs: Fix misinterpretation of Debian Policy on LIBEXECDIR
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6607
|
| |\ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
1a828043b7 NVHPC: only use '-MD' for the C and CXX languages
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6602
|
|\ \ \ \ \ \
| | |_|_|/ /
| |/| | | /
| |_|_|_|/
|/| | | |
| | | | |
| | | | |
| | | | | |
ef47e18ad0 MSVC: Tolerate cxx_std_23 feature on older compiler versions
Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !6614
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
In commit 3aaf1d91bf (MSVC: C++20 final flag, C++23 support, 2021-05-29,
v3.20.4~7^2~1) we forgot to add `cxx_std_23` to the fallback table for
MSVC versions from VS 2010 through VS 2015. This allows project to at
least attempt compilation with these compilers since they do not have
any modes.
Issue: #22729
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
635f2c87f5 FindBLAS: Fix EML and ArmPL indentations
816dc1cb19 FindBLAS: Replace set(A val) with string(APPEND)
a7843faa20 FindLAPACK: Replace set(A val) with string(APPEND)
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6605
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | /
| | |_|_|/
| |/| | |
| | | | |
| | | | | |
6658e260d4 GNUInstallDirs: Fix misinterpretation of Debian Policy on LIBEXECDIR
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !6607
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Revert commit 798c1c3192 (GNUInstallDirs: Comply with Debian Policy on
LIBEXECDIR, 2020-10-08, v3.19.0-rc1~11^2).
The Debian Policy builds upon FHS 3.0 and permits installing to
`/usr/libexec`. While Policy does grant an additional exception for
applications to use a single subdirectory of `/usr/lib/<triplet>`, this
is not meant to replace `/usr/libexec` as valid target.
Fixes: #22731
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
32574814c7 FindCUDAToolkit: Fix missing sibling include directory for math libraries
Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raul Tambre <raul@tambre.ee>
Merge-request: !6591
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Fixes: #22706
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
6e8754c625 FindJasper: Add IMPORTED target
bdbce845cd FindJasper: Add JASPER_INCLUDE_DIRS result variable
7f8413c309 FindJasper: Modernize documentation layout
524205a7a5 FindJasper: Modernize code layout
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !4633
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Fixes: #20601
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The `JASPER_INCLUDE_DIR` cache entry is not supposed to be the public
result variable.
|
| | | | | | | |
|
| | | | | | | |
|