Commit Graph

30948 Commits

Author SHA1 Message Date
Brad King caf4985346 Merge topic 'rpath-preserve-compiler-defined'
3ec92267 install: Do not remove compiler-defined RPATH entries
2016-01-19 09:35:33 -05:00
Brad King 2a73530be9 Merge topic 'windows-program-files'
09b2f1c3 Windows: Find Program Files directories more robustly from environment
2016-01-19 09:35:30 -05:00
Kitware Robot 5079cc1243 CMake Nightly Date Stamp 2016-01-19 00:01:07 -05:00
Kitware Robot 03c0303d2e CMake Nightly Date Stamp 2016-01-18 00:01:06 -05:00
Kitware Robot 27410a9c62 CMake Nightly Date Stamp 2016-01-17 00:01:07 -05:00
Kitware Robot 66942a764c CMake Nightly Date Stamp 2016-01-16 00:01:07 -05:00
Rob Gowin 8979a10700 FindPkgConfig: Fix restoration of PKG_CONFIG_PATH in environment
The original value is saved in `_pkg_config_path_old`.  Fix this typo
left by commit v3.1.0-rc1~763^2 (FindPkgConfig: Extend PKG_CONFIG_PATH
using CMake variables, 2014-03-06).
2016-01-15 15:12:34 -05:00
Sebastian Schuberth 6e92f7b2de Help: Document the CMAKE_EXPORT_COMPILE_COMMANDS variable 2016-01-15 15:04:33 -05:00
Lior Goldberg 3ec9226779 install: Do not remove compiler-defined RPATH entries
Some compilers may add their own RPATH entries when invoking the linker.
For example, a GCC installation may contain the following definition in
the specs file:

  *link_libgcc:
  %D -rpath <<some specific rpath in which libstdc++.so can be found>>

In this case binaries may contain RPATH entries that CMake did not add.
When we update the RPATH on installation we must preserve these entries
even if CMake thinks the INSTALL_RPATH value should be empty.

Fix this by always using file(RPATH_CHANGE) and teach it to behave as
file(RPATH_REMOVE) if the actual RPATH in the file is empty after
replacing the build-tree RPATH with the install-tree RPATH.  This will
preserve any compiler-added RPATH value instead of removing it.
2016-01-15 14:53:24 -05:00
Adam Rankin 83d633919a ExternalProject: Add option to set `git clone -o` argument
Add a `GIT_REMOTE_NAME` option to `ExternalProject_Add` to support

  git clone --origin <name>

Default to `origin` if not specified.
2016-01-15 14:20:04 -05:00
Brad King 09b2f1c3f5 Windows: Find Program Files directories more robustly from environment
In Modules/Platform/WindowsPaths.cmake our previously recorded
environment variable combinations no longer seem to be correct.  For
example, a 64-bit cmake binary may see ProgramW6432 in the environment
and end up not considering the "ProgramFiles(x86)" variable.  Instead
check for all possible environment variables in the preferred order and
then remove duplicates.

Reported-by: Shawn Waldon <shawn.waldon@kitware.com>
2016-01-15 14:07:22 -05:00
Brad King aea1b03617 Fix export of STATIC library PRIVATE dependencies with CMP0022 NEW
The target_link_libraries command records the PRIVATE dependencies of a
STATIC library in INTERFACE_LINK_LIBRARIES as "$<LINK_ONLY:dep>".  This
hides the target name from export namespacing logic inside a generator
expression.  When user-written generator expressions reference a target
name they must put it inside a "$<TARGET_NAME:dep>" expression to allow
the export logic to rename the target.  In the case that the private
dependency is not already a generator expression, target_link_libraries
must use "$<LINK_ONLY:$<TARGET_NAME:dep>>" to allow the export logic to
rename the target.

