5631 Commits

Author SHA1 Message Date
Evangelos Foutras
802d0aa0b0 FindRuby: Fix output check in _RUBY_CONFIG_VAR
Since commit v2.8.8~173^2 (FindRuby: clean up querying variables from
Ruby, 2012-02-17) we query RbConfig::CONFIG first and, if the command
fails or its output equates to a false constant, then fall back to
querying Config::CONFIG.

Due to the above, an error condition exists with Ruby 2.2.0; when
querying RbConfig::CONFIG['TEENY'], the output of '0' will be discarded
since it matches the false constant '0'.

In previous versions this wasn't a problem, but Ruby 2.2 has completely
removed Config::CONFIG. This causes RUBY_VERSION_PATCH to be set to an
empty string and the Ruby version to be detected as '2.2.' (instead of
'2.2.0').

Fix the output check to explicitly look for an empty string before using
the fallback query method. (Someone more familiar with Ruby might be
able to deem the fallback as unnecessary and fully remove it.)
2015-01-11 14:49:51 -05:00
Stephen Kelly
00f66a0451 Record compile features for GNU on Apple.
Tested with GNU 4.8 binary (bottle) from homebrew, and assumed to work
with the others.
2015-01-11 18:34:25 +01:00
Brad King
56324568cf Merge topic 'FindCUDA.cmake/UseCMAKE_CXX_FLAGS_separableCompilation'
b4e54f9b FindCUDA: Add relevant CMAKE_{C,CXX}_FLAGS for separable compilation
2015-01-11 12:00:28 -05:00
Brad King
775fb2e0b0 Merge topic 'feature_record_msvc'
2d738ce3 Help: Add notes for topic 'feature_record_msvc'
f73718c9 Features: Enable writing of MSVC compiler feature header.
64c30bdc Features: Record for MSVC C++ 2015 and MSVC C 2010-2015.
225c0ef8 Features: Record for MSVC 2010-2013.
2015-01-11 12:00:24 -05:00
Robert Maynard
f73718c9b8 Features: Enable writing of MSVC compiler feature header.
Notes:
VS2015 and above are the only MSVC versions to support cxx_final, so remove
usages from the tests, and instead only test for cxx_override.

VS2012 and above to conform to cxx_decltype_incomplete_return_types
proposal, but without support for auto return types the dcl.type.simple
example in the proposal doesn't compile.

VS2013 and above to conform to the updated cxx_contextual_conversions proposal,
but VS2010 and above pass the test.

