Commit Graph

7058 Commits

Author SHA1 Message Date
Brad King ff6a034e0b Merge topic 'FindOpenSSL-check-both'
696339a9 FindOpenSSL: Check that both CRYPTO and SSL libraries are present
2017-01-11 09:58:25 -05:00
Brad King 396e9378a8 Merge topic 'pgsql-yum'
5ffee691 FindPostgreSQL: automatically find installations from yum.postgresql.org
2017-01-11 09:58:22 -05:00
Brad King a8b576244f Merge topic 'FindBoost-1.63'
a9b93501 FindBoost: Add support for 1.63
2017-01-11 09:58:17 -05:00
Brad King 1406408e61 Merge topic 'FindGTest-fixups'
8deb913d FindGTest: add lib search path for MSVC x64 platform
eadd395a FindGTest: Fix documented GTEST_MSVC_SEARCH default value
2017-01-11 09:58:14 -05:00
Brad King 22dfda1112 Merge topic 'FindBoost-find-default'
ff91b151 FindBoost: Search official location of prebuilt binaries on Windows
2017-01-11 09:58:11 -05:00
Alex Turbov ff91b1514b FindBoost: Search official location of prebuilt binaries on Windows
Make it possible to find Boost in the default install path (`c:\boost`)
of an official prebuilt binaries installation even when `BOOST_ROOT`
has not been specified.
2017-01-10 14:21:53 -05:00
Harry Mallon 696339a9d5 FindOpenSSL: Check that both CRYPTO and SSL libraries are present
* Strawberry perl on Windows installs one that is found by the
  default finder

While at it, de-duplicate code setting `OPENSSL_LIBRARIES`.
2017-01-10 13:42:48 -05:00
Dong XiaoC 8deb913d98 FindGTest: add lib search path for MSVC x64 platform 2017-01-10 13:26:33 -05:00
Dong XiaoC eadd395a13 FindGTest: Fix documented GTEST_MSVC_SEARCH default value
Documentation updates in commit v3.5.0-rc1~124^2~2 (FindGTest: Add
imported targets and update documentation, 2015-12-10) accidentally
changed the documented default to the wrong value.  Restore the
documentation to refer to the actual default used in the implementation.
2017-01-10 13:25:59 -05:00
Roger Leigh a9b93501d4 FindBoost: Add support for 1.63 2017-01-10 13:15:34 -05:00
Rolf Eike Beer 5ffee691ee FindPostgreSQL: automatically find installations from yum.postgresql.org
In commit v3.3.0-rc1~4^2 (FindPostgreSQL: Search some more common
packaging locations) the PostgreSQL_ADDITIONAL_SEARCH_PATHS variable was
removed. This was used e.g. by osm2pgsql to be able to build on CentOS
with recent PostgreSQL versions. At least add those locations from
yum.postgresql.org, which is a more or less official location.
2017-01-10 09:52:42 -05:00
Brad King ea62999f45 Merge topic 'cpack-rpm-user-binary-spec-file-fix'
574c81e2 CPack/RPM fix - custom binary spec file handling
2017-01-10 09:34:46 -05:00
Domen Vrankar 574c81e28c CPack/RPM fix - custom binary spec file handling
Fixes #16507
2017-01-10 08:37:14 +01:00
Brad King eee51e24d2 Merge topic 'cpack-deb-package-version-override-fix'
2f4e5ed6 CPackDeb: use CPACK_DEBIAN_PACKAGE_VERSION
2017-01-09 16:27:31 -05:00
Daniel Pfeifer 2f4e5ed66d CPackDeb: use CPACK_DEBIAN_PACKAGE_VERSION 2016-12-20 14:09:20 +01:00
Daniel Carrera 4087d0ae85 PGI: Add support for Fortran with the Ninja generator
The PGI documentation says that `-Mpreprocess` "instructs the compiler
to perform cpp-like preprocessing on assembly and Fortran input source
files".  The `-E` flag causes the compiler to spit the result to stdout
instead of saving it to a file.
2016-12-16 08:33:21 -05:00
Brad King 0a9e4e08b5 Merge topic 'FindGit-fix-cross-compile'
caeb6d1d FindGit: Fix check for Windows host
2016-12-16 08:26:23 -05:00
Brad King 58dc3745ec Merge topic 'FindPythonLibs-tolerate-components'
a12d8a03 FindPythonLibs: Tolerate call with PYTHON_LIBRARY already a list
2016-12-16 08:26:16 -05:00
Brad King 4a06479874 Merge topic 'csharp_support_compiler_detection'
5c6c0344 C# support: add compiler detection for MSVC
2016-12-16 08:26:06 -05:00
José Simões caeb6d1dfb FindGit: Fix check for Windows host
When cross-compiling to or from a Windows platform we should still
find a Git for the host environment.
2016-12-15 09:57:30 -05:00
Maxime Morel 9fdad82c48 FindPNG: Fix small typo fix in module help 2016-12-15 09:38:51 -05:00
Francois Budin a12d8a03af FindPythonLibs: Tolerate call with PYTHON_LIBRARY already a list
`PYTHON_LIBRARY` may contain a list because of `SelectLibraryConfigurations`.
If it is the case, the list can be:

    optimized;<FILEPATH_TO_RELEASE_LIBRARY>;debug;<FILEPATH_TO_DEBUG_LIBRARY>

