18159 Commits

Author SHA1 Message Date
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
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
Kitware Robot
b3ae0609db CMake Nightly Date Stamp 2015-05-07 00:01:05 -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
Brad King
82a55ff916 Merge topic 'refactor-cmMakefile-constructor'
42142d4f cmMakefile: Inline Intialize method in constructor
f39f0c0a cmMakefile: Initialize SuppressWatches member before use
2015-05-05 09:35:23 -04:00
Kitware Robot
9e3181a112 CMake Nightly Date Stamp 2015-05-05 00:01:05 -04:00
Stephen Kelly
013ada80ea cmPolicies: Implement PolicyMap in terms of bitset. 2015-05-04 22:32:21 +02:00
Stephen Kelly
be6664c208 cmPolicies: Implement abstraction for PolicyMap.
Hide the detail that it is a std::map.
2015-05-04 22:32:21 +02:00
Stephen Kelly
de21168612 Port to static cmPolicies API. 2015-05-04 22:32:20 +02:00
Stephen Kelly
13981f2068 cmPolicies: Make all API static. 2015-05-04 22:32:20 +02:00
Stephen Kelly
23e2bcc8db cmPolicies: Remove unused DefinePolicy method.
Policies are no longer defined at runtime.
2015-05-04 22:32:20 +02:00
Stephen Kelly
5641ba4fca cmPolicies: Remove unused cmPolicy class. 2015-05-04 22:32:20 +02:00
Stephen Kelly
3de5449703 cmPolicies: Loop over all policies using enum constants. 2015-05-04 22:32:19 +02:00
Stephen Kelly
387aff200c cmPolicies: Trivialize GetPolicyStatus method.
It would be possible to implement this with an XMacro and switch
statement, but every codepath currently would still return WARN.
2015-05-04 22:32:19 +02:00
Stephen Kelly
dbf680d670 cmPolicies: Use more-direct ID access. 2015-05-04 22:32:19 +02:00
Stephen Kelly
8c204133e5 cmPolicies: Implement in terms of public API. 2015-05-04 22:32:19 +02:00
Stephen Kelly
e3a8c0291e cmPolicies: Make private method file-static. 2015-05-04 22:32:19 +02:00
Stephen Kelly
cb765af049 cmPolicies: Implement short description access with XMacros. 2015-05-04 22:32:18 +02:00
Stephen Kelly
5df267fa1d cmPolicies: Implement version check with XMacro. 2015-05-04 22:32:18 +02:00
Stephen Kelly
2235cfebee cmPolicies: Implement id to version with XMacro. 2015-05-04 22:32:18 +02:00
Stephen Kelly
05d8438860 cmPolicies: Implement id to string conversion with XMacro. 2015-05-04 22:32:18 +02:00
Stephen Kelly
6eaade8a82 cmPolicies: Introduce XMacro table for policy data.
Use it to populate the policy enum.
2015-05-04 22:32:18 +02:00
Stephen Kelly
fdca04db68 cmPolicies: Implement more-compact IsPolicyNewerThan. 2015-05-04 22:32:17 +02:00
Stephen Kelly
a7ff972751 cmPolicies: Parse string for id conversion.
Remove now-unused PolicyStringMap.
2015-05-04 22:32:17 +02:00
Brad King
d3b36a90b6 Merge topic 'truncate-snapshots'
83dc483e cmState: Truncate snapshot data in Initialize.
2015-05-04 11:02:25 -04:00
Brad King
0d167b3e60 Merge topic 'add-cmMakefile-GetGlobalGenerator'
a0836ed9 Port to cmMakefile::GetGlobalGenerator.
cbf143bb cmComputeTargetDepends: Use simpler global generator access.
040491fc cmComputeLinkDepends: Remove unused local generator.
0bb6dbe0 cmMakefile: Extract an accessor for the global generator.
e1bdf5f5 cmMakefile: Use GetCMakeInstance.
efcca935 cmMakefile: Simplify GetCMakeInstance implementation.
2015-05-04 11:02:23 -04:00
Brad King
1ef88dcd46 Merge topic 'refactor-cmDefinitions-Get'
6c7dad41 cmDefinitions: Make Get method static.
a7ce0c7b cmDefinitions: Make GetInternal method static.
7a5039fa cmDefinitions: Use static member without this->.
191573f7 cmDefinitions: Remove Parent pointer.
8b1745a1 cmDefinitions: Accept varStack iterators in Get API.
2015-05-04 11:02:21 -04:00
Brad King
8403c8da2c Merge topic 'mingw32-make-backslash-workaround'
bb6663ca Makefile: Workaround mingw32-make trailing backslash trouble (#15546)
2015-05-04 11:02:18 -04:00
Brad King
42142d4fd2 cmMakefile: Inline Intialize method in constructor
Since commit 80909041 (cmMakefile: Disable copy constructor, 2015-04-18)
the only call to cmMakefile::Initialize is in one constructor.  Inline
it and drop the separate method.
2015-05-04 10:22:01 -04:00
Brad King
f39f0c0aec cmMakefile: Initialize SuppressWatches member before use
In commit 86f3cd0f (cmMakefile: Require the localGenerator in the
constructor, 2015-04-27) we added use of GetDefinition to the
Initialize method.  Set SuppressWatches before calling this method
since GetDefinition checks it.
2015-05-04 10:22:01 -04:00
Kitware Robot
e0222dda14 CMake Nightly Date Stamp 2015-05-04 00:01:06 -04:00
Stephen Kelly
83dc483e4e cmState: Truncate snapshot data in Initialize.
When Configure is executed multiple times with the same cmake
instance (either using CTest --two-config or a interactive gui), the
location and structural data was preserved though it would not be used
again.  Fix that by clearing the data in a method called early in
the configure step.
2015-05-03 20:36:29 +02:00
Stephen Kelly
a0836ed978 Port to cmMakefile::GetGlobalGenerator. 2015-05-03 11:42:00 +02:00
Stephen Kelly
cbf143bb76 cmComputeTargetDepends: Use simpler global generator access. 2015-05-03 11:41:59 +02:00
Stephen Kelly
040491fc58 cmComputeLinkDepends: Remove unused local generator. 2015-05-03 11:41:59 +02:00
Stephen Kelly
0bb6dbe0c6 cmMakefile: Extract an accessor for the global generator.
Both for convenience, and because cmMakefile should not be the
way to get access to the local generator, so that should go away
in the future.
2015-05-03 11:41:59 +02:00
Stephen Kelly
e1bdf5f5b2 cmMakefile: Use GetCMakeInstance. 2015-05-03 11:41:59 +02:00
Stephen Kelly
efcca9353f cmMakefile: Simplify GetCMakeInstance implementation.
No callers handle the possibility that it can return null, and that
is no longer possible anyway.
2015-05-03 11:05:27 +02:00
Stephen Kelly
953d1b00af cmPolicies: Make private method file-static. 2015-05-03 10:09:10 +02:00
Stephen Kelly
2c10494ab3 cmPolicies: Remove runtime check for programming errors. 2015-05-03 10:08:50 +02:00
Stephen Kelly
48f9fd39ad cmPolicies: Remove unused forward declaration. 2015-05-03 10:08:35 +02:00
Stephen Kelly
fd0aa7434b cmPolicies: Remove unused static data. 2015-05-03 10:08:04 +02:00
Stephen Kelly
a3291fe8ec cmPolicies: Remove unused header. 2015-05-03 10:07:58 +02:00
Stephen Kelly
a6fb6db49d cmPolicies: Fix values for policies 57-60. 2015-05-03 10:07:48 +02:00
Kitware Robot
6cd6d50871 CMake Nightly Date Stamp 2015-05-03 00:01:08 -04:00
Kitware Robot
22a707e861 CMake Nightly Date Stamp 2015-05-02 00:01:06 -04:00
Stephen Kelly
6c7dad41d9 cmDefinitions: Make Get method static. 2015-05-01 19:45:05 +02:00
Stephen Kelly
a7ce0c7bc0 cmDefinitions: Make GetInternal method static.
For some reason, using recursion here is faster to configure ParaView
than using a loop.  Probably some compiler optimization is inhibited
by using a loop.

Co-Author: Brad King <brad.king@kitware.com>
2015-05-01 19:44:35 +02:00
Stephen Kelly
7a5039fa6c cmDefinitions: Use static member without this->. 2015-05-01 19:36:03 +02:00