Commit Graph

28535 Commits

Author SHA1 Message Date
Stephen Kelly 647488570b cmTarget: Replace PolicyStatus members with PolicyMap.
sizeof(cmTarget) goes from 856 to 840 with GNU libstdc++ 5.1.
2015-06-07 09:29:31 +02:00
Stephen Kelly 6f148e4a48 cmTarget: Use method abstraction for policy status. 2015-06-07 09:29:31 +02:00
Stephen Kelly 5181fae264 cmPropertyMap: Remove chaining logic.
The chaining logic doesn't belong to the container, and the
CMakeInstance pointer doesn't need to be in cmPropertyMap.

Size goes from 56 to 48 bytes with GNU libstdc++-5.1.
2015-06-07 09:29:31 +02:00
Stephen Kelly 3ac4b90bfd cmPropertyMap: Require a non-empty name parameter.
The cmGetPropertyCommand already checks for this.
2015-06-07 09:29:30 +02:00
Stephen Kelly 7c0aa672fe cmPropertyMap: Remove scope parameter from API where not used. 2015-06-07 09:29:30 +02:00
Stephen Kelly 9058e27a43 Constify property definition API. 2015-06-07 09:29:30 +02:00
Stephen Kelly 1c48edf8fc cmProperty: Remove needless Name member.
Size goes from 72 to 40 bytes with GNU libstdc++-5.1.
2015-06-07 09:29:29 +02:00
Stephen Kelly 93cc2eef38 cmPolicies: Store all statuses in a single bitset.
Currently there are an optimal number of policies (64) such that
there are no wasted bits.  When another policy is added, the
cmPolicyMap will grow from 40 bytes to 80, and occupy 45.  By storing
all in a single bitset, we stay under the cache line size of 64 bytes
until there are 512 policies in a range.
2015-06-07 09:29:29 +02:00
Kitware Robot cb1a9c7b9c CMake Nightly Date Stamp 2015-06-07 00:01:03 -04:00
Stephen Kelly f573bd22e4 cmLocalGenerator: Add Feature API from cmMakefile. 2015-06-06 15:44:17 +02:00
Stephen Kelly ccbc225913 cmGeneratorTarget: Move Feature API from cmTarget. 2015-06-06 15:44:16 +02:00
Stephen Kelly 44a8115797 cmPolicies: Replace UNDEFINED bitset with WARN bitset.
Might as well use the existing concept.
2015-06-06 10:09:45 +02:00
Stephen Kelly 1981c9718b cmMakefile: Simplify InitializeFromParent method.
Provide a parent instead of requiring it to be computed through
the cmLocalGenerator.
2015-06-06 09:35:55 +02:00
Stephen Kelly 353e422b2a cmMakefile: Remove unused GetPolicies method. 2015-06-06 09:35:55 +02:00
Stephen Kelly 00bfa04748 cmMakefile: Out-of-line the cmMakefileCall. 2015-06-06 09:31:16 +02:00
Stephen Kelly db74ce5820 cmMakefile: Inline PushScope into PushFunctionScope.
Make it possible to group the various methods here a different way.
2015-06-06 09:30:45 +02:00
Stephen Kelly 59e21ffa13 Port static calls from cmLocalGenerator to cmOutputConverter. 2015-06-06 09:15:58 +02:00
Stephen Kelly 242dcc2c22 cmListFileBacktrace: Replace local generator with cmState::Snapshot.
Construct cmOutputConverter only when needed.
2015-06-06 09:15:57 +02:00
Stephen Kelly 1cff330b0f cmTarget: Port to cmOutputConverter. 2015-06-06 09:15:57 +02:00
Stephen Kelly 2f1bd62b23 cmCustomCommandGenerator: Port to cmOutputConverter. 2015-06-06 09:15:57 +02:00
Stephen Kelly 0f2a132437 cmCommandArgumentParserHelper: Port to cmOutputConverter. 2015-06-06 09:15:56 +02:00
Stephen Kelly 4d8b79ad7e cmComputeLinkInformation: Port to cmOutputConverter. 2015-06-06 09:15:56 +02:00
Stephen Kelly 8680520fea cmMakefile: Make the cmState::Snapshot accessible. 2015-06-06 09:15:56 +02:00
Stephen Kelly 6d7abb6326 cmOutputConverter: Extract from cmLocalGenerator.
The Convert methods never belonged to the local generator concept, so
split them out now.  The cmOutputConverter is cheap to construct and
destroy, so it can be instantiated where needed to perform
conversions.  This will allow further decoupling of cmLocalGenerator
from the configure step.