Reported-by: Tamás Kenéz <tamas.kenez@gmail.com>
2016-01-15 10:18:53 -05:00
Brad King e5cbec14a5 Tests: Use CMP0022 NEW behavior in some ExportImport cases 2016-01-15 09:56:01 -05:00
Brad King 0ca122fcb3 Tests: Isolate policy changes in ExportImport test
Use cmake_policy(PUSH/POP) to isolate CMP0022 policy changes.
2016-01-15 09:55:26 -05:00
Brad King 6ccc307053 FindCUDA: Support special characters in path (#15919)
Add `VERBATIM` to all `add_custom_command` calls so that CMake will
escape arguments properly even when special characters such as "()" are
present.

Suggested-by: Nils Gladitz <nilsgladitz@gmail.com>
2016-01-15 08:46:20 -05:00
Kitware Robot b8d002af1a CMake Nightly Date Stamp 2016-01-15 00:01:07 -05:00
Brad King 43a32bdff6 Merge topic 'FindDCMTK-update'
4b24626e FindDCMTK: Simplify documentation.
361c199f FindDCMTK: Add reStructuredText formatting.
d790f4fe FindDCMTK: Keep original copyright notice.
8c8e53d0 FindDCMTK: Minor documentation grammatical issues.
d50cbbb0 FindDCMTK: Obey QUIET option for find_package.
31b4700e FindDCMTK: Improve compatibility with DCMTKConfig.cmake.
2016-01-14 13:30:31 -05:00
Matt McCormick 4b24626e00 FindDCMTK: Simplify documentation. 2016-01-14 13:28:56 -05:00
Brad King f3fd50ad4b Merge topic 'report_failed_tests'
a7393cbd ctest_test: Report which tests failed even when QUIET is used
2016-01-14 11:42:26 -05:00
Brad King 6e1a3df0c7 Merge topic 'bootstap-system-liblzma'
7a37afa7 bootstrap: Add option to build with system liblzma (#15916)
2016-01-14 11:42:23 -05:00
Brad King 9cf6388698 Merge topic 'install-DIRECTORY-genex'
630c8aa8 install: Allow generator expressions in DIRECTORY
2016-01-14 11:42:20 -05:00
Kitware Robot 6be2dedaed CMake Nightly Date Stamp 2016-01-14 00:01:07 -05:00
Brad King 7a37afa7e7 bootstrap: Add option to build with system liblzma (#15916) 2016-01-13 14:28:02 -05:00
Zack Galbreath a7393cbd40 ctest_test: Report which tests failed even when QUIET is used
Since commit v3.3.0-rc1~410^2~3 (ctest_test: Add QUIET option,
2015-02-17) if tests fail when QUIET is used one sees:

  The following tests FAILED:

but not the subsequent line(s) indicating which tests failed.
Restore the list of failed tests.
2016-01-13 10:32:24 -05:00
Brad King 05ab4b7c66 Merge topic 'vs-debug-fastlink'
fc5d6592 VS: Map link `/debug:fastlink` flag to VS 2015 IDE property (#15894)
2016-01-13 09:33:21 -05:00
Brad King 59dac28856 Merge topic 'cmake-W-options'
82166701 cmake-gui: Add options to control warning-as-error messages
28f2d750 Add -Werror and -Wno-error command-line options
2016-01-13 09:33:18 -05:00
Brad King 5774f389cd Merge topic 'FindPkgConfig-share-dir'
36d87e18 FindPkgConfig: add PREFIX/share/pkgconfig to PKG_CONFIG_PATH (#15910)
2016-01-13 09:33:15 -05:00
Brad King ef3202fb98 Merge topic 'update-kwsys'
33cafa68 Merge branch 'upstream-KWSys' into update-kwsys
ffcc235c KWSys 2016-01-11 (bc07fbf7)
2016-01-13 09:33:13 -05:00
Yves Frederix 630c8aa843 install: Allow generator expressions in DIRECTORY
Teach install(DIRECTORY) to support generator expressions in the list
of directories, much like install(FILES) already supports.
2016-01-13 09:02:06 -05:00
Kitware Robot 39b7954d4d CMake Nightly Date Stamp 2016-01-13 00:01:10 -05:00
Matt McCormick 361c199ff6 FindDCMTK: Add reStructuredText formatting. 2016-01-12 15:44:10 -05:00
Matt McCormick d790f4feea FindDCMTK: Keep original copyright notice.
This is a follow-up to 31b4700ed6.
Remove the extra character that was added to ensure the CMake.ModuleNotices
test passes.
2016-01-12 14:45:11 -05:00
Michael Scott 821667018c cmake-gui: Add options to control warning-as-error messages
Add new widgets to the warning messages dialog to control treating
warnings as errors.
2016-01-12 14:03:32 -05:00
Michael Scott 28f2d750ed Add -Werror and -Wno-error command-line options
Expand the -W set of cmake options to include support for the -Werror
and -Wno-error format, which is used to control upgrading and
downgrading warning and error messages. Implement support for these new
formats for the dev and deprecated message types.

Add tests and updated documentation for new options.
2016-01-12 14:02:51 -05:00
Brad King fc5d659229 VS: Map link `/debug:fastlink` flag to VS 2015 IDE property (#15894)
Suggested-by: Thomas Laguzzi <tholag@gmail.com>
2016-01-12 13:59:59 -05:00
Sam Thursfield 36d87e18a1 FindPkgConfig: add PREFIX/share/pkgconfig to PKG_CONFIG_PATH (#15910)
Most packages install their .pc files into PREFIX/lib/pkgconfig, but
some put them into PREFIX/share/pkgconfig. Either is valid, and
pkg-config itself looks in both for the /usr and /usr/local prefixes.

This fixes an issue where some packages (yajl, for example) are not
found if they are installed into a non-standard prefix and
CMAKE_PREFIX_PATH is used to locate them.
2016-01-12 13:42:17 -05:00
Matt McCormick 8c8e53d060 FindDCMTK: Minor documentation grammatical issues.
Also remove CTK integration reference to avoid confusion.
2016-01-12 12:25:15 -05:00
Brad King 33cafa68b8 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2016-01-11 (bc07fbf7)
2016-01-12 10:55:49 -05:00
KWSys Upstream ffcc235c7e KWSys 2016-01-11 (bc07fbf7)
Code extracted from:

    http://public.kitware.com/KWSys.git

at commit bc07fbf7a884713815b3ac72d85487bf6aa338f5 (master).

Upstream Shortlog
-----------------

James Johnston (1):
      bc07fbf7 Configure: Silence spurious warnings from Embarcadero compiler.
2016-01-12 10:55:49 -05:00
Brad King b5009720d3 Merge branch 'release' 2016-01-12 10:55:05 -05:00
Brad King ae7398c0a7 Merge topic 'vs-win10-sdk'
a57caf7e VS: Fix Windows 10 SDK version selection (#15831)
ad594de8 cmSystemTools: Add VersionCompareEqual helper
c173e37f VS: Do not select a partial Windows 10 SDK folder (#15831)
2016-01-12 10:53:45 -05:00
Brad King 3e4da61447 Merge topic 'FindwxWidgets-use-isystem'
4d05f195 FindwxWidgets: Drop suppression of -isystem
2016-01-12 10:23:10 -05:00
Brad King 0355421035 Merge topic 'update-kwsys'
9821924d Merge branch 'upstream-KWSys' into update-kwsys
8e7356a2 KWSys 2016-01-11 (e8bf616e)
2016-01-12 10:23:07 -05:00
Brad King 6262fb2f4e Merge topic 'mingw-clang-compile-features'
3baca636 Record compile features for MinGW Clang on Windows (#15897)
2016-01-12 10:23:05 -05:00
Brad King 31a58b438f Merge topic 'vs-global-properties'
af39f115 VS: Implement VS_GLOBAL_* target properties in VS 2010+ (#13666)
2016-01-12 10:23:02 -05:00
Brad King b3c10efb08 Merge topic 'vs-link-debug-property'
b3677b35 VS: Map the link `/debug` to its IDE property
c22da7cf VS: Drop unused condition in link debug flag generation
4ca9df8b cmIDEOptions: Add support for case-insensitive flags
2016-01-12 10:22:59 -05:00
Kitware Robot cd9a59b199 CMake Nightly Date Stamp 2016-01-12 00:01:09 -05:00
Matt McCormick d50cbbb03d FindDCMTK: Obey QUIET option for find_package. 2016-01-11 16:51:36 -05:00
Jean-Christophe Fillion-Robin 31b4700ed6 FindDCMTK: Improve compatibility with DCMTKConfig.cmake.
This improvement to the FindDCMTK module improves compatibility with recent
DCMTK, which provides a DCMTKConfig.cmake file. See the module comments for a
compatibility matrix.

It also provides DCMTK_INCLUDE_DIRS.

Ported from CommonTK (commontk.org).
2016-01-11 16:51:24 -05:00
Brad King 4d05f195d9 FindwxWidgets: Drop suppression of -isystem
This was added by commit v2.8.0~2292 (... Set variable
wxWidgets_INCLUDE_DIRS_NO_SYSTEM on the Mac ..., 2008-04-16) and updated
by commit v2.8.9~183^2 (FindwxWidgets: Do not use -isystem on OpenBSD,
2012-05-14).  Since the underlying cause was never investigated fully we
do not know the conditions under which -isystem breaks wxWidgets, but
suppressing -isystem is problematic for users that do not want to see
warnings in wxWidgets headers.  Simply drop the special case for now so
we can see whether anyone hits the problem again, at which point it can
be investigated in more detail.

Reported-by: Simon Wells <swel024@gmail.com>
2016-01-11 16:26:24 -05:00