Commit Graph

9527 Commits

Author SHA1 Message Date
Alex Turbov
98617f1be0 Refactor: Move CPack internal files to Internal/CPack/ directory
Some commits ago all CPack internal `*.cmake` files have been moved
to `Internal/CPack/`. This commit also move some templates
internally used by generators to the same location to make
`Modules/` directory less noisy w/ files the end users don't
need to use/see.
2019-07-09 15:45:03 +03:00
Brad King
58d10debe1 Merge topic 'fortran-submodule-cray'
b0bcd4d7d2 Fortran: Add support for submodules on Cray
33de4d27eb Fortran: Support compilers using no module prefix on submodule files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3504
2019-07-08 11:43:39 -04:00
Brad King
a6a698aafb Merge topic 'pb-cxx11'
59a30f2acf FindProtobuf: libprotoc also needs C++11
194adaf985 Tests: require C++11 for some protobuf tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3503
2019-07-08 11:28:27 -04:00
Willem Deconinck
b0bcd4d7d2 Fortran: Add support for submodules on Cray
Define `CMAKE_Fortran_SUBMODULE_{SEP,EXT}` for the Cray Fortran
compiler.  Use an empty separator to tell CMake that this compiler does
not use the enclosing module name as a prefix on submodule files.

Issue: #18925
2019-07-08 11:28:27 -04:00
Brad King
bf7f5d0a22 Merge topic 'threads-are-good'
08cd7f6a02 Swift: support multithreaded compilation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3506
2019-07-08 11:26:29 -04:00
Rolf Eike Beer
59a30f2acf FindProtobuf: libprotoc also needs C++11 2019-07-03 18:49:49 +02:00
Brad King
c723ff216f Merge topic 'FindPostgreSQL-lib-dir'
d21b890a4c FindPostgreSQL: Fix regression in computation of library directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3505
2019-07-03 07:31:10 -04:00
Saleem Abdulrasool
08cd7f6a02 Swift: support multithreaded compilation
Query the number of logical CPUs available to enable parallel
compilation for Swift.
2019-07-02 10:45:07 -07:00
Brad King
8a42cd155f Merge topic 'static'
8aa0b63bc6 Swift: add rules for static linking

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3492
2019-07-02 08:45:58 -04:00
Brad King
d21b890a4c FindPostgreSQL: Fix regression in computation of library directory
Since commit 368bcba28a (FindPostgreSQL: Find debug lib, imported
configs, 2019-05-09, v3.15.0-rc1~93^2) the `PostgreSQL_LIBRARY` variable
may contain a list and therefore should not be passed to the
`get_filename_component` command directly.  Instead spell out the logic
to compute `PostgreSQL_LIBRARY_DIR` from one of the per-configuration
variables.

Fixes: #19444
2019-07-02 07:32:14 -04:00
Marc Chevrier
554c2ed743 Merge topic 'FindMPI-AddSuffixes'
5affe415a3 FindMPI: Add MPI_EXECUTABLE_SUFFIX to every item in lists

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3496
2019-07-02 04:39:19 -04:00
Brad King
ecee33c3ae Merge topic 'override-rules-RC'
d2f20ab217 RC: Honor CMAKE_USER_MAKE_RULES_OVERRIDE

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3489
2019-07-01 09:54:19 -04:00
Brad King
dd433c98e4 Merge topic 'FindMatlab-EXCLUDE_FROM_ALL'
11e0009b77 FindMatlab: EXCLUDE_FROM_ALL parameter to matlab_add_mex

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3474
2019-07-01 09:52:44 -04:00
Brian Carlson
5affe415a3 FindMPI: Add MPI_EXECUTABLE_SUFFIX to every item in lists
Add the `${MPI_EXECUTABLE_SUFFIX}` to each of the items in the
`_MPI_${id}_${LANG}_COMPILER_NAMES` and `_MPI_${LANG}_GENERIC_COMPILER_NAMES` rather
than just adding the suffix to the last item in each list.
2019-06-29 13:35:01 -04:00
Saleem Abdulrasool
8aa0b63bc6 Swift: add rules for static linking
The Swift driver recently learnt how to generate static libraries using
the `-static` flag.  This enables us to generate proper static libraries
with dependency tracking with Swift as well.
2019-06-27 21:28:48 -07:00
Brad King
d2f20ab217 RC: Honor CMAKE_USER_MAKE_RULES_OVERRIDE
Since the refactoring in commit 48f7e2d300 (Unhardcode the
CMAKE_CONFIGURATION_TYPES values, 2017-11-27, v3.11.0-rc1~130^2~1),
`CMAKE_BUILD_TYPE` is initialized while enabling the RC language.
Therefore we need to honor `CMAKE_USER_MAKE_RULES_OVERRIDE`
as part of enabling RC so that a `CMAKE_BUILD_TYPE_INIT` setting
in the override file is honored.

