Commit Graph

31882 Commits

Author SHA1 Message Date
Ben Boeckel 7f5607439e cmCTestGIT: run `git submodule sync` before updating submodules
If the URL of a submodule changes upstream, the commits referenced at
the old URL may not be available and will cause an update failure.
2016-04-01 15:50:31 -04:00
Ben Boeckel 06b310b5d5 cmCTestGIT: add an option to initialize submodules on update
Currently, CTest will not initialize any submodules within the already
checked out source tree. Add an option to do so. The use case for not
doing so is that some submodules may not be necessary for the current
test and keeping network usage down may be important.
2016-04-01 15:50:31 -04:00
Ben Boeckel 56c1ea40c5 cmCTestGIT: fix git version references
Git does not use a 4-component version number.
2016-04-01 15:50:27 -04:00
Brad King 58a57105d0 Merge branch 'fix-target-alias-in-subdir' into release 2016-04-01 15:47:03 -04:00
Brad King 0e44f4894f Rename local target lookup methods to clarify purpose
Rename methods:

* `cmMakefile::Find{ => LocalNonAlias}Target`
* `cmLocalGenerator::Find{ => LocalNonAlias}GeneratorTarget`

These names clarify that they are for directory-local target names
and do not consider alias targets.
2016-04-01 15:44:16 -04:00
Brad King bc30f8b5e6 Fix lookup of an ALIAS target outside aliased target's directory (#16044)
Refactoring in commit v3.5.0-rc1~272^2~11 (cmTarget: Implement ALIAS in
terms of name mapping, 2015-10-25) accidentally introduced logic that
assumes ALIAS targets always reference targets in their own directory.
Fix this and add a test case.

The configure-step fix is that `cmMakefile::FindTarget` should not consider
aliases.  The purpose of this method is just to look up targets local to
a directory.  Since ALIAS and normal targets share a namespace we know a
locally defined target will never collide with an ALIAS target anyway.
The method has 3 call sites, and this change is safe for all of them:

* `cmInstallCommand::HandleTargetsMode`: Rejects aliases before the call.
* `cmFLTKWrapUICommand::FinalPass`: Should never have considered aliases.
* `cmMakefile::FindTargetToUse`: Falls back to a global lookup anyway.

The generate-step fix is that `cmLocalGenerator::FindGeneratorTarget`
should not consider aliases.  This method is the generate-step
equivalent to the above.  The method has 2 call sites, and this change
is safe for both of them:

* `cmInstallTargetGenerator::Compute`: Never uses an alias target name.
* `cmLocalGenerator::FindGeneratorTargetToUse`: Falls back to global lookup.

