Commit Graph

8554 Commits

Author SHA1 Message Date
Adriaan de Groot
91f4adb028 FindLua: Set CMP0012 to NEW for the revised search code
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
2018-07-03 11:23:22 -04:00
Brad King
d43c9152a6 Merge branch 'FindOpenMP-avoid-warning-in-check' into release-3.12
Merge-request: !2176
2018-06-27 15:27:21 -04:00
Brad King
826bf5c454 FindOpenMP: Avoid warning in check code
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
2018-06-27 15:24:22 -04:00
Brad King
5dc9f440c5 Merge branch 'FindJPEG-fix-debug' into release-3.12
Merge-request: !2159
2018-06-21 10:50:48 -04:00
Andrey Karpov
ae4a548302 FindJPEG: Drop ancient compatibility NATIVE_JPEG_* result variables
These have been deprecated since 2002!
2018-06-21 10:47:03 -04:00
Andrey Karpov
7876f329a9 FindJPEG: Add forgotten names of libraries for Debug configuration
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.
2018-06-21 10:47:03 -04:00
Brad King
a044006a32 Merge branch 'xcode-10-archs' into release-3.12
Merge-request: !2153
2018-06-19 09:24:37 -04:00
Brad King
1e356734a7 FindCURL: Rename imported target to match upstream CURL
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
2018-06-18 13:58:21 -04:00
Brad King
bc5bcad45e Xcode: Detect architecture(s) using ARCHS instead of CURRENT_ARCH
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
2018-06-18 13:44:43 -04:00
Brad King
93fe9fc1a2 Merge branch 'UseSWIG-csharp-variant' into release-3.12
Merge-request: !2137
2018-06-13 10:51:49 -04:00
Rishi Theivendran
0c2fb4c896 UseSWIG: Add CSHARP variant for wrapper files
Issue: #18065
Fixes: #18066
2018-06-12 11:34:58 -04:00
Brad King
f024f4f8a0 Merge branch 'UseSWIG-fix-genex' into release-3.12
Merge-request: !2143
2018-06-12 10:08:36 -04:00
Marc Chevrier
88dd5dc9ff UseSWIG: add support for generator expressions 2018-06-12 10:07:24 -04:00
Brad King
3dd046a84b Merge branch 'UseSWIG-handle-SWIG_MODULE_NAME' into release-3.12
Merge-request: !2145
2018-06-12 10:00:41 -04:00
Felix Schwitzer
156138d5f1 UseSWIG: Fix handling of SWIG_MODULE_NAME source file property
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`.
2018-06-12 09:55:53 -04:00
Brad King
1f3221f365 Merge branch 'FindPython-3.8' into release-3.12
Merge-request: !2140
2018-06-08 09:42:29 -04:00
Marcel Plch
b6e7f2c37f FindPython: Add support for version 3.8
Python 3.7 is about to be released, making the development version 3.8.
2018-06-08 09:42:18 -04:00
Ruslan Baratov
aeda8fcceb Help: Package without components should use 'check_required_components' too
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
2018-06-07 10:41:45 -04:00
Brad King
d902fb0cf6 Merge topic 'intel-compile-features'
f719a13c28 Features: Add special case to disable relaxed constexpr for Intel 18

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2133
2018-06-05 11:28:35 -04:00
Brad King
8dbccd050c Merge topic 'more-misc-typos'
be28106880 Fix misc. typos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Alex Turbov <i.zaufi@gmail.com>
Merge-request: !2130
2018-06-05 11:26:12 -04:00
Brad King
21b7e14800 Merge topic 'ep-support-passing-var-ending-with-notfound'
7ad5165c67 ExternalProject: Fix cache generation when args end with "-NOTFOUND"

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2127
2018-06-05 11:23:49 -04:00
Craig Scott
f790273ef0 Merge topic 'fix/CPackNuGet-var-para-deindent'
afcb68a0c1 Help: Fix indentation for `CPACK_NUGET_PACKAGE_AUTHORS`

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2135
2018-06-05 06:03:14 -04:00
Alex Turbov
afcb68a0c1 Help: Fix indentation for CPACK_NUGET_PACKAGE_AUTHORS 2018-06-05 19:59:51 +10:00
Craig Scott
d8ea0afa30 Merge topic 'external-project-url-hash-docs'
470ff56e5a ExternalProject: Improve URL_HASH argument description

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2134
2018-06-05 05:47:29 -04:00
Matt McCormick
470ff56e5a ExternalProject: Improve URL_HASH argument description
The previous documentation suggested

  ALGO=MD5=d7a3dc7757a35df3dbb890f7dee0976b

for example.
2018-06-04 16:17:58 -04:00
Brad King
f719a13c28 Features: Add special case to disable relaxed constexpr for Intel 18
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.
2018-06-04 13:52:11 -04:00
Jean-Christophe Fillion-Robin
7ad5165c67 ExternalProject: Fix cache generation when args end with "-NOTFOUND"
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`.
2018-06-04 11:37:52 -04:00
Brad King
07bddeae14 Merge topic 'fix-ti-c-standard'
9e27881bb1 TI: Add support for C language standards

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2131
2018-06-04 11:34:35 -04:00
Arnaud Gelas
9e27881bb1 TI: Add support for C language standards
Set C90 and C99 compile options for TI compiler.