Fixes: #19401
2019-06-27 07:39:24 -04:00
Brad King
6ddc0b4438 Merge topic 'cuda-msvc-runtime-library'
8fbd25772f CUDA: Implement MSVC runtime library abstraction
07807a2006 VS: Use AddLanguageFlags to de-duplicate CMAKE_{CUDA,ASM*}_FLAGS lookup

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3485
2019-06-27 07:30:01 -04:00
Raffi Enficiaud
11e0009b77 FindMatlab: EXCLUDE_FROM_ALL parameter to matlab_add_mex
Enabling a mex target to be excluded from the `all` target.
2019-06-26 19:53:02 +02:00
Brad King
8fbd25772f CUDA: Implement MSVC runtime library abstraction
In commit fb3370b6a1 (MSVC: Add abstraction for runtime library
selection, 2019-04-10, v3.15.0-rc1~229^2) we overlooked updating flags
for CUDA on Windows, where nvcc uses MSVC as the host compiler.  Add
them now and update the MSVCRuntimeLibrary test to cover CUDA.

Fixes: #19428
2019-06-26 08:36:48 -04:00
Brad King
1e263065e1 Merge topic 'findmpi_use_interface_link_options'
39c572c9c9 FindMPI: Updated to use INTERFACE_LINK_OPTIONS

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3476
2019-06-26 07:12:24 -04:00
Brad King
c92f5f6a73 Merge topic 'FindMatlab/issue-19279-mex-compilation-error-on-attribute'
c2595a4958 FindMatlab: removing spaces in compiler define

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3473
2019-06-26 07:11:34 -04:00
Rolf Eike Beer
e28240ea1f FindProtobuf: C++11 support is required since version 3.6.0 2019-06-25 15:22:01 +02:00
Raffi Enficiaud
c2595a4958 FindMatlab: removing spaces in compiler define
Spaces in `DLL_EXPORT_SYM=__attribute__ ((visibility (\"default\")))`
are causing a compilation error.

Fixes: #19279
2019-06-25 07:24:01 -04:00
Brad King
1009fd1860 Merge topic 'matlab-if'
56e89e50d3 FindMatlab: simplify several if()-constructs
51bcdeb17f Tests: simplify checks for Matlab variables being set

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3472
2019-06-25 07:15:33 -04:00
Brad King
92351fe7cd Merge topic 'find_matlab_exact'
2454fe84f5 FindMatlab: Support EXACT versions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Raffi Enficiaud <raffi.enficiaud@free.fr>
Merge-request: !3460
2019-06-25 07:07:29 -04:00
Robert Maynard
39c572c9c9 FindMPI: Updated to use INTERFACE_LINK_OPTIONS 2019-06-24 16:45:44 -04:00
Rolf Eike Beer
56e89e50d3 FindMatlab: simplify several if()-constructs 2019-06-24 18:33:48 +02:00
Marc Chevrier
9201908ca5 FindPython: add Python_FIND_ABI hint.
This variable will enable to specify will ABIs will be searched.
2019-06-24 12:00:21 +02:00
Stefan Lietzau
2454fe84f5 FindMatlab: Support EXACT versions
If an exact version is requested, don't pick the latest matlab version but the one matching
the requested version.

Fixes: #19155
2019-06-24 09:27:39 +02:00
Brad King
cecf7e61c4 Merge topic 'BundleUtilities-cleanup'
8d59ebb704 GetPrerequisites: use CMAKE_OBJDUMP if it is set
e33f4cb0cb BundleUtilities: use if(... IN_LIST ...)
6695383dd5 BundleUtilities: remove needless variable expansions in if() arguments
d5333c0923 BundleUtilities: simplify inclusion of GetPrerequisites

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3447
2019-06-20 11:43:51 -04:00
Brad King
5773f12d84 Merge topic 'android-pie-cmp0083'
9e99a95c7d Android: ensure PIE behavior is consistent regardless CMP0083 policy

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3459
2019-06-19 08:22:17 -04:00
Brad King
00ad0b9d12 Merge branch 'android-pie-cmp0083' into release-3.15
Merge-request: !3459
2019-06-19 08:20:35 -04:00
Marc Chevrier
9e99a95c7d Android: ensure PIE behavior is consistent regardless CMP0083 policy
In commit c4b4d8b3a6 (POSITION_INDEPENDENT_CODE: Manage link flags for
executables, 2018-10-02, v3.14.0-rc1~395^2) we accidentally removed our
Android-specific logic for PIE under the CMP0083 OLD behavior.  Restore
it and also implement Android-specific logic for CMP0083 NEW behavior.

