32421 Commits

Author SHA1 Message Date
Brad King
e01c576338 Merge topic 'ninja-directory-targets'
02789894 Ninja: Add `$subdir/{test,install,package}` targets
a88c99f1 Ninja: Simplify computation of GLOBAL_TARGET outputs
2016-08-10 11:15:55 -04:00
Brad King
627ffb4bd7 Merge topic 'NAG-Fortran-no-fPIE'
e9c98426 NAG: Use -PIC for Fortran position-independent executable code
2016-08-10 11:15:53 -04:00
Brad King
f4cec30b53 Merge topic 'install-export-staging-dir'
c7a319ab install(EXPORT): Fix support for mid-length install destinations on Windows
2016-08-10 11:15:50 -04:00
Brad King
4887640b7a Merge topic 'add-extra-boolean-comparisons'
02d177c9 Add additional <= and >= comparison operators
2016-08-10 11:15:47 -04:00
Kitware Robot
5aabfec930 CMake Nightly Date Stamp 2016-08-10 00:01:04 -04:00
Brad King
0278989405 Ninja: Add $subdir/{test,install,package} targets
With the Makefile generator one can use `cd $subdir; make install` to build and
install targets associated with a given subdirectory.  This is not possible to
do with the Ninja generator since there is only one `build.ninja` file at the
top of the build tree.  However, we can approximate it by allowing one to run
`ninja $subdir/install` at the top of the tree to build the targets in the
corresponding subdirectory and install them.

This also makes sense for `test`, `package`, and other GLOBAL_TARGET targets.
It was already done for `all` by commit v3.6.0-rc1~240^2~2 (Ninja: Add
`$subdir/all` targets, 2016-03-11).
2016-08-09 15:15:24 -04:00
Brad King
a88c99f1bc Ninja: Simplify computation of GLOBAL_TARGET outputs
In cmGlobalNinjaGenerator::AppendTargetOutputs we previously
handled GLOBAL_TARGET outputs specially in order to avoid adding
directory components to the output.  However, this is not necessary
because cmNinjaTargetGenerator::New already filters out copies of
these targets that are not at the top level.  Instead we can simply
follow the same output computation code path as UTILITY targets.
2016-08-09 14:36:04 -04: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
c7a319ab05 install(EXPORT): Fix support for mid-length install destinations on Windows
The implementation of `install(EXPORT)` generates files into a staging
directory for later installation.  We use the full install destination
in the path to the staging directory to avoid collisions.  In order to
avoid exceeding maximum path lengths (especially on Windows) we compute
a hash of the install destination when it is too long.  Fix this logic
to account for the length of the file name(s) when deciding whether to
switch to the hashed name.

