Commit Graph

8122 Commits

Author SHA1 Message Date
Brad King
d5681e353a Merge topic 'pragma-once'
4d611868 Check*: Added include guards

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1327
2017-12-04 10:52:47 -05:00
Cristian Adam
4d611868df Check*: Added include guards 2017-12-01 13:05:02 +02:00
Brad King
c2ea729c87 Merge topic 'CMakeFindBinUtils-improve-switch'
acb4cb95 CMakeFindBinUtils: Improve switch between MSVC- and GNU-like tools

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1533
2017-11-30 07:58:15 -05:00
Brad King
21806e6f5f Merge topic 'findcuda-separable-compilation-fix'
3726ded1 FindCUDA: Add cublas device library to separable compilation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Reviewed-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1446
2017-11-30 07:55:59 -05:00
Brad King
eee4124f3a Merge topic 'findiconv-module'
95646591 FindIconv: Add the FindIconv module.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1530
2017-11-30 07:55:24 -05:00
Brad King
c5fdd66252 Merge topic 'CheckIncludeFiles-fix-src-name'
3eee3301 CheckIncludeFiles: Fix name of source file used for check

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1538
2017-11-30 07:42:45 -05:00
Brad King
3eee33012e CheckIncludeFiles: Fix name of source file used for check
In commit 7669695a74 (CheckIncludeFiles: extend to allow a LANGUAGE
argument, 2017-11-08) the file name used for the check was accidentally
left as `${var}.c`, where `var` is not a variable we define.  It was
passing tests by accidentally using just `.c` as the file name, but can
break in real projects that may leave `var` defined to something else.
The reference was taken from similar code in CheckTypeSize where the
variable names are different.  Fix our reference to be `${VARIABLE}`.
2017-11-30 07:37:35 -05:00
Jamil Appa
3726ded116 FindCUDA: Add cublas device library to separable compilation
Add cublas libraries to separable compilation device link line to
resolve missing symbols when using cublas device library.
2017-11-29 11:44:42 -05:00
Christian Pfeiffer
95646591d6 FindIconv: Add the FindIconv module.
This module provides abstraction over the various ways POSIX platforms
handle the iconv calls defined in POSIX.1-2001 and later versions.
2017-11-29 14:51:32 +01:00
Brad King
c07b18d883 Merge topic 'CodeBlocks-custom-compiler-id'
e04f1d1b CodeBlocks: add option for the CB compiler ID

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1512
2017-11-29 08:32:26 -05:00
Brad King
d5cad74078 Merge topic 'clang-cl-fix'
f969f1a9 Clang: Do not mistake clang-cl 6.0 for GNU-like clang

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1522
2017-11-29 08:29:36 -05:00
Brad King
caffddd620 Merge topic 'CheckIncludeFiles-language-CXX'
b31d5e1d CheckIncludeFiles: improve warning for missing argument
1f1c2a9f CheckIncludeFiles: clean up documentation of new features
c8609992 Help: Add notes for topic 'CheckIncludeFiles-language-CXX'
ea1bb902 CheckIncludeFiles: add unit tests
7669695a CheckIncludeFiles: extend to allow a LANGUAGE argument

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1464
2017-11-29 08:26:05 -05:00
Brad King
9e961930ee Merge topic 'win-clang-debug'
458c589f FindBoost: Add Windows ABI tag for Clang debug
00e39a4a FindBoost: Use CMAKE_CXX_COMPILER_ID for Intel compiler

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1529
2017-11-29 08:23:11 -05:00
Brad King
d4805dd47b Merge topic 'cuda-implicit-include-dirs'
2f72573a CUDA: Treat /usr/include as an implicit include directory

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1528
2017-11-29 08:20:45 -05:00
İsmail Dönmez
f969f1a9ce Clang: Do not mistake clang-cl 6.0 for GNU-like clang
The check added by commit v3.10.0-rc2~2^2 (Clang: Diagnose unsupported
GNU-like clang targeting MSVC ABI, 2017-10-10) is incorrectly detecting
clang-cl 6.0 as GNU-like.  Currently cmake is testing if the clang
compiler accepts `--version` to see if it accepts GNU style flags.
However, with the latest llvm snapshot this also works for clang-cl:

    > clang-cl --version
    clang version 6.0.0 (trunk)
    Target: x86_64-pc-windows-msvc
    Thread model: posix
    InstalledDir: C:\Program Files\LLVM\bin

So instead we should use the `/?` flag which fails with clang but
works with clang-cl:

    > clang-cl /? &> /dev/null; echo $?
    0
    > clang /? &> /dev/null; echo $?
    1

Fixes: #17518
2017-11-28 17:08:33 +01:00
Brad King
acb4cb9500 CMakeFindBinUtils: Improve switch between MSVC- and GNU-like tools
The switch was not considering some languages, such as `ASM`.
Instead of memorizing the list of languages in the condition,
use a language specified by the includer.

