Commit Graph

588 Commits

Author SHA1 Message Date
Brad King 0d0b9b52f8 Merge topic 'cmState-ProjectName'
637c56b4 cmGlobalGenerator: Implement FillProjectMap in terms of cmState.
b3f2299e cmState: Move ProjectName from cmMakefile.
6ce940ac cmMakefile: Use std::string in ProjectName API.
e8c0341d cmMakefile: Out-of-line GetProjectName.
2015-08-27 10:04:09 -04:00
Stephen Kelly 637c56b4e0 cmGlobalGenerator: Implement FillProjectMap in terms of cmState. 2015-08-25 19:57:44 +02:00
Stephen Kelly be56feb618 cmGlobalGenerator: Extract new IsExcluded overload. 2015-08-24 20:03:29 +02:00
Stephen Kelly 45f5200396 cmGlobalGenerator: Implement IsExcluded in terms of cmState::Snapshot. 2015-08-24 20:03:29 +02:00
Stephen Kelly 9b44018d52 cmGlobalGenerator: Convert IsExcluded to loop. 2015-08-24 20:03:29 +02:00
Stephen Kelly 5f05b56284 cmGlobalGenerator: Refactor IsExcluded.
Make it easier to convert it to a loop.
2015-08-24 20:03:29 +02:00
Stephen Kelly 95925a60fc cmGlobalGenerator: Don't use else after return. 2015-08-24 20:03:29 +02:00
Stephen Kelly 2394584ce2 cmGlobalGenerator: Rename progress initializer method. 2015-08-23 18:05:13 +02:00
Stephen Kelly b9eb3cd140 cmGlobalGenerator: Move LG to target map to subclass.
This is the only user.
2015-08-23 18:05:01 +02:00
Stephen Kelly f5d2b7a694 cmGlobalGenerator: Remove clearance of map.
It is always cleared before being re-populated.
2015-08-23 17:49:11 +02:00
Brad King 9e51147646 Merge topic 'global-generator-makefiles'
6d8a125e cmQtAutoGenerators: Prefer a generator to access global generator.
5f66900e cmGlobalGenerator: Port Find API to cmMakefile.
c5b8841f cmGlobalGenerator: Create global targets from cmMakefiles.
8f75ea3b cmGlobalGenerator: Port global target creation to cmMakefile.
56f0540b cmGlobalGenerator: Port Configure-time check to cmMakefile.
19b546ef cmGlobalGenerator: Base final target property computation on Makefiles.
f8be9ba9 cmGlobalGenerator: Base progress on Makefiles, not LocalGenerators.
bc1097e3 cmExportLibraryDependenciesCommand: Port to cmMakefile.
204aecdf cmGlobalGenerator: Port configure-time code to cmMakefile.
3dd6f0a5 cmake: Port configure-time code to cmMakefile.
73e4df99 cmGlobalGenerator: Store a container of cmMakefiles.
19369937 cmGeneratorTarget: Port internal type to cmGeneratorTarget.
32f131b0 cmGeneratorTarget: Prefer the local generator to access the global.
2015-08-11 08:47:10 -04:00
Brad King 6e5953e9a4 Merge topic 'use-generator-target'
29886ce7 cmTarget: Use a simpler delete algorithm.
197f4de1 cmTarget: Split storage of compile definitions from genexes.
44e071ae cmTarget: Split storage of compile features from genexes.
772ecef4 cmTarget: Split storage of compile options from genexes.
1f54bc1c cmTarget: Split storage of include directories from genexes.
7568199b cmTarget: Request only the link libraries where needed.
10040601 cmLinkImplementationLibraries: Move to namespace scope.
d9da6ee2 cmLinkItem: Split to separate file.
27252b24 cmComputeLinkInformation: Simplify generator object access.
2015-08-11 08:47:08 -04:00
Stephen Kelly 1f54bc1cf3 cmTarget: Split storage of include directories from genexes. 2015-08-07 17:06:15 +02:00
Stephen Kelly 5f66900e71 cmGlobalGenerator: Port Find API to cmMakefile. 2015-08-07 04:10:29 +02:00
Stephen Kelly c5b8841fd9 cmGlobalGenerator: Create global targets from cmMakefiles. 2015-08-07 04:10:29 +02:00
Stephen Kelly 8f75ea3b5e cmGlobalGenerator: Port global target creation to cmMakefile. 2015-08-07 04:10:29 +02:00
Stephen Kelly 56f0540b51 cmGlobalGenerator: Port Configure-time check to cmMakefile.
This uses no generate-time state.
2015-08-07 04:10:29 +02:00
Stephen Kelly 19b546ef76 cmGlobalGenerator: Base final target property computation on Makefiles. 2015-08-07 04:10:29 +02:00
Stephen Kelly f8be9ba9c2 cmGlobalGenerator: Base progress on Makefiles, not LocalGenerators. 2015-08-07 04:10:28 +02:00
Stephen Kelly 204aecdf82 cmGlobalGenerator: Port configure-time code to cmMakefile. 2015-08-07 04:10:28 +02:00
Stephen Kelly 73e4df99cb cmGlobalGenerator: Store a container of cmMakefiles.
For use at configure-time.
2015-08-07 04:10:28 +02:00
Stephen Kelly dd11f72ced cmGlobalGenerator: Base exclusion computation on cmGeneratorTarget. 2015-08-07 00:32:15 +02:00
Brad King 370e2c6785 Merge topic 'refactor-evaluation-files'
12c3f248 cmGeneratorExpressionEvaluationFile: Require generator context.
6c0e9ee2 cmMakefile: Store EvaluationFiles.
2015-08-06 09:38:22 -04:00
Brad King 25ec835571 Merge topic 'fix-windows-version-detection'
d4736d53 Windows: Fix CMAKE_HOST_SYSTEM_VERSION on Windows >= 8.1 (#15674)
2015-08-03 09:11:30 -04:00
Stephen Kelly 6c0e9ee276 cmMakefile: Store EvaluationFiles.
Relieve the cmGlobalGenerator of this responsibility.  Evaluate
the generator expressions in the context of the cmLocalGenerator.
2015-08-01 13:07:11 +02:00
Brad King d4736d53cd Windows: Fix CMAKE_HOST_SYSTEM_VERSION on Windows >= 8.1 (#15674)
The GetVersionEx API is deprecated, so try RtlGetVersion first.

Co-Author: Christian Maaser
2015-07-31 09:12:41 -04:00
Stephen Kelly e5e5297018 cmInstallGenerator: Add a Compute() virtual hook. 2015-07-30 08:28:31 +02:00
Stephen Kelly 0368552d7f cmGlobalGenerator: Move QtAutogen handling to Compute(). 2015-07-30 08:28:31 +02:00
Stephen Kelly ff1019bfac cmGlobalGenerator: Move generation object creation to Compute(). 2015-07-30 08:28:30 +02:00
Stephen Kelly 2e94cba356 cmGlobalGenerator: Move FinalizeTargetCompileInfo to Compute(). 2015-07-29 10:43:33 -04:00
Stephen Kelly fb9355c50e cmGlobalGenerator: Return from Compute whether to generate. 2015-07-29 10:43:33 -04:00
Stephen Kelly 29e8b7bfcc cmGlobalGenerator: Create a new Compute step before generation.
Replace the DoGenerate method.
2015-07-29 10:43:33 -04:00
Stephen Kelly 1ef9b2b600 cmGlobalGenerator: Remove the TargetManifest member. 2015-07-29 10:43:32 -04:00
Brad King 98d6e9ec2d Merge topic 'use-generator-target'
57f03e59 Port some of the cmExportFileGenerator API to cmGeneratorTarget.
57ab0f70 Port cmExportBuildFileGenerator to cmGeneratorTarget.
570938cb cmExportTryCompileFileGenerator: Create cmGeneratorTargets.
ec38e4c8 Move GetFullPath to cmGeneratorTarget
dfb025bf Move GetLocationForBuild to cmGeneratorTarget.
9f2dca80 Move GetLocation to cmGeneratorTarget.
c7a8e74b Always access target location from a cmGeneratorTarget instance.
5b60eaf6 cmTarget: Restore the ImportedGetLocation method.
50b17a61 cmIncludeCommand: Populate the cmGeneratorTargets in deprecated path.
ba266858 cmTarget: Create cmGeneratorTargets before reading deprecated LOCATION.
5ab3a946 cmTarget: Inline GetLocation into deprecated callers.
496f4cd0 cmGlobalGenerator: Create cmGeneratorTargets before QtAutomoc.
de80993a cmGlobalGenerator: Create cmGeneratorTargets earlier.
611220f7 cmTarget: Use reliable test for CMP0024 and CMP0026 OLD.
bbad6ba5 cmLocalGenerator: Remove unused AddCustomCommandToCreateObject method.
e4dc83ad cmLocalGenerator: Remove unused AddBuildTargetRule method.
...
2015-07-28 10:08:50 -04:00
Stephen Kelly 570938cbfd cmExportTryCompileFileGenerator: Create cmGeneratorTargets.
This is not a deprecated behavior, but only requires IMPORTED targets
be made.
2015-07-27 21:59:03 +02:00
Stephen Kelly 496f4cd07d cmGlobalGenerator: Create cmGeneratorTargets before QtAutomoc.
Add cmGeneratorTargets as needed in the QtAutomoc processing.
2015-07-27 21:58:49 +02:00
Stephen Kelly de80993a20 cmGlobalGenerator: Create cmGeneratorTargets earlier. 2015-07-27 21:58:49 +02:00
Stephen Kelly 58811998fb cmGlobalGenerator: Add global targets at the end of Configure.
Rather than at the start of Generate.
2015-07-27 21:57:28 +02:00
Stephen Kelly 57a69f9341 cmGlobalGenerator: Extract method to create generator objects. 2015-07-27 20:09:39 +02:00
Stephen Kelly 0e0258c8b9 cmGlobalGenerator: Split creation of generator object from initialization. 2015-07-27 20:09:38 +02:00
Stephen Kelly a8e5d838ed cmCPackPropertiesGenerator: Require cmLocalGenerator in API. 2015-07-27 20:09:38 +02:00
Stephen Kelly 8d336875b3 cmMakefile: Use Ranges for buildsystem property access.
Don't return vector copies.
2015-07-22 20:25:48 +02:00
Stephen Kelly d6239507b2 cmMakefile: Split accessors for compile definitions and origins. 2015-07-22 20:25:45 +02:00
Brad King ef97d4429f Merge topic 'use-generator-target'
d4a8a554 cmGlobalGenerator: Map local generators to generator targets.
faec4e61 cmComputeTargetDepends: Change API to use cmGeneratorTarget.
2015-07-02 09:06:17 -04:00
Stephen Kelly d4a8a554ea cmGlobalGenerator: Map local generators to generator targets. 2015-07-01 19:46:19 +02:00
Stephen Kelly faec4e611d cmComputeTargetDepends: Change API to use cmGeneratorTarget. 2015-07-01 19:46:19 +02:00
Stephen Kelly f346d88d10 cmMakefile: Avoid invoking EnforceDirectoryLevelRules.
This is part of the CMP0000 implementation and only needs to be invoked
for top-level buildsystem files currently.
2015-06-30 23:14:20 +02:00
Brad King 327490e698 enable_language: Allow CMakeDetermine<LANG>Compiler module to fail early
If the module reports a FATAL_ERROR, skip the rest of the steps to
enable the language to avoid unnecessary following error messages.
2015-06-29 16:18:32 -04:00
Stephen Kelly a3b210fd6c cmGeneratorTarget: Require a cmLocalGenerator to construct. 2015-06-22 13:23:45 -04:00
Stephen Kelly 8ec60c675a cmGlobalGenerator: Create GeneratorTargets with a local generator. 2015-06-22 13:23:45 -04:00