Instead of directly using the value of `PYTHON_LIBRARY` in the CMake
function `get_filename_component()`, we loop over the content of the
relevant parts of `PYTHON_LIBRARY` and `PYTHON_DEBUG_LIBRARY` whether
they are lists or not.

Suggested-by: Brad King <brad.king@kitware.com>
2016-12-15 09:34:48 -05:00
Michael Stürmer 5c6c0344d3 C# support: add compiler detection for MSVC 2016-12-15 09:16:30 -05:00
Brad King 858081c2f9 Merge topic 'cuda-implicit-libs'
e3f404fe CUDA: Implement nvcc implicit link line extraction more robustly
2016-12-14 09:52:08 -05:00
Brad King 2674818ee1 Merge topic 'GNUInstallDirs-cache-type'
53b5d634 GNUInstallDirs: Set UNINITALIZED cache properties to type PATH
c968213d GNUInstallDirs: Unify path logic into helper macros
2016-12-14 09:51:59 -05:00
Brad King e3f404fe29 CUDA: Implement nvcc implicit link line extraction more robustly
Do not assume that the implicit link line is the last line of the output
from `nvcc -v`.  Instead first find the `LIBRARIES=` line, and then look
for that content on a later line.  It appears twice.  First on a call to
`nvlink`, which we ignore.  Later it appears on the implicit link line.
Extract the latter line.  On failure, abort with a `FATAL_ERROR` so that
the user does not try to build without proper link information.

Once we have the line, parse it with `separate_arguments` using the
`UNIX_COMMAND` option just like `CMakeParseImplicitLinkInfo` already
does.  This robustly parses the command line and removes quoting.
Then extract the first argument as the host link launcher.
2016-12-13 11:01:40 -05:00
Brad King c241679956 Merge topic 'GetPrerequisites-fix-find_program-call'
1d1f29f4 GetPrerequisites: Fix call to find_program for `ri` tool
2016-12-13 08:45:50 -05:00
Roger Leigh 53b5d6345d GNUInstallDirs: Set UNINITALIZED cache properties to type PATH
Also convert the path to a cmake path
2016-12-12 22:23:26 +00:00
Roger Leigh c968213d2e GNUInstallDirs: Unify path logic into helper macros
- Unify path handling: Rather than repeat the same logic for each
  individual path create two macros which can be used throughout
  the module.
- Capitalise helpstrings to match the conventions used by the
  standard CMake properties
2016-12-12 22:22:44 +00:00
Martin Koegler 1d1f29f435 GetPrerequisites: Fix call to find_program for ri tool
`find_program` does not work with `${a};${b}` as a search path.
Use separate arguments to `PATHS`.
2016-12-12 14:27:21 -05:00
Brad King 3d3d3f9470 Merge topic 'cuda-fixups'
c1a55079 CUDA: Fix Cuda.Complex test case extern function signatures
7552d16d CUDA: Fix default compiler flag initialization
2016-12-12 14:21:33 -05:00
Brad King c7cd379179 Merge topic 'FindBoost-vs15'
c3b6b5ba FindBoost: Add support for VS 2017
2016-12-09 14:23:50 -05:00
Brad King 7552d16d1a CUDA: Fix default compiler flag initialization
Since commit v3.7.0-rc1~392^2 (Honor CMAKE_<LANG>_FLAGS[_<CONFIG>]_INIT
set in toolchain files, 2016-07-05) our convention is to initialize
compiler flag variables via `string(APPEND)` rather than `set()`.
Fix the convention for `CMAKE_CUDA_FLAGS[_<CONFIG>]_INIT`.
2016-12-09 14:19:22 -05:00
Vic Luo c3b6b5babc FindBoost: Add support for VS 2017 2016-12-08 08:20:08 -05:00
Henning Meyer e326d8cf3e CPack/DEB shlibdep options depend on file utility
Missing or missconfigured file utility should not
skip adding dependencies. Instead it should print
out a fatal error message.

