Commit Graph

28142 Commits

Author SHA1 Message Date
Brad King af1ea52f0c Merge topic 'cpack-deb-reworked-docs'
efab8050 CPack/DEB: reworked documentation
2015-05-18 09:56:15 -04:00
Brad King 9b11b040c8 Merge topic 'doc-cmake_minimum_required-not-in-function'
e5f8ead5 Help: Document behavior of cmake_minimum_required in a function
2015-05-18 09:56:13 -04:00
Brad King 639620eec4 CTestCustom: Suppress HP-UX preprocessor concatenation warning
The HP compiler on HP-UX 11.11 warns:

 Warning (anachronism) 823: ".../test_INT_format.h", line 194 # Redundant
 preprocessing concatenation operation results in two valid preprocessing
 tokens. Depending on this implementation defined behavior will result in
 non-portable code.
       TEST_C(INT32_C, -0x55000000, i32, int32_t, uint32_t)
       ^^^^^^
 Warning (anachronism) 823: ".../test_INT_format.h", line 196 # Redundant
 preprocessing concatenation operation results in two valid preprocessing
 tokens. Depending on this implementation defined behavior will result in
 non-portable code.
       TEST_C(INT64_C, -0x5500000000000000, i64, int64_t, uint64_t)
       ^^^^^^

There is likely a subtle problem with the way one of the system-provided type
macros is defined but the test passes despite the warning.  Simply suppress it.
2015-05-18 09:25:51 -04:00
Kitware Robot 09a3d21d71 CMake Nightly Date Stamp 2015-05-18 00:01:06 -04:00
Stephen Kelly f170985e7a cmDefinitions: Make the ClosureKeys method static.
For consistency with all other closure-related methods.
2015-05-17 16:50:18 +02:00
Stephen Kelly 98c5c90361 cmDefinitions: Centralize knowledge of iterator type.
Currently we process a list of definitions, but that will change.
2015-05-17 16:50:18 +02:00
Stephen Kelly 7872201bf6 cmDefinitions: Remove internal MakeClosure method.
There is no need to have a separate method, or to pass an external
set to it.
2015-05-17 16:50:18 +02:00
Stephen Kelly 820777af03 Tests: Don't rely on ordering of targets in maps. 2015-05-17 11:19:20 +02:00
Kitware Robot fa85829712 CMake Nightly Date Stamp 2015-05-17 00:01:11 -04:00
Stephen Kelly fa9eb814b3 cmLocalGenerator: Remove redundant path access. 2015-05-16 08:12:02 +02:00
Stephen Kelly 1933f3d1a3 cmLocalGenerator: Remove redundant path conversions.
The methods just called store the paths in already-converted form.
2015-05-16 08:12:02 +02:00
Stephen Kelly 9e4b6cc2ce cmState: Store computed relative paths to to current directories. 2015-05-16 08:12:02 +02:00
Stephen Kelly 991f5e4968 cmState::Snapshot: Store components for current directories.
Remove this responsibility from cmLocalGenerator.
2015-05-16 08:12:01 +02:00
Stephen Kelly 57bdc1a2f7 cmState: Compute and store directory components.
There is no need to duplicate these in all cmLocalGenerators.

Rename the symbols according to current conventions.

