Commit Graph

5835 Commits

Author SHA1 Message Date
Bjoern Thiel ff183986df InstallRequiredSystemLibraries: Fix MBCS MFC detection (#15531)
Fix the logic added by commit v3.0.0-rc5~9^2
(InstallRequiredSystemLibraries: MBCS MFC is optional on VS 12,
2014-05-06).  Do not test content of MSVC${v}_MFC_DIR until after the
variable is set.
2015-04-27 10:09:38 -04:00
Brad King 9fd1f5494f Merge topic 'allow-empty-CMAKE_TOOLCHAIN_FILE'
22926dd6 Allow CMAKE_TOOLCHAIN_FILE to be an empty string
2015-04-23 09:04:41 -04:00
Brad King 46098b0676 Merge topic 'check-compiler-flag-clang'
680ebebc Check*CompilerFlag: Add another pattern for Clang (#15526)
2015-04-23 09:04:39 -04:00
Andrey Pokrovskiy 22926dd651 Allow CMAKE_TOOLCHAIN_FILE to be an empty string
Do not try to include() an empty string in the generated CMakeSystem
module.
2015-04-22 16:06:44 -04:00
Dan Kegel 680ebebc1a Check*CompilerFlag: Add another pattern for Clang (#15526)
Match 'optimization flag ... not supported' messages.
2015-04-22 10:59:57 -04:00
Brad King e1c6df392b ExternalProject: Allow dependencies on INTERFACE libraries
Respect INTERFACE library property whitelist.  Check that a target has
type "UTILITY" before querying other properties.
2015-04-22 08:48:52 -04:00
Brad King c0502faa4b ExternalProject: Fix error message typo 2015-04-21 11:32:13 -04:00
Andrey Pokrovskiy 0273ef1469 ExternalProject: Allow generator expressions with LOG_* options (#15287)
Use file(GENERATE) to write the logging wrapper scripts to evaluate
generator expressions.  Use a per-config script names in case the
content varies by configuration.
2015-04-21 10:51:08 -04:00
Andrey Pokrovskiy 7bd8cfb813 ExternalProject: Allow generator expressions in initial cache options
Use file(GENERATE) to write the initial cache file so that we can
evaluate generator expressions.  Use a per-config initial cache file
name in case the content varies by configuration.
2015-04-21 10:50:29 -04:00
Brad King 0d852d4c65 Merge topic 'cpack-deb-component-vars-prepare'
c8375e15 CPackDeb: Refactor package variable lookup by generator
2015-04-21 09:39:51 -04:00
Domen Vrankar c8375e15eb CPackDeb: Refactor package variable lookup by generator
Preparation for per component variables.
Patch makes sure we know which variables
will be set for per component generator
and also prevents accidental overflows
of variable values between components.
2015-04-21 08:47:18 -04:00
Brad King 2a28f085a5 Merge topic 'FindCUDA.cmake/Fix-MakeDirDuringSeparableCompilation'
0ed22502 FindCUDA: Create output dir while compiling intermediate link file (#15016)
2015-04-21 08:45:03 -04:00
Brad King 50eefbb7e3 Merge topic 'cpack-rpm-refactored-file-listing'
cd953bf7 Help: Add notes for topic 'cpack-rpm-refactored-file-listing'
76080c32 CPackRPM content listing refactor
152e9b32 CPackRPM package content list code move
2015-04-21 08:44:57 -04:00
James Bigler 0ed22502a6 FindCUDA: Create output dir while compiling intermediate link file (#15016)
During compilation of the intermediate link file, the output directory
may not be present in Visual Studio builds.  This fix makes sure the
output directory exists before generating the output file.

Suggested-by: Irwin Zaid
2015-04-20 14:44:17 -04:00
Brad King 5e0e65c189 Merge topic 'add-GreenHills-MULTI-generator'
66b641f4 Help: Add notes for topic 'add-GreenHills-MULTI-generator'
48004d9d Add a 'Green Hills MULTI' generator on Windows
051d8be1 cmLocalGenerator: Constify some cmTarget and cmGeneratorTarget arguments
2015-04-20 14:02:52 -04:00
Geoff Viola 48004d9dbe Add a 'Green Hills MULTI' generator on Windows
Green Hills MULTI is an IDE for embedded real-time systems.  The IDE's
product page can be found here:

 http://www.ghs.com/products/MULTI_IDE.html

It supports cross compiling on ARM, Intel x86, and other architectures
with various operating systems.  The IDE exists on Linux and Windows
host systems, but CMake will currently only generate the project files
on Windows host systems.
2015-04-20 13:55:40 -04:00
Domen Vrankar 76080c32e1 CPackRPM content listing refactor
Refactoring of content list that removes
use of find and sed to make listing algorithm
more clear and remove external dependencies.
Patch also limits man pages handling to
locations listed in brp-compress rpm script
by default - fixes bug report #14660.
2015-04-19 18:22:18 +02:00
Domen Vrankar 152e9b3250 CPackRPM package content list code move
Move rpm package content list code to
a separate function.
2015-04-19 17:01:20 +02:00
Brad King f4e5a0e6aa Merge topic 'FPHSA-updates'
84f06d0c FPHSA: Document REQUIRED_VARS recommendation (#15352)
a3ad275c FPHSA: Revise and format documentation
d1a6d15b FPHSA: Always populate the ExactCase_FOUND variable (#15412).
2015-04-17 10:50:10 -04:00
Brad King 84f06d0c84 FPHSA: Document REQUIRED_VARS recommendation (#15352)
State explicitly that the variables specified are user-facing.
2015-04-17 10:46:25 -04:00
Brad King a3ad275ce0 FPHSA: Revise and format documentation
Use better reStructuredText markup and add cross-references.
2015-04-17 10:46:24 -04:00
Stephen Kelly d1a6d15bcd FPHSA: Always populate the ExactCase_FOUND variable (#15412).
The UPPERCASE name was inconsistent with config-packages, the
find_dependency macro, and even FPHSA itself, which expects
components to be specified with names matching ExactCase.

The FOUND_VAR was only permitted to have two possible values, and
now both are set for compatibility.  Document it as obsolete, and
adjust the code for the same.  Users of the variable should just
remove it.
2015-04-17 10:46:24 -04:00
Tuukka Pasanen dd7e31bc15 UseSWIG: Fix module name detection with relative source file (#15508)
When SWIG_GET_EXTRA_OUTPUT_FILES checks to see if a source file exists
for use in reading the module name, it must pass an absolute path to
the if(EXISTS) command.  Teach SWIG_ADD_SOURCE_TO_MODULE to give it
the absolute path it already knows.
2015-04-15 11:39:44 -04:00
Nils Gladitz fd04d87323 CTestCoverageCollectGCOV: Write tar files intended for CDash in gnutar format
PHP's PharData can not currently (PHP 5.6.4) extract paxr tar archives
with long filenames.
2015-04-10 08:32:31 -04:00
James Bigler 1b0c77a33d FindCUDA: Add specific cuda_language_flag instead of using nvcc.
I was previously appending to nvcc_flags inside the file loop.  This
caused the flag to be appended multiple times which freaks out nvcc.
Now the flag is specifically handled per file.
2015-04-09 11:41:36 -04:00
James Bigler 8313de2d5a FindCUDA: Allow setting CUDA_SOURCE_PROPERTY_FORMAT for non-.cu files.
A previously undocumented feature allowed overriding the format
specified to CUDA_WRAP_SRCS with a source file property called
CUDA_SOURCE_PROPERTY_FORMAT.  I added documentation for this feature as
well as added the ability to let nvcc compile any file regardless of
type if this property was found.

In addition, I also fixed a couple of bugs with the calls to
_cuda_get_important_host_flags that weren't garding the arguments with
"" to prevent empty values from causing errors.
2015-04-09 11:41:36 -04:00
Brad King 48040c19d5 Merge topic 'FindCUDA.cmake/C++11Flags'
99abebde FindCUDA: Handle c++11 host flag
2015-04-09 11:32:39 -04:00
James Bigler 99abebdea0 FindCUDA: Handle c++11 host flag
If the host flags contain a c++11 flag (at least for gcc), then we can't
automatically propagate to nvcc it using -Xcompiler.  This is because
nvcc can't use any C++ only flags.  Instead we find this flag and add it
to nvcc's flags (it has a special flag for dealing with c++11 code) and
remove it from the host flags.

Co-Author: Guillermo Marcus <gmarcus@nvidia.com>
2015-04-08 16:25:47 -04:00
Brad King f3be6c1b9b Merge topic 'FindMatlab_add_recent_versions'
7e311773 FindMatlab: Look for R2014b and R2015a
2015-04-08 09:42:17 -04:00
Daniele E. Domenichelli 7e311773b5 FindMatlab: Look for R2014b and R2015a 2015-04-07 11:42:02 +02:00
Brad King ecb1d5b47a Features: VS 2013 Update 3 supports initializer lists (#15494)
VS 2013 originally claimed to support initializer lists but a bug was
found in which it generated bad code silently.  For this reason we
previously considered support to not be present.  However, Update 3 adds
a hard error on cases that previously generated bad code, so it is now
safe to use initializer lists with VS 2013 Update 3 or greater.  At
worst a compiler error will be issued in the cases that do not work, but
that is no different from any other compiler-specific workaround a
project code may need.
2015-04-06 10:06:26 -04:00
Brad King dfbde6fa99 Merge topic 'gcov-module-coverage-exclude'
9a544f2d CTestCoverageCollectGCOV: Support CTEST_CUSTOM_COVERAGE_EXCLUDE
2015-04-06 08:58:21 -04:00
Nils Gladitz 9a544f2d98 CTestCoverageCollectGCOV: Support CTEST_CUSTOM_COVERAGE_EXCLUDE 2015-04-04 12:25:15 +02:00
James Bigler 7fea2b77df FindCUDA: Use the static CUDA runtime library if available (#15482)
Beginning in CUDA 5.5 a static version of the cuda runtime library
became available.  Since nvcc defaults to using this library over the
shared version, FindCUDA will also default to using this version.  There
are many advantages to using the static version (most importantly to
avoid conflicts with multiple versions when building a CUDA based
library).  Offer a CUDA_USE_STATIC_CUDA_RUNTIME option to control
this behavior.
2015-04-03 10:15:17 -04:00
Brad King ad09756fed Merge topic 'cpack-rpm-basic-symlink-handling'
68e13e98 Help: Add notes for topic 'cpack-rpm-basic-symlink-handling'
681f3a2f CPackRPM: Add basic symlink support (#15209)
2015-03-31 14:11:20 -04:00
Domen Vrankar 681f3a2f01 CPackRPM: Add basic symlink support (#15209)
RPM packages can contain symbolic links to relative paths - including
support for multiple relocation paths through generation of post install
relocation scripts.  Add basic support with limitations described in
documentation.
2015-03-31 14:04:13 -04:00
Felix Schwitzer b372a99a13 UseSWIG: Do not use MAIN_DEPENDENCY on custom commands (#15480)
Add the dependency on the main swig input source file as a normal
DEPENDS option.  We cannot use MAIN_DEPENDENCY because if there are
multiple target languages then multiple custom commands would want to
use the same MAIN_DEPENDENCY, but at most one custom command may specify
a given source file as its MAIN_DEPENDENCY.  Exposed by a CMP0057
warning.
2015-03-30 09:35:43 -04:00
Brad King 8bc6cfd727 Merge topic 'ExternalData-recursive-match'
230f2d6e ExternalData: Add option to recursively match under directories
564c07f7 ExternalData: Parameterize internal file(GLOB) operation selection
2015-03-30 09:27:48 -04:00
Brad King 230f2d6e70 ExternalData: Add option to recursively match under directories
Extend the ``DATA{Dir/,...}`` syntax with a new ``RECURSE:`` option
to enable recursive matching of associated files.  This will allow
an entire directory tree of data to be referenced at once.
2015-03-27 14:44:54 -04:00
Brad King 564c07f7dd ExternalData: Parameterize internal file(GLOB) operation selection
Extend the _ExternalData_arg_find_files signature with an option to
specify the kind of file(GLOB) operation to be performed.  Set
CMP0009 to NEW so that GLOB_RECURSE does not follow symlinks.
2015-03-27 14:44:49 -04:00
Brad King b76b52c0b4 Xcode: Set ARCHS only when CMAKE_OSX_ARCHITECTURES is specified (#14736)
Teach the Xcode generator that ONLY_ACTIVE_ARCH=YES means to use ARCHS,
and that the default of ONLY_ACTIVE_ARCH=NO means to use NATIVE_ARCH and
ignore ARCHS.  In the latter case there is no reason to generate ARCHS.
2015-03-27 10:52:32 -04:00
Brad King 7910cb7cfb Merge topic 'fix-external-project-generator'
a704098d ExternalProject: fix the build command for generator overrides
2015-03-27 09:15:25 -04:00
Brad King 7865036131 Merge topic 'FindMFC-CMP0054'
dcf29800 FindMFC: Use if(DEFINED) to simplify condition (#15477)
2015-03-27 09:15:21 -04:00
Ben Boeckel a704098de8 ExternalProject: fix the build command for generator overrides
The `binary_dir` variable is never set, so this is invalid. Instead, use
"." which all the other build commands use anyways. Also only set the
--config option if it is meaningful.
2015-03-26 18:12:04 -04:00
Brad King a8e7a1047a GNU: Do not use -isystem with gfortran
The compiler documents that USE statements search for ".mod" files
in directories specified with -I, but not -isystem.

Reported-by: Hugh Sorby <h.sorby@auckland.ac.nz>
2015-03-26 09:33:20 -04:00
Brad King dcf298008f FindMFC: Use if(DEFINED) to simplify condition (#15477)
Replace an old hack of the form 'if("${VAR}" MATCHES "^${VAR}$")'
with the much simpler 'if(NOT DEFINED ${VAR})'.  This was exposed
by a CMP0054 warning.
2015-03-26 09:02:05 -04:00
Brad King 51b4321e5f Merge topic 'SunPro-no-KPIE'
209c142f SunPro: Drop non-existent -KPIE flag
2015-03-24 11:26:30 -04:00
Brad King 81db6506a9 Merge topic 'blugeneq-platform-files'
13807bcb BlueGene/Q Platform files
2015-03-24 11:26:24 -04:00
Gregor Jasny 52642b466e OS X: Look for Xcode 5 platform-specific Frameworks
The Xcode 5 platform specific framework locations differ from the Xcode
6 ones.  Look first for the Xcode 6 ones, then for iOS Xcode 5 ones and
last for the Xcode 5 OS X ones.

For reference, the XCTest.framework is located as follows:

 Xcode511.app/Contents/Developer/Library/Frameworks/XCTest.framework
 Xcode511.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/Developer/Library/Frameworks/XCTest.framework
 Xcode511.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/Developer/Library/Frameworks/XCTest.framework

 Xcode601.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks/XCTest.framework
 Xcode601.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Frameworks/XCTest.framework
 Xcode601.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Frameworks/XCTest.framework

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2015-03-24 11:23:40 -04:00
Steven Vancoillie 209c142f68 SunPro: Drop non-existent -KPIE flag 2015-03-23 10:24:18 -04:00
Brad King 7ef5f240c8 Merge topic 'lib64_paths_crosscompiling'
81bfebfe Linux: Ignore Debian-specific case when cross-compiling
2015-03-23 09:22:06 -04:00
Zack Galbreath 81bfebfe8c Linux: Ignore Debian-specific case when cross-compiling
When constructing settings for the target environment during cross
compiling we should not check for /etc/debian_version on the host.
2015-03-23 09:19:54 -04:00
Brad King 4f129615b3 Merge topic 'UseJava-fix-arg-parse'
a21e8df0 UseJava: Fix add_jar argument parsing (#14655)
2015-03-23 09:18:41 -04:00
Brad King ed99514fc1 Merge topic 'cpack-bundle-codesign'
fb3e4de8 CPack: Add support to overwrite or pass additional parameter to codesign
2015-03-23 09:18:40 -04:00
Brad King 45583e5272 Merge topic 'cpack-rpm-ignore-default-prefix'
18917d66 CPack/RPM ignore install prefix relocation path
2015-03-23 09:18:36 -04:00
Brad King d0af020713 Merge topic 'SunPro-Fortran-KPIC'
3556fb1b SunPro: Add position independent code flag for Fortran compiler
2015-03-23 09:18:34 -04:00
Brad King 88abc78723 Merge topic 'pgi-no-pie'
00842df4 PGI: Remove invalid -fPIE flag (#15460)
2015-03-23 09:18:32 -04:00
Brad King a37937f7c0 Merge topic 'xcode-xctest'
4178cd88 Help: Add notes for topic 'xcode-xctest'
87a4b858 Tests: Add XCTest example to test Frameworks and Cocoa App Bundles
ba14510b OS X: Add FindXCTest module
3714955b OS X: Add handling for XCTest bundles
54a5cdbb Tests: Compute Xcode version for any generator on OS X
2015-03-23 09:18:29 -04:00
André Klitzing fb3e4de8e8 CPack: Add support to overwrite or pass additional parameter to codesign 2015-03-23 09:15:43 -04:00
Gregor Jasny ba14510b4e OS X: Add FindXCTest module
Add a module to lookup XCTest Framework and xctest utility.
It also provides APIs for creating 'xctest' targets.

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2015-03-23 09:12:19 -04:00
Domen Vrankar 18917d66d4 CPack/RPM ignore install prefix relocation path
Patch adds possibility to remove
CPACK_PACKAGING_INSTALL_PREFIX from
the list of relocation paths when
crating a relocatable rpm.
2015-03-20 21:52:49 +01:00
Steven Vancoillie 3556fb1b81 SunPro: Add position independent code flag for Fortran compiler 2015-03-20 13:05:05 -04:00
Brad King 00842df48d PGI: Remove invalid -fPIE flag (#15460)
The PGI compilers on Linux do not have the -fPIE flag.  Remove the table
entry added by commit v2.8.9~125^2~2 (Add platform variables for
position independent code flags, 2012-05-05), which likely included it
only as part of a sweeping introduction of such flags.
2015-03-20 12:59:54 -04:00
Mark Studenka a21e8df0da UseJava: Fix add_jar argument parsing (#14655)
Since commit v2.8.11~63^2 (UseJava.cmake: require explicit request to
include jars, 2013-03-26) the argument parsing always overrides the
variable settings even if the corresponding arguments are not passed.
Re-order logic to fix this.
2015-03-20 10:46:13 -04:00
Brad King f447027307 Merge topic 'fix-FindPackageHandleStandardArgs-doc'
39451413 FPHSA: Revise documented command signature
2015-03-20 09:47:50 -04:00
Brad King 4faa4c60ce Merge topic 'cpack_rpm_component_fall_through'
be089724 CPack/RPM prevent component attributes leakage
ffc1b945 CPack/RPM improved component override test
2015-03-20 09:47:39 -04:00
Brad King 543b20f269 Merge topic 'WCDH-fix-cxx_nullptr-workaround'
f9d09626 WCDH: Fix cxx_nullptr workaround for pre-C++11 compilers
2015-03-20 09:47:37 -04:00
Todd Gamblin 13807bcb41 BlueGene/Q Platform files
- based on the BlueGene/P platform files.
- tested by Todd Gamblin (LLNL) and David DeMarle (Kitware)
2015-03-18 23:40:12 -07:00
Gregor Jasny 394514135e FPHSA: Revise documented command signature
For mode 2 the first argument is not the literal NAME
but the package name.

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2015-03-18 15:15:44 +01:00
Roman Wüger f9d0962689 WCDH: Fix cxx_nullptr workaround for pre-C++11 compilers
Use just '0' instead of 'static_cast<void*>(0)' because the latter
will not automatically convert to pointers to other types.
2015-03-17 13:46:43 -04:00
Brad King f94727a9c2 Record compile features for GNU on Windows (#15443)
Drop the 'UNIX' condition on GNU compiler features.

Suggested-by: David Demelier <demelier.david@gmail.com>
2015-03-17 13:32:08 -04:00
Domen Vrankar be089724e9 CPack/RPM prevent component attributes leakage
Fixes mantis bug report with id 15169. Some
component specific attributes were leaking
to next component. Leakage handling was
implemented in different locations but there
were still attributes that leaked. Patch
encapsulates generator into function so all
current leaks are fixed and no future leaks
can occur.
2015-03-17 17:36:36 +01:00
Raffi Enficiaud 49c8dcf7bb FindMatlab: Rewrite module and provide a usage API
Implement a brand new FindMatlab module:

- Add support for versions and components.
- Find Matlab and its version in a more precise and multiplatform way.
- Add API to create a new mex extension with documentation.
- Add API to add matlab unit tests (with or without the unit test framework).
- Find as much as possible based on a single Matlab_ROOT_DIR cache entry
  and allow the user to change it to re-find everything.
2015-03-17 09:47:04 -04:00
Brad King cce9671b4f Merge topic 'ExternalProject-byproducts-tokens'
86032ae0 ExternalProject: Replace placeholder tokens in BYPRODUCTS
2015-03-10 09:12:32 -04:00
Brad King 976c3ccc6a Merge topic 'UseSWIG-fix-CMP0054-warnings'
458c9e95 UseSWIG: Avoid if() auto-dereferene in quoted arguments
2015-03-10 09:12:30 -04:00
Brad King 0fe4cce22f Merge branch 'UseSWIG-fix-CMP0054-warnings' into release 2015-03-09 16:38:49 -04:00
Brad King 458c9e95de UseSWIG: Avoid if() auto-dereferene in quoted arguments
Protect against variables named "CSHARP", "PERL", "PYTHON", or "UNKNOWN"
when CMP0054 is not set to NEW.

Reported-by: Tuukka Pasanen <tuukka@iocaste.ilmi.fi>
2015-03-09 16:35:08 -04:00
Gaëtan Lehmann 86032ae0eb ExternalProject: Replace placeholder tokens in BYPRODUCTS
This allows the developer to specify the byproducts relative to the
binary directory without the need to set the binary directory location
explicitly.
2015-03-09 10:04:44 -04:00
Nils Gladitz b0852ebc09 CPackWIX: Support patching of root <Feature> elements. 2015-03-06 21:06:42 +01:00
Johan Andruejol e97141c2bc InstallRequiredSystemLibraries: Add option to specify install COMPONENT
Previously the module did not support projects using installation
components because install(PROGRAMS) was never called with COMPONENT.
Add an option to specify the COMPONENT so that projects doing this do
not have to resort to using CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP and
writing the install rule by hand.
2015-03-03 09:17:47 -05:00
Brad King d6a320ab5e InstallRequiredSystemLibraries: Format documentation 2015-03-03 09:14:29 -05:00
Роман Донченко 3b9f963f3f CPack: be more stringent when selecting variables to encode
The old version would admit, for example, a variable named "xxxCPACK".
2015-03-02 09:01:31 -05:00
Brad King 5261c357ae Merge topic 'locale-agnostic-findhg'
cfb22354 FindHg: Run hg with C locale when querying its version.
2015-03-02 08:36:31 -05:00
Brad King b3381c5c79 Merge topic 'modules-check-ARGC'
a7631fc4 Modules: Check for ARGC before using ARGV#
2015-03-02 08:36:29 -05:00
Nils Gladitz cfb22354b8 FindHg: Run hg with C locale when querying its version.
LANGUAGE should be ignored when LC_ALL=C.
It seems this isn't the case with hg so set both.
2015-02-28 14:22:41 +01:00
Daniele E. Domenichelli a7631fc4e0 Modules: Check for ARGC before using ARGV#
ARGV# could be defined from a parent scope.
2015-02-27 10:59:23 -05:00
Brad King 4932f59b4c Merge branch 'cpack_rpm_mulit_prefix_fixup' into release 2015-02-27 08:48:45 -05:00
Domen Vrankar 3cf86d9e7b Merge branch 'cpack_rpm_mulit_prefix_fixup' into cpack_rpm_mulit_prefix_fixup-for-master
Resolve conflict in Tests/CPackComponentsForAll/RunCPackVerifyResult.cmake
by combining the changes from both sides.
2015-02-27 08:42:29 -05:00
Domen Vrankar 1cbb156253 CPackRPM: Fix handling of relocation prefix parent directories
In commit 3ec02547 (CPackRPM: Allow multiple path relocation prefixes
for one package, 2015-01-21) a regression was introduced that causes
parent directories of relocation paths to be incorrectly included in
the rpm.  Fix this and make the test case more strict to cover it.
2015-02-27 08:37:24 -05:00
Brad King 4817d2814a Merge topic 'windows-rc-enable-later'
772eae44 RC: Add platform-specific preprocessor definitions (#15404)
4300de3e RC: Enable language after C, CXX, or Fortran is enabled (#15404)
1de4a0fb RC: Drop unused CMAKE_COMPILE_RESOURCE variable setting
2015-02-26 08:52:09 -05:00
Brad King e4419c9f88 Merge topic 'ExternalData-url-algo-map'
f7f4ca55 ExternalData: Add support for custom algorithm-to-URL mapping
2015-02-26 08:51:52 -05:00
Brad King 772eae4464 RC: Add platform-specific preprocessor definitions (#15404)
In Platform/Windows-MSVC the C and CXX flags are initialized to
contain preprocessor definitions describing the platform.  On
WinCE platforms this may not be just -DWIN32.  This information
may be important to RC sources too, so add such preprocessor
definitions to the default RC flags.

Suggested-by: Gunnar Roth <gunnar.roth@gmx.de>
2015-02-25 11:29:45 -05:00
Brad King 4300de3e27 RC: Enable language after C, CXX, or Fortran is enabled (#15404)
The RC language is special in that it is automatically enabled
on Windows-based platforms when another primary language is
enabled.  Move enablement of RC from early in the enablement
of the other language to late.  This will allow it to use
information detected as part of enabling C, CXX, or Fortran.
2015-02-25 11:16:51 -05:00
Brad King 1de4a0fb09 RC: Drop unused CMAKE_COMPILE_RESOURCE variable setting
This variable has long been replaced by CMAKE_RC_COMPILE_OBJECT.
Stop setting it in platform modules.
2015-02-25 11:16:19 -05:00
Brad King fa6da5fcd8 Merge topic 'CheckCompilerFlag-use-FLAGS'
5d5067ae Check*CompilerFlag: Refactor method used to pass flags
2015-02-25 09:03:07 -05:00
Brad King 71a610ff29 Merge topic 'refine-MSVC-ARM-WinCE'
3d612c73 MSVC: Compile with arch-specific flags on ARM platforms (#14552)
886dcaa7 MSVC: Distinguish among ARM architectures more precisely (#14552)
ea986676 MSVC: Define /DWINCE when building for WinCE platforms (#14552)
2015-02-25 09:03:03 -05:00
Brad King f7f4ca55bd ExternalData: Add support for custom algorithm-to-URL mapping
Allow URL templates to contain a %(algo:<key>) placeholder that is
replaced by mapping the canonical hash algorithm name through a map
defined by the <key>.

Extend the Module.ExternalData test to cover the behavior.
Extend the RunCMake.ExternalData test to cover error cases.
2015-02-25 08:28:05 -05:00
Mark Abraham 5d5067ae57 Check*CompilerFlag: Refactor method used to pass flags
Refactor the Check*CompilerFlag modules to pass the flags to
Check*SourceCompiles using CMAKE_REQUIRED_FLAGS instead of
CMAKE_REQUIRED_DEFINITIONS.  Both end up being used, but the variable
for "FLAGS" is more precise.
2015-02-24 09:45:19 -05:00
Gunnar Roth 3d612c7352 MSVC: Compile with arch-specific flags on ARM platforms (#14552)
Define the exact ARM architecture name as a preprocessor symbol.
Compile with /QRarch4T or /QRarch5T on ARMV4I or ARMV5I.
2015-02-24 09:33:08 -05:00
Gunnar Roth 886dcaa7c5 MSVC: Distinguish among ARM architectures more precisely (#14552)
Detect the exact ARM architecture instead of just "ARM".  Treat "ARM" as
an architecture family that includes THUMB (ARMV4I and ARMV5I).
2015-02-24 09:33:08 -05:00