Commit Graph

6681 Commits

Author SHA1 Message Date
Brad King d5e7d5f3eb Android: Add placeholders for platform-specific initialization
Add infrastructure modules to be loaded when initializing builds
targeting Android platforms.
2016-08-12 10:40:51 -04:00
Brad King 64be1ae4a3 Android: Add placeholders for platform-specific compiler selection
Add infrastructure modules to be loaded for determining a compiler
selection when targeting Android platforms.
2016-08-12 10:40:51 -04:00
Brad King 47866770ce Android: Add placeholders for platform-specific compiler settings
Add infrastructure modules to be loaded for Clang and GNU compilers
when targeting Android platforms.
2016-08-12 10:40:51 -04:00
Brad King 735f168bf0 CMakeDetermine*Compiler: Add hook to save custom compiler information
Provide a way for Platform/<os>-Determine-<lang>.cmake modules to save
platform-specific information about the compiler in the configured
CMake<lang>Compiler.cmake modules.
2016-08-12 10:40:51 -04:00
Brad King c148803a57 CMakeDetermineSystem: Load platform-specific helper modules
Once CMAKE_SYSTEM_NAME is known, load a platform-specific

  Platform/<os>-Determine

module in order to enable custom determination of the other settings
needed for the CMakeSystem module (e.g. CMAKE_SYSTEM_PROCESSOR).  Also
add a hook in Modules/CMakeSystem.cmake.in to allow platform-specific
information to be saved.
2016-08-12 10:40:51 -04:00
Brad King 50ada755e3 Merge topic '15687-xcode-support-system-include'
93ac2a78 Xcode: Obey SYSTEM keyword for includes (#15687)
2016-08-10 11:16:01 -04:00
Gregor Jasny 93ac2a78d5 Xcode: Obey SYSTEM keyword for includes (#15687)
CMake used to put all header search paths into HEADER_SEARCH_PATHS
attribute. Unfortunately this attribute does not support to declare
a search path as a system include.

As a hack one could add a -isystem /path to the cflags but then include
ordering is not deterministic. A better approach was chosen with this
patch by not filling HEADER_SEARCH_PATHS at all and to populate
the C, C++, and Fortran flags directly. The include paths used by
Xcode should be now identical to the ones used by Unix Makefiles and
Ninja generator.
2016-08-09 20:30:07 +02:00
Neil Carlson e9c984267e NAG: Use -PIC for Fortran position-independent executable code
The Numerical Algorithms Group (NAG) Fortran compiler documents -PIC for
position-independent code and does not have a separate option for PIE.
We added `-PIC` for PIC in commit v2.8.11~174^2 (NAG: Use -PIC for
Fortran position-independent code, 2013-02-18).  Follow up for PIE.

Closes: #16236
2016-08-09 11:15:14 -04:00
Brad King 4689d16e8a Merge topic 'fix-string-append'
551b4c90 Revert the use of string(APPEND) in .cmake.in files
3a7be4f3 prefer list(APPEND) over string(APPEND) where appropriate
2016-08-09 09:20:21 -04:00
Brad King a5b73e719a Merge topic 'GetPrerequisites-grep-a'
5f3c8f6a GetPrerequisites: Always filter objdump output as text
2016-08-09 09:20:18 -04:00
Brad King 892ffe4ebd Merge topic 'wix-custom-install-dir'
17bbf6af CPackWIX: Implement new CPACK_WIX_SKIP_PROGRAM_FOLDER feature
2016-08-09 09:20:13 -04:00
Daniel Pfeifer 551b4c9062 Revert the use of string(APPEND) in .cmake.in files
The generated files may be consumed by older cmake versions which do not
support string(APPEND).
2016-08-08 21:45:41 +02:00
Daniel Pfeifer 3a7be4f394 prefer list(APPEND) over string(APPEND) where appropriate 2016-08-08 21:28:52 +02:00
Alexander Shishenko 5f3c8f6ab2 GetPrerequisites: Always filter objdump output as text
When using `grep` to filter the output, add the `-a` flag to tell
it never to treat the output as binary.  Otherwise when LANG != C
in the environment the non-ascii text may break the filter.
2016-08-08 14:05:21 -04:00
Brad King 314a953982 Merge topic 'update-cle-version-info'
e52302d6 CrayLinuxEnvironment: Add alternative methods to get version info
2016-08-08 10:02:11 -04:00
Matthäus G. Chajdas 88f2455f04 FindOpenCL: Fix search on macOS.
The original patch was provided by jerry <jerry.c.t@web.de>.
2016-08-08 09:57:30 -04:00
Michael Stürmer 17bbf6af1e CPackWIX: Implement new CPACK_WIX_SKIP_PROGRAM_FOLDER feature
The new variable allows setting of a custom absolute installation prefix
outside of the ProgramFiles folders.
2016-08-08 13:42:23 +02:00
Chuck Atkins e52302d6cb CrayLinuxEnvironment: Add alternative methods to get version info
Closes: #16229
2016-08-05 09:01:43 -04:00
Brad King ff386d1121 Modules: Make imported targets fall back to `Release`
Find modules only detect Debug and Release configurations.  All other
configurations will fall back to the configuration listed as the first
entry in `IMPORTED_CONFIGURATIONS`.  Switch the order so that `Release`
is listed first, as this is a better fallback than `Debug` for the
`RelWithDebInfo` and `MinSizeRel` configurations.  See issue #16091.

This approach is recommended by documentation in `cmake-developer(7)`
added by commit v3.2.0-rc1~286^2~1 (Help: Document IMPORTED_CONFIGURATIONS
target property for Find modules, 2014-12-04).
2016-08-03 11:14:29 -04:00
Brad King c2bc47f266 Merge topic 'CMakeFindFrameworks-custom-locations'
9970cdcb CMakeFindFrameworks: Allow custom framework locations
2016-08-03 09:20:56 -04:00
Brad King aabf8772fd Merge topic 'gcc-fvisibility-version'
85e03142 GNU: Use -fvisibility on GCC 4.0 and 4.1 too
2016-08-03 09:20:54 -04:00
Brad King a85e2a89de Merge topic 'FindProtobuf-restore-PROTOBUF_IMPORT_DIRS'
5790d9b6 FindProtobuf: Restore support for PROTOBUF_IMPORT_DIRS
2016-08-03 09:20:50 -04:00
Brad King ec807f6edf Merge topic 'port-to-sco'
56539d89 SCO_SV: Enable so filename versioning
16a3a735 cmELF: Port to SCO OpenServer 5.0.7/3.2
2016-08-03 09:20:47 -04:00
Brad King ef729c5bc2 Merge topic 'ExternalProject-no-DS_Store'
52aecc0c ExternalProject: Ignore macOS .DS_Store files in tarball extraction
2016-08-03 09:20:44 -04:00
Brad King 7b65e49529 Merge topic 'wix-root-description'
e29bfbf2 CPackWIX: Support custom title and description for the root feature
2016-08-03 09:20:38 -04:00
Brad King 8ba870bad6 Merge topic 'FindCUDA-no-windows-librt'
f4e979b1 FindCUDA: Do not look for librt on Windows
2016-08-03 09:20:35 -04:00
Brad King 573397bb54 Merge topic 'FindCUDA-arch'
15a6ae5c FindCUDA: Add search path for nvcc on Arch
2016-08-03 09:20:32 -04:00
Brad King 16e449cc72 Merge topic 'intel-gnu11-support'
088f14eb Intel-C: standard flags are also supported in 12.0
27a3ca15 Intel-C: support gnu89 and gnu99 extension flags
cc223e1e Intel-C: declare support for gnu11
2016-08-03 09:20:25 -04:00
Brad King a382c3013c Merge topic 'fix-findhdf5-definitions'
8eb0b56c FindHDF5: Make sure compile definition vars keep the -D flag
2016-08-03 09:20:19 -04:00
Hans Gaiser 15a6ae5cb7 FindCUDA: Add search path for nvcc on Arch 2016-08-02 15:36:07 -04:00
Ben Boeckel 088f14eb72 Intel-C: standard flags are also supported in 12.0 2016-08-02 13:10:56 -04:00
Ben Boeckel 27a3ca15e5 Intel-C: support gnu89 and gnu99 extension flags 2016-08-02 13:10:41 -04:00
Ben Boeckel cc223e1eed Intel-C: declare support for gnu11
Without extensions, functions like `strdup` are not available since they
are actually controlled by feature flags such as _SVID_SOURCE and
_BSD_SOURCE. When using `-std=c11` on Intel, none of these flags are
set, so the functions are not declared properly leading to compile
errors.

Reported-by: Adam J. Stewart <ajstewart426@gmail.com>
Closes: #16226
2016-08-02 11:42:45 -04:00
Konstantin Sinitsyn 5790d9b6f5 FindProtobuf: Restore support for PROTOBUF_IMPORT_DIRS
Support was accidentally dropped by commit v3.6.0-rc1~273^2
(FindProtobuf: Rename variables to match case of module name,
2016-03-01).
2016-08-02 10:50:24 -04:00
David Keller 9970cdcb59 CMakeFindFrameworks: Allow custom framework locations
Read a variable to get non-standard locations to be searched,
e.g. brew, port.

Signed-off-by: David Keller <david.keller@litchis.fr>
2016-08-02 10:41:40 -04:00
Chuck Atkins 8eb0b56c2a FindHDF5: Make sure compile definition vars keep the -D flag 2016-08-02 10:34:51 -04:00
Brad King 52aecc0c38 ExternalProject: Ignore macOS .DS_Store files in tarball extraction
Do not consider a top-level `.DS_Store` file when deciding whether a
tarball contains exactly one directory whose contents should be used as
the resulting top-level of the extraction.

Fixes #16218.

Suggested-by: Patrice Kouame
2016-08-02 10:14:26 -04:00
Patrick Welche 56539d89da SCO_SV: Enable so filename versioning
Take changes used by pkgsrc [1]:

* so filename versioning requires CMAKE_SHARED_LIBRARY_SONAME_C_FLAG.

[1] http://cdn.netbsd.org/pub/pkgsrc/current/pkgsrc/devel/cmake/patches/
2016-08-02 10:09:52 -04:00
Brad King 85e0314201 GNU: Use -fvisibility on GCC 4.0 and 4.1 too
This flag is needed for the `<LANG>_VISIBILITY_PRESET` target property.
It has been supported since GCC 4.0, not 4.2 as we previously recorded.

Fixes #16222.
2016-08-02 09:24:54 -04:00
Stephen Sorley f4e979b126 FindCUDA: Do not look for librt on Windows
Otherwise an incorrect warning appears when compiling with CUDA SDK 6.5
or older and CUDA_USE_STATIC_CUDA_RUNTIME is true.
2016-08-02 09:15:22 -04:00
Michael Stürmer e29bfbf272 CPackWIX: Support custom title and description for the root feature
These can now be specified through the WIX generator specific
CPack variables CPACK_WIX_ROOT_FEATURE_TITLE and
CPACK_WIX_ROOT_FEATURE_DESCRIPTION.
2016-08-02 14:05:08 +02:00
Brad King 5ec03c93fc Merge topic 'wix-disabled-components'
ad453f05 CPackWIX: Support CPACK_COMPONENT_<compName>_DISABLED
6f108f84 CPackComponent: Document the *_HIDDEN and *_DISABLED variables
2016-08-01 14:59:53 -04:00
Daniel Pfeifer 5d0d980d99 Use string(APPEND) in Modules
Automate with:

find Modules -type f -print0 | xargs -0 perl -i -0pe \
's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
2016-07-28 00:41:13 +02:00
Brad King e09518ca50 Merge topic 'nsis-protect-uninst-exec'
11768733 NSIS: Quote uninstaller path when executing it in a shell
2016-07-22 09:17:19 -04:00
Nils Gladitz 6f108f84d0 CPackComponent: Document the *_HIDDEN and *_DISABLED variables 2016-07-22 08:41:22 +02:00
Brad King 40d5375cf1 Merge branch 'nsis-protect-uninst-exec' into release 2016-07-21 10:08:33 -04:00
Justin Clift 11768733d3 NSIS: Quote uninstaller path when executing it in a shell
Protect our `$0` reference in the shell as `"$0"`.  Otherwise it works
with a space in the path only due to an insecure Windows feature.

Prior to this fix, any installer using the option added by commit
v2.8.9~234^2 (Added CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL,
2011-06-11) exposes a local privilege escalation vulnerability.

Reported-by: Amir Szekely <kichik@gmail.com>
Reported-by: Ug_0 Security
2016-07-21 10:05:46 -04:00
Eon Jeong ab8d5d0fdb FindBISON: Refactor public and inner macro routines 2016-07-18 09:06:36 -04:00
Eon Jeong c42e63a97e FindBISON: Add REPORT_FILE option to pass --report-file=FILE 2016-07-18 09:06:31 -04:00
Eon Jeong ad2497aa05 FindBISON: Change usage of [VERBOSE <file>] to [VERBOSE [<file>]] 2016-07-18 09:06:16 -04:00