Commit Graph

31359 Commits

Author SHA1 Message Date
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
Taylor Braun-Jones c05ea48545 VS: Improve unit test macros
Change `getFirstProject` macro to more flexible version
`getProjectNames`
2016-03-22 12:41:30 -04:00
Brad King f77ad2c736 Merge branch 'FindCUDA-verbatim' into release 2016-03-22 11:36:45 -04:00
Brad King de7afd2996 Help: Add notes for topic 'timeout_after_match' 2016-03-22 11:21:15 -04:00
Zack Galbreath 993e48d045 CTest: Optionally use a secondary test timeout after matching output
Allow a test N seconds to complete after we detect a matching line in
its output.  Activate this behavior with a new TIMEOUT_AFTER_MATCH test
property.
2016-03-22 11:17:55 -04:00
Brad King 41c17c1d2e Merge topic 'ghs-try_compile'
bf3e76d2 GHS: Fix try_compile (#15975)
2016-03-22 11:15:41 -04:00
Brad King 2f9e6551c0 Merge topic 'ninja-directory-targets'
9ead71df Help: Add notes for topic 'ninja-directory-targets'
e9bf8ec8 Ninja: Add test for `$subdir/all` targets
ca575fe9 Ninja: Add `$subdir/all` targets
2016-03-22 11:15:38 -04:00
Brad King 88450a6ac3 Merge topic 'TestBigEndian-log-output'
8e2aa6ca TestBigEndian: Log success to CMakeOutput.log, not CMakeError.log
2016-03-22 11:15:35 -04:00
Brad King 86eb327cda Merge topic 'fix-repeat-pkg-config'
6f4f9054 FindPkgConfig: set correctly named variables in cache (#15903)
2016-03-22 11:15:33 -04:00
Brad King d7cdec2d54 Merge topic 'add-bruce-c'
53c0dc2d Add support for Bruce C Compiler (BCC)
2016-03-22 11:15:30 -04:00
Brad King 72a97b7a76 FindCUDA: Fix regression in separate compilation (#16027)
Since commit v3.5.0-rc1~47^2 (FindCUDA: Support special characters in
path, 2016-01-15) our add_custom_command calls use VERBATIM so that
CMake will automatically quote special characters correctly.  Fix the
separate compilation code path to not add its own quoting when the
VERBATIM option will be used.
2016-03-22 11:05:02 -04:00
Brad King 9ead71df66 Help: Add notes for topic 'ninja-directory-targets' 2016-03-22 08:01:14 -04:00
Brad King e9bf8ec849 Ninja: Add test for `$subdir/all` targets 2016-03-22 08:01:14 -04:00
Davy Durham 78ec046130 VS: Add option to choose the `.sln` startup project (#15578)
Add a `VS_STARTUP_PROJECT` directory property to specify the project
that should be placed first in the `.sln` file so that it will be
selected as the default startup project.

Co-Author: Taylor Braun-Jones <taylor.braunjones@avigilon.com>
2016-03-22 07:57:00 -04:00
Brad King 4cdd636387 Utilities/Release: Skip spurious Qt5Autogen test for nightly win64 binary
This test fails spuriously too often and prevents the nightly binary
from finishing.  Simply skip it for the nightly binary to allow it
to complete more regularly.
2016-03-22 07:47:40 -04:00
Kitware Robot 1449b11e19 CMake Nightly Date Stamp 2016-03-22 00:01:06 -04:00
Paweł Stankowski 8e2aa6caef TestBigEndian: Log success to CMakeOutput.log, not CMakeError.log 2016-03-21 10:54:02 -04:00
Paweł Stankowski 53c0dc2dd2 Add support for Bruce C Compiler (BCC)
Revise C compiler detection code to be K&R compatible.
2016-03-21 10:51:50 -04:00
Geoff Viola bf3e76d214 GHS: Fix try_compile (#15975) 2016-03-21 10:35:01 -04:00
Daniel Pfeifer dcdc270eeb cmExtraCodeLiteGenerator: port to cmXMLWriter 2016-03-21 10:11:53 -04:00
Daniel Pfeifer 27e0976453 cmExtraCodeBlocksGenerator: port to cmXMLWriter 2016-03-21 10:11:53 -04:00
Daniel Pfeifer d740762181 cmXMLWriter: add Doctype() method 2016-03-21 10:11:53 -04:00
Daniel Pfeifer dd27e31351 cmXMLWriter: overload Element() method for empty elements 2016-03-21 10:11:53 -04:00
Brad King cd992170db Merge topic 'cpack-osx-optional-CoreServices'
d84ba668 CPack: Avoid using OS X CoreServices if compiler fails on header (#16021)
2016-03-21 09:39:24 -04:00
Brad King 8da0997872 Merge topic 'find-blas-lapack-OpenBLAS'
5f6b4f69 Find{BLAS,LAPACK}: Add support for OpenBLAS (#16024)
2016-03-21 09:39:21 -04:00
Brad King 63767a2486 Merge topic 'osx-no-carbon'
52777366 Drop unnecessary LSRequiresCarbon reference from Info.plist files
2016-03-21 09:39:19 -04:00
Brad King 2c3b8a1cd8 Merge branch 'fix-repeat-pkg-config' into release 2016-03-21 09:08:25 -04:00
Ben Boeckel 6f4f905483 FindPkgConfig: set correctly named variables in cache (#15903)
The fix in commit v3.5.0-rc1~27^2 (FindPkgConfig: set standard variables
in the cache, 2016-01-20) added the wrong variable name to the cache.
The test was only testing that the cache variable existed, not that it
also had the correct value.  Update the test to ensure that the cache
value matches the local variable value.

Reported-by: Bernd Lörwald
2016-03-21 08:58:12 -04:00
Kitware Robot bbab373b00 CMake Nightly Date Stamp 2016-03-21 00:01:04 -04:00
Kitware Robot 33594f20fa CMake Nightly Date Stamp 2016-03-20 00:01:07 -04:00
Kitware Robot a9cb00cd50 CMake Nightly Date Stamp 2016-03-19 00:01:05 -04:00