Commit Graph

31239 Commits

Author SHA1 Message Date
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 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
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
Geoff Viola 230d50ed1a GHS: Factor out compiler information shared among languages
Move common information in `Modules/Compiler/GHS-*.cmake` over to a
common `Modules/Compiler/GHS.cmake` and include it.
2016-03-28 11:44:58 -04:00
Brad King d29004756f Merge topic 'test-fix-FindGTK2-cxx11'
c41b9dc7 Tests: Fix GTK2Components.gtkmm test with sigc++ >= 2.5.1
2016-03-28 09:25:45 -04:00
Brad King 81cec38b99 Merge topic 'xcode73-xctest-location'
a364d251 Xcode: Fixup XCTest bundle location for Xcode 7.3
2016-03-28 09:25:43 -04:00
Brad King c69ed0a884 Merge topic 'only_change_timeout_once'
06b7f5d2 CTest: Only apply the secondary test timeout once
2016-03-28 09:25:40 -04:00
Gregor Jasny a364d2513a Xcode: Fixup XCTest bundle location for Xcode 7.3
Prior to Xcode 7.3 a XCTest bundle was built like an ordinary
bundle. But starting with Xcode 7.3 it is implicitely built as
a plugin for the test host. It looks like in that case the
'Build Products Path' is ignored.

This patch simply sets the CMake target output path to the value
Xcode expects internally to get a matching view of both.

The command:

  xcodebuild -showBuildSettings -target CocoaExampleTests -configuration Debug

Output with Xcode 7.2:

  TARGET_BUILD_DIR = .../Tests/XCTest/Debug

Output with Xcode 7.3

  TARGET_BUILD_DIR = .../Tests/XCTest/Debug/CocoaExample.app/Contents/PlugIns

