Commit Graph

30467 Commits

Author SHA1 Message Date
Stephen Kelly 91411641a7 Move ComputeLinkType out of cmTarget.
Keep it out of the way, so that it does not become part of cmGeneratorTarget,
but where it can be used to implement CMP0003.
2015-10-21 00:52:22 +02:00
Stephen Kelly 6d94078e62 cmGeneratorTarget: Move IsDLLPlatform from cmTarget. 2015-10-21 00:52:22 +02:00
Stephen Kelly 3ebc62850c cmGeneratorTarget: Move HaveWellDefinedOutputFiles from cmTarget. 2015-10-21 00:52:22 +02:00
Stephen Kelly 311018e5ad cmGeneratorTarget: Move GetExportMacro from cmTarget. 2015-10-21 00:52:22 +02:00
Stephen Kelly c0969b1033 cmMakeDepend: Inline into inheriting class.
Devirtualize the API.
2015-10-21 00:41:53 +02:00
Stephen Kelly 6a1e73281f cmMakeDepend: Inline into only user. 2015-10-21 00:41:26 +02:00
Stephen Kelly 00f50b006c cmMakeDepend: Inline into header. 2015-10-21 00:39:51 +02:00
Stephen Kelly 215cd21a02 cmGeneratorTarget: Provide direct access to the backtrace. 2015-10-21 00:37:03 +02:00
Stephen Kelly 1df8bd3ab0 cmGlobalGenerator: Port IsRootOnlyTarget to cmGeneratorTarget. 2015-10-21 00:37:01 +02:00
Stephen Kelly 83703bda7d cmGeneratorTarget: Copy IsExecutableWithExports from cmTarget. 2015-10-21 00:36:09 +02:00
Stephen Kelly 3df749af55 Remove vestigial declarations. 2015-10-21 00:19:57 +02:00
Stephen Kelly 3029c27e46 cmMakeDepend: Use public cmMakefile API. 2015-10-21 00:19:45 +02:00
Stephen Kelly 04b6bb1676 cmLocalGenerator: Simplify semantic of adding generator targets.
Don't store on the global generator as a side effect.  Update clients to adapt.
2015-10-20 23:58:49 +02:00
Stephen Kelly 400e3d19fc cmLocalGenerator: Don't store imported generator targets
No consumers need them.  This makes GetGeneratorTargets more comparable
to cmMakefile::GetTargets, which does not include imported targets.
2015-10-20 23:58:48 +02:00
Stephen Kelly 726e461b38 CMP0063: Split unit test by target type.
Don't rely on the order of warnings for targets being deterministic.
2015-10-20 23:58:48 +02:00
Stephen Kelly d6a03b475e cmIfCommand: Issue CMP0054 warning with appropriate context. (#15802)
Commit v3.4.0-rc1~494^2~4 (cmMakefile: Add API for elseif to create
backtrace., 2015-05-29) removed the use of cmMakefileCall to push/pop
execution context in favor of a new way to create backtraces.

However, a call to cmMakefile::GetExecutionContext is still invoked to
issue a contextual CMP0054 warning through cmConditionEvaluator.  As
the elseif is not part of the call stack, this resulted in trying to
access an empty vector.

Avoid the attempt at getting execution context when evaluating elseif by
constructing a context and backtrace on behalf of the cmConditionEvaluator
in all cases.
2015-10-20 23:40:12 +02:00
Brad King 123de1914c Ninja: Refactor selection of 'deps = ' value for MS-compatible toolchains
Set variables in the platform information modules to tell the Ninja
generator what deps type to use instead of hard-coding conditions in the
generator itself.
2015-10-20 14:14:20 -04:00
Brad King 9afbb733ec Merge topic 'use-generator-target'
d8f8940b cmGeneratorTarget: Move IsCFBundleOnApple from cmTarget.
7550879f cmGeneratorTarget: Move IsXCTestOnApple from cmTarget.
88d10d55 cmGeneratorTarget: Copy IsAppBundleOnApple from cmTarget.
b5f5de70 cmGeneratorTarget: Copy IsFrameworkOnApple from cmTarget.
8e20ea6e cmGeneratorTarget: Move IsLinkable from cmTarget.
a527abf0 Xcode: Port internal API to cmGeneratorTarget.
eb3be7d6 cmGeneratorTarget: Move GetExportName from cmTarget.
d231c31b Export: Port internal API to cmGeneratorTarget.
e6661282 Export: Port internal utility to cmGeneratorTarget.
2b9cc1e2 Export: Port some API to cmGlobalGenerator.
97062ac2 cmInstallTargetGenerator: Port GetInstallFilename to cmGeneratorTarget.
6a72b3c8 Export: Port interface to cmGeneratorTarget.
1293c156 cmExportTryCompileFileGenerator: Port to cmGeneratorTarget.
381e7afd cmExportSet: Store a cmGeneratorTarget.
65911cae cmGlobalGenerator: Compute export() related classes early.
37ab74a6 cmLocalGenerator: Port PList handling to cmGeneratorTarget.
...
2015-10-20 11:16:45 -04:00
Brad King 5ec8064b76 Merge topic 'FindFLEX-DEFINES_FILE'
4565a2e1 Help: Add notes for topic 'FindFLEX-DEFINES_FILE'
db3d8505 FindFLEX: Add a DEFINES_FILE option to specify flex-generated header (#15781)
c26ff8a9 FindFLEX: Fix typo in ADD_FLEX_BISON_DEPENDENCY errors
30710b8d FindFLEX: Use CMAKE_PARSE_ARGUMENTS to parse arguments
2015-10-20 11:16:42 -04:00
Brad King 1fcc01f207 Merge topic 'fix_delphi_coverage'
3cd2e0e2 Tests: Fix DelphiCoverage test file selection
2015-10-20 11:16:40 -04:00
Brad King fca389e78c Merge topic 'update-kwsys'
c6d75294 Merge branch 'upstream-kwsys' into update-kwsys
9c6a7203 KWSys 2015-10-16 (a7e5360f)
2015-10-20 11:16:38 -04:00
Joseph Snyder 3cd2e0e2d5 Tests: Fix DelphiCoverage test file selection
The HTML file for the Delphi Code coverage was being found by the
Dashboard coverage run of CMake itself.  Switch it to be a configured
file to eliminate this extra reading.
2015-10-20 11:13:25 -04:00
Kitware Robot 693141c40e CMake Nightly Date Stamp 2015-10-20 00:01:07 -04:00
Stephen Kelly d8f8940bc6 cmGeneratorTarget: Move IsCFBundleOnApple from cmTarget. 2015-10-19 20:27:41 +02:00
Stephen Kelly 7550879f57 cmGeneratorTarget: Move IsXCTestOnApple from cmTarget. 2015-10-19 20:27:41 +02:00
Stephen Kelly 88d10d55ac cmGeneratorTarget: Copy IsAppBundleOnApple from cmTarget.
Leave the cmTarget method behind for now to implement cmInstallCommand.
2015-10-19 20:27:41 +02:00
Stephen Kelly b5f5de70c0 cmGeneratorTarget: Copy IsFrameworkOnApple from cmTarget.
Leave the cmTarget method behind for now to implement cmInstallCommand.
2015-10-19 20:27:41 +02:00
Stephen Kelly 8e20ea6ef2 cmGeneratorTarget: Move IsLinkable from cmTarget. 2015-10-19 20:27:40 +02:00
Brad King 4565a2e1c2 Help: Add notes for topic 'FindFLEX-DEFINES_FILE' 2015-10-19 13:19:11 -04:00
Chris Davies db3d85059c FindFLEX: Add a DEFINES_FILE option to specify flex-generated header (#15781) 2015-10-19 13:10:43 -04:00
Brad King 383abcdc35 Merge branch 'release' 2015-10-19 13:06:54 -04:00
Brad King 919f26ffba Merge topic 'doc-add_test-requirements'
f19d6a2c Help: Document add_test expectations of test command (#15798)
2015-10-19 13:05:21 -04:00
Brad King 22bfb39dea Merge branch 'doc-add_test-requirements' into release 2015-10-19 11:45:11 -04:00
Brad King ed77504d89 CMakeForceCompiler: Deprecate this module and its macros
This module was added by commit v2.6.0~1489 (...supporting embedded
compilers..., 2007-07-02) to avoid needing to build the compiler id
detection source on toolchains that need special flags or linker files
to produce executables.  Since then CMake has learned other ways to
identify such compilers (e.g. passing vendor-specific version flags and
checking for vendor-specific banners in the output).  Furthermore, CMake
now detects a lot more than just the compiler id during language
initialization in order to support things like <LANG>_STANDARD and
COMPILE_FEATURES.  Therefore CMakeForceCompiler is no longer a viable
approach because it skips such detection.

One remaining challenge to support toolchains that require special
linker files is to build the test for a working compiler, compiler ABI
detection binary, and other try_compile cases.  This will have to be
worked out as such cases are encountered.
2015-10-19 11:09:27 -04:00
Brad King f19d6a2c95 Help: Document add_test expectations of test command (#15798) 2015-10-19 11:07:01 -04:00
Chris Davies c26ff8a90b FindFLEX: Fix typo in ADD_FLEX_BISON_DEPENDENCY errors 2015-10-19 09:55:37 -04:00
Chris Davies 30710b8d32 FindFLEX: Use CMAKE_PARSE_ARGUMENTS to parse arguments 2015-10-19 09:46:25 -04:00
Brad King c6d75294b2 Merge branch 'upstream-kwsys' into update-kwsys 2015-10-19 09:16:32 -04:00
KWSys Robot 9c6a7203fb KWSys 2015-10-16 (a7e5360f)
Extract upstream KWSys using the following shell commands.

$ git archive --prefix=upstream-kwsys/ a7e5360f | tar x
$ git shortlog --no-merges --abbrev=8 --format='%h %s' ed82989c..a7e5360f
Jan Niklas Hasse (1):
      a7e5360f Terminal: Force color output when CLICOLOR_FORCE is set != 0
2015-10-19 09:16:26 -04:00
Kitware Robot bf7d21b0cd CMake Nightly Date Stamp 2015-10-19 00:01:05 -04:00
Stephen Kelly a527abf099 Xcode: Port internal API to cmGeneratorTarget. 2015-10-18 16:29:30 +02:00
Stephen Kelly eb3be7d688 cmGeneratorTarget: Move GetExportName from cmTarget. 2015-10-18 16:29:30 +02:00
Stephen Kelly d231c31b98 Export: Port internal API to cmGeneratorTarget. 2015-10-18 16:29:30 +02:00
Stephen Kelly e666128243 Export: Port internal utility to cmGeneratorTarget. 2015-10-18 16:29:30 +02:00
Stephen Kelly 2b9cc1e248 Export: Port some API to cmGlobalGenerator. 2015-10-18 16:29:30 +02:00
Stephen Kelly 97062ac268 cmInstallTargetGenerator: Port GetInstallFilename to cmGeneratorTarget. 2015-10-18 16:29:30 +02:00
Stephen Kelly 6a72b3c84e Export: Port interface to cmGeneratorTarget. 2015-10-18 16:29:29 +02:00
Stephen Kelly 1293c1561a cmExportTryCompileFileGenerator: Port to cmGeneratorTarget. 2015-10-18 16:29:29 +02:00
Stephen Kelly 381e7afd36 cmExportSet: Store a cmGeneratorTarget.
Set the member at compute time from the stored name.
2015-10-18 16:29:29 +02:00
Stephen Kelly 65911cae4d cmGlobalGenerator: Compute export() related classes early.
Simplify CMP0024 handling.
2015-10-18 16:29:29 +02:00