Commit Graph

33788 Commits

Author SHA1 Message Date
Robert Maynard 9cf5b98d54 CUDA: Prefer environment variables CUDACXX and CUDAHOSTCXX. 2016-11-14 16:40:49 -05:00
Robert Maynard a5e806b3f5 CUDA: Add support for CMAKE_CUDA_COMPILE_OPTIONS_VISIBILITY 2016-11-14 16:40:49 -05:00
Robert Maynard d038559e49 CUDA: Add separable compilation support to the makefile generator. 2016-11-14 16:40:49 -05:00
Robert Maynard 43ce4414c4 CUDA: Add separable compilation support to the ninja generator. 2016-11-14 16:40:48 -05:00
Robert Maynard 4b31609710 CUDA: Add support for the CUDA_SEPARABLE_COMPILATION target property 2016-11-14 16:40:48 -05:00
Robert Maynard ae05fcc63f CUDA: Add LinkLineComputer that computes cuda dlink lines. 2016-11-14 16:40:48 -05:00
Robert Maynard 115269a86c CUDA: Refactor cmLinkLineComputer to allow for better derived children.
Derived children of cmLinkLineComputer need to be able to use member
variables such as OutputConverter and the previously private methods.
2016-11-14 11:36:45 -05:00
Robert Maynard 5dec403103 CUDA: Refactor CMakeCUDAInformation to prepare for separable compilation. 2016-11-14 11:36:45 -05:00
Robert Maynard 5b20d0abfa CUDA: C++ compile features now enable cuda c++11 support. 2016-11-14 11:36:44 -05:00
Robert Maynard 489c52ce68 CUDA: Use the host compiler for linking CUDA executables and shared libs. 2016-11-14 11:36:44 -05:00
Robert Maynard bbaf243410 CUDA: add support for specifying an explicit host compiler. 2016-11-14 11:36:44 -05:00
Robert Maynard a92f8d9616 CUDA: Enable header dependency scanning. 2016-11-14 11:36:44 -05:00
Robert Maynard ec6ce62335 CUDA: State that cuda has preprocessor output and can generate assembly.
We can consider PTX code to be a form of assembly.
2016-11-14 11:36:44 -05:00
Robert Maynard 4f5155f6ab CUDA: We now properly perform CUDA compiler identification. 2016-11-14 11:36:43 -05:00
Robert Maynard aaeee1ca72 CUDA: CompilerId now errors out properly when passed a non CUDA compiler.
Previously we only reported an error if the compiler was a C compiler.
2016-11-14 11:36:43 -05:00
Robert Maynard bf326ebb76 CUDA: Explicitly state all source files are cuda sources.
This way you can mark a .C/.CPP files as a cuda source file and
have nvcc build it as a cuda file.
2016-11-14 11:36:43 -05:00
Robert Maynard ce4ec876ce CUDA: Add support language levels (98/11) 2016-11-14 11:36:43 -05:00
Robert Maynard f8aac21947 CUDA: Add basic CUDA language support for *NIX systems. 2016-11-14 11:36:42 -05:00
Brad King 4a4be0301b Merge topic 'swig_add_library'
a57e7630 Help: Add notes for topic 'swig_add_library'
013193d0 SwigTest: Update for swig_add_library and add lua example
ec1d585c UseSWIG: Do not set PREFIX property for SHARED and STATIC lua libraries
4c5b3c1c UseSWIG: Do not set NO_SONAME property for SHARED and STATIC libraries
d0a9d8bb UseSWIG: Add swig_add_library macro.
2016-11-14 09:44:17 -05:00
Kitware Robot bfa8831f02 CMake Nightly Date Stamp 2016-11-14 00:01:10 -05:00
Kitware Robot 0120e474a3 CMake Nightly Date Stamp 2016-11-13 00:01:03 -05:00
Kitware Robot f02b67787d CMake Nightly Date Stamp 2016-11-12 00:01:07 -05:00
Brad King a57e76301b Help: Add notes for topic 'swig_add_library' 2016-11-11 10:56:25 -05:00
Brad King 8b33507aba Merge topic 'cdash_version_check'
d3633731 Do not query CDash for version
f725b20b Update tests that expect uncompressed output
2016-11-11 10:44:24 -05:00
Brad King a0b159685e Merge topic 'vs_targets_file_as_library'
883bd34a VS: Treat libraries ending in `.targets` as msbuild imports
2016-11-11 10:44:20 -05:00
Brad King 5733d3fbb9 Merge topic 'fuchsia-platform'
3cfad71c Add Fuchsia platform module
2016-11-11 10:44:17 -05:00
Brad King 6338652a87 Merge topic 'ctest_memcheck_defect_count'
3a523eec ctest_memcheck: Add DEFECT_COUNT option to capture defect count
2016-11-11 10:44:13 -05:00
Brad King 8715157c73 Merge topic 'ExternalProject-GIT_CONFIG'
2be9d85a ExternalProject: Allow passing config flags to git clone
2016-11-11 10:44:10 -05:00
Brad King 68a9fc1bca Merge topic 'intel-compile-features'
5e428389 Features: Detect Intel C++14 mode more reliably
1f848031 Features: Suppress c_static_assert test coverage on Intel <= 15
2016-11-11 10:44:07 -05:00
Brad King 3bb73a051d Merge topic 'intel-compile-features-windows-15'
be732739 Features: Fix standards and features for Intel 15 on Windows
2016-11-11 10:44:04 -05:00
Brad King f82c2d63ec Merge branch 'release' 2016-11-11 10:19:03 -05:00
Brad King 5cfc2e926a CMake 3.7.0 v3.7.0 2016-11-11 09:24:18 -05:00
Daniele E. Domenichelli 013193d0b0 SwigTest: Update for swig_add_library and add lua example 2016-11-11 08:14:10 +01:00
Daniele E. Domenichelli ec1d585c43 UseSWIG: Do not set PREFIX property for SHARED and STATIC lua libraries 2016-11-11 08:14:10 +01:00
Daniele E. Domenichelli 4c5b3c1cea UseSWIG: Do not set NO_SONAME property for SHARED and STATIC libraries 2016-11-11 08:14:10 +01:00
Daniele E. Domenichelli d0a9d8bbe6 UseSWIG: Add swig_add_library macro.
swig_add_module does not allow to set the type for the library and
instead always create the library as MODULE.