Signed-off-by: Gregor Jasny <gjasny@googlemail.com>
2016-03-28 09:23:35 -04:00
Kitware Robot aa9227aa4d CMake Nightly Date Stamp 2016-03-28 00:01:04 -04:00
Kitware Robot 6732749e5b CMake Nightly Date Stamp 2016-03-27 00:01:04 -04:00
Kitware Robot 9b5652846f CMake Nightly Date Stamp 2016-03-26 00:01:10 -04:00
Brad King 06a8dc7003 Merge topic 'cpackcomponents-priv-var'
c70ac097 CPack: Exclude additional internal variables from CPackConfig.cmake
2016-03-25 09:41:46 -04:00
Brad King c41b9dc7b5 Tests: Fix GTK2Components.gtkmm test with sigc++ >= 2.5.1
FindGTK2 adds compile features to GTK2::sigc++ so that clients will
compile as C++11 or above.  However, our test case covers using just the
library list variables instead of the imported targets.  Fix this case
by propagating the compile features manually.
2016-03-25 09:19:33 -04:00
Kitware Robot 484d7ca0e0 CMake Nightly Date Stamp 2016-03-25 00:01:06 -04:00
Brad King b8268facb8 Merge branch 'release' 2016-03-24 12:43:02 -04:00
Brad King 456d89f724 Merge branch 'release' 2016-03-24 12:40:08 -04:00
Brad King 64130a7e79 CMake 3.5.1 2016-03-24 09:56:42 -04:00
Brad King 6d36fc8341 Merge topic 'fix-variable_watch-reallocation'
c6104028 Avoid occasional use-after-free when a variable watch is executed
2016-03-24 08:49:46 -04:00
Brad King 917d49ed93 Merge topic 'cmake-depend-in-project-only'
b06e17da Help: Add notes for topic 'cmake-depend-in-project-only'
52540245 Tests: Add test for CMAKE_DEPENDS_IN_PROJECT_ONLY variable
b1e1aa1e Makefile: Optionally scan only source and build trees for dependencies
2016-03-24 08:49:43 -04:00
Brad King 5b2acf6c1c Merge topic 'vs-startup-project'
ad140c6e VS: Put ALL_BUILD in the PREDEFINED_TARGETS_FOLDER
f069be05 VS: Fix default target support for targets nested inside a folder
c05ea485 VS: Improve unit test macros
78ec0461 VS: Add option to choose the `.sln` startup project (#15578)
2016-03-24 08:49:41 -04:00
Brad King 59f53f7422 Merge topic 'FindBoost-xl-compiler'
4527b9c4 FindBoost: Add support for IBM XL compiler
2016-03-24 08:49:38 -04:00
Brad King 3252e6e075 Merge topic 'doc-cmake_minimum_required-policy-reset'
1dc8486b Help: Organize and clarify `cmake_minimum_required` documentation
2016-03-24 08:49:36 -04:00
Nils Gladitz c70ac0970d CPack: Exclude additional internal variables from CPackConfig.cmake
In v2.8.12.1-654-g7621ad6 I added underscore prefixes to
CPACK_ADDCOMP_(STR|UNAME) to prevent them from being automatically
written to CPackConfig.cmake.

Do the same for CPACK_ADDGRP_(STR|UNAME) and CPACK_INSTTYPE_(STR|UNAME).
2016-03-24 09:28:41 +01:00
Kitware Robot 02166c33db CMake Nightly Date Stamp 2016-03-24 00:01:08 -04:00
Brad King 277b7567f7 Merge branch 'fix-variable_watch-reallocation' into release 2016-03-23 16:18:08 -04:00
Yves Frederix c610402825 Avoid occasional use-after-free when a variable watch is executed
Re-lookup a variable value when an associated VariableWatch is executed
in cmMakefile::GetDefinition.

This fixes a problem with 'def' sometimes becoming invalid due to memory
reallocation inside an std::vector. In this case, the problem was that
if the call to VariableAccessed actually executed a callback function,
the internal state of the makefile has changed due to the associated
function scope being pushed. This in turn implies that a new
cmDefinitions instance was pushed in cmMakefile::VarTree. As
cmLinkedTree is based on an std::vector, this push can have triggered
reallocation of its internal memory buffer. However, as the value of
'def', which was computed on method entry, actually points to a property
of one of the cmDefinitions instances in cmMakefile::VarTree,
reallocation can invalidate the value of 'def' so that it cannot simply
be returned at the end of the function. The solution implemented here is
to simply lookup the value of 'def' again.
2016-03-23 16:17:36 -04:00
Brad King 1dc8486b40 Help: Organize and clarify `cmake_minimum_required` documentation
State more explicitly that `cmake_policy(VERSION)` is implied and
explain the effects it has.
2016-03-23 14:39:48 -04:00
Brad King b06e17da7b Help: Add notes for topic 'cmake-depend-in-project-only' 2016-03-23 14:03:01 -04:00
Brad King 525402450a Tests: Add test for CMAKE_DEPENDS_IN_PROJECT_ONLY variable 2016-03-23 14:03:01 -04:00
Erik Zenker 4527b9c416 FindBoost: Add support for IBM XL compiler 2016-03-23 13:41:42 -04:00
Taylor Braun-Jones ad140c6e1b VS: Put ALL_BUILD in the PREDEFINED_TARGETS_FOLDER 2016-03-23 13:22:15 -04:00
Taylor Braun-Jones f069be0548 VS: Fix default target support for targets nested inside a folder
It's not actually the first target in a `.sln` file that is treated as
the default startup project, but rather the first fully defined target.
2016-03-23 13:22:15 -04:00
Zack Galbreath 06b7f5d2ca CTest: Only apply the secondary test timeout once
This commit fixes a bug in the implementation of the test property
TIMEOUT_AFTER_MATCH.  The new timeout value was being applied
every time a line was output by the test after the match had been
encountered.  Now the new timeout value is only set once.

This commit also improves some output formatting related to this
property.
2016-03-23 12:09:41 -04:00
Brad King d196585bcb Merge topic 'CMakePackageConfigHelpers-relative-prefix'
fd31feb0 CMakePackageConfigHelpers: allow to specify a relative CMAKE_INSTALL_PREFIX
2016-03-23 11:19:31 -04:00
Brad King f29fd5bf69 Merge topic 'FindCUDA-verbatim'
72a97b7a FindCUDA: Fix regression in separate compilation (#16027)
2016-03-23 11:19:28 -04:00
Brad King 405766757c Merge topic 'use-cmXMLWriter'
51465da1 CPack/IFW: port to cmXMLWriter
754485af cmExtraEclipseCDT4Generator: port to cmXMLWriter
c45671b0 cmGlobalKdevelopGenerator: port to cmXMLWriter
dcdc270e cmExtraCodeLiteGenerator: port to cmXMLWriter
27e09764 cmExtraCodeBlocksGenerator: port to cmXMLWriter
d7407621 cmXMLWriter: add Doctype() method
dd27e313 cmXMLWriter: overload Element() method for empty elements
2016-03-23 11:19:19 -04:00
Brad King 0235eac04b Merge topic 'release-win64'
4cdd6363 Utilities/Release: Skip spurious Qt5Autogen test for nightly win64 binary
2016-03-23 11:19:17 -04:00
Daniel Pfeifer 51465da1ec CPack/IFW: port to cmXMLWriter 2016-03-23 11:18:16 -04:00
Daniel Pfeifer 754485afff cmExtraEclipseCDT4Generator: port to cmXMLWriter 2016-03-23 11:18:15 -04:00
Daniel Pfeifer c45671b0f1 cmGlobalKdevelopGenerator: port to cmXMLWriter 2016-03-23 11:18:15 -04:00
Kitware Robot 38caf1bb74 CMake Nightly Date Stamp 2016-03-23 00:01:06 -04:00
Brad King 6201c1a6ce Merge topic 'timeout_after_match'
de7afd29 Help: Add notes for topic 'timeout_after_match'
993e48d0 CTest: Optionally use a secondary test timeout after matching output
2016-03-22 16:09:28 -04:00
Attila Krasznahorkay b1e1aa1e6a Makefile: Optionally scan only source and build trees for dependencies
Add a `CMAKE_DEPENDS_IN_PROJECT_ONLY` variable to activate the behavior.
2016-03-22 16:04:15 -04:00
Sergiu Deitsch fd31feb03f CMakePackageConfigHelpers: allow to specify a relative CMAKE_INSTALL_PREFIX 2016-03-22 14:30:01 -04:00
Brad King 208524b822 Merge topic 'test-rename-VSSolution'
5c1f4da8 Tests: Rename RunCMake.{SolutionGlobalSections => VSSolution}
2016-03-22 13:04:24 -04:00