Commit Graph

7644 Commits

Author SHA1 Message Date
Brad King c2f119310f Merge topic 'FindwxWidgets-fix-flag-parse'
a7a0bf86 FindwxWidgets: Fix parsing of cxxflags when paths contain -D or -I

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !975
2017-06-20 08:59:40 -04:00
Brad King 7d83b8010e Merge topic 'curses-form-advanced'
8b53dee2 FindCurses: mark CURSES_FORM_LIBRARY as advanced

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !978
2017-06-20 08:58:39 -04:00
Thierry Crozat a7a0bf861a FindwxWidgets: Fix parsing of cxxflags when paths contain -D or -I
Use proper command-line parsing rather than accidentally matching
content in the middle of paths that looks like flags.

Fixes: #16986
2017-06-19 13:56:09 -04:00
Brad King 622b4dd785 Merge topic 'vs_csharp_fix_win32manifest_param'
ec7b3af7 Vs: remove /nowin32manifest from C# flags to enable default VS behavior

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !969
2017-06-19 11:27:30 -04:00
Brad King 7c369ebf03 Merge topic 'FindHDF5-parallel-from-wrapper'
8b9d8c4d FindHDF5: Fix parallel detection when primary compiler is an HDF5 wrapper

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !974
2017-06-19 11:27:10 -04:00
Daniel Pfeifer 8b53dee296 FindCurses: mark CURSES_FORM_LIBRARY as advanced 2017-06-17 15:13:50 +02:00
Chuck Atkins 8b9d8c4ddc FindHDF5: Fix parallel detection when primary compiler is an HDF5 wrapper
This is covering a different use case where your primary compilers are
HDF5 wrappers, as is the case when using the Cray Programming
Environment. The existing code tries to query the compiler using options
only available to h5cc and friends, which doesn't work when your wrapper
is not h5cc, as is the case with the CrayPE. This change instead pulls
strings out of a test binary when testing for "is your regular compiler
an HDF5 wrapper" while the "query wrapper for options" is reserved for
the "I found the hdf5 wrappers but they're not your main compiler" mode.
2017-06-16 11:40:02 -04:00
Michael Stürmer ec7b3af7e7 Vs: remove /nowin32manifest from C# flags to enable default VS behavior
if /nowin32manifest is specified, it will be preferred over any occurring
/win32manifest:<file> parameter

Fixes: #16969, #16970
2017-06-16 09:33:06 +02:00
Brad King aa944c88e3 Check*CompilerFlag: Rewrite documentation of these modules
Format with modern markup.  Clarify that the setting of
`CMAKE_REQUIRED_DEFINITIONS` is temporary.  Add a note warning
about contamination of the checks by `CMAKE_<LANG>_FLAGS`.

Issue: #16973
2017-06-15 13:49:35 -04:00
Brad King 2afc4bf608 Merge topic 'UseSWIG-avoid-dllimport-repeat'
76a0286b UseSWIG: Add `-dllimport` only if not already specified

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !958
2017-06-15 10:20:08 -04:00
Brad King d3b981ab3e Merge topic 'ipo-per-lang'
ba247cca IPO: Consider support for each language separately

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !964
2017-06-15 10:05:02 -04:00
Brad King ba247ccaba IPO: Consider support for each language separately
We only define `INTERPROCEDURAL_OPTIMIZATION` behavior for C, CXX, and
Fortran languages.  Do not try to enable support for other languages.
Furthermore, each language builds with a different compiler, so check
for support by CMake and the compiler for each language independently.

Fixes: #16944
2017-06-14 10:36:57 -04:00
Robert Langlois 76a0286b1d UseSWIG: Add -dllimport only if not already specified
SWIG fails with a redefined macro error when `-dllimport` is specified
more than once.  One case where you would want to specify your own
dllimport is when using SWIG with netstandard2.0.  .NET Core does not
search for shared library like Mono or .NET, so you need a fully
qualified shared library name.
2017-06-13 18:07:32 -07:00
Brad King 9203aff851 Merge topic 'android-unified-headers'
3d00be13 Android: Add support for unified headers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !956
2017-06-13 09:27:17 -04:00
Brad King 5f704d992d Merge topic 'doc-pkgconfig-list'
70a6cb70 FindPkgConfig: mention that variables will be ;-lists
6610fdbe FindPkgConfig: fix confusing indentation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !957
2017-06-13 09:20:34 -04:00
Brad King 087b8ccda9 Merge topic 'cuda-dlink-no-deprecated-gpu'
7368ade2 CUDA: When linking device code suppress CUDA 8.0+ deprecation warnings

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !951
2017-06-13 09:18:19 -04:00
Brad King fb99b0b87b Merge branch 'cuda-dlink-no-deprecated-gpu' into release-3.9 2017-06-13 09:17:06 -04:00
Robert Maynard 7368ade250 CUDA: When linking device code suppress CUDA 8.0+ deprecation warnings
The CUDA compiler automatic deprecation warnings are pure noise when
doing device linking, and should be suppressed to reduce the amount of
confusion from users.
2017-06-13 09:15:19 -04:00
Brad King 70ec0f2ad1 Merge branch 'doc-pkgconfig-list' into release-3.9 2017-06-12 16:24:50 -04:00
Rolf Eike Beer 70a6cb70f6 FindPkgConfig: mention that variables will be ;-lists 2017-06-12 22:03:20 +02:00
Rolf Eike Beer 6610fdbed2 FindPkgConfig: fix confusing indentation 2017-06-12 22:03:20 +02:00
Brad King 3d00be13ee Android: Add support for unified headers
The unified headers are preferred as of NDK r15, so use them by default
if available and provide an option to use the deprecated headers.

