Commit Graph

11689 Commits

Author SHA1 Message Date
Brad King 6b61c04330 Merge topic 'try-compile-min-version'
2afb820 Write full version into try_compile CMakeLists
2010-12-16 14:00:24 -05:00
Brad King ed9979f931 Merge topic 'link-depend-def-file'
3e27997 Make link rule depend on ".def" file (#11014)
2010-12-16 14:00:17 -05:00
Brad King 419302e2d6 Merge topic 'doc-target_link_libraries-scope'
999ce0a Document target_link_libraries target scope (#11058)
2010-12-16 14:00:11 -05:00
Brad King 92199485c0 Merge topic 'custom-command-slashes'
a75a0a1 Normalize add_custom_command OUTPUT names (#10485)
2010-12-16 14:00:00 -05:00
Brad King 4f769d18d1 Merge topic 'cray-compiler'
ab9ebb0 Fix Fortran .mod timestamps with Cray compiler
2010-12-16 13:59:57 -05:00
Brad King ceae8b1062 Merge topic 'CPack-MoreComponentControls'
6d94ea3 CPack  use IsOn when it's better than IsSet
2010-12-16 13:59:45 -05:00
Brad King 83b836f61e Merge topic 'CPack-DynMONOLITHIC_INSTALL'
17b05e6 CPack Honor CPACK_MONOLITHIC_INSTALL at CPack time too
2010-12-16 13:59:40 -05:00
Brad King 1f7133cd61 CTest: Fix line-too-long style in DEPEND cycle error 2010-12-16 08:07:43 -05:00
KWSys Robot aadee46c60 KWSys Nightly Date Stamp 2010-12-16 00:10:05 -05:00
Brad King f48d3bc5ba CTest: Fix test DEPEND cycle detection
A cycle exists when the DFS returns to the root node, not just when
multiple paths lead to the same node.

Inspired-By: Alexander Esilevich <aesilevich@pathscale.com>
2010-12-15 16:49:34 -05:00
Brad King f0cdb6001b Introduce "generator expression" syntax to custom commands (#11209)
Evaluate in the COMMAND arguments of custom commands the generator
expression syntax introduced in commit d2e1f2b4 (Introduce "generator
expressions" to add_test, 2009-08-11).  These expressions have a syntax
like $<TARGET_FILE:mytarget> and are evaluated during build system
generation.  This syntax allows per-configuration target output files to
be referenced in custom command lines.
2010-12-15 14:53:48 -05:00
Brad King 4749e4cb76 Record set of targets used in cmGeneratorExpression 2010-12-15 14:53:46 -05:00
Brad King ef9e9de0b8 Optionally suppress errors in cmGeneratorExpression 2010-12-15 14:53:39 -05:00
Brad King 4091bca4ec Factor generator expression docs out of add_test
This documentation may be reused wherever generator expressions are
supported.
2010-12-15 14:53:31 -05:00
Brad King bfb7288f81 Record backtrace in cmCustomCommand
This will be used to report custom command errors to the user with a
backtrace pointing at the add_custom_command or add_custom_target call.
2010-12-15 14:53:24 -05:00
Brad King 999ce0aa9c Document target_link_libraries target scope (#11058)
The target_link_libraries command requires its first argument to be a
target in the current directory.  Document this and update the error
message to be more specific.  While at it, format the error message with
a call stack.
2010-12-15 12:18:59 -05:00
Brad King 3e279971fb Make link rule depend on ".def" file (#11014)
When the link command line references a ".def" file the rule should
depend on it.

Inspired-By: Eric Huhtala
2010-12-15 11:30:57 -05:00
Brad King a75a0a1448 Normalize add_custom_command OUTPUT names (#10485)
Previously the OUTPUT arguments of add_custom_command were not
slash-normalized but those of add_library and add_executable were.
This caused the example

  add_custom_command(OUTPUT a//b.c ...)
  add_library(... a//b.c ...)

to fail at build time with "no rule to make a/b.c".  Fix this and modify
the CustomCommand test to try it.
2010-12-15 08:44:57 -05:00
KWSys Robot a14a8562ea KWSys Nightly Date Stamp 2010-12-15 00:10:03 -05:00
Brad King 3a14b6e556 KWSys: Do not mangle UNC paths in ConvertToUnixOutputPath (#10206)
This method replaces '//' with '/' to make the paths look nicer.
Originally it correctly skipped a leading '//' in a UNC path as the
comment says.  However, commit "Removed extra variable initializations"
(2005-04-15) accidentally removed the "pos=1" initializer.  It was then
incorrectly restored by commit "Added missing variable initialization"
(2005-04-15) as just "pos=0".  Restore the proper initializer.

The test for this added by commit "better coverage" (2006-07-31)
included incorrect output for a sample UNC-like path.  Fix it.
2010-12-14 18:13:03 -05:00
Brad King cbc3258e67 Merge branch 'try-compile-min-version' into cygwin 2010-12-14 16:48:04 -05:00
Brad King 2afb820352 Write full version into try_compile CMakeLists
Pass the full version to cmake_minimum_required(VERSION) in generated
CMake files for try_compile projects.  This tells CMake not to use any
backward compatibility behavior while processing code it generates.
2010-12-14 16:36:55 -05:00
Brad King 2d1aa4ad06 Merge topic 'dev/support-substring-negative-indices'
36cb701 allow STRING(SUBSTRING) work with length -1 as "rest of the string"
2010-12-14 14:39:10 -05:00
Brad King 03c4623fb4 Merge topic 'ParallelEclipseMakefiles2'
27ee50a Add ECLIPSE_CDT4_GENERATE_SOURCE_PROJECT as a ADVANCED cache variable (#9631)
50d21d4 Add cache var CMAKE_ECLIPSE_MAKE_ARGUMENTS when using the Eclipse generator
2010-12-14 14:38:55 -05:00
Brad King f7036a1603 Merge topic 'custom-command-depend'
ced1d5e Skip file-level dependencies on custom targets (#11332)
e30a775 Improve signature of cmLocalGenerator::GetRealDependency
2010-12-14 14:38:48 -05:00
Brad King 5161f85ef2 Merge topic 'vs10-sln-msbuild-workaround'
10f01ae Remove unused parameter "root" in some VS generator methods
57e7153 Avoid msbuild idiosyncrasy that builds multiple configs (#11594)
7728172 Remove unused variable "rootdir" in VS generators
2010-12-14 14:38:30 -05:00
Brad King 5bea0917ef Merge topic 'fix_incremental_vs2010'
cddcad5 Fix incremental linking for VS2010 with nmake or make.
2010-12-14 14:38:27 -05:00
Brad King f1adcefdf4 Merge topic 'cross-compile-apple-host'
3b7f901 Fix soname in cross-compiled targets with Mac host (#11547)
2010-12-14 14:38:18 -05:00
Brad King 24b251ac55 Merge topic 'doc-ctest_sleep'
7145ca6 CTest: Fix ctest_sleep documentation (#11554)
2010-12-14 14:38:13 -05:00
Brad King b0dffc7e9c Merge topic 'parallel-make-install-of-CMake'
608d6bb Fix parallel "make install" of CMake itself
2010-12-14 14:38:09 -05:00
Brad King adf62a98f3 Merge topic 'imported-target-dependencies'
a765c49 Honor custom command dependencies on imported targets (#10395)
2010-12-14 14:38:04 -05:00
Brad King 75844666ac Merge topic 'fix-INSTALL-and-PACKAGE-depend-tracing'
8e82773 Remove unused GLOBAL_TARGET generation code
0621362 Fix dependency tracing of INSTALL and PACKAGE (#11598)
2010-12-14 14:37:52 -05:00
Brad King b7c29a4d73 Merge topic 'vs10-express-64bit'
fb97ba6 Enable 64-bit tools with VS 2010 Express (#9981, #10722)
2010-12-14 14:37:30 -05:00
KWSys Robot da0a8f7f44 KWSys Nightly Date Stamp 2010-12-14 13:30:03 -05:00
Brad King ffac70b528 KWSys: Use EXPORT name only if installing library
Do not set KWSYS_INSTALL_LIBRARY_RULE just because the parent project set
KWSYS_INSTALL_EXPORT_NAME.  Require KWSYS_INSTALL_LIB_DIR to be set too.
2010-12-14 13:30:03 -05:00
Brad King 8e82773eb4 Remove unused GLOBAL_TARGET generation code
Remove a boolean parameter of cmGlobalGenerator::CreateGlobalTarget that
is never set to true anymore.  Remove global target "consolidation" loop
because no global targets exist before it runs anymore.
2010-12-13 12:59:26 -05:00
Brad King 0621362668 Fix dependency tracing of INSTALL and PACKAGE (#11598)
Commit e01cce28 (Allow add_dependencies() on imported targets,
2010-11-19) started using cmMakefile::FindTargetToUse to follow
dependencies, including those of GLOBAL_TARGETs like INSTALL and
PACKAGE.  Since global targets exist in every directory, dependencies
between them must be traced within each directory too.

Teach FindTargetToUse to check the current directory before checking
globally.  For global targets this will find the local copy.  For for
normal targets this will be a no-op because they are globally unique.
2010-12-13 12:56:47 -05:00
KWSys Robot b5d7f2c57c KWSys Nightly Date Stamp 2010-12-13 00:10:05 -05:00
Alex Neundorf 50d21d4251 Add cache var CMAKE_ECLIPSE_MAKE_ARGUMENTS when using the Eclipse generator
This variable can be set to command line arguments which will be passed
to make when eclipse invokes make, e.g. you can enter "-j8" to get
8 parallel builds (#9930)

Alex
2010-12-12 16:52:20 +01:00
Eric NOULARD 6d94ea3692 CPack use IsOn when it's better than IsSet
This authorize more control because one can set
CPACK_ARCHIVE_COMPONENT_INSTALL to ON globally
and then set it selectively to OFF inside
a CPack project config file.
Sidenote: GetOption ought to be a 'const' method.
2010-12-12 12:55:02 +01:00
Eric NOULARD 17b05e6d7f CPack Honor CPACK_MONOLITHIC_INSTALL at CPack time too 2010-12-12 12:30:42 +01:00
KWSys Robot 1b98d99c28 KWSys Nightly Date Stamp 2010-12-12 00:10:02 -05:00
KWSys Robot da4c2f6214 KWSys Nightly Date Stamp 2010-12-11 00:10:32 -05:00
Brad King 10f01ae962 Remove unused parameter "root" in some VS generator methods
The previous commit removed the last use of this parameter from the
implementation of WriteTargetsToSolution.  Remove the parameter.
2010-12-10 14:33:34 -05:00
Brad King 57e71533f4 Avoid msbuild idiosyncrasy that builds multiple configs (#11594)
If a .sln file refers to a project file with a leading ".\", as in
".\foo.vcxproj" instead of just "foo.vcxproj" or a full path then
msbuild behaves strangely.  Whenever target foo is built as a dependency
of another target, msbuild brings multiple configurations up to date
instead of just the requested configuration!

Refer to all project files by full path to avoid this behavior.
2010-12-10 14:26:56 -05:00
Brad King 772817242b Remove unused variable "rootdir" in VS generators 2010-12-10 14:21:18 -05:00
KWSys Robot b90e9f9c3a KWSys Nightly Date Stamp 2010-12-10 00:10:28 -05:00
Bill Hoffman cddcad5102 Fix incremental linking for VS2010 with nmake or make.
VS2010 deprecated /INCREMENTAL:YES.  This change makes
/INCREMENTAL the flag to use for incremental linking with
VS2010.
2010-12-09 13:32:48 -05:00
Brad King 3b7f901494 Fix soname in cross-compiled targets with Mac host (#11547)
The soname generation code was compile-time selected instead of runtime
selected.  The result is that a Mac-compiled cmake used to cross-compile
Mac -> Unix generates an soname of the form libfoo.x.y.so instead of
libfoo.so.x.y as expected.  Instead do a runtime check based on the
target platform.

Inspired-By: George Staikos <staikos@kde.org>
2010-12-09 11:18:25 -05:00
Brad King 7145ca67fc CTest: Fix ctest_sleep documentation (#11554)
Document behavior consistently with the implementation.
2010-12-09 10:37:28 -05:00
Brad King 608d6bba89 Fix parallel "make install" of CMake itself
Avoid tracing dependencies of GLOBAL_TARGET targets.  The build system
generators are not designed to handle any dependencies that may be
discovered.  Global targets are only generated by CMake and never have
commands that reference targets built in the project anyway.

The exception is when building CMake itself there is a special case to
use the just-built "cmake" binary in the "install" target so that CMake
can replace itself on Windows.  Even in this special case we do not want
to let the "install" target depend on the "cmake" target.  Doing so
breaks cases like "make -j4 install".
2010-12-09 10:12:12 -05:00
KWSys Robot d25638ac05 KWSys Nightly Date Stamp 2010-12-09 00:10:41 -05:00
Brad King 306427c079 KWSys: Remove realpath from SystemTools::GetPath (#10335)
Commit "merge in changes for beos support" (2006-12-04) added a realpath
call for every directory parsed out of a PATH-style environment
variable.  No reason was given in the commit message or comments.

The call incorrectly resolves symlinks in referenced paths.  Remove it.
If BeOS support really needs it then it can be restored for that
platform with a full explanation.
2010-12-08 18:04:10 -05:00
Brad King 53ea8b3204 Merge branch 'imported-target-dependencies' into custom-command-refactor 2010-12-08 17:30:02 -05:00
Brad King 1a29ccaf9a Remove cmLocalGenerator::GetRealLocation
The cmCustomCommandGenerator::GetCommand method completely replaces the
purpose of this method.  Re-implement GetRealLocation inline at the only
remaining call site and remove it.
2010-12-08 17:29:53 -05:00
Brad King 542b517449 Factor out common custom command generator
The Makefile, VS, and Xcode generators previously duplicated some custom
command line generation code.  Factor this out into a separate class
cmCustomCommandGenerator shared by all generators.
2010-12-08 17:29:20 -05:00
Brad King 6fe5b3db0b Simplify VS generator ConstructScript interface
Pass to cmLocalVisualStudioGenerator::ConstructScript a cmCustomCommand
instance instead of extracting arguments at all call sites.
2010-12-08 17:29:20 -05:00
Brad King ced1d5eccd Skip file-level dependencies on custom targets (#11332)
A custom command may name a target created by add_custom_target in its
DEPENDS field.  Treat this case as a target-level dependency only since
a custom target provides no standard file on which to add a file-level
dependency.
2010-12-08 17:14:17 -05:00
Brad King e30a775f68 Improve signature of cmLocalGenerator::GetRealDependency
Allow file-level custom command dependencies to be skipped.
2010-12-08 17:14:14 -05:00
Rolf Eike Beer 36cb701690 allow STRING(SUBSTRING) work with length -1 as "rest of the string"
This fixes the first half of bug 10740.
2010-12-08 16:38:30 -05:00
Brad King a765c491ad Honor custom command 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-12-08 12:22:13 -05:00
KWSys Robot 02a8ea2d5b KWSys Nightly Date Stamp 2010-12-08 00:10:03 -05:00
Ben Boeckel 8e8c9e4924 Don't check at destruction for usage 2010-12-07 16:38:37 -05:00
Ben Boeckel 668e005db5 Use cmake::IssueMessage for warnings 2010-12-07 16:38:25 -05:00
David Cole 35fd8d3abb Merge topic 'fix-typo-in-error-message'
a2a997d Correct misspelling in error message text.
2010-12-07 15:28:16 -05:00
David Cole 2a214ad8b5 Merge topic 'fortran-avoid-timestamp-touch'
5622a16 Make Fortran $obj.provides.build targets not .PHONY
2010-12-07 15:28:12 -05:00
Ben Boeckel 88cd4c1e92 Use 'CMake Warning' versus 'warning' for CDash 2010-12-07 14:40:21 -05:00
KWSys Robot e580daec4c KWSys Nightly Date Stamp 2010-12-07 00:10:03 -05:00
Brad King 5622a16f1f Make Fortran $obj.provides.build targets not .PHONY
Commit 60cd72d0 (Cleaned up generation of symbolic rules, 2006-02-15)
incorrectly made these Makefile targets .PHONY even though the build
rule touches an actual file.  Correct it so that the copy_f90_mod and
touch steps do not happen on every "make".
2010-12-06 16:43:04 -05:00
Brad King ab9ebb017e Fix Fortran .mod timestamps with Cray compiler
Commit 34e1ac24 (Create Fortran info variables for .mod behavior,
2010-11-12) incorrectly taught GetFortranModuleDirectory to return a
relative path.  We really want to use "." as the module directory only
as a workaround for compilers that do not do so by default.  Therefore
we need this default only when generating the compiler command line and
not when scanning dependencies.

Revert the previous change to GetFortranModuleDirectory and apply the
change only at one of its call sites.
2010-12-06 10:35:25 -05:00
David Cole a2a997d8c4 Correct misspelling in error message text. 2010-12-06 08:44:26 -05:00
KWSys Robot afc8906468 KWSys Nightly Date Stamp 2010-12-06 00:10:04 -05:00
KWSys Robot 419e0d29a0 KWSys Nightly Date Stamp 2010-12-05 00:10:07 -05:00
KWSys Robot 34ee41b9cc KWSys Nightly Date Stamp 2010-12-04 00:10:02 -05:00
Ben Boeckel 3c3b98ddd3 Initialize the class before setting warn flags
Since Initialize sets variables that we don't want to warn about, don't
leak the original class' settings.
2010-12-03 12:52:36 -05:00
Ben Boeckel cf8b15a5c1 Ignore files under the CMakeFiles directory 2010-12-03 12:49:37 -05:00
Brad King 097294e667 Fix try_compile RemoveFile anti-virus loop (#11503)
Commit 3827991e (...fix...not being able to remove try compile code,
2008-03-26) introduced a loop of RemoveFile attempts to overcome
anti-virus locks on recently created try_compile executables.  Fix the
logic in this loop to work when the file is already missing.
2010-12-03 07:38:15 -05:00
KWSys Robot 4617135fe7 KWSys Nightly Date Stamp 2010-12-03 00:10:28 -05:00
Ben Boeckel fd50f06b21 Don't check for unused vars at configure time
The generate step should catch all of them.
2010-12-02 16:57:30 -05:00
Brad King 6a07b22bf9 Merge topic 'find-command-crash'
183d261 Fix find_* argument parsing crash (#11513)
2010-12-02 14:25:10 -05:00
Brad King 9ab2659487 Merge topic 'ctest-remove-waiting-message'
13f2454 Remove debugging message from parallel ctest
2010-12-02 14:25:04 -05:00
Brad King 42fac25808 Merge topic 'CPack-Bug11452-ComponentBreakage-v2'
12a7125 CPack Fix KWStyle error
d0eb89c CPack backward compatibility fix 2.8.3-2.8.2 (bug 11452)
2010-12-02 14:24:51 -05:00
Brad King b4bd2d3baf Merge topic 'vs-target-dependencies'
08a3188 Skip VS <= 7.1 dependency analysis for VS >= 8
2010-12-02 14:24:45 -05:00
KWSys Robot 746d54a843 KWSys Nightly Date Stamp 2010-12-02 00:10:03 -05:00
Brad King f9abda2db4 KWSys: Associate installed library with an EXPORT
A parent project may now set KWSYS_INSTALL_EXPORT_NAME to specify the
EXPORT name for install(TARGETS) commands.
2010-12-01 16:10:02 -05:00
Eric NOULARD 12a7125b32 CPack Fix KWStyle error 2010-12-01 21:00:38 +01:00
Brad King fb97ba6293 Enable 64-bit tools with VS 2010 Express (#9981, #10722)
The Express Edition does not come with 64-bit tools, but one can install
the "Microsoft Windows SDK v7.1" to get them.  Detect this case and
check for the SDK.  If found, set PlatformToolset to use the SDK tools.
Otherwise, fail with a concise and informative error.
2010-12-01 12:48:32 -05:00
Brad King 08a31885c1 Skip VS <= 7.1 dependency analysis for VS >= 8
Commit 1a0c166 (Store direct dependencies in solutions for VS >= 8,
2010-08-20) disabled use of VS-specific global dependency analysis.
Avoid perfoming the analysis at all when it is not needed.  This also
prevents creation of bogus and unused '_UTILITY' targets since they are
not needed for dependencies.
2010-12-01 11:43:30 -05:00
Zach Mullen 13f24540ad Remove debugging message from parallel ctest 2010-12-01 11:28:23 -05:00
KWSys Robot 8b555d1d20 KWSys Nightly Date Stamp 2010-12-01 00:10:03 -05:00
Brad King 183d261b11 Fix find_* argument parsing crash (#11513)
Previously the command

  find_path(VAR DOC "")

would crash because the argument pre-processing removed the DOC ""
arguments but the rest of the parsing assumes at least 2 arguments.
Reject the call with an error instead.
2010-11-30 08:39:16 -05:00
KWSys Robot 63828762a0 KWSys Nightly Date Stamp 2010-11-30 00:10:03 -05:00
Eric NOULARD d0eb89c17b CPack backward compatibility fix 2.8.3-2.8.2 (bug 11452)
One should set CPACK_ARCHIVE_COMPONENT_INSTALL=1 in order to
trigger component install for ARCHIVE generators
2010-11-29 18:57:24 +01:00
KWSys Robot bd44b2cc5b KWSys Nightly Date Stamp 2010-11-29 00:10:02 -05:00
KWSys Robot 7ce06dcc90 KWSys Nightly Date Stamp 2010-11-28 00:10:03 -05:00
KWSys Robot 7a85200249 KWSys Nightly Date Stamp 2010-11-27 00:10:32 -05:00
KWSys Robot 500711129b KWSys Nightly Date Stamp 2010-11-26 00:10:02 -05:00
KWSys Robot 537180ab19 KWSys Nightly Date Stamp 2010-11-25 00:10:05 -05:00
KWSys Robot 8bafdeb60e KWSys Nightly Date Stamp 2010-11-24 00:10:03 -05:00
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
Ben Boeckel 447a04c31c Don't warn during configure when doing everything
This prevents warnings from being generated after configure *and* after
generation if both are going to be run anyways.
2010-11-15 11:03:48 -05:00
Ben Boeckel b97ee21fc6 Check for unused variables at the end of generate 2010-11-15 10:33:14 -05:00
Ben Boeckel c18c977ce8 When checking for variables, specify a reason
Allow reasons to begiven for checking for unused variables.
2010-11-15 10:32:15 -05: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
David Cole c8f6c33ec8 Merge topic 'external-link-depends'
95f149e Define LINK_DEPENDS target property (#11406)
07cfa57 Consolidate duplicate link rule make dependency code
2010-11-09 15:40:37 -05:00
David Cole e3b1dc171d Merge topic 'document-custom-command-no-DEPENDS'
80edcc6 Document custom command behavior without DEPENDS (#11407)
2010-11-09 15:39:43 -05:00
Alex Neundorf 84ce612c65 Move the code for generating dot-files into separate class cmGraphVizWriter
Alex
2010-11-09 21:37:51 +01:00
David Cole 8eaf172279 Merge topic 'rule-messages'
dc36b34 Honor RULE_MESSAGES property for build target messages
2010-11-09 15:36:08 -05:00
David Cole 1774622487 Merge topic 'cmake-gui-args-11388'
0476715 Fix regression to allow specifying a CMakeCache.txt file on the command line.
2010-11-09 15:32:43 -05:00
David Cole 5aa72c6374 Merge topic 'qtdialog-use-bundleutilities'
249a9bb cmake-gui: use BundleUtilities in place of custom script.
2010-11-09 15:26:51 -05:00
Brad King d8e0bfa786 KWSys: Teach SystemInformation about WinXP Pro and Win7
Modify a few lines in the function QueryOSInformation.

Change-Id: Ief8327144fdf5588354d4ce8240eb0206722e77e
Author: Marius Staring <m.staring@lumc.nl>
2010-11-09 10:50:03 -05:00
KWSys Robot bbb3d81d38 KWSys Nightly Date Stamp 2010-11-09 00:10:02 -05:00
KWSys Robot da778eeb4b KWSys Nightly Date Stamp 2010-11-08 00:10:02 -05:00
KWSys Robot d95017deec KWSys Nightly Date Stamp 2010-11-07 00:10:16 -04:00
KWSys Robot c5a47ad148 KWSys Nightly Date Stamp 2010-11-06 00:10:10 -04:00
Brad King 95f149e61f Define LINK_DEPENDS target property (#11406)
Custom Makefile link rules may need to depend on linker scripts.  Define
this property to allow user-specified link-time dependencies.
2010-11-05 09:05:08 -04:00
Brad King 07cfa57ec5 Consolidate duplicate link rule make dependency code
Factor code previously duplicated for library and executable rules into
a common method.
2010-11-05 08:33:47 -04:00
Brad King 80edcc6a86 Document custom command behavior without DEPENDS (#11407)
The behavior of add_custom_command when no DEPENDS option is specified
matches that of standard Make behavior, but it does not hurt to describe
it explicitly.
2010-11-05 08:08:37 -04:00
KWSys Robot 947de96030 KWSys Nightly Date Stamp 2010-11-05 00:10:09 -04:00
KWSys Robot b58e44edfb KWSys Nightly Date Stamp 2010-11-04 00:10:01 -04:00
Campbell Barton dc36b34994 Honor RULE_MESSAGES property for build target messages 2010-11-03 10:10:03 -04:00
KWSys Robot 5cf99388c3 KWSys Nightly Date Stamp 2010-11-03 00:11:01 -04:00
KWSys Robot aa350314db KWSys Nightly Date Stamp 2010-11-02 00:11:02 -04:00
Clinton Stimpson 0476715b87 Fix regression to allow specifying a CMakeCache.txt file on the command line. 2010-11-01 09:40:25 -06:00
KWSys Robot c1a064ba79 KWSys Nightly Date Stamp 2010-11-01 00:11:13 -04:00
Alex Neundorf a60b09927d Generate separate dot files for each target, and a big one with everything.
The big all-in-one file is basically unusable for e.g. kdelibs, it contains
around 1000 nodes and the created image is huuuuge !
Too big actually to be displayable or viewable or comprehensable.

Alex
2010-10-31 17:40:46 +01:00
Alex Neundorf 487bd571d5 Properly insert all targets, also those which don't link to anything.
Alex
2010-10-31 16:23:40 +01:00
Alex Neundorf de2b2bf9ef Move the code for collecting targets and libraries into separate functions
Found bug: targets which don't link to anything don't get inserted in
the dot file.

Alex
2010-10-31 15:58:18 +01:00
Alex Neundorf f7d56df39e Remove trailing whitespace and minor formatting changes for the dot-code
Alex
2010-10-31 14:46:09 +01:00
KWSys Robot e3c46e648b KWSys Nightly Date Stamp 2010-10-31 00:11:07 -04:00
KWSys Robot 2d3952d521 KWSys Nightly Date Stamp 2010-10-30 00:11:07 -04:00
KWSys Robot 57eea54720 KWSys Nightly Date Stamp 2010-10-29 00:11:07 -04:00
David Cole 9bf662a92a Merge topic 'fix_ctest_working_dir'
3f94c7c When processing DartMeasurements use the tests working directory.
2010-10-28 15:36:17 -04:00
David Cole 3f3f3e5f54 Merge topic 'CPackDeb-MoreControl'
a749724 CPackDeb Added several optional debian binary package fields
2010-10-28 14:10:23 -04:00
KWSys Robot 70101ee8e7 KWSys Nightly Date Stamp 2010-10-28 00:11:05 -04:00
KWSys Robot 01a90e9622 KWSys Nightly Date Stamp 2010-10-27 00:11:06 -04:00
KWSys Robot 7db02e9b3a KWSys Nightly Date Stamp 2010-10-26 00:11:04 -04:00
Eric NOULARD a749724029 CPackDeb Added several optional debian binary package fields
This fixes bugs #0011355  and 0008342.
The merged patch is a contribution from Michael Lasmanis and Petri Hodju
with some extra documentation added by the merger.
2010-10-25 20:40:45 +02:00
KWSys Robot 06b5eaa3cf KWSys Nightly Date Stamp 2010-10-25 00:11:05 -04:00
KWSys Robot de81f2a4ee KWSys Nightly Date Stamp 2010-10-24 00:11:05 -04:00
KWSys Robot 185582d5fe KWSys Nightly Date Stamp 2010-10-23 00:12:04 -04:00
KWSys Robot 91b5bc3efa KWSys Nightly Date Stamp 2010-10-22 00:10:12 -04:00
KWSys Robot e42160f3e0 KWSys Nightly Date Stamp 2010-10-21 00:11:02 -04:00
KWSys Robot 5bae7f3b19 KWSys Nightly Date Stamp 2010-10-20 00:11:01 -04:00
Bill Hoffman 3f94c7cc39 When processing DartMeasurements use the tests working directory.
Restore CMake 2.6 behavoir where the dart processing apparently was run from within the tests directory instead of the root of the build tree. This addresses issue reported on the VTK Dashboard where the Testing/Temporary directory is defined as ../../../Testing/Temporary but the DartProcessing is run with respect to the root of the build tree. This causes the regression/difference images to not be located by ctest and thus not uploaded to the dashboard.
2010-10-19 16:15:32 -04:00
David Cole 9e6eb7c8b6 Merge topic 'xcode-hh-files'
8f0a70e Xcode: Recognize .hh as C++ (#11307)
2010-10-19 15:53:54 -04:00
David Cole b0fb2ad3e1 Merge topic 'AddCMAKE_CURRENT_LIST_DIR'
b011840 Use absolute path to FindPackageHandleStandardArgs.cmake everywhere
41e4f1a Add automatic variable CMAKE_CURRENT_LIST_DIR(dir of CMAKE_CURRENT_LIST_FILE)
f9fc79c Remove trailing whitespace
2010-10-19 15:53:16 -04:00
KWSys Robot 915e5805d9 KWSys Nightly Date Stamp 2010-10-19 00:10:04 -04:00
KWSys Robot 00b327fed8 KWSys Nightly Date Stamp 2010-10-18 00:11:02 -04:00
KWSys Robot 76c8c6017c KWSys Nightly Date Stamp 2010-10-17 00:10:08 -04:00
KWSys Robot 0dc88cf853 KWSys Nightly Date Stamp 2010-10-16 00:10:08 -04:00
KWSys Robot 57c04db124 KWSys Nightly Date Stamp 2010-10-15 00:10:07 -04:00
Clinton Stimpson 249a9bb44d cmake-gui: use BundleUtilities in place of custom script.
BundleUtilities is better supported and allows including
shared Qt libs on other platforms.  Also removed limitation
of static Qt for windows build of cmake-gui.
2010-10-14 13:58:43 -06:00
KWSys Robot 3dc07529cf KWSys Nightly Date Stamp 2010-10-14 00:10:43 -04:00
KWSys Robot 68e0b6357d KWSys Nightly Date Stamp 2010-10-13 00:10:36 -04:00
David Cole fbecc534d1 Merge topic 'document-bundle-loader'
abb6e75 Document ENABLE_EXPORTS behavior on Mac (#11295)
2010-10-12 11:11:33 -04:00
David Cole 1b98d04e1a Merge topic 'vs10-order-dependencies'
973df7c VS10: Order .vcxproj dependencies deterministically (#10502)
2010-10-12 11:05:57 -04:00
David Cole f78f82ccbf Merge topic 'CodeBlocksGeneratorFixForExternalSubdirs'
9072535 CodeBlocks Generator: Do not omit files in the project file listing.
2010-10-12 11:04:53 -04:00
Brad King 8f0a70e5f0 Xcode: Recognize .hh as C++ (#11307) 2010-10-12 09:06:33 -04:00
KWSys Robot 3810da1a73 KWSys Nightly Date Stamp 2010-10-12 00:10:33 -04:00
Brad King abb6e755eb Document ENABLE_EXPORTS behavior on Mac (#11295)
Mention that it is implemented with -bundle-loader on platforms that
need link-time symbol resolution but that do not use DLL import libs.
2010-10-11 08:35:19 -04:00
KWSys Robot 3138cc503b KWSys Nightly Date Stamp 2010-10-11 00:10:06 -04:00
KWSys Robot c89527a421 KWSys Nightly Date Stamp 2010-10-10 00:10:08 -04:00
KWSys Robot 8af6a13728 KWSys Nightly Date Stamp 2010-10-09 00:10:06 -04:00
Ben Boeckel 3f1121f722 Use a long int since Line is a long as well 2010-10-08 13:49:39 -04:00
KWSys Robot 7119b5f5be KWSys Nightly Date Stamp 2010-10-08 00:10:06 -04:00
Ben Boeckel 8dbb2090a2 Wrong boolean value for CLI warnings 2010-10-07 12:28:25 -04:00
Ben Boeckel d4ee998b61 Hard-code the --no-warn-unused-cli flag 2010-10-07 12:22:00 -04:00
Brad King 973df7c0e9 VS10: Order .vcxproj dependencies deterministically (#10502)
This avoids needless modification of the project files during
regeneration.
2010-10-07 09:54:24 -04:00
KWSys Robot e124032654 KWSys Nightly Date Stamp 2010-10-07 00:10:31 -04:00
Ben Boeckel a267b99cd6 Fix line lengths 2010-10-06 15:00:52 -04:00
KWSys Robot 3d0ace69c0 KWSys Nightly Date Stamp 2010-10-06 00:10:25 -04:00
Brad King dacc47853d Merge topic 'vs-project-groups'
fd3249e New USE_FOLDERS property OFF by default. (#3796)
2010-10-05 15:31:49 -04:00
Brad King 51047564bf Merge topic 'vs10-custom-comments'
2596e16 VS10: Encode custom command comments for echo (#11283)
2010-10-05 15:31:03 -04:00
Brad King b653e8b6e7 Merge topic 'dev/test-for-bug-11230'
96a335f XCode generation should fail if lang isn't known
d3a8943 Fix which string is checked for in the test
220c5dc Add test that CMake errors with empty libs
2010-10-05 15:30:10 -04:00
Brad King 54a3bf001c Merge topic 'vs10-empty-target'
448661f VS10: Skip targets with no linker language (#11230)
2010-10-05 15:29:20 -04:00
Brad King 46bc165c36 Merge topic 'fix_custom_commands_with_intdir_vs10'
3d68dd2 Fix for bug #11274, VS10 custom commands that create files in INTDIR fix.
2010-10-05 15:28:45 -04:00
Alex Neundorf 9072535f83 CodeBlocks Generator: Do not omit files in the project file listing.
The CodeBlocks generator used to omit files that were in siblings directories.
Though that filters out a few files that could be argued aren't of interest
to the user, it also potentialy hides files that are relevant to the user.

Patch by Daniel Teske.

Alex

See: http://bugreports.qt.nokia.com/browse/QTCREATORBUG-2250 for an example.
2010-10-05 21:16:17 +02:00
Ben Boeckel 82ed104dcb Flag that the directories have been set 2010-10-05 13:45:34 -04:00
Ben Boeckel 5aa535bdcb Add argument to arg parsing to not set directories
Argument parsing sets the source/build directories, but they may have
been (meaningfully) set before hand. Let's not overwrite them.
2010-10-05 13:44:28 -04:00
Ben Boeckel 367e5c37bb Revert "Revert "When calling CMake, set the args and the cache""
This reverts commit ab5d4e43d9.
2010-10-05 12:27:37 -04:00
KWSys Robot d0d8f029ab KWSys Nightly Date Stamp 2010-10-05 00:10:31 -04:00
KWSys Robot 5eca3dd0f0 KWSys Nightly Date Stamp 2010-10-04 00:10:06 -04:00
KWSys Robot ef4263aad7 KWSys Nightly Date Stamp 2010-10-03 00:10:04 -04:00
David Cole fd3249e11a New USE_FOLDERS property OFF by default. (#3796)
Visual Studio Express editions do not support solution folders,
so default behavior should be as if USE_FOLDERS global property
is OFF.

Also, allow folder names to be the same as target names: internally,
use a prefix to distinguish folder GUIDs from target GUIDs. Add
a target and folder with the same name in the ExternalProject
test to exercise this code.

For CMake itself, provide a new option CMAKE_USE_FOLDERS that
defaults to ON so that Visual Studio users get a nicely organized
CMake project. Express edition users will have to turn off the
CMAKE_USE_FOLDERS option in order to build CMake in the VS Express
IDE.
2010-10-02 14:31:02 -04:00
KWSys Robot 2488c343f1 KWSys Nightly Date Stamp 2010-10-02 00:10:36 -04:00
Ben Boeckel ab5d4e43d9 Revert "When calling CMake, set the args and the cache"
This reverts commit 9b90040edb.
2010-10-01 16:52:16 -04:00
Brad King 2596e16c8f VS10: Encode custom command comments for echo (#11283)
VS10 uses MSBuild underneath.  The <Message></Message> CDATA are just
appended to "echo" and executed as a single command.  Encode the message
such that it can be passed to echo.  Convert newlines to tabs since they
cannot be printed this way.
2010-10-01 16:12:00 -04:00
Ben Boeckel 9b90040edb When calling CMake, set the args and the cache 2010-10-01 13:44:55 -04:00
KWSys Robot d69b129481 KWSys Nightly Date Stamp 2010-10-01 00:10:39 -04:00
Ben Boeckel 96a335fd8d XCode generation should fail if lang isn't known 2010-09-30 14:54:20 -04:00
Brad King 448661fbe5 VS10: Skip targets with no linker language (#11230)
In targets with no non-header files the linker language cannot be
determined.  Since the target project file cannot be generated at all in
this case, give up as soon as it is detected.  Otherwise the generation
code may try to run with uninitialized information.
2010-09-30 08:48:38 -04:00
KWSys Robot 4e137de7b1 KWSys Nightly Date Stamp 2010-09-30 00:10:39 -04:00
Bill Hoffman 3d68dd230d Fix for bug #11274, VS10 custom commands that create files in INTDIR fix. 2010-09-29 17:02:04 -04:00
Brad King a2bbe4bef9 Remove trailing whitespace from Xcode generator source
Reverting abandoned topic xcode_source_group_fix_7932 left this source
slightly different due to trailing whitespace removal on some lines.
Remove all trailing whitespace from the file to make it consistent.
2010-09-29 08:38:18 -04:00
KWSys Robot 0f6b3a0059 KWSys Nightly Date Stamp 2010-09-29 00:10:08 -04:00
Alex Neundorf 41e4f1a210 Add automatic variable CMAKE_CURRENT_LIST_DIR(dir of CMAKE_CURRENT_LIST_FILE)
Comes with a simple test and docs.

Alex
2010-09-28 22:10:47 +02:00
Alex Neundorf f9fc79cac5 Remove trailing whitespace
Alex
2010-09-28 21:44:22 +02:00
Brad King d24b8acc1a Merge topic 'cmake-guiRememberAdvancedCheckbox'
3d13502 Make cmake-gui remember whether the "Advanced" checkbox was checked or not
8e8acb7 -remove trailing whitespace
2010-09-28 14:06:31 -04:00
Brad King 3398ec7d6f Merge topic 'vs10-object-intdir'
7ef659f VS10: Use $(IntDir) for per-source output directory (#11270)
2010-09-28 14:04:48 -04:00
Brad King 126158f046 Merge topic 'fixAbsoluteDestHandlingRegression'
225abc5 InstallGen/CPack  fix handling absolute installed file regression
2010-09-28 14:02:44 -04:00
KWSys Robot 5efe30791b KWSys Nightly Date Stamp 2010-09-28 00:10:03 -04:00
Brad King 7ef659fcc3 VS10: Use $(IntDir) for per-source output directory (#11270)
The original implementation of this generator accidentally used
"$(Configuration)/" for source-specific object file names.  Correct it
to use "$(IntDir)/" just like the generators for all previous VS
versions.  The target-wide output directory is "$(IntDir)/" already.
2010-09-27 08:37:00 -04:00
KWSys Robot 993cfc9406 KWSys Nightly Date Stamp 2010-09-27 00:10:04 -04:00
KWSys Robot c928751d27 KWSys Nightly Date Stamp 2010-09-26 00:10:04 -04:00
KWSys Robot f42bae0bd5 KWSys Nightly Date Stamp 2010-09-25 00:10:04 -04:00
KWSys Robot 7d243b9695 KWSys Nightly Date Stamp 2010-09-24 00:10:36 -04:00
Alex Neundorf 3d13502c98 Make cmake-gui remember whether the "Advanced" checkbox was checked or not
Alex
2010-09-23 21:48:07 +02:00
Alex Neundorf 8e8acb7aab -remove trailing whitespace
Alex
2010-09-23 21:47:06 +02:00
Ben Boeckel fe56002a16 Fix long lines for KWStyle 2010-09-23 10:14:37 -04:00
KWSys Robot a9bf98b2a6 KWSys Nightly Date Stamp 2010-09-23 00:10:11 -04:00
Brad King dda5bbd7c9 Merge topic 'fix_windows7_untar'
775697d Add a delay after untar on windows to make external project work on windows 7
2010-09-22 13:53:25 -04:00
Brad King 14d5ea7438 Merge topic 'mingw-long-object-lists'
5f05a3c MinGW: Support long object file lists
2d9bb33 Evaluate <OBJECT_DIR> rule variable for executables
2010-09-22 13:52:24 -04:00
Ben Boeckel 5d30cfc5f7 Set a watch on variables added through the gui 2010-09-22 12:46:16 -04:00
Ben Boeckel 33c63b19ab Add a method to put a watch for variables 2010-09-22 12:46:16 -04:00
Ben Boeckel 535253f385 Initialize the warning variables earlier 2010-09-22 12:46:15 -04:00
Ben Boeckel cbb286c0b2 Fix the path detection to work for top-level 2010-09-22 12:46:15 -04:00
Ben Boeckel 62be1f78ae Initialize the usage stack earlier 2010-09-22 12:46:15 -04:00
Ben Boeckel c6e7fabc0f Factor out the checks for unused variables 2010-09-22 12:46:15 -04:00
KWSys Robot d65a91dd45 KWSys Nightly Date Stamp 2010-09-22 00:10:27 -04:00
Brad King 781c34197b Merge topic 'fix-9963'
a798bb7 Avoid CustomCommand test failure on VS71 (#9963)
9b4ab06 Avoid CustomCommand test failure on VS71 (#9963)
9d2e648 No extra spaces in CustomCommand test (#9963)
269a4b8 Enable calling commands with : in argv[1] (#9963)
2010-09-21 10:44:08 -04:00
Brad King 5968785b2f Merge topic 'xcode-ARCHS-quoting'
a8ded53 Xcode: Quote string values containing '$' (#11244)
0790af3 Xcode: Avoid trailing space in ARCHS list (#11244)
2010-09-21 10:42:50 -04:00
Brad King 724804600b Merge topic 'document-IMPORTED_NO_SONAME'
8f96818 Document IMPORTED_NO_SONAME target property
2010-09-21 10:37:59 -04:00
Brad King 9da64e7c6b Merge topic 'fix-ccmake-search'
5d7c3c0 ccmake: Fix search with '/'
2010-09-21 10:33:08 -04:00
Brad King 753cbf8356 Merge topic 'fix_line_length_issues'
3901174 Fix KWStyle line length issues.
2010-09-21 10:32:18 -04:00
Bill Hoffman 775697d5f5 Add a delay after untar on windows to make external project work on windows 7
OK, on windows 7 after we untar some files,
sometimes we can not rename the directory after
the untar is done. This breaks the external project
untar and rename code.  So, by default we will wait
1/10th of a second after the untar.  If CMAKE_UNTAR_DELAY
is set in the env, its value will be used instead of 100.
2010-09-21 10:04:04 -04:00
KWSys Robot 950b735101 KWSys Nightly Date Stamp 2010-09-21 00:10:07 -04:00
Eric NOULARD 225abc555d InstallGen/CPack fix handling absolute installed file regression 2010-09-20 23:33:35 +02:00
Mikkel Krautz a8ded5338b Xcode: Quote string values containing '$' (#11244)
Allow use of $(STANDARD_32BIT_ARCHS) as CMAKE_OSX_ARCHITECTURES.
The expanded value must remain a single string.
2010-09-20 10:08:40 -04:00
Mikkel Krautz 0790af3bf5 Xcode: Avoid trailing space in ARCHS list (#11244)
With CMAKE_OSX_ARCHITECTURE settings such as $(ARCHS_STANDARD_32BIT),
the space inserted by the for loop would confuse Xcode if quoted. In
this particular example, what would be output would be:

  ARCHS = "$(ARCHS_STANDARD_32BIT) ";

The Xcode UI does not recognize this as the built-in "Standards 32-bit"
architecture setting unless the space is removed.
2010-09-20 10:05:33 -04:00
KWSys Robot b03087798b KWSys Nightly Date Stamp 2010-09-20 00:10:05 -04:00
KWSys Robot d10b94b2f0 KWSys Nightly Date Stamp 2010-09-19 00:10:03 -04:00
KWSys Robot c30c3ade9b KWSys Nightly Date Stamp 2010-09-18 00:10:05 -04:00
Brad King 8f96818a5c Document IMPORTED_NO_SONAME target property
Commit fd37a6ec (Better linker search path computation, 2008-02-21)
added this property but did not document it.  Add the documentation.
2010-09-17 13:28:29 -04:00
Ben Boeckel 5e41ba8e4a When using the API, check for Add vs. Remove 2010-09-17 10:13:19 -04:00
Ben Boeckel f231ce5ce3 Remove old false positive avoidance code
From email explaining existence in the first place:

    This is from before when the used checks throwing false
    positives about unused due to changing the definition without
    checking whether it *had* a value to begin with and me not
    realizing they were false positives. I was thinking that it was
    warning from ARGC et. al. not being used since the previous
    macro or function call and the new value warning about
    overwriting the old value.
2010-09-17 10:02:15 -04:00
KWSys Robot 4b682e13fb KWSys Nightly Date Stamp 2010-09-17 00:10:04 -04:00
Ben Boeckel 2c82f2b759 Exempt CMAKE(CURRENT|PARENT)_LIST_FILE from usage 2010-09-16 17:50:07 -04:00
Brad King 5d7c3c0a59 ccmake: Fix search with '/'
Commit 7a18dd8e (Add searching of variables, 2003-03-07) added method
cmCursesMainForm::JumpToCacheEntry to search for cache entries whose
names match a given search string.  The method also had a useless
argument "int idx" probably left from earlier development iterations and
hard-coded in all calls to the value '-1'.  The method compared this
argument to the "NumberOfVisibleEntries" member which at the time was of
type "int" also.

Commit ff1f8d0b (Fix or cast more integer conversions in cmake,
2010-06-29) changed the type of "NumberOfVisibleEntries" to size_t to
fix other integer conversion warnings.  An unsigned type makes sense
given the purpose of the member.  However, this caused the '-1' signed
value to be converted to a large unsigned value in the above-mentioned
comparison, leading to incorrect behavior.

Fix the problem by removing the useless argument and the comparison.
2010-09-16 17:45:27 -04:00
Ben Boeckel 7740a738e0 Only return local keys that are defined 2010-09-16 16:07:34 -04:00
Ben Boeckel bef3aeebab Use the API so that warnings can be tracked 2010-09-16 16:06:16 -04:00
Ben Boeckel 05cb0f4daf Check for unused variables in the dtor 2010-09-16 16:05:59 -04:00
Brad King 2d9bb3325f Evaluate <OBJECT_DIR> rule variable for executables
Previously this placeholder was evaluated only for libraries.  Make it
work for executables too.
2010-09-16 15:07:41 -04:00
Ben Boeckel ca90f673a0 Fix detection of unused variables when setting 2010-09-16 13:53:41 -04:00
Ben Boeckel 995cfb0e2a Don't warn if the variable wasn't defined 2010-09-16 13:52:17 -04:00
Ben Boeckel a8e97f8a08 Remove VarRemoved code since it's been superceded 2010-09-16 13:50:39 -04:00
Ben Boeckel 59463ef1a3 Rework CheckVariableForUnused usage 2010-09-16 11:50:57 -04:00
Ben Boeckel f117423336 Fix line lengths to be no more than 78 2010-09-16 11:49:58 -04:00
KWSys Robot 48a126717c KWSys Nightly Date Stamp 2010-09-16 00:10:04 -04:00
Bill Hoffman 390117435a Fix KWStyle line length issues. 2010-09-15 16:41:41 -04:00
Ben Boeckel e49a935c20 Improve unused warning logic
Only warn when changing the definition of an initialized variable.
2010-09-15 11:41:27 -04:00
Ben Boeckel e01e40cb87 Mark ARGC, ARGV*, and ARGN as used 2010-09-15 11:35:50 -04:00
Ben Boeckel a17aff74c7 Ignore CMAKE_MATCH_* variables for usage 2010-09-15 11:35:05 -04:00
Ben Boeckel 02a114dfe8 Add method to allow variables to be marked as used 2010-09-15 11:34:35 -04:00
KWSys Robot de7a090847 KWSys Nightly Date Stamp 2010-09-15 00:10:05 -04:00
Ben Boeckel a0b0d23f0c CMAKE_DO_TRY_COMPILE is no longer used 2010-09-14 17:51:43 -04:00
Ben Boeckel ae3eff35b4 Fix the path used for ignoring system warnings 2010-09-14 17:14:25 -04:00
Ben Boeckel 056b44113f Fix missing case for usage of a variable 2010-09-14 17:10:22 -04:00
Ben Boeckel 980e048a7d Factor out checks for unused variables 2010-09-14 17:10:04 -04:00
Brad King 4c06e23307 Merge topic 'resolve/fix_target_name_with_dot_vs10/allow_upper_case_cpp_and_others'
eccc7d5 Merge branch 'allow_upper_case_cpp_and_others' into resolve/fix_target_name_with_dot_vs10/allow_upper_case_cpp_and_others
ed37fc3 VS2010: Set IntDir for utility and global targets.
e79e412 VS2010: Honor PROJECT_LABEL target property (#10611)
530ade6 Fix targets with . in the name for VS 10 IDE.
2010-09-14 15:07:23 -04:00
Brad King 6580f5de99 Merge topic 'improve-missing-source-file-error'
a6b5ead Report missing source files with context of target
2010-09-14 13:31:10 -04:00
Brad King f306a357b2 Merge topic 'style-line-length'
9d21281 Fix line-too-long style errors
86025d3 file(DOWNLOAD): Fix error message formatting
2010-09-14 13:19:53 -04:00
Brad King 5233d34c31 Merge topic 'preserve-timestamps-on-tar-extract'
666f328 Preserve timestamps on files on tar extract.
2010-09-14 13:11:06 -04:00
Brad King 5dfa48c8c5 Merge topic 'lazy-query-cdash'
ffda17d We shouldn't ask CDash for its version info until/unless we actually need it.
2010-09-14 13:09:58 -04:00
Brad King 1ae9832988 Merge topic 'multi-v-single-configuration'
b06fb16 No CMAKE_CONFIGURATION_TYPES in single-config generators (#10202)
2010-09-14 13:07:59 -04:00
KWSys Robot becc11f72f KWSys Nightly Date Stamp 2010-09-14 00:10:28 -04:00
Brad King a6b5ead62f Report missing source files with context of target
Previously we reported only the CMakeLists.txt file in the directory
that adds the target.
2010-09-13 16:17:20 -04:00
David Cole ed37fc3ea3 VS2010: Set IntDir for utility and global targets.
VS2010 uses IntDir as the location for writing log files for
what happens during custom build steps. With no IntDir settings,
all ExternalProject usage within the same CMakeLists.txt file
would result in multiple utility targets all trying to use the
same custom build log files.

With parallel builds, they would try to use them simultaneously
and result in file access errors, preventing the builds from
completing successfully.

Now each utility target has its own IntDir setting, and so, its
own custom build rule log files.
2010-09-13 15:22:15 -04:00
KWSys Robot f3bc219adb KWSys Nightly Date Stamp 2010-09-13 00:10:04 -04:00
KWSys Robot 3665e69bc6 KWSys Nightly Date Stamp 2010-09-12 00:10:03 -04:00
KWSys Robot c36f501a64 KWSys Nightly Date Stamp 2010-09-11 00:10:04 -04:00
David Cole 269a4b876a Enable calling commands with : in argv[1] (#9963)
The solution seems hackish, but it works: for
NMake only, prepend a no-op command before each
real command that begins with ".

This is really a work-around for an NMake problem.
When a command begins with ", nmake truncates the
first argument to the command after the first :
in that arg. It has a parsing problem.

Workaround..., hackish..., but it should solve
the issue for #9963 and its related friends.

Also, modify the CustomCommand test to replicate
the problem reported in issue #9963. Before the
NMake specific code change, the test failed.
Now, it passes. Ahhhhhh.
2010-09-10 17:55:45 -04:00
Brad King 9d21281b7d Fix line-too-long style errors 2010-09-10 14:42:09 -04:00
Brad King 86025d3a38 file(DOWNLOAD): Fix error message formatting
The SetError method automatically starts the message with the name of
the command.  Fix up calls to it so that we get "file DOWNLOAD..."
instead of "file FILE(DOWNLOAD ...".  Also reduce length of long lines
containing these calls.
2010-09-10 14:35:07 -04:00
Brad King 1a0c166a26 Store direct dependencies in solutions for VS >= 8
Since commit bc43b0f2 (Do not link library dependencies in VS solutions,
2009-10-20) CMake disables for VS >= 8 linking of a target to libraries
that happen to be listed as solution-level dependencies.  Therefore we
can list the direct dependencies of each target in the solution file and
let VS handle transitive dependencies automatically.
2010-09-10 09:12:03 -04:00
Brad King f2b4a46677 KWSys: Suppress -Wcast-align warning in MD5.c
The code does contain a cast that increases alignment but only in a
conditional that verifies the input is sufficiently aligned.
2010-09-10 09:00:02 -04:00
KWSys Robot de346204b8 KWSys Nightly Date Stamp 2010-09-10 00:10:08 -04:00
David Cole e79e412e70 VS2010: Honor PROJECT_LABEL target property (#10611) 2010-09-09 16:44:30 -04:00
David Cole 666f328858 Preserve timestamps on files on tar extract.
Conversion to libarchive changed the behavior of
cmake -E tar xzf. This commit fixes that oversight.
2010-09-09 12:57:14 -04:00
David Cole 2eab3b2cbb Revert commit: CMake: quote ':' in Windows NMake Makefiles (#9963) -- it was not the right fix and caused mucho other problemo 2010-09-09 12:40:04 -04:00
KWSys Robot 42dbb43294 KWSys Nightly Date Stamp 2010-09-09 00:10:04 -04:00
David Cole fcbdd3129e CMake: quote ':' in Windows NMake Makefiles (#9963) 2010-09-08 18:50:03 -04:00
Zach Mullen ffda17d9ef We shouldn't ask CDash for its version info until/unless we actually need it. 2010-09-08 15:14:42 -04:00
Brad King b06fb16684 No CMAKE_CONFIGURATION_TYPES in single-config generators (#10202)
Factor out reading of CMAKE_CONFIGURATION_TYPES and CMAKE_BUILD_TYPE
into cmMakefile::GetConfigurations.  Read the former only in
multi-config generators.
2010-09-08 14:54:49 -04:00
Ben Boeckel 83acb0a4b2 Remove now unused variables 2010-09-08 13:29:57 -04:00
Ben Boeckel 3801463c9f Use built-ins for readability and maintainability 2010-09-08 12:03:42 -04:00
Brad King 28edb70a9e Merge topic 'vs-project-groups'
e6ac0aa Add FOLDER target property, for IDEs (#3796)
2010-09-08 11:08:05 -04:00
Brad King 4ea441eaf9 Merge topic 'ImproveFindPackageConfigMode'
5cdfc9c Improve wording of the error message of find_package() in config-mode
4969c3b Improve version notice in the generated message
e8ae504 Add option CONFIG_MODE to FPHSA()
b4b8f96 Don't create an empty element at the end of Foo_CONSIDERED_CONFIGS/VERSIONS
cc955a0 Small cleanup of FindPackageHandleStandardArgs.cmake
0367245 Replace the two vector<string,string> with one vector<struct{string,string}>
130b0e2 Improve error message in Config-mode when no appropriate version was found
dfe9c95 Record all considered Config files and their versions.
2010-09-08 11:07:55 -04:00
Brad King 81fa6bbcc7 Merge topic 'ctest-show-labels'
32242af Added CTest command --print-labels
2010-09-08 11:07:51 -04:00
Brad King c9b0e1da5c Merge topic 'CPack-PreserveSymlinksInInstalledDirs-v2'
013e003 CPack  handle symlinks in CPACK_INSTALLED_DIRECTORIES fix for bug5430
2010-09-08 11:07:38 -04:00
KWSys Robot 711c610314 KWSys Nightly Date Stamp 2010-09-08 00:10:41 -04:00
Ben Boeckel 8b520158c3 Push the initialize and unused states when copying 2010-09-07 15:12:15 -04:00
KWSys Robot 409c936ff4 KWSys Nightly Date Stamp 2010-09-07 00:10:05 -04:00
Bill Hoffman 530ade6677 Fix targets with . in the name for VS 10 IDE. 2010-09-06 12:06:43 -04:00
KWSys Robot 362ba97017 KWSys Nightly Date Stamp 2010-09-06 00:10:03 -04:00
KWSys Robot 20f15c4321 KWSys Nightly Date Stamp 2010-09-05 00:10:34 -04:00
KWSys Robot 8e0de9cc45 KWSys Nightly Date Stamp 2010-09-04 00:10:06 -04:00
David Cole e6ac0aacf6 Add FOLDER target property, for IDEs (#3796)
This work was started from a patch by Thomas Schiffer.
Thanks, Thomas!

See the newly added documentation of the FOLDER target
property for details.

Also added global properties, USE_FOLDERS and
PREDEFINED_TARGETS_FOLDER. See new docs here, too.

By default, the FOLDER target property is used to organize
targets into folders in IDEs that have support for such
organization.

This commit adds "solution folder" support to the Visual
Studio generators. Currently works with versions 7 through
10.

Also, use the new FOLDER property in the ExternalProject
test and in the CMake project itself.
2010-09-03 13:53:22 -04:00
KWSys Robot f68c08e1b4 KWSys Nightly Date Stamp 2010-09-03 00:10:03 -04:00
Ben Boeckel 439877f620 Be consistent with single and double quotes 2010-09-02 12:14:06 -04:00
Ben Boeckel 4cf17062d3 Add documentation for check-system-vars 2010-09-02 11:39:22 -04:00
Ben Boeckel b74777fdb2 Fix the spelling of the flag for warn-unused-vars 2010-09-02 11:39:01 -04:00
Ben Boeckel b94812072a Change logic of flag to turn off cli unused checks
Since we default to checking unused cli variables, make the flag turn
off the checks.
2010-09-02 11:38:00 -04:00
Ben Boeckel 300fc15779 Fix detection of system files
Instead of looking to see if the file is under CMAKE_ROOT, check to see
if it is instead under the source or binary directories in use.
2010-09-02 11:33:34 -04:00
Ben Boeckel d784e6af4d Run the unused variables check on the final pass 2010-09-02 11:29:05 -04:00
Ben Boeckel 9efc05722e VariableWatch is not available when bootstrapping 2010-09-02 09:10:52 -04:00
KWSys Robot f943601640 KWSys Nightly Date Stamp 2010-09-02 00:10:04 -04:00
Ben Boeckel 2e78224509 Add a missing comma to the warning message 2010-09-01 13:09:08 -04:00
Ben Boeckel 74997000c8 Add a flag to warn about system files 2010-09-01 13:09:08 -04:00
Ben Boeckel fff9f6d6f7 Rename flags again and use variablewatch for cli 2010-09-01 13:09:08 -04:00
Ben Boeckel 786e2695cb Add warn-unused to the Qt interface 2010-09-01 13:08:15 -04:00
Ben Boeckel 636e6c4ef7 Default to marking things as used
If we don't then:

    cmake --warn-unused --warn-unused-all

acts differently than:

    cmake --warn-unused-all --warn-unused
2010-09-01 13:08:15 -04:00
Ben Boeckel 4ff03402fc Rename find-unused to warn-unused 2010-09-01 13:08:14 -04:00
Ben Boeckel d7999e9b29 Rename strict-mode to warn-uninitialized 2010-09-01 13:08:14 -04:00
Ben Boeckel e141bc950a Detect unused variables 2010-09-01 13:08:14 -04:00
Ben Boeckel d3e8eb5041 Add flags to detect unused variables 2010-09-01 13:08:14 -04:00
Ben Boeckel f332e14ff2 Complete strict-mode checks for uninitialized vars 2010-09-01 13:08:14 -04:00
Ben Boeckel 52f9637174 Add method to get the local scope variables 2010-09-01 13:08:14 -04:00
Bill Hoffman f794d589a4 Make --strict-mode option, and integrate with cmake-gui 2010-09-01 13:08:14 -04:00
Bill Hoffman 48b5b85593 Add a warning when variables are used uninitialized. 2010-09-01 13:08:13 -04:00
Bill Hoffman cd626ea66e For macros make sure the FilePath points to a valid pointer in the args. 2010-09-01 13:08:13 -04:00
KWSys Robot 4948536d61 KWSys Nightly Date Stamp 2010-09-01 00:10:30 -04:00
Alex Neundorf 5cdfc9c8ea Improve wording of the error message of find_package() in config-mode
As suggested by Brad, this improves the wording of the error message
in config-mode when config-files were found, but no suitable version.
The patch also contains the small loop-optimization suggested by Brad.

Alex
2010-08-31 21:10:00 +02:00
Brad King 28e073213f Merge topic 'MakeTargetLinkLibrariesComplainWhenNoTargetIsUsed'
6acc71c New CMP0016 for deciding whether an unknown target in TLL() is an error.
da033b1 Remove trailing whitespace
6aef6d8 Just warn in case of a bad target as only argument for t_l_l()
c786635 Make target_link_libraries() complain if bad target name is used
43f96ea Remove trailing whitespace
2010-08-31 14:48:26 -04:00
Brad King 6c155d9e9e Merge topic 'vs-utility-depends'
a99f620 Fix unused parameter warning in VS 7.1 generator
79a88c3 Refactor VS <= 7.1 utility-depends workaround
325bdb2 Factor out duplicate VS target dependency code
6bea843 Factor out global generator ComputeTargetDepends method
2010-08-31 14:38:18 -04:00
Brad King 3913bff986 Merge topic 'vs-platforms'
ef4394d VS: Add ArchitectureId to VS 8 and 9 generators
4fec681 VS: Map /ENTRY linker option to EntryPointSymbol
be49129 VS: Add more TargetMachine option values
807fca4 VS: Convert PlatformName member to a virtual method
2010-08-31 14:37:16 -04:00
Brad King 1976c45a3c Merge topic 'intra-component-dependencies'
adb58d5 Honor strong intra-component target dependencies
681cf01 Distinguish "strong" and "weak" target dependency edges
7be2617 Split notion of node lists and edge lists
2010-08-31 14:36:50 -04:00
Brad King d2a65b5f40 Merge topic 'target-dependencies-const'
95b3bb5 Restore GetTargetDirectDepends const return
2010-08-31 14:36:01 -04:00
Brad King 39da06e8fa Merge topic 'FindPackageLogVersion'
88e6447 Add macro ADD_FEATURE_INFO() and improve docs.
b353524 Improve wording of the documentation.
6fc88b2 Improve documentation.
3333878 Log the required package version and major improvement to FeatureSummary
2010-08-31 14:35:46 -04:00
Brad King 776a50e175 Merge topic 'partial-fix-10743'
9e62ac0 Improve documentation of OPTION command.
2010-08-31 14:26:12 -04:00
Brad King 65fa0f0235 Merge topic 'CPackArchiveGenerator-ComponentSupport'
a986daf CPack fix broken compilation for CygwinSource generator
873e99a CPackArchiveGenerator improve usability and robustness
654683a CPackArchiveGenerator  add component supports
36a550a CPackArchiveGenerator  use cmArchiveWrite wrapper
2010-08-31 14:24:32 -04:00
Brad King f95074ba70 Merge topic 'CPack-FixDESTDIR-Issue7000'
3178767 Merge 'CPack-FixDESTDIR-Issue7000' from github.com:TheErk/CMake
6a521f8 CPack   Enable better handling of absolute installed files
40dc97d CPack   Backward-compatibly enforce DESTDIR for DEB and RPM
2010-08-31 14:22:59 -04:00
Brad King f670c1c609 Merge topic 'install-export-docs'
63fbb2f Clarify install(TARGETS) docs for EXPORT option
2010-08-31 14:19:32 -04:00
Zach Mullen 32242affea Added CTest command --print-labels
This command allows a user to quickly see the list of all available
test labels.  The labels are also printed in verbose show only mode,
alongside their corresponding tests.
2010-08-31 10:41:23 -04:00
KWSys Robot 81a76fedd7 KWSys Nightly Date Stamp 2010-08-31 00:10:10 -04:00
KWSys Robot aac1680648 KWSys Nightly Date Stamp 2010-08-30 00:10:03 -04:00
Alex Neundorf b4b8f96391 Don't create an empty element at the end of Foo_CONSIDERED_CONFIGS/VERSIONS
Alex
2010-08-29 19:50:51 +02:00
Alex Neundorf 0367245f0c Replace the two vector<string,string> with one vector<struct{string,string}>
Before this patch there were two separate vectors, and the code made sure
they always had the same size.
With this patch the code doesn't have to ensure this anymore, there is only
one vector now.

Alex
2010-08-29 17:51:44 +02:00
Alex Neundorf 130b0e2195 Improve error message in Config-mode when no appropriate version was found
If in config-mode config files have been found by find_package(), but their
version didn't match the requested version, now all considered files
and their versions are printed (instead of saying "didn't find config file)

Alex
2010-08-29 17:43:45 +02:00
Alex Neundorf dfe9c95129 Record all considered Config files and their versions.
As suggested on cmake-devel, find_package in Config-mode now records
all considered config-files and their versions in
<package>_CONSIDERED_CONFIGS and <package>_CONSIDERED_VERSIONS respectively.

Alex
2010-08-29 17:07:39 +02:00
KWSys Robot fd141a0b70 KWSys Nightly Date Stamp 2010-08-29 00:10:37 -04:00
Eric NOULARD 013e0039ee CPack handle symlinks in CPACK_INSTALLED_DIRECTORIES fix for bug5430
The proposed solution is to avoid to CopyIfDifferent any links
found in CPACK_INSTALLED_DIRECTORIES but memorize them instead
then at the end of the processing for each dir do re-create the
link in the installed tree.
Current patch should work if the link are "local" to the directory.
2010-08-28 16:50:06 +02:00
Alex Neundorf 6acc71c09d New CMP0016 for deciding whether an unknown target in TLL() is an error.
When set to OLD, target_link_libraries() silently accepts if it is called
with only one argument and this one argument is not a target.
When set to NEW, this is an error. By default it is a warning now.

Alex
2010-08-28 16:06:45 +02:00
Alex Neundorf da033b10d2 Remove trailing whitespace
Alex
2010-08-28 16:01:49 +02:00
KWSys Robot 216aa24d92 KWSys Nightly Date Stamp 2010-08-28 00:10:03 -04:00
Brad King 735a8c26d7 KWSys: Use SplitPath in GetActualCaseForPath
Avoid using the old SplitString method in favor of the more robust
SplitPath method.
2010-08-27 10:50:02 -04:00
Brad King 3bf1869c93 KWSys: Improve SplitPath method documentation
Document explicitly that the first component always exists.  Fix the
documentation of SplitPathRootComponent to note that home directory
roots (~/ and ~u/) always have a trailing slash.
2010-08-27 10:20:02 -04:00
Brad King 4746365e03 KWSys: Avoid empty string dereference in SplitString 2010-08-27 10:10:02 -04:00
Brad King a99f620834 Fix unused parameter warning in VS 7.1 generator
The cmGlobalVisualStudio71Generator::WriteProjectDepends method no
longer uses its 'dspname' parameter.  Leave off the name to avoid the
unused parameter warning.  Later we should refactor the method to avoid
passing the argument altogether.
2010-08-27 09:56:00 -04:00
KWSys Robot d8ccd1760c KWSys Nightly Date Stamp 2010-08-27 00:10:03 -04:00
Patrick Gansterer ef4394defa VS: Add ArchitectureId to VS 8 and 9 generators
Avoid duplicate architecture string literals.
2010-08-26 16:39:01 -04:00
Patrick Gansterer 4fec681fa7 VS: Map /ENTRY linker option to EntryPointSymbol 2010-08-26 16:38:42 -04:00
Alex Neundorf 6aef6d84d7 Just warn in case of a bad target as only argument for t_l_l()
As discussed on cmake-devel, if target_link_libraries() is called with
only one argument, and this one argument is not a valid target, just
print a warning but don't fail, since otherwise probably some existing
code somewhere might stop building.

Alex
2010-08-26 21:54:43 +02:00
Alex Neundorf c786635149 Make target_link_libraries() complain if bad target name is used
target_link_libraries() did not complain if there was only one argument,
and this one (first) argument wasn't a valid target name, e.g.

add_executable(hello main.cpp)
target_link_libraries(-static-intel)

Here the target "hello" was forgotten in the tll() call, but cmake didn't
complain. With this commit it does.

Alex
2010-08-26 21:02:40 +02:00
Alex Neundorf 43f96eaf93 Remove trailing whitespace
Alex
2010-08-26 21:01:58 +02:00
KWSys Robot 737261785a KWSys Nightly Date Stamp 2010-08-26 00:10:20 -04:00
Brad King adb58d5e36 Honor strong intra-component target dependencies
Strong dependencies (created by add_dependencies) must be honored when
linearizing a strongly-connected component of the target dependency
graph.  The initial graph edges have strong/weak labels and can contain
cycles that do not consist exclusively of strong edges.  The final graph
never contains cycles so all edges can be strong.
2010-08-25 17:14:13 -04:00
Brad King 681cf011dd Distinguish "strong" and "weak" target dependency edges
Utility dependencies are "strong" because they must be enforced to
generate a working build.  Link dependencies are "weak" because they can
be broken in the case of a static library cycle.
2010-08-25 17:10:00 -04:00
Brad King 7be2617b5a Split notion of node lists and edge lists 2010-08-25 17:10:00 -04:00
Brad King 95b3bb5dbc Restore GetTargetDirectDepends const return
The returned set should never be modified.  Restore 'const' correctness
unnecessarily removed by commit 6903d2df (remove const, 2008-01-30).
2010-08-25 17:05:01 -04:00
David Cole 9e62ac0b40 Improve documentation of OPTION command.
Point via see also phrasing to the CMakeDependentOption module.
2010-08-25 15:23:18 -04:00
Eric NOULARD a986dafd7f CPack fix broken compilation for CygwinSource generator 2010-08-25 11:04:49 +02:00
KWSys Robot c4f7034efb KWSys Nightly Date Stamp 2010-08-25 00:10:25 -04:00
Brad King 79a88c35f8 Refactor VS <= 7.1 utility-depends workaround
Commit 438a7e2f (Fix utility dependencies for static libraries in VS
generators, 2007-04-04) implemented utility-only dependencies between
linkable targets by introducing an intermediate non-linkable target.
We convert a dependency of the form

  foo -> bar

to the form

  foo -> bar_UTILITY -> bar

to prevent foo from including bar on its link line.  Previously we added
the extra "_UTILITY" targets explicitly among the project targets before
dependency analysis was performed.  Now we generate them separately at
the last moment so that cmGlobalGenerator need not be aware of them.
2010-08-24 18:47:56 -04:00
Brad King 325bdb2a92 Factor out duplicate VS target dependency code
Compute VS target dependencies in cmGlobalVisualStudioGenerator when the
main global dependency analysis is done.  Use these results in each of
the VS generators instead of duplicating the analysis.
2010-08-24 18:39:36 -04:00
Brad King 6bea84353c Factor out global generator ComputeTargetDepends method
Put the global dependency analysis in its own method so individual
generators can hook into this point.
2010-08-24 18:12:44 -04:00
Patrick Gansterer be491298d4 VS: Add more TargetMachine option values 2010-08-24 17:38:00 -04:00
Patrick Gansterer 807fca4ce6 VS: Convert PlatformName member to a virtual method 2010-08-24 17:36:09 -04:00
Eric NOULARD 3178767d5f Merge 'CPack-FixDESTDIR-Issue7000' from github.com:TheErk/CMake 2010-08-24 21:59:13 +02:00
Eric NOULARD 873e99a27d CPackArchiveGenerator improve usability and robustness
Handle the "no group defined" case
Implement the idea from Rolf Eike Beer to have a single
var CPACK_COMPONENTS_GROUPING with several values
2010-08-24 21:42:54 +02:00
Eric NOULARD 654683adc7 CPackArchiveGenerator add component supports 2010-08-24 21:42:21 +02:00
Eric NOULARD 36a550ae7a CPackArchiveGenerator use cmArchiveWrite wrapper 2010-08-24 21:41:32 +02:00
Alex Neundorf 33338781db Log the required package version and major improvement to FeatureSummary
find_package() now also stores the required version automatically, so it
can be used by FeatureSummary.cmake.
This was one of the requested features for setting up nightly builds
for KDE, since with this functionality it will be possible to write
a file at the end of each project which lists all required packages
and their versions. This file could then be compared for equality
with an older one and if something has changed the build maintainer
can be emailed.

In FeatureSummary.cmake there is now a new function feature_summary(),
which also allows to print the log to a file or into a variable.
It also allows to specify whether to append to a file or to write a new
one, and what information to log.

Docs are still missing.

Alex
2010-08-24 21:24:54 +02:00
Brad King 70f3b06b7c Merge topic 'vs2010-dbginfo-default'
e234122 VS2010: Disable PDBs when there is no debug info
2010-08-24 14:42:31 -04:00
Brad King 63fbb2f67e Clarify install(TARGETS) docs for EXPORT option
Explicitly state that a call to install(EXPORT) is also needed.
2010-08-24 10:53:19 -04:00
KWSys Robot 888f61e6e3 KWSys Nightly Date Stamp 2010-08-24 00:10:03 -04:00
Eric NOULARD 6a521f8604 CPack Enable better handling of absolute installed files
The idea of the patch is to let the install generator define
CPACK_ABSOLUTE_INSTALL_FILES then when CMake is installing
project he will concatenate the list of files and give
it to specific CPack Generator by defining CPACK_ABSOLUTE_INSTALL_FILES
to be the list of ALL files that were installed using absolute destination.
An example of use has been applied to RPM generator which now
tries to automatically build a relocatable package.
2010-08-23 17:38:33 +02:00
Eric NOULARD 40dc97dc73 CPack Backward-compatibly enforce DESTDIR for DEB and RPM 2010-08-23 16:14:40 +02:00
KWSys Robot 9b82ecae42 KWSys Nightly Date Stamp 2010-08-23 00:10:27 -04:00
KWSys Robot b718597b8b KWSys Nightly Date Stamp 2010-08-22 00:10:03 -04:00
KWSys Robot e8fca4e247 KWSys Nightly Date Stamp 2010-08-21 00:10:23 -04:00
KWSys Robot e752cff8fd KWSys Nightly Date Stamp 2010-08-20 00:10:30 -04:00
Brad King c873a83b6c Merge topic 'remove-EscapeSpaces'
cb9ea26 Remove cmSystemTools::EscapeSpaces method
5383657 CTest: Avoid use of old EscapeSpaces method
2010-08-19 13:28:50 -04:00
Brad King 9b02aee86e Merge topic 'fix-cdash-version-uri'
7dbc1a2 Fix hard-coded CDash URI in version query
2010-08-19 13:28:08 -04:00
Robert Goulet e234122693 VS2010: Disable PDBs when there is no debug info
When none of the options /Z7, /Zi and /ZI are specified in the cmake
project settings, the project will open in the editor with "Program
Database" as the default debug information format, ending up always
generating PDBs regardless of project configuration.

Modify the output project file so that if the debug information format
is not specified in the cmake project settings it will default to no PDB
generated, just like all the previous other Visual Studio versions.
This problem comes from the fact that Microsoft changed the default
setting of the debug information format to be "Program Database" instead
of "Disabled".
2010-08-19 09:21:54 -04:00
KWSys Robot b29cd51147 KWSys Nightly Date Stamp 2010-08-19 00:10:04 -04:00
Brad King cb9ea2647f Remove cmSystemTools::EscapeSpaces method
The last remaining call to this method exists only for compatibility.
Remove the method and put its implementation inline in place of the last
call.
2010-08-18 10:26:05 -04:00
Brad King 5383657357 CTest: Avoid use of old EscapeSpaces method
Refactor how cmCTestMemCheckHandler computes the memory tester command
line options to avoid encoding them in a single string just to parse
them again.  The EscapeSpaces uses backslahes to escape spaces on UNIX
platforms, so replace other calls to it in CTest that are used to create
human-readable strings with simple double-quoting.
2010-08-18 10:14:09 -04:00
Zach Mullen 7dbc1a2ebd Fix hard-coded CDash URI in version query 2010-08-18 09:58:27 -04:00
KWSys Robot a3d796b906 KWSys Nightly Date Stamp 2010-08-18 00:10:05 -04:00
Brad King ab90916638 Merge topic 'libarchive-wrapper'
fb41da4 Add Compress compress support to libarchive-wrapper
1a3ad5c Add XZ compress support to libarchive-wrapper
b50c159 Add ZIP archive format and LZMA compress support to libarchive-wrapper
4663356 cmArchiveWrite: Fix signed/unsigned again
2010-08-17 15:20:32 -04:00
Brad King 465f4dd5a2 Merge topic 'tg/find-ignore-path'
1221581 Teach find_* commands to ignore some paths
2010-08-17 15:13:40 -04:00
Brad King cc2ba7f9c2 Merge topic 'CPack-APIredesign'
bd510fe CPack: Avoid member shadowing after API refactor (part2)
31a313d CPack: Avoid member shadowing after API refactor
cd7b8a0 CPack: Refactor API in order to handle multi-file packages
2010-08-17 15:12:42 -04:00
KWSys Robot f4ce315301 KWSys Nightly Date Stamp 2010-08-17 00:10:04 -04:00
Eric NOULARD fb41da4a6b Add Compress compress support to libarchive-wrapper 2010-08-16 20:45:05 +02:00
Brad King 0f5189d144 KWSys: Fix GetActualCaseForPath for UNC paths
See issue #11023.

Author: Clinton Stimpson <clinton@elemtech.com>
2010-08-16 10:00:02 -04:00
Brad King 0a21abd690 KWSys: Fix SplitPath for leading '\' on Windows
Windows paths may begin with a single backslash when the drive letter is
omitted.  Recognize this as a root path component.
2010-08-16 09:10:03 -04:00
KWSys Robot 78474d9f24 KWSys Nightly Date Stamp 2010-08-16 00:10:02 -04:00
KWSys Robot b0d03c9953 KWSys Nightly Date Stamp 2010-08-15 00:10:03 -04:00
KWSys Robot 16168ab0c3 KWSys Nightly Date Stamp 2010-08-14 00:10:02 -04:00
Todd Gamblin 1221581aa8 Teach find_* commands to ignore some paths
Add platform configuration variable CMAKE_SYSTEM_IGNORE_PATH and user
configuration variable CMAKE_IGNORE_PATH.  These specify a set of
directories that will be ignored by all the find commands.  Update
FindPackageTest so that several cases will fail without a functioning
CMAKE_IGNORE_PATH.
2010-08-13 11:53:28 -04:00
Eric NOULARD 1a3ad5c615 Add XZ compress support to libarchive-wrapper
This is not needed but it does not cost much to do it for all
potentially supported format in libarchive. XZ and LZMA are not
builtin libarchive and require external lib but if
CMAKE_USE_SYSTEM_LIBARCHIVE is ON then we may get it for free.
2010-08-13 17:51:27 +02:00
Eric NOULARD b50c15915a Add ZIP archive format and LZMA compress support to libarchive-wrapper
This will be needed to use cmArchiveWrire in cmCPackArchiveGenerator
with the same feature set as before. Note that adding zip
support to libarchive-wrapper would also makes it easy to add
a new -E zip command to cmake commands.
2010-08-13 17:49:47 +02:00
KWSys Robot 34f773ccfe KWSys Nightly Date Stamp 2010-08-13 00:10:15 -04:00
Eric NOULARD bd510fe4ea CPack: Avoid member shadowing after API refactor (part2)
After converting method arguments to members we need to avoid use of the
same names as local variables and other method arguments. One more fix.
2010-08-12 20:18:46 +02:00
KWSys Robot 7b632e5ac6 KWSys Nightly Date Stamp 2010-08-12 00:10:13 -04:00
Brad King 31a313d470 CPack: Avoid member shadowing after API refactor
After converting method arguments to members we need to avoid use of the
same names as local variables and other method arguments.
2010-08-11 16:17:09 -04:00
Eric NOULARD cd7b8a03f5 CPack: Refactor API in order to handle multi-file packages
The multi-argument CompressFiles(...) method has been replace by the
no-argument PackageFiles() method and 3 more member variables.  This
will enable implemention of multi-package generators.  Now each specific
generator (which overloads PackageFiles()) may decide to change the name
and/or the number of generated package files.
2010-08-11 14:09:52 -04:00
Brad King 4663356079 cmArchiveWrite: Fix signed/unsigned again
Some stream libraries return size_t from gcount() and some return
ssize_t.  Add an explicit cast to ios::streamsize for its return value.
Also refactor use of nnext to reduce the use of casts.
2010-08-11 09:47:04 -04:00
KWSys Robot 39886c405a KWSys Nightly Date Stamp 2010-08-11 00:10:22 -04:00
Brad King 6d85679551 Merge topic 'libarchive-wrapper'
aef6723 cmArchiveWrite: Fix signed/unsigned compare/convert
1b5b2ed Include entries for directories in tarballs (#11020)
c7c9009 Create class cmArchiveWrite to wrap libarchive (#11020)
ac26737 Merge branch 'system-libarchive-include' into libarchive-wrapper
3296e6a Include headers from chosen libarchive (#10923)
2010-08-10 14:35:41 -04:00
KWSys Robot 4308336552 KWSys Nightly Date Stamp 2010-08-10 00:10:03 -04:00
Brad King aef672311a cmArchiveWrite: Fix signed/unsigned compare/convert
The libarchive interface accepts size_t but returns ssize_t.  The std
streams interface wants streamsize, which is typically ssize_t.  Since
no one type for our variable matches without conversions, make the
conversions explicit to avoid -Wsign-conversion and -Wsign-compare
warnings.
2010-08-09 10:43:03 -04:00
KWSys Robot c9c4962896 KWSys Nightly Date Stamp 2010-08-09 00:10:02 -04:00
KWSys Robot 43e94787ce KWSys Nightly Date Stamp 2010-08-08 00:10:03 -04:00
KWSys Robot fd69b3310d KWSys Nightly Date Stamp 2010-08-07 00:10:07 -04:00
Brad King 1b5b2ed3b2 Include entries for directories in tarballs (#11020)
Use libarchive through class cmArchiveWrite to implement the method
cmSystemTools::CreateTar.  The class includes entries for directories by
automatically traversing the tree on disk.
2010-08-06 11:38:14 -04:00
Brad King c7c90095d4 Create class cmArchiveWrite to wrap libarchive (#11020) 2010-08-06 11:38:05 -04:00
KWSys Robot 7c20f7b244 KWSys Nightly Date Stamp 2010-08-06 00:10:03 -04:00
Brad King ac267371e6 Merge branch 'system-libarchive-include' into libarchive-wrapper 2010-08-05 17:12:42 -04:00
Brad King 3296e6ad90 Include headers from chosen libarchive (#10923)
When CMAKE_USE_SYSTEM_LIBARCHIVE is on we must include the system
libarchive headers to match the library that will be linked.
2010-08-05 17:06:10 -04:00
KWSys Robot 00893669e5 KWSys Nightly Date Stamp 2010-08-05 00:10:03 -04:00
KWSys Robot a42a44a5ac KWSys Nightly Date Stamp 2010-08-04 00:10:25 -04:00
Brad King 08c5e475ab Merge topic 'fix-cmake-self-references'
df1e00f Refer to self with CMake_(SOURCE|BINARY)_DIR (#10046)
2010-08-03 16:15:03 -04:00
Brad King 1820a05cb2 Merge topic 'CPackDEB-auto-dependency-support'
ded3a15 CPackDeb  optionally generates auto-dependency list part fix of bug 10292
2010-08-03 16:12:37 -04:00
Brad King d00d71e6cf Merge topic 'CPackDEB-wrong-install-size'
5495a6d CPackDEB:  merge wrong installed size patch. see bugs 10296 (and 10292)
2010-08-03 16:12:18 -04:00
Brad King e6067ca969 Merge topic 'ctest-git-flexibility'
a7319cf ctest_update: Run 'git submodule' at top level
7bf8dc1 ctest_update: Support ".git file" work trees
65cb72f ctest_update: Abort if Git FETCH_HEAD has no candidates
2010-08-03 16:07:31 -04:00
KWSys Robot 8342eacda7 KWSys Nightly Date Stamp 2010-08-03 00:10:03 -04:00
KWSys Robot de8cc71e13 KWSys Nightly Date Stamp 2010-08-02 00:10:13 -04:00
KWSys Robot afd32fbded KWSys Nightly Date Stamp 2010-08-01 00:10:07 -04:00
KWSys Robot 41dbdb71cd KWSys Nightly Date Stamp 2010-07-31 00:10:08 -04:00
KWSys Robot c67bf9ec72 KWSys Nightly Date Stamp 2010-07-30 00:10:02 -04:00
Brad King df1e00ff82 Refer to self with CMake_(SOURCE|BINARY)_DIR (#10046)
This is good practice, and is necessary to support building CMake as a
subdirectory of another project.
2010-07-29 11:22:48 -04:00
KWSys Robot 03b7eff0ea KWSys Nightly Date Stamp 2010-07-29 00:10:03 -04:00
Eric NOULARD ded3a1585b CPackDeb optionally generates auto-dependency list part fix of bug 10292
The default behavior is not to activate this option because it may break
DEB package building for project who does not use INSTALL RPATH.
2010-07-28 18:24:20 +02:00
Eric NOULARD 5495a6d975 CPackDEB: merge wrong installed size patch. see bugs 10296 (and 10292) 2010-07-28 17:03:14 +02:00
KWSys Robot 1d98623443 KWSys Nightly Date Stamp 2010-07-28 00:10:05 -04:00
Brad King a7319cf1c1 ctest_update: Run 'git submodule' at top level
The git submodule porcelain must be executed from the top level of the
work tree.  Use 'git rev-parse --show-cdup' to find the top level
relative to the source tree.  This is better than searching up the tree
for .git ourselves because it will always work the same way Git does and
thus honors settings like GIT_DISCOVERY_ACROSS_FILESYSTEM.
2010-07-27 11:31:59 -04:00
KWSys Robot 13d686331e KWSys Nightly Date Stamp 2010-07-27 00:10:06 -04:00
Brad King 7bf8dc1ac9 ctest_update: Support ".git file" work trees
Commit c3781efb (Support Git upstream branch rewrites, 2010-06-08)
assumed that ".git/FETCH_HEAD" exists inside the source tree.  Fix the
implementation to handle a work tree using a ".git file" to link to its
repository.  Use "git rev-parse --git-dir" to locate the real .git dir.
2010-07-26 11:40:20 -04:00
KWSys Robot c457288767 KWSys Nightly Date Stamp 2010-07-26 00:10:02 -04:00
KWSys Robot 5cf80768e1 KWSys Nightly Date Stamp 2010-07-25 00:10:13 -04:00
KWSys Robot 7ed87c3e3e KWSys Nightly Date Stamp 2010-07-24 00:10:05 -04:00
KWSys Robot 0c084dd899 KWSys Nightly Date Stamp 2010-07-23 00:10:34 -04:00
KWSys Robot aa1fce9781 KWSys Nightly Date Stamp 2010-07-22 00:10:39 -04:00
KWSys Robot a2eaf6b415 KWSys Nightly Date Stamp 2010-07-21 00:10:36 -04:00
Brad King 65cb72f758 ctest_update: Abort if Git FETCH_HEAD has no candidates
If .git/FETCH_HEAD provides no merge candidate do not attempt to update.
Also log FETCH_HEAD lines as we parse them since they are essentially
output from the git fetch command.
2010-07-20 16:57:50 -04:00
Brad King e1a4c02bac Merge topic 'resolve/doc-spelling/CPackRPM'
7739d78 Merge CPackRPM changes into doc-spelling
9203e91 Fix spelling errors reported by Lintian.
2010-07-20 16:00:29 -04:00
Brad King efb2c1e695 Merge topic 'guid_vs_newname'
8507a73 Fix for bug#10483, INCLUDE_EXTERNAL_MSPROJECT: ProjectGUID now ProjectGuid
2010-07-20 15:59:34 -04:00
KWSys Robot 8ef066eea4 KWSys Nightly Date Stamp 2010-07-20 00:10:24 -04:00
KWSys Robot 944f3f73ce KWSys Nightly Date Stamp 2010-07-19 00:10:33 -04:00
KWSys Robot 0edc7455a1 KWSys Nightly Date Stamp 2010-07-18 00:10:39 -04:00
KWSys Robot a1c6df5209 KWSys Nightly Date Stamp 2010-07-17 00:10:31 -04:00
KWSys Robot a3717de48a KWSys Nightly Date Stamp 2010-07-16 00:10:35 -04:00
KWSys Robot 5bfae86034 KWSys Nightly Date Stamp 2010-07-15 00:10:28 -04:00
KWSys Robot 07defe56ce KWSys Nightly Date Stamp 2010-07-14 00:10:34 -04:00
Brad King f7a0386fc5 Merge topic 'resolve/ctest-file-checksum/remove-CTestTest3'
38c762c Merge 'remove-CTestTest3' into ctest-file-checksum
46df0b4 Activate retry code on any curl submit failure.
8705497 Checksum test should use CMAKE_TESTS_CDASH_SERVER
d0d1cdd Mock checksum failure output for old CDash versions
af5ef0c Testing for CTest checksum
86e81b5 CTest should resubmit in the checksum failed case
d6b7107 Fix subscript out of range crash
082c87e Cross-platform fixes for checksum/retry code
e525649 Checksums on CTest submit files, and retry timed out submissions.
2010-07-13 17:05:33 -04:00
Brad King 38c762c728 Merge 'remove-CTestTest3' into ctest-file-checksum
Conflicts:
	Tests/CMakeLists.txt
2010-07-13 17:01:39 -04:00
Brad King a570ba6df7 Merge topic 'external-project-launcher'
b2634b6 Detect CMake warnings and errors in build output.
012c986 ExternalProject: Add LOG_* options to hide step output
2010-07-13 14:58:11 -04:00
Brad King 7739d786a4 Merge CPackRPM changes into doc-spelling
Conflicts:
	Modules/CPackRPM.cmake
2010-07-13 09:46:52 -04:00
Kai Wasserbäch 9203e9187e Fix spelling errors reported by Lintian.
During a Lintian run on the binary packages of CMake in Debian I was
notified of many spelling mistakes.
2010-07-13 09:41:37 -04:00
Bill Hoffman 8507a73ea6 Fix for bug#10483, INCLUDE_EXTERNAL_MSPROJECT: ProjectGUID now ProjectGuid 2010-07-13 09:07:59 -04:00
KWSys Robot 6327429f55 KWSys Nightly Date Stamp 2010-07-13 00:10:31 -04:00
David Cole 46df0b44ac Activate retry code on any curl submit failure.
Previously, we were only going into the retry block
for time out conditions. But a "could not connect"
response, or really any sort of curl failure, is
also a condition where we should retry the submit
if the user has requested a retry.
2010-07-12 16:48:38 -04:00
KWSys Robot 942060cb19 KWSys Nightly Date Stamp 2010-07-12 00:10:33 -04:00
KWSys Robot 7dd6f1d13a KWSys Nightly Date Stamp 2010-07-11 00:10:27 -04:00
David Cole b2634b6aa3 Detect CMake warnings and errors in build output.
Fix niggly in ExternalProject that would inadvertently
create a log file of output when a command was explicitly
set to the empty string.

Also, increase the default value for showing context
around build errors to 10 lines, up from 6. Also add
the ability to customize this setting so that users
can put it back to 6 or even lower if they want, or
show more if they want.
2010-07-10 15:04:31 -04:00
KWSys Robot 92473b32ce KWSys Nightly Date Stamp 2010-07-10 00:10:26 -04:00
Brad King 70154efef8 KWSys: Avoid undefined behavior in Process crash tests
Clang is smart enough to recognize that "*(int*)0=0" invokes undefined
behavior, warns, and produces an "undefined instruction".  The message
in commit "Avoid Clang optimizer bug in testProcess-[45]" (2010-07-02)
is incorrect; this is not a Clang bug.  It really is undefined
behavior.  Use "*(int*)1=0" to produce a crash instead.
2010-07-09 10:40:06 -04:00
KWSys Robot a1a4a2cb6d KWSys Nightly Date Stamp 2010-07-09 00:10:23 -04:00
KWSys Robot d6a8fedfbf KWSys Nightly Date Stamp 2010-07-08 00:10:22 -04:00
KWSys Robot f2dc6a664d KWSys Nightly Date Stamp 2010-07-07 00:10:31 -04:00
Brad King 28a16d1cc4 Merge branch 'improve-test-cost-sorting' 2010-07-06 10:24:31 -04:00
Brad King fd3e95f3ef Merge branch 'fix-test-dependency-bug' 2010-07-06 10:22:04 -04:00
Brad King 54b1dc4161 Merge branch 'fix-cmake-conversion-warnings' 2010-07-06 10:20:50 -04:00
Brad King a5d67513a2 Merge branch 'user-override-try-compile' 2010-07-06 10:18:45 -04:00
KWSys Robot f74baa4fcf KWSys Nightly Date Stamp 2010-07-06 00:10:23 -04:00
KWSys Robot c0468481f8 KWSys Nightly Date Stamp 2010-07-05 00:10:20 -04:00
KWSys Robot efee95cd71 KWSys Nightly Date Stamp 2010-07-04 00:10:23 -04:00
KWSys Robot 4b661784b4 KWSys Nightly Date Stamp 2010-07-03 00:10:23 -04:00
Brad King c3389d4ce2 KWSys: Avoid Clang optimizer bug in testProcess-[45]
Clang's optimizer, as of clang version 2.8 (trunk 107463), produces the
undefined instruction 'ud2' for the code "*(int*)0=0" on OS X x86_64.
It causes our crash tests to fail because the child process exits with
an invalid instruction instead of a segmentation fault.  Work around the
bug by using "*(int*)1=0" in this case.
2010-07-02 14:00:04 -04:00
KWSys Robot 9f3524f469 KWSys Nightly Date Stamp 2010-07-02 00:10:19 -04:00
Zach Mullen 142edf8ad4 More robust cost-based scheduling impl 2010-07-01 14:10:49 -04:00
KWSys Robot 6ebb4843a6 KWSys Nightly Date Stamp 2010-07-01 00:10:21 -04:00
Brad King 3b26fa13c4 KWSys: Optionally suppress consistent test failures
Add option KWSYS_TEST_BOGUS_FAILURES that can be set by a containing
project or in the CMake cache to list tests known to fail consistently
on a buggy system.
2010-06-30 11:42:08 -04:00
Brad King b84220b287 KWSys: Use short fallback timeout for Process tests
If any of the KWSys Process tests take more than a minute or two then
something is wrong.  There is no need to wait for a long default
timeout.
2010-06-30 11:41:59 -04:00
Zach Mullen 3e52000a07 Fix cycle detection for test dependencies 2010-06-30 10:39:17 -04:00
Brad King 050af165bb Fix integer conversions in cpack
These were revealed by GCC's -Wconversion option.
2010-06-30 09:57:07 -04:00
KWSys Robot b65cd9b70b KWSys Nightly Date Stamp 2010-06-30 00:10:24 -04:00
Brad King ccd8c69728 Merge branch 'vs-ps3-projects' 2010-06-29 14:36:12 -04:00
Brad King 0bcf88ff74 Merge branch 'fix-warnings' 2010-06-29 14:33:10 -04:00
Brad King fec71d8016 Fix signed/unsigned comparison warnings in ccmake
Commit ff1f8d0b (Fix or cast more integer conversions in cmake) changed
a member type from int to size_t.  Update the types of variables
compared to these values to be unsigned also.
2010-06-29 11:09:36 -04:00
Brad King c8ea2705a7 Use same type in both cases of '?:' operator
Both possible result values need to be convertible to the same type.
Some compilers fail to recognize that they can construct std::string
from the empty string literal, so state it explicitly.
2010-06-29 10:01:59 -04:00
Brad King ff1f8d0b53 Fix or cast more integer conversions in cmake
These were revealed by GCC's -Wconversion option.  Fix types where it is
easy to do so.  Cast in cases we know the integer will not be truncated.
2010-06-29 09:52:12 -04:00
Brad King 5c16024fbb KWSys: Pass ptrdiff_t check result to System.c
Since commit "Provide unix-sytle command line parsing" (2009-07-13) the
reference to KWSYS_C_HAS_PTRDIFF_T in System.c has been meaningless
because the macro was never passed to the compiler!
2010-06-29 08:50:03 -04:00
Brad King d2222d529d KWSys: Cleanup putenv leak option implementation
Define KWSYS_DO_NOT_CLEAN_PUTENV only for the implementation.  It does
not need to be configured in the interface of "Configure.hxx".
2010-06-29 08:50:03 -04:00
David Genest 295b5b60df Honor CMAKE_USER_MAKE_RULES_OVERRIDE in try_compile (#10902) 2010-06-29 08:29:41 -04:00
KWSys Robot 198e00f6e8 KWSys Nightly Date Stamp 2010-06-29 00:10:22 -04:00
Brad King 13ca4ef665 VS: Always separate preprocessor defs by semicolon (#10902)
Separation by ',' only works in VS 2008 and below and does not work in
the PlayStation3 VS plugin.  Separation by ';' works in VS 10 and all
prior versions.
2010-06-28 16:20:01 -04:00
KWSys Robot a55aee5cdd KWSys Nightly Date Stamp 2010-06-28 00:10:23 -04:00
David Cole 415900ba77 Eliminate -Wconversion warnings.
Change types of local variables, or casting, or re-arrange
expressions to get rid of "conversion may alter value" warnings
as seen on recent dashboard submissions from londinium.kitware.
2010-06-27 11:22:05 -04:00
KWSys Robot 4745f4996b KWSys Nightly Date Stamp 2010-06-27 00:10:22 -04:00
KWSys Robot b699509aee KWSys Nightly Date Stamp 2010-06-26 00:10:24 -04:00
Brad King 6fc4cd8680 Fix or cast integer conversions in cmake
These were revealed by GCC's -Wconversion option.  Fix types where it is
easy to do so.  Cast in cases we know the integer will not be truncated.
2010-06-25 09:05:15 -04:00
KWSys Robot da0190a4a7 KWSys Nightly Date Stamp 2010-06-25 00:10:17 -04:00
Brad King 566bb2d078 Merge branch 'ctest-git-empty-commits' 2010-06-24 10:41:20 -04:00
Brad King b86a551ede Merge branch 'vs10-path-issue' 2010-06-24 10:40:26 -04:00
Brad King 5890f562e3 Merge branch 'fix-ctest-parallel' 2010-06-24 10:40:19 -04:00
Brad King 73144a8f1c Merge branch 'fix_ctest_failure_code' 2010-06-24 10:35:10 -04:00
KWSys Robot 0d400c373e KWSys Nightly Date Stamp 2010-06-24 00:01:06 -04:00
Zach Mullen 1a4c0c55c7 Parallel CTest hangs if serial test has depends 2010-06-23 17:18:59 -04:00
David Cole d710a78a34 For VS10: Really use full path file names.
I naively assumed in my previous commit that the Convert call
would correctly convert a relative path file name correctly
relative to the makefile's current output directory. It actually
converts it relative to the process's current working directory.
So it would be different depending on how you launched cmake-gui.
This commit ensures that the generated files are always the same
by starting with a full path to begin with, based on the makefile
GetCurrentOutputDirectory method.
2010-06-23 16:39:28 -04:00
Brad King bbfe241c6a CTest: Parse empty Git commits correctly
Git's diff-tree format has no '\n'-terminated blank line at the end of
its commit message body block if there are no diff lines.  Instead the
message body is terminated by '\0' and there is no diff section.  Teach
CTest to parse the format in this case.
2010-06-23 09:14:43 -04:00
KWSys Robot b141862564 KWSys Nightly Date Stamp 2010-06-23 00:01:16 -04:00
Brad King 71cefc35c0 Merge branch 'script-mode-keep-makeflags' 2010-06-22 09:59:20 -04:00
Brad King d4206dc62b Merge branch 'vs10-path-issue' 2010-06-22 09:58:57 -04:00
Brad King 0336d822cc Merge branch 'doc_ctest_build_target' 2010-06-22 09:56:53 -04:00
Brad King 3efb7f34a4 Merge branch 'fix-stoptime-mem-leak' 2010-06-22 09:56:39 -04:00
Bill Hoffman 8f8c1edca2 Fix for bug #10859, ctest exit exception incorrectly reported.
CTest was using the return value from the program instead of the
exit exception value for the process.
2010-06-22 09:55:09 -04:00
KWSys Robot d7770578d1 KWSys Nightly Date Stamp 2010-06-22 00:01:22 -04:00
David Cole 616462ce45 Use full path file names to express dependencies.
This is especially important for the Visual Studio 10
generator and its quirky current working directory
behavior.

Also, emit more information about exactly what files are
out of date when cmakeCheckStampFile returns false.
2010-06-21 11:53:48 -04:00
Brad King 0a7c551bf6 Preserve ENV{MAKEFLAGS} in CMake script mode
Commit 02f7cfbc (Need to remove the MAKEFLAGS when cmake starts,
2003-05-13) removed the MAKEFLAGS environment variable when CMake starts
to prevent try_compile() from inheriting "make -i".  This is unnecessary
in script mode (cmake -P).  Instead remove the variable only when
configuring a project.
2010-06-21 10:50:11 -04:00
KWSys Robot e45a600a0f KWSys Nightly Date Stamp 2010-06-21 00:01:04 -04:00
KWSys Robot dc2f8590d1 KWSys Nightly Date Stamp 2010-06-20 00:01:04 -04:00
KWSys Robot 10c84dc10e KWSys Nightly Date Stamp 2010-06-19 00:01:04 -04:00
KWSys Robot abe355ef1c KWSys Nightly Date Stamp 2010-06-18 00:01:02 -04:00
David Cole 9082fc8a47 Use full path file names in generate.stamp.list.
The full path file names are important for Visual Studio 10, which
apparently changes the current working directory when running
custom command rules.
2010-06-17 17:12:57 -04:00
KWSys Robot d7f8df694a KWSys Nightly Date Stamp 2010-06-17 00:01:03 -04:00
KWSys Robot 2da22e7f5c KWSys Nightly Date Stamp 2010-06-16 00:01:04 -04:00
Brad King b4aa834900 Merge branch 'ctest-git-flexibility' 2010-06-15 14:10:41 -04:00
Brad King a8a10d0f6a Merge branch 'vs10-source-groups' 2010-06-15 14:07:58 -04:00
Brad King e82d918322 Merge branch 'coverage_exclusion_from_glob' 2010-06-15 14:07:02 -04:00
Brad King 5444bd6ca3 Merge branch 'tru64-make-includes' 2010-06-15 14:03:26 -04:00
Brad King c9f8bbf226 Merge branch 'tru64-cmOStringStream-vtable' 2010-06-15 14:03:12 -04:00
Brad King 8209300a6b Merge branch 'source-file-property-documentation' 2010-06-15 13:59:58 -04:00
Brad King d9b2da139d Merge branch 'mingw-response-files' 2010-06-15 13:58:58 -04:00
Zach Mullen 6e7f182318 Document ctest_build() TARGET option 2010-06-15 10:43:30 -04:00
Zach Mullen 960dc2b10f Do not exit if stoptime is passed. 2010-06-15 10:29:35 -04:00
KWSys Robot d714b18ac5 KWSys Nightly Date Stamp 2010-06-15 00:01:07 -04:00
Brad King c592df8377 Tru64: Use full-path include directives in Makefiles (#10569)
Tru64's make(1) resolves relative paths in "include" directives with
respect to the includer.  This is inconsistent with all other known make
tools.  Note that this make tool treats the path literally so we cannot
use our standard FULL path code which escapes spaces.  Instead qualify
the paths with $(CMAKE_BINARY_DIR) to avoid the problem.
2010-06-14 13:06:39 -04:00
KWSys Robot f7f8396337 KWSys Nightly Date Stamp 2010-06-14 00:01:03 -04:00
KWSys Robot 8d29fa46ab KWSys Nightly Date Stamp 2010-06-13 00:01:02 -04:00
KWSys Robot a7abcd1442 KWSys Nightly Date Stamp 2010-06-12 00:01:05 -04:00
Christoph Watzl 2d9dc9ac65 Fix nested source groups with VS 10 (#9863)
Add intermediate (but empty) source group filters for the container
groups.
2010-06-11 15:44:55 -04:00
Zach Mullen 9d6567a269 Extra coverage glob should subtract the explicitly defined excluded files 2010-06-11 14:17:00 -04:00
Brad King b9e3c243d4 KWSys: Teach Process to error on empty command
Do not try to execute a child with no command line.  Previously this led
to a silent hang.
2010-06-11 11:00:38 -04:00
Brad King 60478de3e5 KWSys: Process tree kill for Solaris 2010-06-11 10:15:19 -04:00
KWSys Robot 6ce85691eb KWSys Nightly Date Stamp 2010-06-11 00:01:32 -04:00
Brad King f20d091a2c Tru64: Place cmOStringStream vtable uniquely (#10541)
GCC places the vtable in the object implementing the first non-pure,
non-inline virtual method.  Since the symbol is not weak on Tru64, make
the location unique by putting the destructor in a single object file.
2010-06-10 15:22:40 -04:00
Zach Mullen d0d1cdd71b Mock checksum failure output for old CDash versions 2010-06-10 15:02:24 -04:00
Zach Mullen af5ef0c969 Testing for CTest checksum 2010-06-10 12:25:49 -04:00
Brad King 3f92947524 KWSys: Configure DynamicLoader library prefix/suffix
The DynamicLoader::LibPrefix and DynamicLoader::LibExtension methods
previously hard-coded the module name components for each platform.  Set
them from the CMAKE_SHARED_MODULE_PREFIX and CMAKE_SHARED_MODULE_SUFFIX
CMake variables instead.  This ensures consistency in a program that
uses these methods to construct the file names for its own modules.
2010-06-10 09:26:32 -04:00