Fixes: #17510
2017-11-28 07:57:58 -05:00
Melven Roehrig-Zoellner
e04f1d1b47 CodeBlocks: add option for the CB compiler ID
CodeBlocks uses his own compiler ID string which may differ from
CMAKE_<LANG>_COMPILER_ID. In particular CodeBlocks supports a large
number of different compiler configurations (with different IDs)
This commit adds a cache variable "CMAKE_CODEBLOCKS_COMPILER_ID",
so the user might adjust it when needed.
2017-11-27 14:41:54 -05:00
Roger Leigh
458c589fe3 FindBoost: Add Windows ABI tag for Clang debug
Thanks to Walter Pearce for this suggestion.

Fixes: #17505
2017-11-27 13:49:01 -05:00
Roger Leigh
00e39a4afc FindBoost: Use CMAKE_CXX_COMPILER_ID for Intel compiler 2017-11-27 13:48:22 -05:00
Brad King
2f72573a62 CUDA: Treat /usr/include as an implicit include directory
We already do this for C and C++.

Fixes: #17512
2017-11-27 10:24:13 -05:00
Brad King
24e2bc4219 GNUInstallDirs: Update link to 64-bit ABI documents
Suggested-by: Chris Coutinho <chrisbcoutinho@gmail.com>
Fixes: #17503
2017-11-27 10:01:35 -05:00
Brad King
b67762ff3c Merge topic 'hardcoded-path-removal'
a62d50ec Modules: Replace coded PATHS with PATH_SUFFIXES
fd56d6a8 FindMPEG,2: Update to current libmpeg2 behavior
5f382cd8 FindPike: Update names and paths
6720807d FindAVIFile: Replace PATHS with updated suffixes
f88ef9a9 Modules: Remove paths set as global Unix prefixes

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1502
2017-11-27 08:53:04 -05:00
David Adam
b31d5e1dfd CheckIncludeFiles: improve warning for missing argument 2017-11-24 15:54:00 +08:00
David Adam
1f1c2a9fdf CheckIncludeFiles: clean up documentation of new features 2017-11-24 15:53:54 +08:00
Craig Scott
51ccfaacb8 Merge topic 'WriteBasicConfigVersionFile_SameMinorVersion'
d18ff3a5 WriteBasicConfigVersionFile: Fix messages in ExactVersion tests
16a93de0 WriteBasicConfigVersionFile: Add SameMinorVersion COMPATIBILITY option

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Claudio <claudio.fantacci@gmail.com>
Merge-request: !1507
2017-11-22 07:29:33 -05:00
Brad King
baa19f658f Merge topic 'gtest-fix-discovery'
70f9f62d GoogleTest: Fix multiple discovery on same target

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1510
2017-11-21 13:00:24 -05:00
Matthew Woehlke
70f9f62da8 GoogleTest: Fix multiple discovery on same target
According to the documentation, tests can be discovered for a target
multiple times by using a different prefix and/or suffix to ensure name
uniqueness. However, while this worked for gtest_add_tests, it did not
work with gtest_discover_tests because the generated file that sets up
the tests was named based only on the target name, and so subsequent
discovery from the same target would clobber earlier discovery.

Fix this by introducing a counter that records how many times discovery
has been used on a target, and use this to generate unique names of the
generated test list files.
2017-11-21 12:05:34 -05:00
Christian Pfeiffer
daeadde888 Merge topic 'irsl-intel-1041-folder'
8e7e7af5 IRSL: Install the 1041 folder for Intel compilers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1509
2017-11-21 05:56:03 -05:00
Christian Pfeiffer
65c5833858 Merge topic 'findqt4-dirs-fix'
f81d186b FindQt4: Set PLUGINS and IMPORTS dir even if empty

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1503
2017-11-21 05:55:40 -05:00
Christian Pfeiffer
8f8f118327 Merge topic 'wxwidgets-env-variables'
9b503cc8 wxWidgets: Respect WX_CONFIG and WXRC_CMD env vars

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1504
2017-11-21 05:55:12 -05:00
Christian Pfeiffer
e91e69cfb5 Merge topic 'imagemagick-6-freebsd-names'
35b8a26b FindImageMagick: Add more library names

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1505
2017-11-21 05:54:50 -05:00
Daniele E. Domenichelli
16a93de0a8 WriteBasicConfigVersionFile: Add SameMinorVersion COMPATIBILITY option 2017-11-21 09:27:07 +01:00
Christian Pfeiffer
8e7e7af5c8 IRSL: Install the 1041 folder for Intel compilers
The presence of the `1041` seems to solely depend on whether a given
Intel compiler release was available in Japanese or not. Install it if
it is present and silently ignore it otherwise.