Inspired-by: Florent Castelli <florent.castelli@gmail.com>
Fixes: #16584
2017-06-12 11:47:30 -04:00
Brad King f6ed92280c Merge topic 'android-standalone-no-sysroot-include'
22f8a465 Android: Do not pass sysroot include for standalone toolchain

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !952
2017-06-12 10:23:22 -04:00
Brad King 637ff39d45 Merge topic 'android-standalone-unified-api-level'
5f93bf78 Android: Detect API version of standalone toolchain with unified headers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !950
2017-06-12 10:23:06 -04:00
Brad King 0cb8730c0b Merge topic 'cpack-freebsd-pkg'
2042cae9 CPack-FreeBSD: add a generator for FreeBSD pkg(8)

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !693
2017-06-12 10:21:42 -04:00
Adriaan de Groot 2042cae9a5 CPack-FreeBSD: add a generator for FreeBSD pkg(8)
Adds an option CPACK_ENABLE_FREEBSD_PKG to allow CPack to look
for FreeBSD's libpkg / pkg(8). If this is set and the libpkg
headers and library are found (which they will be, by default,
on any FreeBSD system), then add a FreeBSD pkg(8) generator.

The FreeBSD package tool pkg(8) uses tar.xz files (.txz) with two
metadata files embedded (+MANIFEST and +COMPACT_MANIFEST).
This introduces a bunch of FreeBSD-specific CPACK_FREEBSD_PACKAGE_*
variables for filling in the metadata; the Debian generator does
something similar. Documentation for the CPack CMake-script is styled
after the Debian generator.

Implementation notes:
 - Checks for libpkg -- the underlying implementation for pkg(8) --
   and includes FreeBSD package-generation if building CMake on
   a UNIX host. Since libpkg can be used on BSDs, Linux and OSX,
   this potentially adds one more packaging format. In practice,
   this will only happen on FreeBSD and DragonflyBSD.
 - Copy-paste from cmCPackArchiveGenerator to special-case
   the metadata generation and to run around the internal
   archive generation: use libpkg instead.
 - Generating the metadata files is a little contrived.
 - Most of the validation logic for package settings is in
   CPackFreeBSD.cmake, as well as the code that tries to re-use
   packaging settings that may already be set up for Debian.
 - libpkg has its own notion of output filename, so we have
   another contrived bit of code that munges the output file
   list so that CPack can find the output.
 - Stick with C++98.
2017-06-10 07:53:59 -04:00
Brad King a131316a95 Merge branch 'android-standalone-no-sysroot-include' into release-3.9 2017-06-09 16:42:13 -04:00
Brad King 22f8a465d7 Android: Do not pass sysroot include for standalone toolchain
The change in commit v3.8.0-rc1~60^2 (Android: Pass sysroot include
directory explicitly, 2017-01-20) does not make sense when compiling
with a standalone toolchain which is tied to a single API version.
Drop the explicit include directory so that the compiler uses its
default system include order.

Fixes: #16954
2017-06-09 16:28:32 -04:00
Brad King f83d3e3f2c Merge branch 'android-standalone-unified-api-level' into release-3.9 2017-06-09 14:20:09 -04:00
Brad King 5f93bf787d Android: Detect API version of standalone toolchain with unified headers
A standalone toolchain with unified headers keeps the `__ANDROID_API__`
macro in the `bin/clang` launcher instead of in `api-level.h`.

Issue: #16954
2017-06-09 14:19:52 -04:00
Brad King fcbecbd2af FindHTMLHelp: Use PATH_SUFFIXES to search under Program Files
The find commands already know how to search in variants of the
Program Files folders on Windows.  Use PATH_SUFFIXES to tell them
under what directory within Program Files to find htmlhelp.