Fixes: #18061
2018-06-04 10:48:02 -04:00
luz.paz
be28106880 Fix misc. typos
Found via `codespell` and `grep`
2018-06-04 10:32:49 -04:00
Brad King
fbd34ecd35 Merge topic 'gnu-CMAKE_LANG_COMPILER_PREDEFINES_COMMAND'
caa138c1a5 Move GNU COMPILER_PREDEFINES_COMMAND from Platform to Compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2121
2018-06-04 09:51:31 -04:00
Kitware Robot
d7204e649e Revise C++ coding style using clang-format-6.0
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.
2018-06-01 09:53:42 -04:00
Brad King
eb7ec19c1c clang-format: Add comments to suppress some formatting
Preserve manually-formatted blocks.
2018-06-01 09:52:02 -04:00
Sebastian Holtermann
caa138c1a5 Move GNU COMPILER_PREDEFINES_COMMAND from Platform to Compiler
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).
2018-06-01 09:21:06 +02:00
Rolf Eike Beer
6a64292fa7 FindALSA: reformat docs 2018-05-31 09:35:53 +02:00
Rolf Eike Beer
1c87844856 FindALSA: provide an imported target 2018-05-31 09:35:53 +02:00
Brad King
958191a95c Merge topic 'vs-toolset-version'
5f13168419 VS: Add option to select the version of the toolset used by VS 2017

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Francisco Facioni <fran6co@gmail.com>
Merge-request: !2093
2018-05-30 10:19:21 -04:00
Basil Fierz
5f13168419 VS: Add option to select the version of the toolset used by VS 2017
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
2018-05-29 10:12:59 -04:00
Brad King
42752d0c11 Merge topic 'cuda-unused-placeholder'
edf0ea9bb2 CUDA: Drop unused/broken platform link flags placeholder

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2108
2018-05-29 10:02:18 -04:00
Craig Scott
4e890800eb Merge topic 'doxygen-all'
7b2f440e2b FindDoxygen: Add tests for ALL option
79b29b732c FindDoxygen: add optional ALL argument

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2099
2018-05-29 05:25:04 -04:00
Brad King
edf0ea9bb2 CUDA: Drop unused/broken platform link flags placeholder
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.
2018-05-25 10:03:03 -04:00
Brad King
46b26b52c9 Merge topic 'FindPerl-strawberry'
b37d583d5c FindPerl: Add support for Strawberry Perl

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2102
2018-05-25 09:29:12 -04:00
Brad King
266fd71654 Merge topic 'FindLua-conventional-paths'
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
2018-05-25 09:26:21 -04:00
Brad King
cf723c493e Merge topic 'FindODBC-module'
357db10bd1 FindODBC: Add module to search for ODBC library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2069
2018-05-25 09:23:52 -04:00
Alexander Grund
f5d19260f9 FindLua: Search for lua.h using more conventional paths
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
2018-05-24 11:20:09 -04:00
Lauri
b37d583d5c FindPerl: Add support for Strawberry Perl
Fixes: #18027
2018-05-24 09:58:27 -04:00
David Demelier
79b29b732c FindDoxygen: add optional ALL argument 2018-05-24 15:13:35 +02:00
Mateusz Loskot
357db10bd1 FindODBC: Add module to search for ODBC library
Add tests for FindODBC module.
2018-05-22 21:29:22 +02:00
Brad King
0887c993aa FindBZip2: Populate BZIP2_INCLUDE_DIRS result variable
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
2018-05-22 09:56:32 -04:00
Brad King
a8bf1ea5b7 FindBZip2: Format result variable docs as definition list 2018-05-22 09:55:46 -04:00