6601 Commits

Author SHA1 Message Date
Ruslan Baratov
af7da934a7 ExternalProject: Use default file name if extracting from URL fails
The download/extract step uses the file name only internally so we can
just use a fallback default name if one cannot be extracted from the
URL.
2016-07-07 09:35:42 -04:00
Brad King
0ca8f3e699 Merge topic 'toolchain-flag-init'
a66004be Honor CMAKE_<LANG>_FLAGS[_<CONFIG>]_INIT set in toolchain files
cdde77e5 OpenWatcom: Partially modernize platform information modules
f9dbe22c Intel: Do not use GNU-like flags on Windows
5a3ed0d7 Intel: Do not use MSVC-like flags for Fortran
2016-07-07 09:02:23 -04:00
Brad King
a66004bee0 Honor CMAKE_<LANG>_FLAGS[_<CONFIG>]_INIT set in toolchain files
Document these variables.

Change our convention for setting these variables from:

    set(CMAKE_C_FLAGS_INIT "...")

to

    string(APPEND CMAKE_C_FLAGS_INIT " ...")

so that any value previously set by a toolchain file will be used.

Automate the conversion with:

    sed -i 's/set *(\(CMAKE_\(C\|CXX\|Fortran\|RC\|ASM\|${[^}]\+}\)_FLAGS\(_[^_]\+\)\?_INIT \+"\)/string(APPEND \1 /' \
      Modules/Compiler/*.cmake Modules/Platform/*.cmake

and follow up with some manual fixes (e.g. to cases that already
meant to append).  Also revert the automated changes to contexts
that are not protected from running multiple times.
2016-07-06 10:13:31 -04:00
Brad King
cdde77e5f6 OpenWatcom: Partially modernize platform information modules
Migrate from the old `<os>-<cc>.cmake` layout to the modern
`<os>-<id>-<lang>.cmake` layout.  Keep settings common to C and C++ in a
`Windows-OpenWatcom.cmake` helper module with an include blocker.
For now just add both C and CXX settings in the helper module.
2016-07-06 10:10:10 -04:00
Brad King
7e53e6c9cc Merge topic 'ExternalProject-more-url-filenames'
57c337e2 ExternalProject: Match filenames in URLs with query strings and anchors
2016-07-06 09:36:13 -04:00
Brad King
7c8c07d03c Merge topic 'FindJNI-cleanup'
4e11c966 FindJNI: Improve formatting of FPHSA call
2016-07-06 09:36:10 -04:00
Brad King
0bcb9efdff Merge topic 'FindJNI-ubuntu-paths'
26d16380 FindJNI: Fix support for Ubuntu 15.10
2016-07-06 09:36:00 -04:00
Brad King
73f480b0ad Merge topic 'FindJava-doc-update'
10a7459a FindJava: Do not document variables we do not provide
2016-07-06 09:35:51 -04:00
Brad King
f45befed3a Merge topic 'FindBoost-extras'
cb1a434c FindBoost: Add check headers for `zlib` and `bzip2`
2016-07-06 09:35:47 -04:00
Brad King
8df2e68614 Merge topic 'cpack-rpm-better-directive-match'
a351edd2 CPackRPM: Handle directives of form %foo and %foo(anything)
2016-07-06 09:35:29 -04:00
Brad King
06af626ef2 Merge topic 'cpack-ifw-list-variable'
9e505285 CPackIFW: Using cpack_append_list_variable_set_command
cd1415b5 CPackComponents: add cpack_append_list_variable_set_command
2016-07-06 09:35:06 -04:00
Andrew Fuller
a351edd245 CPackRPM: Handle directives of form %foo and %foo(anything)
Directives that are legal inside the %files section of an RPM spec may
contain a variety of characters particularly when specifying %caps which
can include +, _, and space.  Watch for parenthesis to determine what
forms the prefix vs. path.

Fixes #14362.
2016-07-05 15:27:56 -04:00
Brad King
57c337e2ef ExternalProject: Match filenames in URLs with query strings and anchors
While at it, refactor logic to consolidate the filename extraction
and verification into a single match.

Inspired-by: Ruslan Baratov <ruslan_baratov@yahoo.com>
2016-07-05 14:57:13 -04:00
O Libre
4e11c9660f FindJNI: Improve formatting of FPHSA call
Pass one argument per line for better readability.
2016-07-05 14:35:24 -04:00
O Libre
26d16380b0 FindJNI: Fix support for Ubuntu 15.10
The library search paths added by commit v3.6.0-rc1~281^2~1 (FindJNI:
Add support for Ubuntu 15.10, 2016-03-08) were incorrect.  Fix them.
2016-07-05 14:33:46 -04:00
Alex Turbov
cb1a434ce0 FindBoost: Add check headers for zlib and bzip2
The official Windows builds of Boost have internal implementations for
`zlib` and `bzip2` libraries used by Boost::iostreams library, e.g.

* boost_bzip2-vc140-mt-1_59.lib
* boost_zlib-vc140-mt-1_59.lib

Add check headers for these so that users can specify them as
components without any warnings.

Reviewed-by: Roger Leigh <rleigh@dundee.ac.uk>
2016-07-05 14:22:01 -04:00
Brad King
10a7459a22 FindJava: Do not document variables we do not provide
Drop Java_INCLUDE_DIRS and Java_LIBRARIES from the documentation since
we do not provide them.  Also add a link to FindJNI to help users find
it.  Fixes #16180.
2016-07-05 14:18:21 -04:00
Brad King
f9dbe22ca2 Intel: Do not use GNU-like flags on Windows
Refactor options out of `Modules/Compiler/Intel-{ASM,C,CXX,Fortran}.cmake`
into a common helper in `Modules/Compiler/Intel.cmake`.  Condition
them to be used only on non-Windows hosts where the Intel compiler
is GNU-like instead of MSVC-like.

Previously this worked only because the options were later overridden
by `Modules/Platform/Windows-Intel*.cmake`, but it is cleaner to not
set the options in the first place.
2016-07-05 13:58:42 -04:00
Brad King
5a3ed0d780 Intel: Do not use MSVC-like flags for Fortran
Teach `Modules/Platform/Windows-MSVC.cmake` not to use MSVC options
for Fortran.  We use the `__windows_compiler_msvc` for the Intel
Fortran compiler on Windows for other settings, but we do not want
the flags.

Previously this worked only because the options were later overridden
by `Modules/Platform/Windows-Intel*.cmake`, but it is cleaner to not
set the options in the first place.
2016-07-05 13:58:36 -04:00
Brad King
3643390d49 Strip CMAKE_<LANG>_FLAGS[_<CONFIG>] initializer whitespace 2016-07-01 14:01:41 -04:00
Brad King
cff9c11de7 Merge topic 'doc-updates'
c05d240e Help: Document CMAKE_TRY_COMPILE_PLATFORM_VARIABLES example
dab3ccf2 InstallRequiredSystemLibraries: Document UCRT option use case
2016-07-01 09:12:36 -04:00
Brad King
dab3ccf294 InstallRequiredSystemLibraries: Document UCRT option use case
Suggested-by: Hendrik Sattler <post@hendrik-sattler.de>
2016-06-30 08:54:46 -04:00
Konstantin Podsvirov
9e505285e3 CPackIFW: Using cpack_append_list_variable_set_command
This is necessary for proper processing of the list items.
2016-06-29 19:14:05 +03:00
Konstantin Podsvirov
cd1415b548 CPackComponents: add cpack_append_list_variable_set_command
It's like add variable, but wrap each item to quotes.
Can be used for multi args properties.
2016-06-29 19:10:41 +03:00
Brad King
843402b04a GenerateExportHeader: Add option to specify custom content 2016-06-28 09:43:52 -04:00
Brad King
f23d846a97 Merge topic 'FindHDF5-handle-unsuffixed'
234deec2 FindHDF5: create all the *_LIBRARIES when using hdf5-config.cmake
963b576f FindHDF5: cache the correct path to the high level libraries
9f2728ce FindHDF5: When component targets not found fallback to compiler wrappers
149539d9 FindHDF5: Handle HDF5 builds with non-suffixed components
f30b0fec FindHDF5: correctly add lang to each component target name.
2016-06-28 09:06:37 -04:00
Brad King
4adab7093a Merge topic 'ios-universal-fixes'
11c3a8dc CMakeIOSInstallCombined: add some sanity checks
aff1e77f CMakeIOSInstallCombined: do not merge content of OUTPUT and ERROR variables
2016-06-27 10:40:33 -04:00
Brad King
cd29388615 Merge branch 'FindHDF5-handle-unsuffixed' into release 2016-06-27 10:29:09 -04:00
Ruslan Baratov
11c3a8dc11 CMakeIOSInstallCombined: add some sanity checks 2016-06-25 13:48:31 +02:00
Ruslan Baratov
aff1e77f48 CMakeIOSInstallCombined: do not merge content of OUTPUT and ERROR variables 2016-06-25 13:37:44 +02:00
Robert Maynard
234deec2ea FindHDF5: create all the *_LIBRARIES when using hdf5-config.cmake 2016-06-24 15:28:23 -04:00
Robert Maynard
963b576fd2 FindHDF5: cache the correct path to the high level libraries 2016-06-24 15:26:22 -04:00
Robert Maynard
9f2728cef3 FindHDF5: When component targets not found fallback to compiler wrappers 2016-06-23 12:31:26 -04:00
Robert Maynard
149539d9c2 FindHDF5: Handle HDF5 builds with non-suffixed components 2016-06-23 10:57:58 -04:00
Robert Maynard
f30b0fec74 FindHDF5: correctly add lang to each component target name. 2016-06-23 10:56:29 -04:00
Rolf Eike Beer
8b3ffbe4af GetPrerequisites: fix typo in comment 2016-06-23 08:55:07 -04:00
Rolf Eike Beer
460a589d20 GetPrerequisites: fix typo in comment 2016-06-22 21:38:08 +02:00
Brad King
54e293db06 Merge topic 'FindZLIB-fixup'
4bb83514 FindZLIB: Do not mark unused variable as advanced
2016-06-22 08:53:04 -04:00
Brad King
ed59f4ba67 Merge topic 'GetPrerequisites-findstr'
867b73e2 GetPrerequisites: Optimize on Windows by filtering `objdump` output
2016-06-22 08:53:02 -04:00
Brad King
cc9f6f3b98 Merge topic '14068-ctest-target-set-buildname-with-only-c-compiler'
6509ad29 CTest: Properly set buildname if only C langage is enabled
2016-06-21 13:57:14 -04:00
Brad King
e260f30d23 Merge topic 'FindGLEW-debug'
6087b9e4 FindGLEW: Search for debug and release configurations separately
2016-06-21 13:57:11 -04:00
Brad King
91392a66e1 Merge topic 'FindLua-match-header-and-lib'
eecd307e FindLua: Iterate through all include subdirs to find a suitable header
3532cbce FindLua: Check header file against suitable versions
281c707b FindLua: Factor out a helper function for version extraction
92c67b9f FindLua: Prefix private APIs with `_lua_`
2016-06-21 13:57:09 -04:00
Brad King
447f0618db Merge topic 'FindBoost-imported-fallback-to-release'
c9fca42f FindBoost: Make imported targets fall back to `Release`
2016-06-21 13:57:04 -04:00
Brad King
736ffc627c Merge topic 'aix-clang'
5cc34162 AIX: Add support for Clang compiler
2016-06-21 13:57:02 -04:00
Brad King
4bb8351414 FindZLIB: Do not mark unused variable as advanced
We no longer define the ZLIB_LIBRARY cache entry, so we should not mark
it as advanced either.  We only use this variable when someone else
defines it in order to remain compatible with older versions of this
module, but we never create the entry ourselves anymore.
2016-06-21 08:56:56 -04:00
Laurent Tarrisse
867b73e275 GetPrerequisites: Optimize on Windows by filtering objdump output
Extend the optimization from commit v3.4.0-rc1~264^2 (GetPrerequisites:
Optionally filter "objdump" output for speed, 2015-07-29) to work
on Windows by using `findstr` in place of `grep`.
2016-06-21 08:48:09 -04:00
Jean-Christophe Fillion-Robin
6509ad29f6 CTest: Properly set buildname if only C langage is enabled
Fixes #14068
2016-06-20 15:45:25 -04:00
FARBOS Arnaud
6087b9e439 FindGLEW: Search for debug and release configurations separately 2016-06-20 15:07:32 -04:00
Ivan Ivanov
eecd307e24 FindLua: Iterate through all include subdirs to find a suitable header
Fixes #15756.
2016-06-20 14:46:06 -04:00
Ivan Ivanov
3532cbce18 FindLua: Check header file against suitable versions 2016-06-20 14:40:40 -04:00