Fixes: #16950
2017-06-09 11:13:32 -04:00
Brad King 20df0bcd70 Merge topic 'sdcc-simplify-link-flags'
a0436a2f SDCC: Remove superfluous whitespace from link line
dcf559d0 SDCC: Do not explicitly ask linker to generate Intel Hex files

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !942
2017-06-09 10:34:42 -04:00
Brad King 522c92d752 FindDoxygen: Create imported targets at most once in a given scope
The imported targets added by commit v3.9.0-rc1~55^2 (Improve Doxygen
support, 2017-04-10) need to be guarded against duplicate creation on
multiple inclusion.
2017-06-09 10:03:26 -04:00
Reto Schneider a0436a2f61 SDCC: Remove superfluous whitespace from link line 2017-06-08 13:19:49 -04:00
Reto Schneider dcf559d060 SDCC: Do not explicitly ask linker to generate Intel Hex files
The `--out-fmt-ihx` option added by commit v2.6.0~1253 (...use
--out-fmt-ihx to enforce .ihx files, 2007-08-15) may interfere with
options requested by the user.  Also, when no linker output is
specified, SDCC outputs Intel Hex by default anyway.
2017-06-08 13:18:28 -04:00
Konstantin Podsvirov 893ee1b17c FindDoxygen: Restore DOXYGEN_DOT_FOUND variable
The changes in commit v3.9.0-rc1~55^2 (Improve Doxygen support,
2017-04-10) accidentally dropped this variable from its compatibility
mode.
2017-06-07 12:51:06 -04:00
Brad King 2d3d88f3bb Merge topic 'GoogleTest-disabled-tests'
92bbb706 GoogleTest: Add support for disabled tests

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Craig Scott <craig.scott@crascit.com>
Merge-request: !920
2017-06-05 10:16:39 -04:00
Chuck Atkins 92bbb70695 GoogleTest: Add support for disabled tests
Fixes: #10612
2017-06-05 10:11:08 -04:00
Brad King 860db083ca Merge topic 'add-common-record-features-macros'
3c1ecb52 Intel: Fix missing C std default for 12.0 <= ver < 12.1
f70b0bb3 SunPro: Make sure all known versions get CXX98 defaults
220ede74 GNU: Fix language defaults for 3.4
a40e6ba8 Clang: Fix language defaults for 2.1
9b112a84 Compilers: Port to use default cmake_record_lang_compile_features macros
37221529 MSVC: Add empty definitions for std compile options
e556f1b9 CompileFeatures: Makes tests work with meta-feature only
20ffa147 Tests: Allow test macro to take no executable arguments
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !833
2017-06-01 13:40:47 -04:00
Chuck Atkins 3c1ecb5214 Intel: Fix missing C std default for 12.0 <= ver < 12.1 2017-05-31 13:09:49 -04:00
Chuck Atkins f70b0bb365 SunPro: Make sure all known versions get CXX98 defaults 2017-05-31 13:09:42 -04:00
Silvio Traversaro 78841f27e3 FindGSL: recognize libraries name with debug postfix as debug libraries
This modification is necessary if the GSL libraries are installed
in an installation layout without Release and Debug subdirectories,
for example when installed by vcpkg .
2017-05-31 15:01:49 +02:00
Chuck Atkins 220ede74ff GNU: Fix language defaults for 3.4 2017-05-30 09:35:06 -04:00
Chuck Atkins a40e6ba88d Clang: Fix language defaults for 2.1 2017-05-30 09:35:06 -04:00
Chuck Atkins 9b112a848a Compilers: Port to use default cmake_record_lang_compile_features macros 2017-05-30 09:34:36 -04:00
Chuck Atkins 37221529c7 MSVC: Add empty definitions for std compile options
There are no specific options for MSVC to set language standards, but
set them as empty strings anyways so the feature test infrastructure
can at least check to see if they are defined.
2017-05-29 13:51:54 -04:00
Chuck Atkins 5bb7429166 Compilers: Add default cmake_record_{c,cxx}_compile_features macros
Add default implementations for the cmake_record_lang_compile_features
macros.  All implementations of this are the same so it can be safely
factored out to a common implementation.
2017-05-29 12:33:42 -04:00
Brad King d375618921 Merge topic 'sunpro-std-flags'
370d0d25 SunPro: update flags used for CMake itself
f1f21e30 SunPro: set -library=stlport as standard compile option for C++98
9316120c SunPro: add standard compile option for C++03
783fbb77 Tests: Compile entire Plugin test with the same language standard

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !879
2017-05-28 09:22:33 -04:00
Brad King ff1563199c Merge topic 'intel-std-flags'
fc51b92c Intel: avoid variables in language standard flags

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !894
2017-05-28 09:21:43 -04:00
Brad King f9ea6247c1 Merge topic 'FindBoost-use-IN_LIST'
cc329a01 FindBoost: Simplify search in lists.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !750
2017-05-28 09:12:04 -04:00