This patch adds the new swig_add_library command with this signature:

  SWIG_ADD_LIBRARY(<name>
                   [TYPE <SHARED|MODULE|STATIC>]
                   LANGUAGE <language>
                   SOURCES <file>...
                   )

The swig_add_module is deprecated in favour of swig_add_library.

Closes: #16415
2016-11-11 08:13:47 +01:00
Kitware Robot a21f74767c CMake Nightly Date Stamp 2016-11-11 00:01:04 -05:00
Brad King 5e42838961 Features: Detect Intel C++14 mode more reliably
The `__cplusplus` macro is not defined to the language level reliably.
When simulating MSVC it is always set to `1`.  When simulating GCC it is
set to the lower value of the current language level and the maximum
level supported by the simulated version of GCC (from observation).

For MSVC we already used a combination of `__INTEL_CXX11_MODE__` and
`__cpp_aggregate_nsdmi` to detect C++14 mode.  Extend this for general
use by removing the condition on `_MSC_VER`.
2016-11-10 15:37:05 -05:00
Brad King 1f8480312e Features: Suppress c_static_assert test coverage on Intel <= 15
It works on some pre-15.0.2 versions but not others.
2016-11-10 15:29:25 -05:00
Brad King be73273952 Features: Fix standards and features for Intel 15 on Windows
The Intel 15 compiler for Windows does not support the same set of
standards and features as the same version for other platforms.
2016-11-10 12:54:06 -05:00
Brad King fd8e6b1eda Merge branch 'release' 2016-11-10 08:36:13 -05:00
Brad King de53eb18ab Merge topic 'import-librhash'
cd8a57ae Add option to build CMake against a system librhash
71180fc8 FindLibRHash: Add module to find the librhash package
3216e94c Remove unused cm_sha2 infrastructure
5420278d Port hash computation to cmCryptoHash
9a596b33 cmCryptoHash: Re-implement in terms of librhash
47f91a61 cmCryptoHash: Avoid using subclasses at client sites
d0ff3e70 librhash: Port to KWIML for ABI and integer type information
465a85fb librhash: Avoid signed left-shift overflow
fc2cb74f librhash: Implement bswap_32 as a function even in strict C90 mode
0bd333bc librhash: Implement bswap_64 even in strict C90 mode
7189d62c librhash: Use __builtin_bswap{32,64} on Clang
af7ebf8a librhash: Install COPYING file with CMake documentation
bb01f20e librhash: Disable warnings to avoid changing 3rd party code
31bb727f librhash: Build the library within CMake
53048afa librhash: Remove source fragments not needed for CMake
5cb1b345 Merge branch 'upstream-librhash' into import-librhash
...
2016-11-10 08:34:28 -05:00
Brad King 25a76df17f Merge topic 'autorcc-only-no-rebuild'
e4232b82 QtAutogen: Do not re-generate AUTORCC outputs on every build
2016-11-10 08:34:22 -05:00
Brad King cd8a57ae9b Add option to build CMake against a system librhash
Create a CMAKE_USE_SYSTEM_LIBRHASH option.
2016-11-10 08:29:38 -05:00
Brad King 71180fc8aa FindLibRHash: Add module to find the librhash package
Add it to a private source directory that is not installed so that we
can use it for building CMake itself.  This will allow it to mature
before being distributed publicly.
2016-11-10 08:29:38 -05:00
Brad King 3216e94cef Remove unused cm_sha2 infrastructure
All clients of `cm_sha2` have been ported to `cmCryptoHash`, which now
uses librhash internally.
2016-11-10 08:29:38 -05:00
Brad King 5420278dc8 Port hash computation to cmCryptoHash
Avoid using KWSys MD5 or `cm_sha2` and use the `cmCryptoHash`
abstraction instead.
2016-11-10 08:29:38 -05:00
Brad King 9a596b33bb cmCryptoHash: Re-implement in terms of librhash
Offer direct construction with an enumeration of supported algorithms.
Also expose the Initialize/Append/Finalize steps publicly and add a
FinalizeHex method.
2016-11-10 08:29:37 -05:00
Brad King 47f91a6183 cmCryptoHash: Avoid using subclasses at client sites
Use only the main `cmCryptoHash` interface.
2016-11-10 08:29:37 -05:00
Brad King d0ff3e701c librhash: Port to KWIML for ABI and integer type information 2016-11-10 08:29:37 -05:00