Compilers such as MSVC have no explicit flags to enable C++11 mode,
it just is always on. So only run the link tests with compilers that require
a flag to specify the language version.
2015-01-11 11:32:36 -05:00
Stephen Kelly
3ad893b5c2 Features: Record for historical Xcode clang versions. 2015-01-11 16:52:27 +01:00
Stephen Kelly
98965fb12d Features: Record dialect flags for AppleClang 4.0+. 2015-01-11 16:52:05 +01:00
Robert Maynard
64c30bdc48 Features: Record for MSVC C++ 2015 and MSVC C 2010-2015.
Initializer lists are only properly supported in 2015 and above.
Previous Visual Studio releases said they supported initializer lists
but silently produced bad code.
2015-01-11 16:47:58 +01:00
Stephen Kelly
225c0ef88b Features: Record for MSVC 2010-2013. 2015-01-11 16:47:58 +01:00
Brad King
4729547a5b XL: Fix link flags for executables on Linux with XL compilers
Use "-Wl,-export-dynamic" with XL to match the "-rdynamic" flag used
with GNU-like compilers.
2015-01-10 12:03:19 -05:00
Brad King
7ecbade887 Merge topic 'WCDH-thread_local-portability'
998e9c10 WCDH: Add feature portability for thread_local.
2015-01-08 15:04:25 -05:00
Brad King
44b2dcb2e0 Merge topic 'record-GNU-5-features'
998ed4ca Features: Record cxx_variable_templates for GNU 5.0.
2015-01-08 14:58:03 -05:00
Brad King
f1b0340d6c Merge topic 'FindSDL-quoting'
67516fb5 FindSDL: Allow if() to dereference SDL_INCLUDE_DIR for matching
2015-01-08 14:57:57 -05:00
Brad King
038caf38b2 Merge topic 'find-msmpi'
ab4d1d07 FindMPI: MSMPI changed the subdirectories it uses
82724394 FindMPI: add more search paths for MSMPI
2015-01-08 14:57:55 -05:00
Brad King
35ea14050e Merge topic 'FindIce-CMP0054'
cbaf0802 FindIce: Port to work with CMP0054 NEW behavior
2015-01-08 14:57:53 -05:00
Brad King
04e880fd33 Merge topic 'FindCUDA-cross'
d5846eb1 FindCUDA: Do not assume CMAKE_SYSTEM_PROCESSOR is set
2015-01-08 14:57:47 -05:00
Brad King
ac16b88e50 Merge branch 'FindSDL-quoting' into release 2015-01-08 14:48:33 -05:00
Rolf Eike Beer
67516fb57e FindSDL: Allow if() to dereference SDL_INCLUDE_DIR for matching
Otherwise the syntax is incorrect when the variable is empty.
2015-01-08 14:47:39 -05:00
Brad King
f00e44a9f7 Merge branch 'FindCUDA-cross' into release 2015-01-08 14:43:53 -05:00
Brad King
13a2154c38 Merge branch 'FindIce-CMP0054' into release 2015-01-08 14:43:42 -05:00
Mark Abraham
d5846eb153 FindCUDA: Do not assume CMAKE_SYSTEM_PROCESSOR is set
CMAKE_SYSTEM_PROCESSOR is not guaranteed to be defined (per
http://www.cmake.org/Wiki/CMake_Cross_Compiling), and when cross
compiling where it happens to be undefined, this module was broken.

Reviewed-by: Rolf Eike Beer <eike@sf-mail.de>
2015-01-08 14:39:16 -05:00
Rolf Eike Beer
cbaf0802a5 FindIce: Port to work with CMP0054 NEW behavior
Do not quote if() arguments meant to test variable definitions.
2015-01-08 14:13:48 -05:00
James Bigler
b4e54f9b8c FindCUDA: Add relevant CMAKE_{C,CXX}_FLAGS for separable compilation
Previously only the CMAKE_{C,CXX}_FLAGS_<CONFIG> flags were inspected
for relevant flags when compiling the intermediate link file.  We need
to also consider the configuration agnostic flags, CMAKE_{C,CXX}_FLAGS
as well.
2015-01-06 16:28:05 -07:00
Ben Boeckel
ab4d1d07e4 FindMPI: MSMPI changed the subdirectories it uses 2015-01-06 12:59:07 -05:00
Ben Boeckel
827243942c FindMPI: add more search paths for MSMPI
Also comment what the various search paths are for.
2015-01-06 12:58:07 -05:00
Stephen Kelly
998ed4ca0a Features: Record cxx_variable_templates for GNU 5.0. 2015-01-01 22:00:49 +01:00
Stephen Kelly
998e9c1094 WCDH: Add feature portability for thread_local.
AppleClang does not support the cxx_thread_local feature, even
though it is based on a Clang version which does support the
feature.

 http://stackoverflow.com/a/23850891/2428389

A possible reason for that is that thread_local might be used as
a variable in existing Apple SDK headers.

Extend the WriteCompilerDetectionHeader module to generate a define
for that feature with portability fallbacks.  For the avoidance of
making it easy to write code which looks correct but which has odd
runtime behavior, don't set the define symbol at all if no
equivalent keyword is known.
2015-01-01 18:20:10 +01:00
Brad King
be1109d811 Oracle/Sun: Fix Fortran preprocessor rule generation
The SunPro Fortran compiler uses "-F" instead of "-E" to request
preprocessing.  The output does not go to stdout so use "-o" to
specify the output file.

This fixes the guess originally made by commit b6b37e30 (Makefile: Add
assembly and preprocessed targets for Fortran, 2014-11-05).
2014-12-23 10:15:27 -05:00
Christoph Grüninger
07a3f9ad17 FindLATEX: Add components handling 2014-12-23 09:11:31 -05:00
Brad King
3b3da0d39e Merge topic 'CPackComponent-docs-fix'
64016393 Help: Small fixes in CPackComponent documentation
2014-12-23 08:53:54 -05:00
Brad King
396a008ff0 Merge topic 'AppleClang-5.1-features'
bb83cdaa Help: Add notes for topic 'AppleClang-5.1-features'
bd6b42c1 Features: Record for AppleClang 5.1
b341799e Tests: Fix RunCMake.CompileFeatures test NonValidTarget2 case
2014-12-23 08:53:52 -05:00
Daniele E. Domenichelli
6401639310 Help: Small fixes in CPackComponent documentation 2014-12-22 17:23:46 +01:00
Stephen Kelly
bd6b42c186 Features: Record for AppleClang 5.1
Apple's Clang 5.1 already supports most of the C and C++ features CMake
enumerates.
2014-12-22 10:44:41 -05:00
Kelly Thompson
1b28e3b28b FindGSL: Add module to find the GNU Scientific Library 2014-12-17 10:59:48 -05:00
Brad King
1b3ab3318d Merge topic 'cmp0054-warnings-extproj'
a300d0ff ExternalProject: avoid CMP0054 warnings
2014-12-15 11:06:57 -05:00
Brad King
b9e0babea9 Merge topic 'extproj-extra-newlines'
480e6029 ExternalProject: remove extra newlines from log messages
2014-12-15 11:06:54 -05:00
Brad King
4d2c629045 Merge topic 'FindMPI-parse-Xlinker-flags'
a0792c48 FindMPI: Extract -Xlinker options
2014-12-15 11:06:42 -05:00
Ben Boeckel
480e60298f ExternalProject: remove extra newlines from log messages
message() already adds a newline.
2014-12-12 18:42:33 -05:00
Ben Boeckel
a300d0ff0f ExternalProject: avoid CMP0054 warnings
Found where ${command} is "make" which is a local variable.
2014-12-12 18:30:00 -05:00
Brad King
3cc84d18d4 Merge topic 'find-msmpi'
17a846ac FindMPI: search for msmpi's mpiexec as well
2014-12-12 11:16:06 -05:00
Brad King
f6c8d3d82f Merge topic 'FindQt4-fix-major-version-mismatch'
009c1865 FindQt4: Fix handling of QT_VERSION_MAJOR mismatch
2014-12-12 11:16:02 -05:00
Alin Marin Elena
a0792c4851 FindMPI: Extract -Xlinker options
Extend the regex that mathces -Wl, linker options to match -Xlinker too.
These are used by Intel MPI and perhaps others.
2014-12-12 09:53:43 -05:00
Ben Boeckel
17a846ac3e FindMPI: search for msmpi's mpiexec as well 2014-12-11 17:26:06 -05:00
Brad King
66f587e7dc Merge topic 'FindLATEX-use-FPHSA'
e0104063 FindLATEX: Use FPHSA to report status in standard way
2014-12-09 10:54:56 -05:00
Daniel Scharrer
009c1865dc FindQt4: Fix handling of QT_VERSION_MAJOR mismatch
Fix capitalization of Qt4_FOUND variable when setting it to false in
this case.  This caused find_package(Qt4) to appear successful when it
was not.  Note that the legacy QT4_FOUND variable is unconditionally
overwritten at the end of the file with the value of Qt4_FOUND.
2014-12-09 10:43:02 -05:00
Brad King
413ce02895 Merge topic 'ExternalProject_TEST_EXCLUDE_FROM_MAIN'
636f0c1d ExternalProject: Add TEST_EXCLUDE_FROM_MAIN option
2014-12-08 09:07:10 -05:00
Brad King
c2b8874289 Merge topic 'FindMPI-Intel-5.0.1'
7626c8dc FindMPI: Workaround Intel MPI 5.0.1 exit code problem (#15182)
f5ede300 FindMPI: Factor out compiler wrapper execution into helper
2014-12-08 09:07:06 -05:00
Brad King
90070a65d2 Merge topic 'try_compile-link-flags'
88eb5824 try_compile: Pass linker flags into test project (#14066)
a4f9b6f0 CMakeDetermineCompilerABI: Use normal linker flags in ABI project
2014-12-08 09:07:04 -05:00
Christoph Grüninger
e01040636d FindLATEX: Use FPHSA to report status in standard way
Otherwise LaTeX was marked as not found in the summary.
Also revise the documentation.
2014-12-05 23:42:48 +01:00
Brad King
fad59f2dd1 Merge topic 'xerces-rename'
27141eed Modules: Rename FindXerces to FindXercesC
2014-12-05 14:02:11 -05:00