df9c4b1872 find_package: Use <PACKAGENAME>_ROOT variables as search prefixes
4da27a73bd Help: Document <PackageName>_ROOT variable ordering using an ordered list
bfeb16bd5b cmFindPackageCommand: Refactor CMP0074 logic to de-duplicate lookups
c0fcd07e6f cmFindPackageCommand: Factor out methods for package root stack management
acd9636d9d cmSystemTools: Add helpers for reading and parsing PATH env vars
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !8240
This avoids the need to separately execute `mt.exe` to perform the
embedding of manifests into the output for non-incremental links. The
primary motivation for this change is that this separate execution of
`mt.exe` to embed manifests is known to cause intermittent failures due
to AV/security scanning.
The only change in behavior is that any linker generated manifest will
no longer be output as a separate manifest file alongside the output
file.
Fixes: #24531
Because -pthread doesn't begin with -l, it doesn't show up in the
pkgconfig LIBRARIES variable, causing FindOpenSSL to not add the
Threads::Threads dependency. Explicitly search LDFLAGS_EXTRA
for -pthread and add the dependency if it's found.
Fixes: #24532
Propagate the refactor in Step 10 MathFunctions through all of the
steps. Use MathFunctions/MathFunctions.cxx instead of Tutorial.cxx
to determine which sqrt library is called. Adds .h files which
correspond to their .cxx files by name.
Extend commit eb35d8884b (find_package: Use PackageName_ROOT variables
as search prefixes, 2018-03-15, v3.12.0-rc1~349^2) to also check
upper-case `<PACKAGENAME>_ROOT` variables. Add policy `CMP0144` to
enable the behavior in a compatible way.
Fixes: #24403
When using Clang with Visual Studio, the GenerateExportHeader function
generates the DEPRECATED definition "__attribute__ ((__deprecated__))",
because Clang can compile such instruction. However, if a user wants to compile
the library with this generated header with MSVC, the declaration is not valid.
We suggest to always use the DEPRECATED definition "__declspec(deprecated)" on
Windows, which is valid for both Clang and MSVC.
Populate issue descriptions by default with a note directing reporters
to other resources they should consider using first. Make it a comment
so that the content does not actually render in the report not removed.
To detect Parallel HDF5, the output of `h5pcc -showconfig` was compared
with `Parallel HDF5: yes`. However, the Boolean flag is not always
`yes` or `no`, because it was set by the value in `HDF5_ENABLE_PARALLEL`
if CMake was used for the configuration. This commit instead checks to
see if the value is interpreted by CMake as "true".
If a project or user sets a variable or cache entry named `C` or `CXX`,
we were previously comparing those language names to the value of that
variable, rather than the name itself. Double-quote the string to take
advantage of policy `CMP0054`, but also add "x" prefixes to support
projects that do not set the policy.
This extends a similar fix from commit c8eb357738 (CompilerId: Tolerate
variables named for languages, 2021-06-17, v3.21.0-rc1~9^2).