Commit Graph

31955 Commits

Author SHA1 Message Date
Brad King 290913fab8 Merge topic 'iwyu-preparation'
1c2c6297 cmTargetLinkLibraryType: Extract from cmStandardIncludes.h
ffdc0a8e cmTypeMacro: Extract from cmStandardIncludes.h
e4eb88e2 cmCustomCommandLines: Extract from cmStandardIncludes.h
535ec2bf cmDocumentationEntry: Extract from cmStandardIncludes
c3819aca cmConfigure.h: Establish as 'include first' file
2016-06-16 09:46:49 -04:00
Brad King 84c0fdb192 Merge topic 'clean-up-cmMakefile-IssueMessage'
5bbcf758 cmIfCommand: Don't rely on NestedError logic to issue messages
262ce91e cmMakefile: Extract invoke result variables
2016-06-16 09:46:47 -04:00
Brad King 2701b519b1 Merge topic 'clean-up-Parser'
905e738f Parser: Out-of-line conditional code to cmMakefile
0a9094cd Parser: Issue file open error messages through dedicated API
2016-06-16 09:46:44 -04:00
Brad King ce62454019 Merge topic 'find_package-duplicate-search-paths'
919db25c cmFindPackageCommand: remove duplicate paths from error message
ebf18df5 cmFindPackageCommand: use iterators to loop over configurations
2016-06-16 09:46:42 -04:00
Daniel Pfeifer 1c2c629769 cmTargetLinkLibraryType: Extract from cmStandardIncludes.h 2016-06-16 09:26:50 -04:00
Daniel Pfeifer ffdc0a8e28 cmTypeMacro: Extract from cmStandardIncludes.h 2016-06-16 09:26:33 -04:00
Daniel Pfeifer e4eb88e21d cmCustomCommandLines: Extract from cmStandardIncludes.h 2016-06-16 09:25:22 -04:00
Roger Leigh 86bcdbcde5 FindIce: Support finding both release and debug libraries
Search for both release and debug library variants, and use
SelectLibraryConfigurations to choose the appropriate
library.  Also add both release and debug libraries to the
imported targets.
2016-06-16 12:23:37 +01:00
Kitware Robot 83ae79442c CMake Nightly Date Stamp 2016-06-16 00:01:06 -04:00
Daniel Pfeifer d645b03e9c cmOutputConverter: implement Shell__GetArgument using ostringstream
This removes the need to calculate the resulting string length
beforehand.
2016-06-15 23:44:37 +02:00
Roger Leigh 82ecc2a3a8 FindIce: Add versions 3.6.1 and 3.6.2 2016-06-15 15:35:06 +01:00
Kitware Robot 909d51bece CMake Nightly Date Stamp 2016-06-15 00:01:06 -04:00
Daniel Pfeifer ed5fa48d50 cmXMLWriter: use ifstream from KWSys 2016-06-14 23:26:16 +02:00
Daniel Pfeifer 24ab29b882 Prefer istringstream and ostringstream over stringstream.
Use istringsream for parsing, ostringstream for generation.
2016-06-14 22:37:36 +02:00
Daniel Pfeifer ab8b77dd33 Remove redundant arguments from fstream constructors
Don't pass the default value of the openmode parameter explicitly.
2016-06-14 22:28:55 +02:00
Daniel Pfeifer eb79fa7260 Access std::ios_base with std::ios
Just because it is shorter.
2016-06-14 22:23:08 +02:00
Chuck Atkins 90d114ed8c FindCUDA: Use the correct runtime in REQUIRED_VARS check
When enabling the CUDA static runtime, the current module always uses
the shared runtime in the REQUIRED_VARS check.  This change should
select the correct runtime to be checked for as required based on the
CUDA_USE_STATIC_CUDA_RUNTIME option.

Fixes #16096
2016-06-14 09:55:35 -04:00
Kitware Robot 33f74dc524 CMake Nightly Date Stamp 2016-06-14 00:01:10 -04:00
Daniel Pfeifer 535ec2bf1a cmDocumentationEntry: Extract from cmStandardIncludes 2016-06-13 22:41:29 +02:00
Daniel Pfeifer c3819acad2 cmConfigure.h: Establish as 'include first' file
At the moment, cmStandardIncludes.h needs to be included before any
standard includes because it disables some warnings that are caused
by the standard library of some compilers.  Move this responsibility
to the cmConfigure.h file.

