Commit Graph

16339 Commits

Author SHA1 Message Date
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
Eric NOULARD 07bd856bd0 CPackSTGZ quote here-doc, fix bug10518 2010-12-15 21:20:13 +01: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 45e1953c40 Factor per-config sample targets out of 'Testing' test
Put the source files, build rules, and test scripts for these targets
under Tests/PerConfig and refer to it from Tests/Testing as a
subdirectory.  The targets and scripts will be useful in other tests.
2010-12-15 14:53:33 -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
Yaakov Selkowitz 0f5c711f32 Cygwin: Fix release script libncurses search patterns (#10766)
With the switch to upstream ncurses "ABI 6", Cygwin's ncurses has YA ABI
bump and is now libncurses10.  However, the regex used to determine in
Utilities/Release/Cygwin/CMakeLists.txt which libncurses is being used
does not handle multiple-digit ABIs.

libncurses8 was the first version to be built with libtool and therefore
contains a hyphen (cygncurses-8.dll).  It was first introduced in 2004,
so it should be sufficiently old to rely on.  Furthermore, libncurses7
has a serious flaw in that it completely breaks if rebased.

Therefore the easiest solution is to only look at the hyphened versions
and change the regex accordingly.
2010-12-15 08:58:16 -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 5adef168c2 Merge branch 'cygwin-module-prefix' into cygwin 2010-12-14 16:48:10 -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 9e7e106dcb Merge topic 'external-project-args-file'
3bc828d Fixed bug where last entry would be lost.
b316087 Escape file write expansion, and build up lists.
68cd3fe Added CMAKE_CACHE_ARGS to ExternalProject.
2010-12-14 14:39:06 -05:00
Brad King 2c7d36ce6f Merge topic 'CPackRPM-Fix0011595'
8d366cd CPackRPM fix bug 0011595 : Can't generate RPMs (on FC11...)
2010-12-14 14:39:00 -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 5eed07e2d8 Merge topic 'vim-help'
ce01321 Inline help in vim with vertical split.
2010-12-14 14:38:52 -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 8e7f0488b4 Merge topic '11445-workaround'
a80d6e9 Add Boost 1.46
88babef [patch] Add Boost 1.45 to search, simplify a check removing VERSION_LESS
2010-12-14 14:38:42 -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 b3f2d19ba7 Merge topic 'FindTCL-version-ref'
d95913e FindTCL: Fix TCL and TK version variable references (#11528)
2010-12-14 14:38:23 -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 d4b4db68e1 Merge topic 'FixDocTypoInFindFLEX'
3ce0049 Fix typos in the doc
2010-12-14 14:37:42 -05:00
Brad King dba6b2be54 Merge topic 'BundleUtilities-should-produce-error-if-item-is-not-embedded'
c2895f4 BundleUtilities: error if fixup_bundle_item called on non-embedded item
2010-12-14 14:37:36 -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
Bill Hoffman 86979e49a1 Change cpack run and verify script to work with multi-config generators.
Use the location of the running cmake to find cpack, and use the
CMAKE_CONFIG_TYPE environtment variable as a type for cpack.
2010-12-14 13:42:21 -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
Eric NOULARD cdf92c952a Precise the project config type when invoking cpack 2010-12-14 12:21:02 -05:00
Eric NOULARD 08f829b509 Arrange output in a better way 2010-12-14 12:21:00 -05:00
Eric NOULARD 58bd4f2185 CPackTest spit out more output in case of failure 2010-12-14 12:20:58 -05:00
Eric NOULARD dd2a5aa69f CPack Default component test for ZIP should be OK 2010-12-14 12:20:56 -05:00
Eric NOULARD 88b7f4252c CPack new tests for component install 2010-12-14 12:20:54 -05:00
Alex Neundorf 27ee50a7d8 Add ECLIPSE_CDT4_GENERATE_SOURCE_PROJECT as a ADVANCED cache variable (#9631)
This variable has been supported since 2.6 I think, having it in the cache
makes it easier to use (see bug report #9631)

Alex
2010-12-13 21:53:11 +01:00
Yaakov Selkowitz 1dcc9777a7 Cygwin: Use 'cyg' prefix for module DLLs (#10122)
Cygwin now uses the prefix 'cyg' for plugin DLLs instead of 'lib'.
2010-12-13 14:21:07 -05:00
Eric NOULARD 8d366cd1eb CPackRPM fix bug 0011595 : Can't generate RPMs (on FC11...) 2010-12-13 20:11:06 +01:00
Matthias Kretz ce013215d2 Inline help in vim with vertical split.
Added a small script to open a vertical split window with the output of
cmake --help-command for the word under the cursor.
2010-12-13 13:25:27 -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
Marcus D. Hanwell 3bc828df9a Fixed bug where last entry would be lost.
The code to build up a list was missing the final entry in an initial
cache.
2010-12-13 12:50:38 -05:00