Code added by commit v3.12.0-rc1~53^2 (FindLua: Search for lua.h using
more conventional paths, 2018-05-20) depends on `CMP0012` NEW behavior.
Set the policy explicitly for the scope of the FindLua module.
Fixes: #18142
The test code added by commit v3.12.0-rc1~411^2~1 (FindOpenMP: Verify in
test source that OMP library is linked, 2018-03-01) leaves an unused
variable warning. This breaks the check with `-Werror`. Remove the
variable and leave just the function call, which should still check that
the OMP library is linked.
Fixes: #18102
The change in commit v3.12.0-rc1~202^2~1 (FindJPEG: Add multi config
support and associated docs, 2018-04-17) accidentally left out the
default jpeg library names from consideration for debug variants.
Upstream CURL provides imported target `CURL::libcurl`. Rename the
target added by `FindCURL` to match. We don't need compatibility with
the old name because it has never been in a CMake release (except a 3.12
release candidate).
Suggested-by: Jakub Zakrzewski <slither.jz@gmail.com>
Acked-by: Rolf Eike Beer <eike@sf-mail.de>
Fixes: #18091
Xcode 10 no longer populates `CURRENT_ARCH` with the current
architecture in shell scripts and instead uses `undefined_arch`.
Instead we must use `ARCHS`. It lists all architectures separated by
spaces.
Fixes: #18085
Fix a typo from commit 0bef9eb410 (UseSWIG: modernize module,
2018-01-29) that caused `UseSWIG` to ignore an eventually set property
`SWIG_MODLUE_NAME`.
Building multiple python modules using the mentioned property as
described in the docs could lead to an invalid, or even worse,
inconsistent `build.ninja` file. The reason is that the generated list
of support files was not unique. For each module the support file was
always named the same, namely `path/to/builddir/MODULENAME.py`.
Macro 'check_required_components' should be called even if there are no
components provided by package. This will make sure error is reported
in next cases:
find_package(Foo CONFIG REQUIRED oops) # 'oops' treated as component
find_package(Foo CONFIG REQUIRED COMPONENTS foo) # no components expected
Intel compilers define `__cpp_constexpr` to `200704` even in C++14 mode.
This indicates that the `cxx_relaxed_constexpr` feature is not
available. However, Intel 17 and above document support for it. In
commit v3.8.0~9^2 (Features: Update features for Intel C++ 17.0.2 on
UNIX, 2017-03-31) we added a special check for this case. Intel 17 and
19 work. However, Intel 18 does not seem to work and fails our test
case. Add a special case to disable the feature for Intel 18.
Generalize the fix in commit v3.11.0-rc4~8^2 (ExternalProject: Fix cache
generation when last args ends with "-NOTFOUND", 2018-03-10) to work for
any argument rather than just the last one.
ExternalProject can now successfully generate the cache file when any
(not only the last one) cache variable associated with either
`CMAKE_CACHE_ARGS` or `CMAKE_DEFAULT_CACHE_ARGS` configure step option
is set to a `<value>` ending with `-NOTFOUND`.
Run the `clang-format.bash` script to update all our C and C++ code to a
new style defined by `.clang-format`. Use `clang-format` version 6.0.
* If you reached this commit for a line in `git blame`, re-run the blame
operation starting at the parent of this commit to see older history
for the content.
* See the parent commit for instructions to rebase a change across this
style transition commit.
Moves `CMAKE_${lang}_COMPILER_PREDEFINES_COMMAND` from linux specific
[Modules/Platform/Linux-GNU.cmake](Modules/Platform/Linux-GNU.cmake) to
[Modules/Compiler/GNU.cmake](Modules/Compiler/GNU.cmake).
This enables compiler predefines generation (in AUTOMOC) on all
platforms that run gcc (and clang).
Add new `version=` parameter in the toolset setting to select the
version. Add variable `CMAKE_VS_PLATFORM_TOOLSET_VERSION` to hold the
version, if one is set (blank indicates default).
Fixes: #17549
The `<CMAKE_CUDA_LINK_FLAGS>` placeholder in CUDA rule variables comes
from the `<CMAKE_CXX_LINK_FLAGS>` placeholder from which the CUDA rule
variables were originally derived. It is not a public interface for
adding link flags so no projects should be using it. It is needed for
platform information modules to specify platform-specific link flags for
the language. None of our platform modules set it, so it is unused.
Furthermore, it is broken as currently implemented. Some of the
contexts in which it is used need `-Xlinker` and some do not.
Therefore it is not possible to use the placeholder at all.
Simply remove it for now. If some need for platform-specific CUDA link
flags arises a new solution will be needed.
f5d19260f9 FindLua: Search for lua.h using more conventional paths
9455512d22 FindLua: Add tests for this module
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2095
Do not constrain the search to `include/*`. To provide compatibility
the foreach-loop is still used. However `include/xxx` and `xxx` is now
both searched. This honors now e.g. CMAKE_INCLUDE_PATH.
Fixes: #17999
The plural-named non-cached result variable is needed to follow our
module conventions documented in `cmake-developer(7)`. The variable is
also used to populate our ``BZip2::BZip2`` imported target include
directories, which was broken without this variable set.
Fixes: #18013