Commit Graph

10978 Commits

Author SHA1 Message Date
David Cole
5b00b2a201 Merge topic 'dev/fix-cache-variable-parsing-ambiguity'
8b143fa Condense parsing of cache entries
122ebf1 Support manual cache entries
90abc3a Use cmCacheManager to load entries from the cache
6fe8624 Fix parsing of cache variables without a type
2010-11-23 16:12:24 -05:00
David Cole
a30a83bc1d Merge topic 'imported-target-dependencies'
e01cce2 Allow add_dependencies() on imported targets (#10395)
bc7395c Merge branch 'vs-target-dependencies' into imported-target-dependencies
fd614e6 Use modern global dependency graph for VS < 8 deps
605f4bc Record edge type in global dependency graph
82596fc Merge branch 'vs8-direct-depends' into vs-target-dependencies
2010-11-23 16:11:57 -05:00
David Cole
0a5600af2d Merge topic 'link-library-parse-regex'
5fe3ac8 Prefer non-empty prefixes when matching lib names (#11468)
2010-11-23 16:11:43 -05:00
David Cole
525b528625 Merge topic 'CPackRPM-ComponentSupport'
66e86b4 CPack  fix kwstyle breakage and make CPackRPM backward compatible
2c84d16 CPackRPM  add basic component support to CPackRPM
2010-11-23 16:11:33 -05:00
David Cole
651120b7af Merge topic 'ImprovedDotSupport2'
78c86f4 Exclude targets from the graphviz file based on a regex
5ea1e4c Collect targets and libs on demand instead of in the ctor
2a5790a Use std::cout instead of fprintf
7ba2d36 Enable/disable generating graphs depending on the target type
84ce612 Move the code for generating dot-files into separate class cmGraphVizWriter
a60b099 Generate separate dot files for each target, and a big one with everything.
487bd57 Properly insert all targets, also those which don't link to anything.
de2b2bf Move the code for collecting targets and libraries into separate functions
f7d56df Remove trailing whitespace and minor formatting changes for the dot-code
2010-11-23 16:11:26 -05:00
KWSys Robot
40cb8a2373 KWSys Nightly Date Stamp 2010-11-23 00:10:02 -05:00
Ben Boeckel
8b143fab66 Condense parsing of cache entries
If a cache line is being parsed, it shouldn't matter whether it has a
type or not; just parse it however possible.
2010-11-22 15:45:30 -05:00
Ben Boeckel
122ebf1297 Support manual cache entries 2010-11-22 15:17:51 -05:00
Ben Boeckel
90abc3a027 Use cmCacheManager to load entries from the cache 2010-11-22 15:14:21 -05:00
Ben Boeckel
6fe8624b7f Fix parsing of cache variables without a type
These mainly come from the command line or manual entries in the
CMakeCache.txt file. We want to stop at the first '=' because this is
what is most likely to have been meant. The variable can be quoted if
the '=' is intended.

Caveat: What if one wants both '"' and '=' in a variable name?
2010-11-22 15:12:47 -05:00
KWSys Robot
a0739ac5ab KWSys Nightly Date Stamp 2010-11-22 00:10:26 -05:00
KWSys Robot
365beb2b16 KWSys Nightly Date Stamp 2010-11-21 00:10:03 -05:00
KWSys Robot
9054e598ef KWSys Nightly Date Stamp 2010-11-20 00:10:19 -05:00
Brad King
e01cce2869 Allow add_dependencies() on imported targets (#10395)
Imported targets do not themselves build, but we can follow dependencies
through them to find real targets.  This allows imported targets to
depend on custom targets that provide the underlying files at build
time.
2010-11-19 17:19:21 -05:00
Brad King
bc7395c096 Merge branch 'vs-target-dependencies' into imported-target-dependencies 2010-11-19 13:23:17 -05:00
KWSys Robot
acf60463de KWSys Nightly Date Stamp 2010-11-19 00:10:26 -05:00
Brad King
fd614e60b5 Use modern global dependency graph for VS < 8 deps
VS 7.1 and below have 2 behaviors that make the cmComputeTargetDepends
result difficult to use for solution-level dependencies.  Update the
method cmGlobalVisualStudioGenerator::ComputeTargetDepends to document
the behaviors and work around them.  Commit 1a0c166a (Store direct
dependencies in solutions for VS >= 8, 2010-08-20) isolated VS >= 8 from
this computation so those versions should be unaffected.

This change removes the last use of cmTarget::GetLinkLibraries for
purposes other than backward compatibility with legacy interfaces
(export_library_dependencies, VS 6 custom .dsp templates).  Now the
cmComputeTargetDepends results are used for all generators so global
target dependency computation is fully centralized.
2010-11-18 10:51:34 -05:00
Brad King
605f4bc097 Record edge type in global dependency graph
Each inter-target dependency may be a 'link' or 'util' dependency.
2010-11-18 10:51:00 -05:00
Brad King
5fe3ac86ee Prefer non-empty prefixes when matching lib names (#11468)
In cmComputeLinkInformation we match library names with a regular
expression, possibly extracting the 'lib' prefix.  The regex component
to match the prefix always allows an empty prefix to be matched, as in
"(lib|)".  Avoid every adding an empty prefix option earlier in the
regex, as in "(|lib|)", because it will be preferred and 'lib' will
never match.
2010-11-18 07:54:56 -05:00
KWSys Robot
da0a463f17 KWSys Nightly Date Stamp 2010-11-18 00:10:08 -05:00
KWSys Robot
b541b1213a KWSys Nightly Date Stamp 2010-11-17 00:10:02 -05:00
David Cole
cb727a20df Merge topic 'find-doc-init'
5303fbf Speedup find_* commands (#11412)
2010-11-16 14:46:38 -05:00
David Cole
c172ffef06 Merge topic 'cray-compiler'
53e76c8 Teach CMake about Cray C, C++, and Fortran compilers
34e1ac2 Create Fortran info variables for .mod behavior
2010-11-16 14:46:30 -05:00
David Cole
e19fa08ac9 Merge topic 'MakeCodeBlocksGeneratorNonVerbose2'
156ae39 Don't disable colors in the CodeBlocks generator and minor cleanup.
e547fa7 Remove the "early alpha stage" comments about Eclipse and C::B
a02987a Don't enforce VERBOSE makefiles for the CodeBlocks generator
7b1421b Remove trailing whitespace
2010-11-16 14:46:25 -05:00
David Cole
8593a9d010 Merge topic 'fix-FOLDER-plus-include_external_msproject'
b3cf739 Honor FOLDER on include_external_msproject targets (#11436)
2010-11-16 14:46:20 -05:00
David Cole
b61c5be3d7 Merge topic 'vs-intel-RuntimeLibrary'
22aec40 Set Intel .vfproj RuntimeLibrary attribute
3d79e7d Fix Intel .vfproj SubSystem attribute values
2010-11-16 14:46:12 -05:00
David Cole
e7674ae1f0 Merge topic 'vs8-direct-depends'
1a0c166 Store direct dependencies in solutions for VS >= 8
2010-11-16 14:45:53 -05:00
KWSys Robot
836c266731 KWSys Nightly Date Stamp 2010-11-16 00:10:03 -05:00
Eric NOULARD
66e86b4770 CPack fix kwstyle breakage and make CPackRPM backward compatible
backward compatible= No componentized RPM unless requested
using CPACK_RPM_COMP0NENT_INSTALL
2010-11-15 20:54:19 +01:00
KWSys Robot
40b9336b31 KWSys Nightly Date Stamp 2010-11-15 00:10:03 -05:00
Alex Neundorf
78c86f4542 Exclude targets from the graphviz file based on a regex
This commit adds support for a GRAPHVIZ_TARGET_IGNORE_REGEX variable
which can be set() in CMakeGraphVizOptions.cmake.
Targets matching this regex will be skipped when generating the graphviz
graphs.

Alex
2010-11-14 19:47:28 +01:00
Alex Neundorf
5ea1e4cb36 Collect targets and libs on demand instead of in the ctor
This is necessary for the next commit which requires that
the targets are collected after the settings have been read.

Alex
2010-11-14 19:37:03 +01:00
Alex Neundorf
2a5790a080 Use std::cout instead of fprintf
Alex
2010-11-14 19:33:12 +01:00
Alex Neundorf
7ba2d36585 Enable/disable generating graphs depending on the target type
In CMakeGraphVizOptions.cmake you can now set GRAPHVIZ_EXECUTABLES,
GRAPHVIZ_STATIC_LIBS, GRAPHVIZ_SHARED_LIBS and GRAPHVIZ_MODULE_LIBS
to TRUE or FALSE depending on whether you want graphs for the
targets of the respective types.

Alex
2010-11-14 19:30:58 +01:00
KWSys Robot
dabcb7b8e4 KWSys Nightly Date Stamp 2010-11-14 00:10:03 -05:00
Eric NOULARD
2c84d169b3 CPackRPM add basic component support to CPackRPM
basic means 1 RPM per component and no dependency handling
this implies some CPackGenerator refactoring
2010-11-13 17:56:36 +01:00
KWSys Robot
33f650a5c9 KWSys Nightly Date Stamp 2010-11-13 00:10:02 -05:00
Brad King
82596fcffc Merge branch 'vs8-direct-depends' into vs-target-dependencies 2010-11-12 12:42:50 -05:00
Brad King
5303fbf09e Speedup find_* commands (#11412)
Delay computation of the command documentation until it is needed.
It is wasteful to do it in the constructor on every call.

Inspired-By: Christian Ehrlicher <Ch.Ehrlicher@gmx.de>
2010-11-12 10:47:28 -05:00
Brad King
34e1ac2489 Create Fortran info variables for .mod behavior
Define CMAKE_Fortran_MODDIR_DEFAULT and CMAKE_Fortran_MODOUT_FLAG
variables to help some Fortran compilers generate .mod files in the
current working directory.
2010-11-12 09:03:49 -05:00
KWSys Robot
e6975fe82f KWSys Nightly Date Stamp 2010-11-12 00:10:04 -05:00
Alex Neundorf
156ae39905 Don't disable colors in the CodeBlocks generator and minor cleanup.
Since now the only users of SetToolSupportsColor() are gone, this
method is removed too.

Alex
2010-11-11 22:13:39 +01:00
Alex Neundorf
e547fa763b Remove the "early alpha stage" comments about Eclipse and C::B
Alex
2010-11-11 22:07:24 +01:00
Alex Neundorf
a02987a0df Don't enforce VERBOSE makefiles for the CodeBlocks generator
Instead of enforcing verbose makefile, now the generated build command
includes "VERBOSE=1" so the output will be verbose when building in
C::B.
Also removed the now unused setForceVerboseMakefiles().

Alex
2010-11-11 22:06:09 +01:00
Alex Neundorf
7b1421b885 Remove trailing whitespace
Alex
2010-11-11 22:02:07 +01:00
KWSys Robot
f4aa65cdf5 KWSys Nightly Date Stamp 2010-11-11 00:10:02 -05:00
David Cole
b3cf739e2c Honor FOLDER on include_external_msproject targets (#11436)
Add FOLDER property usage to the VSExternalInclude test
and inspect results manually to verify behavior.

Thanks to Jens Auer for the bug report.
2010-11-10 09:06:09 -05:00
KWSys Robot
c5762cf58c KWSys Nightly Date Stamp 2010-11-10 00:10:02 -05:00
Brad King
22aec406e6 Set Intel .vfproj RuntimeLibrary attribute
Look for the "/threads", "/libs:dll", and "/dbglibs" flags and convert
them to the proper RuntimeLibrary attribute value in the IDE.  This is
a 3-to-1 flag mapping and such needs special handling in the parser.
2010-11-09 17:54:40 -05:00
Brad King
3d79e7d58c Fix Intel .vfproj SubSystem attribute values
The SubSystem attribute value must be "subSystemConsole" or
"subSystemWindows", not "1" or "2".  Commit 20f49730 (Reset
platform/compiler info status for each language, 2010-09-28) exposed
this bug by (correctly) passing the /libs:dll flag to the compiler,
which chokes the linker if a value for "/subsystem:" is not given.
2010-11-09 17:48:18 -05:00