Reported-by: Matteo Settenvini <matteo@member.fsf.org>
2016-04-01 15:44:16 -04:00
Samir Benmendil 272779ce6a ExternalProject: Allow TLS_VERIFY for git clones
Use the git config `http.sslVerify=false` to disable strict ssl for git
commands.
2016-04-01 11:49:16 -04:00
Brad King e0cc8bf5d7 Merge topic 'cpack-rpm-external-symlink-handling'
eae4eef0 CPack/RPM external symlink handling
2016-04-01 10:04:32 -04:00
Brad King 05f2ca70ad Merge topic 'check-compiler-flag-clang-cl'
fae80ee2 Check*CompilerFlag: Add another pattern for Clang (#16038)
2016-04-01 10:02:50 -04:00
Brad King 2d226ea895 Merge topic 'add-CMAKE_EXTRA_INCLUDE_FILES-to-CMakePushCheckState'
fad5d59c PushCheckStateTest: Update test to check CMAKE_EXTRA_INCLUDE_FILES
72a862a5 CMakePushCheckState: Add support for CMAKE_EXTRA_INCLUDE_FILES
a3468b78 PushCheckStateTest: Test all variables managed by the module
85b2bb6c PushCheckStateTest: Fix syntax warning
2016-04-01 10:02:47 -04:00
Brad King de7f2ae3f1 Merge topic 'eclipse-source-groups'
4828a78c Eclipse: Implement traversal of nested source groups (#15701)
2016-04-01 10:01:58 -04:00
Brad King e8c1363ee8 Merge topic 'update-kwsys'
168e44e2 Merge branch 'upstream-KWSys' into update-kwsys
731ad172 KWSys 2016-03-31 (3392da1d)
2016-04-01 10:01:52 -04:00
Domen Vrankar eae4eef0c4 CPack/RPM external symlink handling
Symbolic links that point to external
location no longer cause cmake to fail
with string out of bounds error but
are instead packaged as non relocatable
symlinks and print out a warning message.
2016-04-01 09:52:04 -04:00
Kitware Robot 9e33f02bd9 CMake Nightly Date Stamp 2016-04-01 00:01:07 -04:00
Brad King fae80ee2c3 Check*CompilerFlag: Add another pattern for Clang (#16038)
Match a warning pattern produced by `clang-cl`.

Suggested-by: Reid Kleckner <rnk@google.com>
2016-03-31 14:09:07 -04:00
Brad King 600b309577 Merge branch 'release' 2016-03-31 13:25:20 -04:00
Brad King 9c1da538d7 Merge topic 'backport-asm-includes'
677c091b ASM: Add missing <INCLUDES> placeholder for "compile" rules
2016-03-31 13:23:27 -04:00
Brad King 8f8a0bfbf5 Merge branch 'backport-asm-includes' into release 2016-03-31 13:23:16 -04:00
Gregor Jasny 677c091b81 ASM: Add missing <INCLUDES> placeholder for "compile" rules
This placeholder was added to the compilation rules for other languages
by commit v3.4.0-rc1~342^2 (Factor an <INCLUDES> placeholder out of
<FLAGS> in rule variables, 2015-07-13) but ASM was incorrectly left out.

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2016-03-31 13:22:46 -04:00
Jean-Christophe Fillion-Robin fad5d59cf4 PushCheckStateTest: Update test to check CMAKE_EXTRA_INCLUDE_FILES 2016-03-31 11:11:32 -04:00
Jean-Christophe Fillion-Robin 72a862a55b CMakePushCheckState: Add support for CMAKE_EXTRA_INCLUDE_FILES
This commit teaches the module to push/pop/reset state of variable
CMAKE_EXTRA_INCLUDE_FILES used in CheckTypeSize module.
2016-03-31 11:11:02 -04:00
Jean-Christophe Fillion-Robin a3468b78f2 PushCheckStateTest: Test all variables managed by the module 2016-03-31 10:58:33 -04:00
Jean-Christophe Fillion-Robin 85b2bb6cb4 PushCheckStateTest: Fix syntax warning
This commit fixes the following warning originally introduced in
1325260 (Add macros cmake_push/pop_check_state() as discussed on the list.)

  Argument not separated from preceding token by whitespace.
2016-03-31 10:40:23 -04:00
Patrik Lehmann 4828a78c10 Eclipse: Implement traversal of nested source groups (#15701) 2016-03-31 09:34:14 -04:00
Brad King 168e44e202 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2016-03-31 (3392da1d)
2016-03-31 08:46:50 -04:00
KWSys Upstream 731ad1724f KWSys 2016-03-31 (3392da1d)
Code extracted from:

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

at commit 3392da1df3c363d6d1a80fa3f0e49fbd45c9dcf7 (master).

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

Ben Boeckel (2):
      f6867bb7 SystemTools: flip junction deletion around
      3392da1d SystemTools: add buffer around preproc conditions
2016-03-31 08:46:49 -04:00
Brad King 0aa736e625 Merge topic 'fix-spelling-typos'
49e82c15 Fix spelling typos in comments and documentation (#16037)
2016-03-31 08:46:03 -04:00
Brad King dea0b6b718 Merge topic 'update-kwsys'
dc333a71 Merge branch 'upstream-KWSys' into update-kwsys
735c41dd KWSys 2016-03-29 (b51abb30)
2016-03-31 08:46:01 -04:00
Brad King 189b54586b Merge topic 'external-project-no-extract'
1ba9b535 ExternalProject: add support for just downloading a file
2016-03-31 08:45:58 -04:00
Brad King e2465c19c6 Merge topic 'preallocate-condition-keywords'
5c324294 cmConditionEvaluator: Pre-allocate keyword strings
2016-03-31 08:45:56 -04:00
Brad King 91d91d9d5d Merge topic 'simplify-condition-context'
2379b3ae cmConditionEvaluator: Remove GetConditionContext method
02fce523 cmConditionEvaluator: Drop unnecessary path conversion
2016-03-31 08:45:54 -04:00
Brad King e0917f29a4 Merge topic 'vs-fortran-MP'
729f5f01 VS: Map Intel Fortran `/MP` flag for multi-processor compilation (#15990)
2016-03-31 08:45:51 -04:00
Ben Boeckel 1ba9b53547 ExternalProject: add support for just downloading a file
Some projects only ship self-extracting installers rather than
compressed archives. Add a flag so that these files may be used in
ExternalProject.
2016-03-31 08:37:12 -04:00
Kitware Robot b290ddf925 CMake Nightly Date Stamp 2016-03-31 00:01:05 -04:00
Zack Galbreath 398b8800e3 cmParseCoberturaCoverage: Remove extra coverage line
Fix off-by-one error in cmParseCoberturaCoverage that added an
extra blank line to the end of source file being covered.
2016-03-30 14:22:07 -04:00
Kitware Robot 00e4d1220b CMake Nightly Date Stamp 2016-03-30 00:01:06 -04:00
Felix Geyer 49e82c15d5 Fix spelling typos in comments and documentation (#16037)
The Debian package checker tool (lintian) detected several typos in
CMake.
2016-03-29 14:31:02 -04:00
KWSys Upstream 735c41ddb0 KWSys 2016-03-29 (b51abb30)
Code extracted from:

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

at commit b51abb307d3b40957cc508aa54d449d9b41f5537 (master).

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

Ben Boeckel (1):
      069a6b37 windows: check for _WIN32 rather than WIN32

Felix Geyer (1):
      b51abb30 SystemInformation: Fix spelling typos in comments
2016-03-29 14:29:42 -04:00
Brad King dc333a7115 Merge branch 'upstream-KWSys' into update-kwsys
* upstream-KWSys:
  KWSys 2016-03-29 (b51abb30)
2016-03-29 14:29:42 -04:00
Brad King 5c324294ce cmConditionEvaluator: Pre-allocate keyword strings
Calls to `IsKeyword("...")` cause runtime construction of std::string.
Avoid possible repeated allocation by pre-allocating keyword strings
during initialization.
2016-03-29 10:32:28 -04:00
Brad King 2379b3ae31 cmConditionEvaluator: Remove GetConditionContext method
All it does is call cmListFileContext::FromCommandContext, so move this
to the call sites.
2016-03-29 10:10:20 -04:00
Brad King 02fce523a1 cmConditionEvaluator: Drop unnecessary path conversion
In commit v3.4.0-rc2~1^2 (cmIfCommand: Issue CMP0054 warning with
appropriate context, 2015-10-20) we added construction of a
cmListFileContext with conversion of the calling file path.  This code
path runs on every condition (e.g. `if()`) and so the path conversion
has a noticeable performance cost.  Fortunately the only use of this
context is for insertion into cmMakefile::CMP0054ReportedIds so we do
not need to convert the path.  Simply drop the conversion.
2016-03-29 10:02:17 -04:00
Brad King 90f24f016e Merge topic 'asm-includes'
9408a7a8 ASM: Add missing <INCLUDES> placeholder for "compile" rules
2016-03-29 09:24:39 -04:00
Brad King 2ab344a1dc Merge topic 'ghs-link-flags'
36ad8dd4 GHS: Implement link flags and dirs for non-target groups (#16029)
230d50ed GHS: Factor out compiler information shared among languages
2016-03-29 09:24:36 -04:00
Brad King 4392374422 Merge topic 'cpack-rpm-default-user-and-group'
1fe004ea cpack rpm setting of defattr
2016-03-29 09:24:34 -04:00
Gregor Jasny 9408a7a802 ASM: Add missing <INCLUDES> placeholder for "compile" rules
This placeholder was added to the compilation rules for other languages
by commit v3.4.0-rc1~342^2 (Factor an <INCLUDES> placeholder out of
<FLAGS> in rule variables, 2015-07-13) but ASM was incorrectly left out.

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2016-03-29 09:19:10 -04:00
Brad King 729f5f01b4 VS: Map Intel Fortran `/MP` flag for multi-processor compilation (#15990) 2016-03-29 08:45:00 -04:00
Kitware Robot 60de9b8a4f CMake Nightly Date Stamp 2016-03-29 00:01:05 -04:00
Domen Vrankar 1fe004eac3 cpack rpm setting of defattr
RPM supports setting of default user, group,
file and directory permissions that will be
applied for files in package unless specified
per file/dir with attr setting
This is related to bug report 14714
2016-03-29 00:51:18 +02:00
Geoff Viola 36ad8dd440 GHS: Implement link flags and dirs for non-target groups (#16029) 2016-03-28 11:46:46 -04:00