Improves the handling of CUDA layouts where we have multiple include
and library directories listed in the output of `nvcc -v`. This
updates both when the CUDA language is enabled or not.
Fixes: #24915
Following commit 6377a43814 (CUDA: Support response files with nvcc,
2022-06-01, v3.25.0-rc1~636^2), while determining the compiler ABI, do
not use response files, so that we can extract implicit link flags.
Fixes: #25272
ROCm may not install the `hip-lang` cmake package on NVIDIA platforms.
Skip verifying its presence. We do not use it for NVIDIA platforms anyway.
Fixes: #25271
Update logic added by commit 099934e313 (Add generator expression
support to static code analysis hooks, 2023-03-24, v3.27.0-rc1~261^2),
and preserved by commit 993dde925f (TargetGenerator: Factor out
generation of code check rules, 2023-05-12, v3.27.0-rc1~84^2~2), to
handle a generator expression that evaluates to the empty string.
If `<LANG>_CPPCHECK`, `<LANG>_CPPLINT`, `<LANG>_CLANG_TIDY`, or
`<LANG>_INCLUDE_WHAT_YOU_USE` are empty after evaluating generator
expressions, do not run their lints.
Fixes: #25265
e3572c110a curl: Set build options the way we need for CMake
c1f76e6c21 Merge branch 'upstream-curl' into update-curl
017637e40f curl 2023-09-13 (6fa1d817)
1fb19cbdad curl: Update script to get curl 8.3.0
21b668afc2 Utilities: Drop unused hard-coded try_compile result
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: buildbot <buildbot@kitware.com>
Merge-request: !8826
d9f1431f92 ci: Add jobs that run in symlink trees
879d12a29d ci: Always build Ninja with Unix Makefiles generator
8340313916 ci: Factor out debian12_ninja configure script
25d7843955 ci: Factor out build directory for finding artifacts
a7534c31e6 Tests: Update tests to run in multi-config generators
59b0ae6b24 Tests: Update tests to run in symlinked tree
Acked-by: Kitware Robot <kwrobot@kitware.com>
Tested-by: buildbot <buildbot@kitware.com>
Merge-request: !8797
4089954595 gitlab-ci: update to GCC CI container with merged P1689R5
c2564f5916 ci: drop extra scandep source settings for GCC
ee52a02d56 ci: update GCC build to use master after P1689R5 is merged
4f0410959e GCC: add rules for scanning C++ module dependencies
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8827
Due to an oversight in cmLinkLineDeviceComputer object
files did not get propagate to the device linking phase
when given via the `$<TARGET_OBJECTS>` generator expression.
I was noticing that FindOpenMP was failing to find my openmp installation
on macos when building with a custom-compiled clang. Upon inspection it
appears that FindOpenMP is looking for `AppleClang` as a compiler
identification and the `Clang` case is only applicable for Win32.
Try to fix that by treating custom `Clang` on macos the same as
`AppleClang`.
When given objects via `target_link_libraries(consumer PRIVATE producer)` the VisualStudio solution adds the objects
under as `<Object>` entries in the solution.
This works for host side linking but isn't handled by
the cuda msbuild extensions. So to work around this we
manually add the objects as additional link items.
* upstream-curl:
curl 2023-09-13 (6fa1d817)
Upstream significantly refactored `lib/CMakeLists.txt`, so take the
upstream version of everything except the code added by commit
54cb23c657 (curl: Restore installation of OpenSSL DLLs, 2014-11-03,
v3.2.0-rc1~418^2~4). We will apply our customizations again in a
follow-up commit.
This makes detection of Doxygen more robust in case of broken Doxygen
executables. Doxygen is called to determine its version number. If this
call returns a non-zero result, we have an indication that the Doxygen
executable is broken. We report Doxygen as not found to prevent issues
with checks for other Doxygen component, that might lead to
configuration aborts.
Fixes: #18708
Some jobs will run in a build directory other than
$CI_PROJECT_DIR/build, and will produce artifacts in a different
directory. Add a variable specifying where to find the artifacts, and
set it to build/ by default.