Example: The Intel 2018.0 release did not ship it, but the 2018.1
compilers have it.
2017-11-20 16:35:02 +01:00
Christian Pfeiffer
a62d50ec56 Modules: Replace coded PATHS with PATH_SUFFIXES
Some modules assume that `/usr` and `/usr/local` are the only
`CMAKE_PREFIX_PATH` entries and explicitly enumerate all paths instead
of using `PATH_SUFFIXES` and relying on the dynamic set of prefix paths.
This commit attempts to rectify that behavior.
2017-11-20 16:29:25 +01:00
Christian Pfeiffer
fd56d6a8e6 FindMPEG,2: Update to current libmpeg2 behavior 2017-11-20 16:29:00 +01:00
Christian Pfeiffer
5f382cd822 FindPike: Update names and paths 2017-11-20 16:24:43 +01:00
Christian Pfeiffer
6720807d57 FindAVIFile: Replace PATHS with updated suffixes 2017-11-20 16:23:12 +01:00
Christian Pfeiffer
f88ef9a9b8 Modules: Remove paths set as global Unix prefixes
This commit removes hardcoded paths that are already given in the
platform files or in `UnixPath` on a global level.
2017-11-20 16:21:49 +01:00
Brad King
08ce62bee5 Merge topic 'autogen-rcc-custom-command'
40434631 Autogen: Use integers instead of strings for the Qt version
be11a852 Autogen: Use project relative paths in rcc custom command comment
ab9d5896 Autogen: Detect rcc feature once during configuration
2a85b5ac Autogen: Make cmQtAutoGeneratorInitializer an instantiable class
75819b86 Autogen: Add and use cmQtAutoGenerator base class
27ed3b35 Autogen: Rename cmQtAutoGenerators to cmQtAutoGeneratorMocUic
1cd285fe Autogen: Remove rcc code from cmQtAutoGenerators
a87f82e0 Autogen: Switch to use custom commands for RCC
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1494
2017-11-20 10:13:11 -05:00
Brad King
66b37132b6 Merge topic 'cpack-minor-cleanup-and-tests-extension'
325f34d1 CPack tests: add possibility for expecting config developer warnings
176281e1 CPack test: correctly handle CPACK_PACKAGING_INSTALL_PREFIX
cf0c2599 CPack: set variable commands in lower case
2ff906b3 CPack: documentation typo fix

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1499
2017-11-20 10:09:14 -05:00
Brad King
9100ea1d82 Merge topic 'FindOpenGL-glvnd-policy'
2ea17412 FindOpenGL: Add policy CMP0072 to prefer GLVND for legacy GL

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Clinton Stimpson <clinton@elemtech.com>
Merge-request: !1491
2017-11-20 09:43:27 -05:00
Christian Pfeiffer
35b8a26be1 FindImageMagick: Add more library names
The port maintainers on FreeBSD normalize the library names to not
include the bit and HDRI options.

Furthermore, `--quantum-depth=32` and `--quantum-depth=64` will yield
`Q32` and `Q64` suffixes in the library names.

Issue: #17492
2017-11-20 14:44:54 +01:00
Christian Pfeiffer
9b503cc86e wxWidgets: Respect WX_CONFIG and WXRC_CMD env vars
Issue: #17492
2017-11-19 23:05:31 +01:00
Christian Pfeiffer
f81d186b15 FindQt4: Set PLUGINS and IMPORTS dir even if empty
Fixes: #14155
Issue: #17492
2017-11-19 22:54:24 +01:00
Domen Vrankar
cf0c25995d CPack: set variable commands in lower case 2017-11-19 14:55:00 +01:00
Domen Vrankar
2ff906b34e CPack: documentation typo fix 2017-11-19 14:55:00 +01:00
Sebastian Holtermann
4043463179 Autogen: Use integers instead of strings for the Qt version 2017-11-19 13:35:07 +01:00
Sebastian Holtermann
ab9d5896ae Autogen: Detect rcc feature once during configuration
We used to detect the `rcc` features before every `rcc` list invocation
wich resulted in `rcc` be called twice for every listing operation.

Now we detect the `rcc` list capabilities once during configuration and
pass it to the cmake_autorcc target in the info file.
2017-11-19 13:12:42 +01:00
Sebastian Holtermann
75819b8626 Autogen: Add and use cmQtAutoGenerator base class
Adds the new base class `cmQtAutoGenerator` which contains common
variables and methods used by `cmQtAutoGeneratorMocUic` and
`cmQtAutoGeneratorRcc`.
2017-11-19 12:51:31 +01:00
Sebastian Holtermann
1cd285fe06 Autogen: Remove rcc code from cmQtAutoGenerators 2017-11-19 12:51:30 +01:00