Add explicit calls to Set{Source,Binary}Directory with empty strings
in order to trigger the population of the components containers with
the current working directory in cmLocalGenerator.  Having
directories set to empty is a special case in CMake, which is relied
on for the `if(CMAKE_BINARY_DIR)` condition at the end of
CMakeDetermineSystem.cmake.
2015-05-16 08:11:33 +02:00
Stephen Kelly 2a44acb937 cmExecutionStatus: Remove inheritance of cmObject.
It is not needed.
2015-05-16 07:06:59 +02:00
Stephen Kelly c8c341690f cmExecutionStatus: De-virtualize API.
It is clearly not required.
2015-05-16 07:06:39 +02:00
Stephen Kelly 921d74d855 AutoGen: Don't iterate over a container while populating it.
The InitializeAutogenTarget creates new targets and adds them to the
Targets container on the makefile.  In this method, we have a reference
to that container and we are iterating over it.  That happens to work
with hash_map, but it fails with undefined behavior when using the
std::unordered_map from libstdc++-4.9 (and likely others).
2015-05-16 06:54:31 +02:00
Kitware Robot ebf8a41984 CMake Nightly Date Stamp 2015-05-16 00:01:07 -04:00
Stephen Kelly cf7f03e522 cmGlobalUnixMakefileGenerator3: Host the DefineWindowsNULL. 2015-05-16 05:20:36 +02:00
Stephen Kelly e9b134b95d cmGlobalUnixMakefileGenerator3: Host the include directive.
There is no sense in copying this to each cmLocalGenerator.
2015-05-16 05:20:12 +02:00
Stephen Kelly 24613d8b45 cmLocalGenerator: Remove unused method. 2015-05-16 05:18:32 +02:00
Stephen Kelly b659d161da cmGlobalGenerator: Add NVI wrapper to create local generator. 2015-05-16 05:18:25 +02:00
Raffi Enficiaud efab80501e CPack/DEB: reworked documentation 2015-05-15 23:07:49 +02:00
Brad King e5f8ead50b Help: Document behavior of cmake_minimum_required in a function
Add a note to the cmake_minimum_required documentation about the
limits of calling it in a function.
2015-05-15 14:48:15 -04:00
Brad King 2e4ea0c055 Merge topic 'refactor-cmLocalGenerator'
ce167b54 cmMakefile: Handle CMP0014 before configuring the generator.
7baef756 cmLocalGenerator: Assert that there is a parent.
63255342 cmMakefile: Remove redundant variable set.
894961af cmMakefile: Use the state to determine the parent directory.
115e9199 Use new top-level check abstraction.
c5059c90 cmLocalGenerator: Add abstraction to check if top-level.
b17686d2 cmGlobalGenerator: Move some flags from cmLocalGenerator.
ed41a8e7 cmLocalGenerator: Port loops to cmState::Snapshot.
48a9e91b cmState: Add an accessor for Parent snapshot and a validity check.
e7f7c2e2 cmLocalGenerator: Convert two recursive methods to loops.
c5cb3a73 cmLocalGenerator: Get project directories from the cmState.
76b59831 cmLocalGenerator: Initialize state before creating cmMakefile.
34c9ee2e cmLocalGenerator: Require a global generator in the constructor.
3837c483 Tests: Add case for 'ctest' run with bad CTestTestfile
b317b38d cmGlobalBorlandMakefileGenerator: Do not inherit from NMake generator
94867698 Don't use a cmLocalGenerator instance to call static methods.
...
2015-05-15 11:22:36 -04:00
Brad King 912dff6253 Merge topic 'disallow-install-of-export'
b85d3b66 install: Disallow installing export() result.
501c237a install: Use an intermediate filesVector variable.
2015-05-15 11:22:29 -04:00
Brad King e0a2be659f Merge topic 'fix-tests-in-usr-local'
d430cb7c Tests: Fix failures when running under the default install prefix (#15566)
332ee3e3 Tests: Fix CheckSourceTree test when build is under source (#15566)
2015-05-15 11:22:27 -04:00
Brad King 1911cb2173 Merge topic 'FindSquish-sh-exit'
12b85b17 FindSquish: Avoid bash-specific behavior in test script (#15568)
2015-05-15 11:22:26 -04:00
Konstantin Podsvirov 342d15cbc2 Update packaging of CMake for QtIFW 2.0 2015-05-15 11:02:49 -04:00
Konstantin Podsvirov 9a0ba4d24a CPackIFW: Add QtIFW 2.0 support
Add variables:

- CPACK_IFW_FRAMEWORK_VERSION
- CPACK_IFW_PACKAGE_ALLOW_NON_ASCII_CHARACTERS
- CPACK_IFW_PACKAGE_ALLOW_SPACE_IN_PATH
- CPACK_IFW_PACKAGE_CONTROL_SCRIPT
- CPACK_IFW_PACKAGE_MAINTENANCE_TOOL_INI_FILE
- CPACK_IFW_PACKAGE_MAINTENANCE_TOOL_NAME
- CPACK_IFW_PACKAGE_START_MENU_DIRECTORY
- CPACK_IFW_VERBOSE
2015-05-15 11:02:49 -04:00
Kitware Robot f6a41a4414 CMake Nightly Date Stamp 2015-05-15 00:01:06 -04:00
Stephen Kelly b85d3b66c6 install: Disallow installing export() result. 2015-05-14 21:38:29 +02:00
Stephen Kelly ce167b546d cmMakefile: Handle CMP0014 before configuring the generator. 2015-05-14 21:26:13 +02:00
Stephen Kelly 7baef75649 cmLocalGenerator: Assert that there is a parent.
If the CMakeLists.txt file does not exist, there must be a parent.
The case for the top-level of the project is already handled in
cmake::DoPreConfigureChecks.
2015-05-14 21:04:17 +02:00
Stephen Kelly 63255342c6 cmMakefile: Remove redundant variable set.
The variable is initialized by the constructor already.
2015-05-14 20:57:24 +02:00
Stephen Kelly 894961af16 cmMakefile: Use the state to determine the parent directory.
Do not depend on the local generator for that.
2015-05-14 20:57:21 +02:00
Stephen Kelly 115e919982 Use new top-level check abstraction. 2015-05-14 20:47:36 +02:00
Stephen Kelly c5059c9000 cmLocalGenerator: Add abstraction to check if top-level.
Move from the cmLocalNinjaGenerator.  Fix the case of the name.
2015-05-14 20:44:55 +02:00
Stephen Kelly b17686d2bb cmGlobalGenerator: Move some flags from cmLocalGenerator.
These flags are global, and so they belong here instead of being
set on each local generator.
2015-05-14 20:36:28 +02:00
Stephen Kelly ed41a8e7b4 cmLocalGenerator: Port loops to cmState::Snapshot.
Make this code less dependent on being part of cmLocalGenerator,
where it doesn't really belong.
2015-05-14 20:36:28 +02:00
Stephen Kelly 48a9e91b02 cmState: Add an accessor for Parent snapshot and a validity check. 2015-05-14 20:36:28 +02:00
Stephen Kelly e7f7c2e208 cmLocalGenerator: Convert two recursive methods to loops. 2015-05-14 20:36:28 +02:00
Stephen Kelly c5cb3a734d cmLocalGenerator: Get project directories from the cmState.
Make this class and cmMakefile less interdependent.
2015-05-14 20:36:28 +02:00
Stephen Kelly 76b598319f cmLocalGenerator: Initialize state before creating cmMakefile.
Access the state from the local generator in the cmMakefile.
2015-05-14 20:36:28 +02:00
Stephen Kelly 34c9ee2ed7 cmLocalGenerator: Require a global generator in the constructor.
Port generator factory methods to pass it.
2015-05-14 20:36:27 +02:00
Brad King 3837c48334 Tests: Add case for 'ctest' run with bad CTestTestfile 2015-05-14 20:36:27 +02:00
Brad King b317b38d33 cmGlobalBorlandMakefileGenerator: Do not inherit from NMake generator
The Borland generator re-implements every method the NMake generator
does, so there is no reason to inherit this way.  Instead inherit
directly from cmGlobalUnixMakefileGenerator3 like all the other
makefile generators do.
2015-05-14 20:30:55 +02:00
Stephen Kelly 9486769866 Don't use a cmLocalGenerator instance to call static methods. 2015-05-14 20:30:09 +02:00
Stephen Kelly a3139d4b15 cmLocalGenerator: Remove EscapeForShellOldStyle to only caller. 2015-05-14 20:30:09 +02:00
Stephen Kelly 443f041c2f cmLocalGenerator: Remove unused members. 2015-05-14 20:30:09 +02:00