Fixes #16486
2016-12-07 22:25:06 +01:00
Sebastian Holtermann 9d9c68e21a QtAutogen: Rename variable templates in config template 2016-12-06 15:59:27 +01:00
Sebastian Holtermann 48180401d3 QtAutogen: Rename config AM_RELAXED_MODE to AM_MOC_RELAXED_MODE 2016-12-06 15:59:26 +01:00
Brad King 0f37cd228e Merge topic 'FindOpenGL-imported-targets'
027ce359 FindOpenGL: Provide imported targets for GL and GLU
2016-12-06 09:26:25 -05:00
Brad King 41f1125931 Merge topic 'features-c++17'
97c1e569 Help: Add release note for C++ 17 support
85c8e652 Features: Activate C++ 17 support for AppleClang 6.1+
8084f7a6 Features: Activate C++ 17 support for Clang 3.5+
24e29d41 Features: Activate C++ 17 support for GNU 5.1+
ae1a6815 Features: Add infrastructure for C++ 17 language standard
684e4d20 Features: Make feature recording conditions more consistent
2016-12-05 10:56:32 -05:00
Brad King 76444957c1 Merge topic 'cpack-rpm-user-file-list-with-multiple-directives'
4e4b786e CPack/RPM CPACK_RPM_USER_FILELIST change release note
a5a6f61b CPackRPM now supports multiple directives in CPACK_RPM_USER_FILELIST
2016-12-05 09:23:26 -05:00
Harry Mallon a5a6f61be3 CPackRPM now supports multiple directives in CPACK_RPM_USER_FILELIST
* In older version "%dir %attr(-, root, root) foo" would put "%dir foo"
  in the final spec file.
* Also added comment to describe this and advise not not to add trailing
  slashes to directories in USER_FILELIST.
* Includes test in RunCMake CPack which now passes.
2016-12-03 20:39:05 +01:00
Brad King 027ce359ff FindOpenGL: Provide imported targets for GL and GLU
Create OpenGL::GL and OpenGL::GLU imported targets using the locations
found.

This feature was originally added by commit v3.1.0-rc1~420^2~2
(FindOpenGL: Provide imported targets for GL and GLU, 2014-05-31) but
had to be reverted by commit v3.1.0-rc3~10^2 (FindOpenGL: Revert support
for imported targets, 2014-12-01) due to issue #15267.  Since then we
added support for `IMPORTED_LIBNAME` to interface libraries, so use it
to handle the case where we have only the library name without an
absolute path.

Inspired-by: Philipp Möller <bootsarehax@googlemail.com>
Closes: #15267
2016-12-02 15:11:49 -05:00
Brad King 85c8e652b1 Features: Activate C++ 17 support for AppleClang 6.1+ 2016-12-02 11:22:47 -05:00
Brad King 8084f7a6c9 Features: Activate C++ 17 support for Clang 3.5+ 2016-12-02 11:22:46 -05:00
Brad King 24e29d4190 Features: Activate C++ 17 support for GNU 5.1+ 2016-12-02 11:22:46 -05:00
Brad King ae1a6815b6 Features: Add infrastructure for C++ 17 language standard
Issue: #16468
2016-12-02 11:22:46 -05:00
Brad King 684e4d205d Features: Make feature recording conditions more consistent
Condition all calls to `_record_compiler_features_{c,cxx}` on
`_result EQUAL 0` so that adding new language standards later does
not need to update them.  Avoid some duplicate compiler version
checks by conditioning C11 and CXX14 feature recording on the
existence of `CMAKE_{C11,CXX14}_STANDARD_COMPILE_OPTION` (whose
setting already used the version check).
2016-12-02 11:22:43 -05:00
Michał Górny dd153de4f0 CMakeDetermineASMCompiler: arg-split ASM* env var like CC
Split the arguments off of the `ASM${ASM_DIALECT}` environment variable
as is done for `CC` and other compiler variables. This fixes using CMake
when `ASM*` is used to pass additional target flags, e.g. when one uses
`ASM=${CC}`.
2016-12-02 10:00:34 -05:00
Brad King 36588f7b16 Merge topic 'pgi-macos-flags'
571721c5 PGI: Pass macOS-specific link flags directly to linker
2016-12-01 08:50:55 -05:00
Brad King 571721c562 PGI: Pass macOS-specific link flags directly to linker
The PGI compiler on macOS does not support some macOS-specific flags so
pass them through `-Wl,` to the linker directly.

Issue: #16457
2016-11-30 13:34:50 -05:00