Inherit cmLocalGenerator from cmOutputConverter for the purpose of
source compatibility.
2015-06-06 09:15:55 +02:00
Kitware Robot 50a1bd3df1 CMake Nightly Date Stamp 2015-06-06 00:01:04 -04:00
Brad King 092f1539af Merge topic 'update-kwsys'
bccbe281 Merge branch 'upstream-kwsys' into update-kwsys
6cafd8ed KWSys 2015-06-03 (8533a79b)
2015-06-05 08:28:39 -04:00
Nils Gladitz cdf2cba3e7 VS: Use cmUuid RFC 4122 compliant hash based UUID generation 2015-06-05 09:17:17 +02:00
Kitware Robot 8d0347b571 CMake Nightly Date Stamp 2015-06-05 00:01:10 -04:00
Stephen Kelly ca140c2e89 cmMakefile: Create a unified raii for macro scopes. 2015-06-04 22:08:23 +02:00
Stephen Kelly d5dc4169ac cmMakefile: Create a unified raii for function scopes. 2015-06-04 22:08:23 +02:00
Stephen Kelly 4e5c70abe2 cmState: Extract a cmLinkedTree container adaptor.
This will be used to contain most of the content of the cmState
in several different trees.  Refer to the BuildsystemDirectory
state from the SnapshotData state.  Currently these trees have
the same structure, but that will change when we have more snapshot
types.
2015-06-04 21:20:59 +02:00
Stephen Kelly 7b9c75860d cmState: Group BuildsystemDirectory state together in a struct.
It needs to be snapshotted independently of other state.
2015-06-04 20:44:37 +02:00
Stephen Kelly 1b323949fe cmState: Extend Snapshot concept with a SnapshotType.
Store it together with the Parent position.
2015-06-04 20:44:37 +02:00
Stephen Kelly a824415724 cmState::Snapshot: Provide accessor for the cmState. 2015-06-04 20:20:25 +02:00
Stephen Kelly 1f4ef39603 cmLocalGenerator: Remove some commented lines of code.
They've been commented out for a decade, which seems long enough.
2015-06-04 19:25:37 +02:00
Brad King 91cd014d64 Merge branch 'release' 2015-06-04 09:28:44 -04:00
Brad King bccbe281ff Merge branch 'upstream-kwsys' into update-kwsys 2015-06-04 09:22:53 -04:00
KWSys Robot 6cafd8ed0b KWSys 2015-06-03 (8533a79b)
Extract upstream KWSys using the following shell commands.

$ git archive --prefix=upstream-kwsys/ 8533a79b | tar x
$ git shortlog --no-merges --abbrev=8 --format='%h %s' 61e0419f..8533a79b
Zack Galbreath (1):
      8533a79b SystemInformation: Add GetLoadAverage() method
2015-06-04 09:22:48 -04:00
Brad King 0886880e3b Merge topic 'cmMakefile-Configure'
7657e8b1 cmMakefile: Introduce a local cmMakefile variable.
4e8f242d cmMakefile: Store unconfigured cmMakefiles.
d65e0123 cmMakefile: Implement ConfigureSubDirectory in terms of cmMakefile.
f059ed16 cmMakefile: Move Configure responsibility from cmLocalGenerator.
a653611d cmake: Replace CurrentLocalGenerator concept with CurrentMakefile.
69a038a9 cmMakefile: Refactor directories specified with the subdirs command.
08637970 cmLocalGenerator: ComputeObjectMaxPath just before generating.
27e11c6f Merge Configure state with GeneratingBuildSystem state.
363caa2f cmLocalGenerator: De-virtualize Configure().
2015-06-04 09:13:35 -04:00
Brad King d6fe79f3ab Merge topic 'remove-CMAKE_USE_RELATIVE_PATHS'
6e570f85 cmLocalGenerator: Remove 'optional' parameter from Convert.
3d8c6cd9 cmLocalGenerator: Remove obsolete method.
e44e6bcc Port away from obsolete method.
1335992c Remove CMAKE_USE_RELATIVE_PATHS variable.
2015-06-04 09:13:33 -04:00
Brad King 5a1c8806bf Merge topic 'rename-cmState-API'
cf1233a0 cmState: Rename GetParent method.
942df88b cmState: Rename CreateSnapshot method.
da28f115 cmState: Add CreateBaseSnapshot method.
2015-06-04 09:13:31 -04:00
Brad King b49aef6b10 Merge topic 'minor-cleanups'
eb7b6f6d cmVariableWatchCommand: Simplify error reporting.
499ebb65 cmListFileBacktrace: Internalize the step of making paths relative.
80b433b0 cmGlobalGenerator: Don't use else after a return.
52919ac8 cmMakefile: Make cmListFileBacktrace default constructible.
b68f2ea8 cmMakefile: Add API for elseif to create backtrace.
17e13f0a cmMakefile: Simplify CMP0000 handling.
2015-06-04 09:13:27 -04:00
Brad King 94070b8dfa Merge topic 'ctest-merge-test-output'
721b7e3e CTest: Capture test stdout/stderr through one pipe (#15600)
2015-06-04 09:13:25 -04:00
Brad King 2b083b19eb Merge topic 'vs-deterministic-guid'
c85367f4 VS: Compute project GUIDs deterministically
2015-06-04 09:13:23 -04:00
Brad King 5ec8a04302 Merge topic 'CPackDeb-dpkg-shlibdeps-check-flag'
39fc3ed7 CPackDeb: Check dpkg-shlibdeps --ignore-missing-info flag
54a95f5f CPackDeb: Check dpkg-shlibdeps version more robustly
2015-06-04 09:13:21 -04:00
Stephen Kelly 7657e8b1df cmMakefile: Introduce a local cmMakefile variable. 2015-06-04 09:06:42 -04:00
Stephen Kelly 4e8f242d17 cmMakefile: Store unconfigured cmMakefiles.
Not cmLocalGenerators.
2015-06-04 09:06:42 -04:00
Stephen Kelly d65e01235d cmMakefile: Implement ConfigureSubDirectory in terms of cmMakefile. 2015-06-04 09:06:42 -04:00
Stephen Kelly f059ed165b cmMakefile: Move Configure responsibility from cmLocalGenerator.
The generator should only have a function at generate time.
2015-06-04 09:06:41 -04:00
Stephen Kelly a653611db0 cmake: Replace CurrentLocalGenerator concept with CurrentMakefile. 2015-06-04 09:06:41 -04:00