22beb07f Help: Clarify documentation of NO_SYSTEM_FROM_IMPORTED
2de0e0fd Do not initialize NO_SYSTEM_FROM_IMPORTED on INTERFACE libraries
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1386
The change in commit v3.8.0-rc1~276^2 (Allow NO_SYSTEM_FROM_IMPORTED on
imported INTERFACE libraries, 2016-11-21) was incorrect. The property
is not meant to be set on imported targets at all. It is meant to be
set on their consumers that compile sources. Since INTERFACE libraries
have no sources to compile, the property is not needed on them.
Revert most of that change. Unfortunately we must still tolerate
project code setting NO_SYSTEM_FROM_IMPORTED on INTERFACE libraries
because they were allowed by CMake 3.8 and 3.9.
Issue: #17348
Cygwin-built CMake now converts paths from Cygwin to Windows form
(using cygpath -w) before they're passed to WiX.
The Wix generator on Cygwin requires the libuuid-dev package when
building CMake. However, the DLL it links to is installed by default
as part of Cygwin's core libs, so it does not need to be distributed.
If libuuid-dev isn't available, CMake is simply built without Wix
support on Cygwin.
Under Cygwin, file(TO_CMAKE_PATH...) outputs invalid paths when given
a Windows path as input (the colon after the drive letter gets replaced
by a semicolon).
As a workaround, just use a string replace to change the slashes instead.
192ab741 FindPythonLibs: Allow find_library to search paths from system environment
3976a106 FindPythonLibs: Prefer libs early in search path regardless of name
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1378
`xmlrpc-c-config $modules --cflags` may report no `-I` flags if the
headers are in a standard location like `/usr/include`. In this case
it is okay for `XMLRPC_INCLUDE_DIRS` to be empty.
Ideally the `--cflags` output should be used as hints for a `find_path`
call to really find the headers as we do for other find modules, but
simply assuming no explicit include directories are needed is good
enough for now.
Fixes: #17347
Drop the `NO_SYSTEM_ENVIRONMENT_PATH` option from our `find_library`
calls. No other find modules do this. Also, since commit
v3.3.0-rc1~430^2 (Teach find_(library|file|path) to get prefixes from
PATH, 2015-02-18) we always search the `lib` directory of each prefix
before the `bin` directory and so should prefer the non-`.dll` name.
Issue: #17336
Add `NAMES_PER_DIR` to all `find_library` invocations so that we
consider all possible names in each search directory before moving on to
the next directory. This helps find the package that appears earliest
in the search path regardless of how it names its libraries.
Fixes: #17336
The implementation of this module doesn't expect such dereferences
to happen, but can when a project sets a variable called `x`.
Set `CMP0054` explicitly to get its NEW behavior.
Fixes: #17335
CPACK_DEBIAN_PACKAGE_VERSION variable could in the past also
contain release and epoch version so regex test should expect
the entire versioning if both CPACK_DEBIAN_PACKAGE_RELEASE
and CPACK_DEBIAN_PACKAGE_EPOCH are not set.
Also since the checks were not performed in the past the regex
test of CPACK_DEBIAN_PACKAGE_VERSION variable content should
only report author warnings instead of errors in case of the
test fail.
Fixes: #17339
The LLVM/Clang installer on Windows provides a `LLVM/bin` directory
containing `clang.exe` and `clang++.exe` command-line tools that have a
GNU-like command-line but target the MSVC ABI (instead of MinGW). We
do not support this combination, so diagnose and reject it explicitly.
Tell users what to do to use the `clang-cl.exe` tool instead.
Issue: #16439