Commit Graph

28050 Commits

Author SHA1 Message Date
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
Brad King 36c275d857 Merge topic 'update-kwsys'
576ef8c5 KWSys: Tell Git not to export .gitattributes
c9709dff Merge branch 'upstream-kwsys' into update-kwsys
3b815ed2 KWSys 2015-05-12 (b1d560a0)
2015-05-14 10:27:44 -04:00
Brad King a86ddbe56e Merge topic 'FindHDF5-version-support'
56858178 FindHDF5: Add version support
4bd122ad FindHDF5: Check for a few H5pubconf*.h name variants
2015-05-14 10:27:42 -04:00
Brad King eb9323eb1a Merge topic 'FindJava-openjdk-8'
7953867b FindJava: Fix OpenJDK 8 version detection (#15565)
2015-05-14 10:27:40 -04:00
Kitware Robot ee58e94d62 CMake Nightly Date Stamp 2015-05-14 00:01:05 -04:00
Brad King 576ef8c56e KWSys: Tell Git not to export .gitattributes
KWSys upstream added an attribute to export .gitattributes so that
importing snapshots into the sources of other projects would bring along
the attributes.  However, we don't want to export them from CMake.
Drop .gitattributes entries not relevant to CMake.
2015-05-13 12:54:49 -04:00
Axel Huebl 5685817874 FindHDF5: Add version support
Detect the HDF5 version and set HDF5_VERSION just as we
detect HDF5_IS_PARALLEL from the header already.
2015-05-13 10:00:55 -04:00
Brad King 4bd122ad9c FindHDF5: Check for a few H5pubconf*.h name variants
Some distros package H5pubconf.h as "H5pubconf-32.h" or "H5pubconf-64.h"
depending on the architecture.  Look for all of these names.
2015-05-13 09:59:43 -04:00
Brad King c9709dffb0 Merge branch 'upstream-kwsys' into update-kwsys 2015-05-13 08:29:21 -04:00
KWSys Robot 3b815ed283 KWSys 2015-05-12 (b1d560a0)
Extract upstream KWSys using the following shell commands.

$ git archive --prefix=upstream-kwsys/ b1d560a0 | tar x
$ git shortlog --no-merges --abbrev=8 --format='%h %s' 34fceb50..b1d560a0
Brad King (1):
      b1d560a0 CPU: MIPS is biendian
2015-05-13 08:28:08 -04:00
Kitware Robot a6a9710fca CMake Nightly Date Stamp 2015-05-13 00:01:06 -04:00
Felix Geyer 7953867ba4 FindJava: Fix OpenJDK 8 version detection (#15565)
The openjdk-8 (8u45-b14-2) package on Debian unstable has extra
text after the version number components.  Match this and add it
to the reported version string.
2015-05-12 13:46:12 -04:00
Brad King 53bb51fc31 Merge topic 'ctest-no-make-i'
226df303 CTest: Stop telling 'make' to ignore errors with -i
28e7a135 Help: Fix build_command alternative signature docs
231601b6 build_command: Choose configuration consistently across signatures
2015-05-12 09:12:56 -04:00
Brad King 70d48e1287 Merge topic 'cpack-deb-component-dependencies'
1237d5fa Help: Add notes for topic 'cpack-deb-component-dependencies'
e3f522f6 CPack/DEB per component dependencies
2015-05-12 09:12:54 -04:00
Brad King a5bab6e1a4 Merge topic 'cpack-not-running-tests'
7c103be8 CPack: Enable DEB and RPM tests more reliably
2015-05-12 09:12:52 -04:00
Brad King ffd5d09225 Merge topic 'find_package-no-cmake-gui-paths'
1506f9ca find_package: Drop search in recent cmake-gui locations
8d484463 FindFLTK: Drop search in recent cmake-gui locations
2015-05-12 09:12:50 -04:00
Brad King 16d84111da Merge topic 'detect-c++14-missing-gets'
3307e10f Avoid using C++14 to build CMake if cstdio breaks
2015-05-12 09:12:48 -04:00
Brad King 733ca510a6 Merge topic 'doc-file-COPY-preserves-structure'
f39d26ca Help: Clarify file(COPY) directory semantics (#15561)
2015-05-12 09:12:46 -04:00
Brad King 55fe56444f Merge topic 'ExternalProject-improve-missing-source-error'
dcb18836 ExternalProject: Improve error when SOURCE_DIR is missing (#15560)
2015-05-12 09:12:43 -04:00
Brad King cca3bbde98 Merge topic 'ninja-gcc-windows'
cf8ce7a3 RC: Do not override MinGW Makefiles generator preference
ca658a45 Ninja: Use forward slashes for linking with any GCC on Windows (#15439)
2015-05-12 09:12:41 -04:00
Brad King 0f2658f62d Merge topic 'suppress-LNK4089-warning'
a1904934 CTestCustom: Suppress LNK4089 warning about RPCRT4
e228d66d CTestCustom: Suppress LNK4089 warning about ole32
2015-05-12 09:12:40 -04:00
Brad King 226df303f9 CTest: Stop telling 'make' to ignore errors with -i
Add policy CMP0061 to maintain compatibility for existing projects.
2015-05-12 09:06:49 -04:00
Brad King 28e7a135e0 Help: Fix build_command alternative signature docs
Do not specify that --config will not be added, because the
command does add it.
2015-05-12 09:06:49 -04:00
Brad King 231601b696 build_command: Choose configuration consistently across signatures
Teach the legacy two-argument signature to use CMAKE_CONFIG_TYPE
from the environment only if it is non-empty.  This makes behavior
consistent with the main signature.
2015-05-12 09:06:48 -04:00
Brad King 1237d5fa8c Help: Add notes for topic 'cpack-deb-component-dependencies' 2015-05-12 09:05:17 -04:00
Domen Vrankar 7c103be8de CPack: Enable DEB and RPM tests more reliably
CPack DEB and RPM generators were not used for some tests because
CPACK_BINARY_DEB and CPACK_BINARY_RPM variable were not set.  Fix this,
simplify generator selection in CTEST_RUN_CPackComponentsForAll, and fix
bugs that were detected after tests were run.
2015-05-12 08:56:34 -04:00
Kitware Robot df95367d7e CMake Nightly Date Stamp 2015-05-12 00:01:04 -04:00
Brad King cf8ce7a39e RC: Do not override MinGW Makefiles generator preference
Update logic added in commit 957c2aac (RC: Simplify selection of
resource compiler based on C/C++ toolchain, 2015-05-07) to avoid
overriding CMAKE_GENERATOR_RC.  The MinGW and MSYS Makefiles
generators use it to select a windres next to the compiler even
if it is not in the PATH.
2015-05-11 09:00:25 -04:00
Kitware Robot df0aa37a67 CMake Nightly Date Stamp 2015-05-11 00:01:05 -04:00
Kitware Robot ee3973e72a CMake Nightly Date Stamp 2015-05-10 00:01:05 -04:00
Kitware Robot c6a805d192 CMake Nightly Date Stamp 2015-05-09 00:01:11 -04:00
Raffi Enficiaud e3f522f6e4 CPack/DEB per component dependencies
Dependencies may now be set per component
2015-05-08 23:36:26 +02:00
Brad King 1506f9ca56 find_package: Drop search in recent cmake-gui locations
The find_package command, on Windows, has always searched build trees
recently visited by cmake-gui (or CMakeSetup at one time).  This was
done when the command was created with the intention of simplifying
workflows involving building multiple dependent projects.  However,
this behavior depends on recent developer interaction and therefore
can create different find results based on transient system states.
It can lead to surprising results and user confusion.

Since this behavior was first added CMake has gained many more search
options, better error messages when a package is not found, and a
package registry.  The latter in particular allows projects to make
their build trees available for dependent projects to find without
user intervention.  Therefore the originally intended workflow can
be achieved in other, more stable ways.

After the above evoluion of find_package we have now decided that
the magic search-where-cmake-gui-was behavior does more harm than
good.  Drop it.  We do not need a policy for this behavior change
because it only affects interactive use.
2015-05-08 11:27:02 -04:00
Brad King 8d48446372 FindFLTK: Drop search in recent cmake-gui locations
This is not done by any other find modules.
2015-05-08 11:26:56 -04:00
Thomas Herz ca658a456f Ninja: Use forward slashes for linking with any GCC on Windows (#15439)
Fix a condition forgotten by commit b3de0dfe (Ninja: Use forward slashes
for any GCC on Windows, 2015-05-07).
2015-05-08 11:20:10 -04:00
Brad King 3307e10fc4 Avoid using C++14 to build CMake if cstdio breaks
The GNU 4.8 standard library's cstdio header is not aware that C++14
honors C11's removal of "gets" from stdio.h and results in an error:

  /.../include/c++/4.8/cstdio:120:11: error: no member named 'gets' in the global namespace

Detect this problematic case and default to using C++11 instead of
C++14 for building CMake itself.
2015-05-08 11:04:21 -04:00
Brad King 6831f91a6c Merge topic 'doc-ctest-command-formatting'
695d6f62 Help: Revise ctest_* command documentation (#15559)
f8716c8b Help: Update cmake-generators(7) organization for GHS
2015-05-08 09:41:24 -04:00
Brad King 715b3edf7d Merge topic 'WCDH-CMP0054-safety'
65e6b115 WCDH: Fix condition when variables named "FILE" or "PREFIX" are defined
2015-05-08 09:41:22 -04:00
Brad King e38a2b5953 Merge topic 'ninja-gcc-windows'
20560e8d Ninja: Do not use newlines in response files with Windows GNU tools (#15439)
b3de0dfe Ninja: Use forward slashes for any GCC on Windows (#15439)
378c2a0e Ninja: Refactor detection of MinGW tools on Windows
957c2aac RC: Simplify selection of resource compiler based on C/C++ toolchain
2015-05-08 09:41:20 -04:00