Commit Graph

28070 Commits

Author SHA1 Message Date
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
Brad King 06d0cd53f2 Merge topic 'execute_process-merge-output'
f65bb82f execute_process: Improve stdout/stderr merging
2015-05-08 09:41:18 -04:00
Brad King ee15acd827 Merge topic 'update-kwsys'
31c218e6 Merge branch 'upstream-kwsys' into update-kwsys
ac94a796 KWSys 2015-05-05 (34fceb50)
2015-05-08 09:41:15 -04:00
Brad King f39d26caa7 Help: Clarify file(COPY) directory semantics (#15561)
State explicitly that directory structure is preserved.
2015-05-08 09:29:05 -04:00
Brad King dcb188363d ExternalProject: Improve error when SOURCE_DIR is missing (#15560)
Mention the SOURCE_DIR that we checked and found empty or missing
so that the user can see the full path to what we expected to find.
2015-05-08 09:20:43 -04:00
Brad King a190493414 CTestCustom: Suppress LNK4089 warning about RPCRT4 2015-05-08 08:50:33 -04:00
Kitware Robot 4566850bdd CMake Nightly Date Stamp 2015-05-08 00:01:28 -04:00
Brad King 695d6f62d3 Help: Revise ctest_* command documentation (#15559)
Revise documentation for the major dashboard client step ``ctest_*``
commands.  Modernize the documentation formatting.  Add some missing
options.
2015-05-07 16:10:20 -04:00
Brad King f8716c8b44 Help: Update cmake-generators(7) organization for GHS 2015-05-07 15:52:29 -04:00
Brad King f65bb82f36 execute_process: Improve stdout/stderr merging
Use the KWSys Process "MergeOutput" option to give the child process
the same pipe (or file) for both stdout and stderr.  This allows
natural merging of stdout and stderr together instead of merging
on arbitrary buffered read boundaries as before.
2015-05-07 14:40:38 -04:00
Brad King 31c218e6e1 Merge branch 'upstream-kwsys' into update-kwsys 2015-05-07 14:34:50 -04:00
KWSys Robot ac94a796f1 KWSys 2015-05-05 (34fceb50)
Extract upstream KWSys using the following shell commands.

$ git archive --prefix=upstream-kwsys/ 34fceb50 | tar x
$ git shortlog --no-merges --abbrev=8 --format='%h %s' 8c8b2273..34fceb50
Brad King (1):
      34fceb50 Process: Add option to merge stdout/stderr
2015-05-07 14:34:47 -04:00
Brad King ee1ddec4c1 Merge topic 'update-ctest_build-docs'
5731fb2e ctest_build: mention CTEST_BUILD_COMMAND in the docs
753da8c6 ctest_build: update the default target documentation
5ab896ae ctest_build: spruce up the documentation a bit
2015-05-07 14:32:11 -04:00
Brad King e4e09dee92 Merge topic 'update-kwsys'
a874700f Merge branch 'upstream-kwsys' into update-kwsys
71f38d06 KWSys 2015-05-05 (8c8b2273)
f6749f72 Merge branch 'upstream-kwsys' into update-kwsys
0c34ac2f KWSys 2015-05-04 (c2387a4b)
2015-05-07 14:25:43 -04:00
Brad King 8102417695 Merge topic 'cpack-rpm-debug-log-fix'
1a2a73a5 CPack/RPM fix output in debug log
2015-05-07 14:25:40 -04:00
Brad King 18527c4991 Merge topic 'vs-install-in-default-build'
a6e4e73d VS: Add option to put INSTALL target in .sln default build
562e69dd Tests: Enable devenv tests on VS >= 10
2015-05-07 14:25:37 -04:00
Brad King 6b9e2f7100 Merge topic 'cpack-deb-component-auto-discovery'
4588a169 CPack/DEB component dependency auto-discovery
2015-05-07 14:25:31 -04:00
Raffi Enficiaud 4588a1697f CPack/DEB component dependency auto-discovery
Dependency auto-discovery can now be set per component
2015-05-07 14:21:57 -04:00
Thomas Herz 20560e8dca Ninja: Do not use newlines in response files with Windows GNU tools (#15439)
Since commit v2.8.11~213^2 (Ninja: Avoid LNK1170 linker error, 2013-02-01)
we generate linker response files with "$in_newline" to support a large
number of object files with the MS link.exe tool.  However, the GNU linker
on Windows does not understand the newline endings that Ninja puts in the
response files.  Switch back to "$in" for that case.
2015-05-07 14:10:21 -04:00
Thomas Herz b3de0dfe93 Ninja: Use forward slashes for any GCC on Windows (#15439)
Any GCC compiler on a Windows host needs forward slashes, not just
those built for MinGW.
2015-05-07 14:07:20 -04:00
Brad King 378c2a0e86 Ninja: Refactor detection of MinGW tools on Windows
Check for CMAKE_COMPILER_IS_MINGW only after enabling a language when it
might actually be set.  Previously this worked by accident because the
check for working compiler or a second language enabled would cause the
code path to be taken.

Store UsingMinGW as an instance member of cmGlobalNinjaGenerator so that
it is reset on each reconfigure.  Otherwise cmake-gui cannot switch
between build trees for MinGW or non-MinGW tools.
2015-05-07 14:02:44 -04:00
Ben Boeckel 5731fb2e5e ctest_build: mention CTEST_BUILD_COMMAND in the docs 2015-05-07 13:05:54 -04:00
Ben Boeckel 753da8c6f1 ctest_build: update the default target documentation 2015-05-07 13:05:54 -04:00
Ben Boeckel 5ab896aede ctest_build: spruce up the documentation a bit
Adds markup and links to other sections.
2015-05-07 13:05:54 -04:00
Brad King 957c2aac7f RC: Simplify selection of resource compiler based on C/C++ toolchain
Revert the refactoring by commit v2.8.11~105^2~1 (Ninja: use MinGW
generator code in EnableLanguage, 2013-03-09) and move the MinGW-
specific logic back to the "MinGW Makefiles" generator.  Instead teach
the platform information modules for GNU and MSVC on Windows to set the
preferred RC compiler just before enabling the RC language.  This way
we choose the RC compiler based on the C/C++ toolchain that is actually
enabled.
2015-05-07 11:43:02 -04:00
Brad King e228d66d60 CTestCustom: Suppress LNK4089 warning about ole32 2015-05-07 09:37:34 -04:00
Brad King 65e6b1152f WCDH: Fix condition when variables named "FILE" or "PREFIX" are defined
Reported-by: Kevin Godby <godbyk@gmail.com>
2015-05-07 09:00:45 -04:00
Kitware Robot b3ae0609db CMake Nightly Date Stamp 2015-05-07 00:01:05 -04:00
Robert Goulet a6e4e73da3 VS: Add option to put INSTALL target in .sln default build
Add a CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD variable to control
this behavior.
2015-05-06 10:31:39 -04:00
Kitware Robot 3bc6f4f476 CMake Nightly Date Stamp 2015-05-06 00:01:06 -04:00
Brad King 2c5a1bff23 Merge topic 'refactor-cmPolicies'
013ada80 cmPolicies: Implement PolicyMap in terms of bitset.
be6664c2 cmPolicies: Implement abstraction for PolicyMap.
de211686 Port to static cmPolicies API.
13981f20 cmPolicies: Make all API static.
23e2bcc8 cmPolicies: Remove unused DefinePolicy method.
5641ba4f cmPolicies: Remove unused cmPolicy class.
3de54497 cmPolicies: Loop over all policies using enum constants.
387aff20 cmPolicies: Trivialize GetPolicyStatus method.
dbf680d6 cmPolicies: Use more-direct ID access.
8c204133 cmPolicies: Implement in terms of public API.
e3a8c029 cmPolicies: Make private method file-static.
cb765af0 cmPolicies: Implement short description access with XMacros.
5df267fa cmPolicies: Implement version check with XMacro.
2235cfeb cmPolicies: Implement id to version with XMacro.
05d84388 cmPolicies: Implement id to string conversion with XMacro.
6eaade8a cmPolicies: Introduce XMacro table for policy data.
...
2015-05-05 09:35:30 -04:00