Reported-by: Alan W. Irwin <irwin@beluga.phys.uvic.ca>
2016-08-09 10:09:52 -04:00
Chuck Atkins
02d177c9cc Add additional <= and >= comparison operators
This adds the LESS_EQUAL, GREATER_EQUAL, and associated STR and VERSION
equivalents to use the combined <= and >= functionality.
2016-08-09 09:30:34 -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
a8c819659b Merge topic 'ninja-full-path'
955c2a63 Ninja: Use full path for all source files
2016-08-09 09:20:15 -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
Kitware Robot
982b4cd602 CMake Nightly Date Stamp 2016-08-09 00:01:04 -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
Chaoren Lin
955c2a630a Ninja: Use full path for all source files
This is consistent with the behavior of the Makefile generators.
Relative paths are difficult for an IDE to parse the output of a build
error.
2016-08-08 13:55:29 -04:00
Brad King
ee9d4feb67 Merge branch 'release' 2016-08-08 10:04:09 -04:00
Brad King
9bb2faf62a Merge topic 'bash-completion-fix-E-lookup'
fe7f117a bash-completion: Fix cmake -E lookup
2016-08-08 10:02:15 -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
Brad King
acf6fc6a7e Merge topic 'FindOpenCL-macOS'
88f2455f FindOpenCL: Fix search on macOS.
2016-08-08 10:02:07 -04:00
Brad King
702a548992 Merge topic 'vs14-debug-enum-older-toolsets'
038e3a4f cmVisualStudio10TargetGenerator: Run clang-format
2016-08-08 10:02:03 -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
Brad King
7da3df3fb6 Merge branch 'update-cle-version-info' into release 2016-08-08 09:55:42 -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
Kitware Robot
5a62e0c172 CMake Nightly Date Stamp 2016-08-08 00:01:04 -04:00
Kitware Robot
5a8b67b3de CMake Nightly Date Stamp 2016-08-07 00:01:03 -04:00
Kitware Robot
6da5fb8379 CMake Nightly Date Stamp 2016-08-06 00:01:04 -04:00
Brad King
054275c6d6 Merge branch 'vs14-debug-enum-older-toolsets' into release 2016-08-05 15:21:48 -04:00
Brad King
926886a41c VS: Fix VS 2015 .vcxproj debug setting for Windows7.1SDK toolset
Closes: #16213
2016-08-05 15:21:23 -04:00
Brad King
038e3a4f71 cmVisualStudio10TargetGenerator: Run clang-format 2016-08-05 15:20:20 -04:00
Chuck Atkins
e52302d6cb CrayLinuxEnvironment: Add alternative methods to get version info
Closes: #16229
2016-08-05 09:01:43 -04:00
Sylvain Joubert
fe7f117ad2 bash-completion: Fix cmake -E lookup
In case of long '<command> <args...>' the description text is wrapped
and indented on the next line.
Avoid taking these lines into account by explicitly requiring the third
character to be a non-space.
2016-08-05 08:54:09 -04:00
Brad King
93b705a396 Merge topic 'ninja-clang-rsp-format'
e555480c Ninja: Fix response file format for GNU-like Clang on Windows
2016-08-05 08:50:29 -04:00
Brad King
baa6032169 Merge topic 'update-kwsys'
8abca140 Merge branch 'upstream-KWSys' into update-kwsys
6c0820a8 KWSys 2016-08-03 (6d23dd7e)
2016-08-05 08:50:25 -04:00
Brad King
b06118f8f1 Merge topic 'vs14-debug-enum-older-toolsets'
4ada475e VS: Fix VS 2015 .vcxproj debug setting for Windows7.1SDK toolset
2016-08-05 08:50:20 -04:00
Kitware Robot
9bc62024ac CMake Nightly Date Stamp 2016-08-05 00:01:09 -04:00
Brad King
4ada475ef5 VS: Fix VS 2015 .vcxproj debug setting for Windows7.1SDK toolset
Closes: #16213
2016-08-04 11:40:09 -04:00
Brad King
8abca14034 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2016-08-03 (6d23dd7e)
2016-08-04 10:11:07 -04:00
KWSys Upstream
6c0820a874 KWSys 2016-08-03 (6d23dd7e)
Code extracted from:

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

at commit 6d23dd7e455a7b2088c4ec6dce760d8243b84ee6 (master).

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

Ben Boeckel (1):
      6d23dd7e SystemTools: add a PathExists method
2016-08-04 10:11:06 -04:00
Brad King
995b54256e Merge topic 'find-module-imported-fallback-to-release'
ff386d11 Modules: Make imported targets fall back to `Release`
2016-08-04 09:56:51 -04:00
Brad King
2df3719d2c Merge topic 'extra-generator-factories'
cd52a225 Report more information about extra generators in generator factories
a354f60c Refactor extra generator registration to use factories
2016-08-04 09:56:47 -04:00
Brad King
ac7c12eced Merge topic 'update-kwsys'
b602cb85 Merge branch 'upstream-KWSys' into update-kwsys
3e6ec47c KWSys 2016-08-02 (3f55579d)
2016-08-04 09:56:44 -04:00
Brad King
85d966dcd7 Merge topic 'update-curl'
f59ab433 curl: Remove CMake-specific README
f53f4a8a Merge branch 'upstream-curl' into update-curl
202adcfe curl 2016-08-03 (f2cb3a01)
e1c11352 curl: Update script to get curl 7.50.1
a51c6c53 Merge branch 'upstream-curl' into update-curl
7ec709d3 curl 2015-08-11 (1a7f66a3)
3e9b0343 Add script to update curl from upstream
2016-08-04 09:56:39 -04:00
Brad King
e555480c60 Ninja: Fix response file format for GNU-like Clang on Windows
The `CMAKE_<LANG>_SIMULATE_ID` variables are not set to "GNU" for a
GNU-like Clang compiler on Windows.  They are only set to "MSVC" for a
MSVC-like Clang.  Revise our response file format selection accordingly.

Reported-by: Chaoren Lin <chaorenl@google.com>
2016-08-04 09:44:56 -04:00
Kitware Robot
2c0e87fff3 CMake Nightly Date Stamp 2016-08-04 00:01:06 -04:00
Brad King
5bcbc3857f Merge branch 'update-curl' into release 2016-08-03 15:08:56 -04:00
Brad King
f59ab43370 curl: Remove CMake-specific README
We will now manage the curl source tree updates using
the `Utilities/Scripts/update-curl.bash` script.  Drop
the README that covered the old method.
2016-08-03 14:31:05 -04:00