Fixes: #19393
2019-06-19 08:12:45 -04:00
Brad King
1ca4be5d90 Merge branch 'FindMPI-imported-link-flags' into release-3.15
Merge-request: !3449
2019-06-19 07:26:22 -04:00
Brad King
89e80933d6 Merge topic 'FindMPI-imported-link-flags'
f7eaa342de FindMPI: Store imported target link flags as a list instead of a string

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3449
2019-06-19 07:26:04 -04:00
Robert Maynard
f7eaa342de FindMPI: Store imported target link flags as a list instead of a string
We already use the `separate_arguments` `NATIVE_COMMAND` mode to parse
command-line strings into lists in several other places.

Fixes: #18897
2019-06-19 07:25:05 -04:00
Brad King
a5d4457083 Merge topic 'FindCUDA-more-libs'
421be81413 FindCUDA: Add nvToolsExt and OpenCL libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3456
2019-06-19 07:22:50 -04:00
Brad King
7c7c8a01c5 Merge topic 'FindBoost-component'
830b332f32 FindBoost: Add tests for legacy variables
0dd6772a89 FindBoost: Add legacy variables and targets for compatibility
e4181eeaf2 FindBoost: Don't overwrite Boost_${_comp}_FOUND
4cb652e1d3 Tests.RunCMake.FindBoost: Fix example BoostConfig
7251d54bd1 Tests.FindBoost: Don't use BoostConfig in MODULE test

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3438
2019-06-19 07:21:02 -04:00
Rolf Eike Beer
8d59ebb704 GetPrerequisites: use CMAKE_OBJDUMP if it is set 2019-06-19 07:14:31 +02:00
Rolf Eike Beer
e33f4cb0cb BundleUtilities: use if(... IN_LIST ...) 2019-06-19 07:14:25 +02:00
Eyal Rozenberg
421be81413 FindCUDA: Add nvToolsExt and OpenCL libraries
Find these libraries with CUDA 5 and above.

Fixes: #19386
2019-06-18 08:56:34 -04:00
Brad King
65fc109dc6 Merge branch 'FindBoost-component' into release-3.15
Merge-request: !3438
2019-06-18 08:37:52 -04:00
Alexander Grund
0dd6772a89 FindBoost: Add legacy variables and targets for compatibility
This allows future BoostConfig to NOT define those and users relying on
them use the newer FindBoost of newer CMake versions
2019-06-18 08:28:38 -04:00
Alexander Grund
e4181eeaf2 FindBoost: Don't overwrite Boost_${_comp}_FOUND
Is set in Boost >= 1.71 so don't overwrite it
2019-06-18 08:25:14 -04:00
Brad King
0a10422418 Merge topic 'cxx_lambda_init_captures_document_why_not_supported_on_gcc48'
63bf207cd6 CompileFeatures: document why lambda_init_captures requires GCC 4.9

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3452
2019-06-18 07:59:46 -04:00
Brad King
7af2dedc08 Merge topic 'implicit_lapack_library'
68dcbeee01 FindLAPACK: Test for implicitly linked LAPACK libraries

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3451
2019-06-18 07:58:48 -04:00
Rolf Eike Beer
6695383dd5 BundleUtilities: remove needless variable expansions in if() arguments 2019-06-17 17:49:31 +02:00
Rolf Eike Beer
d5333c0923 BundleUtilities: simplify inclusion of GetPrerequisites 2019-06-17 17:49:31 +02:00
Robert Maynard
63bf207cd6 CompileFeatures: document why lambda_init_captures requires GCC 4.9 2019-06-17 09:20:03 -04:00
Jakub Benda
68dcbeee01 FindLAPACK: Test for implicitly linked LAPACK libraries
Apply the change from commit 5b8f69ebe9 (FindBLAS: Detect implicitly
linked BLAS library, 2018-08-28, v3.13.0-rc1~150^2~2), to FindLAPACK
also.  Typically both BLAS and LAPACK are provided the same way,
e.g. in a Cray Compiler Environment.
2019-06-17 08:56:05 -04:00