Also add include guards to cmConfigure.h to make sure the file can be
included multiple times.
2016-06-13 22:37:28 +02:00
Brad King 1bafa0b3f5 Merge topic 'parent-scope-docs'
42fe7d21 Help: clarify PARENT_SCOPE behavior
2016-06-13 15:19:45 -04:00
Stephen Kelly 5bbcf758a1 cmIfCommand: Don't rely on NestedError logic to issue messages 2016-06-13 20:20:44 +02:00
Stephen Kelly 262ce91e8a cmMakefile: Extract invoke result variables
Make it more clear what is happening here.
2016-06-13 20:20:44 +02:00
Stephen Kelly 905e738ffe Parser: Out-of-line conditional code to cmMakefile
Simplify parser API.
2016-06-13 20:19:16 +02:00
Stephen Kelly 0a9094cd10 Parser: Issue file open error messages through dedicated API 2016-06-13 20:19:16 +02:00
Brad King 8d80c8961f Merge branch 'release' 2016-06-13 13:36:53 -04:00
Ben Boeckel 919db25c3b cmFindPackageCommand: remove duplicate paths from error message
Fixes #15252.
2016-06-13 11:16:12 -04:00
Ben Boeckel ebf18df580 cmFindPackageCommand: use iterators to loop over configurations 2016-06-13 11:16:10 -04:00
Brad King 0514fa2398 Merge branch 'release' 2016-06-13 10:28:44 -04:00
Brad King 9f3546bbb4 CMake 3.6.0-rc2 2016-06-13 10:28:02 -04:00
Brad King 473634eb1c Merge topic 'expose-cache-properties'
63c0e92c cmState: Expose list of properties of values in the cache
6eee2463 cmCacheEntry: Retrieve all properties of cache entries
120899c6 cmPropertyList: Add a way to retrieve all properties
7066218e cmake: Kill cmake::CacheManager and its getter
2016-06-13 10:03:05 -04:00
Ben Boeckel 42fe7d2150 Help: clarify PARENT_SCOPE behavior
Fixes #15093.
2016-06-13 09:55:17 -04:00
Brad King 4e66ca1952 Merge topic 'fix-cmake-ISP-violation'
23f87e81 cmake: Remove force from IssueMessage API
54c65d5f cmake: Extract DisplayMessage API.
2016-06-13 09:54:27 -04:00
Brad King 18e00ac7b9 Merge topic 'avoid-cmMakefile-IssueMessage-after-configure'
ea5324cd cmMakefile: Port messages for compile features to cmake
df8c3130 cmGlobalGenerator: Don't use cmMakefile::IssueMessage after configure
946d1e50 cmMakefile: Avoid IssueMessage after configure is finished
096c7754 cmLocalGenerator: Store Backtrace for the directory
2016-06-13 09:54:24 -04:00
Brad King 3b14a4bca4 Merge topic 'fix-Message-API-ISP-violation'
0a4af073 cmake: Issue message independent of cmMakefile definition
2016-06-13 09:54:20 -04:00
Brad King 941fbe31f5 Merge topic 'find-lib32'
896ad251 Teach find_library and find_package to search lib32 paths (#11260)
2016-06-13 09:54:17 -04:00
Brad King ff1cce464d Merge topic 'add-braces'
757b0ff5 Add missing braces around statements in header files
a16bf141 Add missing braces around statements.
bd9e551c PseudoMemcheck: revise style with clang-format.
2016-06-13 09:54:14 -04:00
Brad King 6b0ab86eb5 Merge topic 'bash-completion'
797c3c54 bash-completion: Add cpack --help-{manual,module,policy,property}
b08cae9b bash-completion: Add ctest --help-{manual,module,policy,property,variable}
48cb388e bash-completion: Fix cmake --help-policy lookup
f67afbdc bash-completion: Add cmake --help-manual
2016-06-13 09:54:11 -04:00
Brad King 7ce354d3ac Merge topic 'refactor-cmLocalGenerator-flags'
f62ed322 cmLocalGenerator: Add GetTargetDefines to get all defines for a target
853b1bb4 cmLocalGenerator: Constify AppendDefines and AddCompileDefinitions
2016-06-13 09:54:09 -04:00
Kitware Robot 06ee543c00 CMake Nightly Date Stamp 2016-06-13 00:01:05 -04:00
Stephen Kelly 23f87e8157 cmake: Remove force from IssueMessage API
The force parameter is ugly and makes the method harder to reason about
(issues the message ... but maybe it doesn't ... but then again you can
force it).  It is a violation of

 https://en.wikipedia.org/wiki/Interface_segregation_principle

and is the kind of thing described in a recent blog here:

 http://code.joejag.com/2016/anti-if-the-missing-patterns.html

 "Any time you see this you actually have two methods bundled into one.
  That boolean represents an opportunity to name a concept in your code."
2016-06-12 22:09:27 +02:00
Stephen Kelly 54c65d5fb2 cmake: Extract DisplayMessage API. 2016-06-12 22:08:47 +02:00
Stephen Kelly ea5324cd4b cmMakefile: Port messages for compile features to cmake 2016-06-12 19:01:45 +02:00
Stephen Kelly df8c3130d6 cmGlobalGenerator: Don't use cmMakefile::IssueMessage after configure 2016-06-12 19:01:45 +02:00
Stephen Kelly 946d1e50dc cmMakefile: Avoid IssueMessage after configure is finished 2016-06-12 19:01:45 +02:00
Stephen Kelly 096c7754b3 cmLocalGenerator: Store Backtrace for the directory
Don't rely on cmMakefile to provide that.  Use it to issue messages.
2016-06-12 19:01:45 +02:00
Stephen Kelly 0a4af0735f cmake: Issue message independent of cmMakefile definition
The makefile is only used when called by the cmMessageCommand, so inline
the use of it there.  It otherwise creates an undesirable dependency on
cmMakefile for issuing messages in the cmake instance, a violation of
the Interface Segregation Principle.

 https://en.wikipedia.org/wiki/Interface_segregation_principle

This also makes it more explicit that the variable definitions only
affect the message() command.  If an AUTHOR_WARNING is issued for any
other reason, it is not affected.  To affect that, it is necessary to
set the cache variable instead of the regular variable.

This is an unfortunate interface quirk, but one which can't be fixed
easily now.
2016-06-12 18:38:33 +02:00
Kitware Robot acf0c0f444 CMake Nightly Date Stamp 2016-06-12 00:01:09 -04:00
Daniel Pfeifer 757b0ff5dd Add missing braces around statements in header files 2016-06-11 09:49:00 +02:00
Kitware Robot d6e99fa834 CMake Nightly Date Stamp 2016-06-11 00:01:07 -04:00