Commit Graph

15774 Commits

Author SHA1 Message Date
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
Philip Lowman a80d6e9828 Add Boost 1.46 2010-12-13 01:21:46 -05:00
Philip Lowman 88babefbcc [patch] Add Boost 1.45 to search, simplify a check removing VERSION_LESS
Also some whitespace issues are cleaned up.
Patch from Adam Richardson attached to #11445
2010-12-13 00:56:42 -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
Marcus D. Hanwell b316087c09 Escape file write expansion, and build up lists.
Escaped the @var@ in the file writes - this was being expanded at file
write and so not causing a reconfigure at the right time. I also took
care of build up lists of lists in the variables, especially important
for things like MPI_EXTRA_LIBRARY. Added some error checking, and use
the tmp_dir for initial cache file.
2010-12-11 12:11:27 -05:00
KWSys Robot da4c2f6214 KWSys Nightly Date Stamp 2010-12-11 00:10:32 -05:00
Marcus D. Hanwell 68cd3fe038 Added CMAKE_CACHE_ARGS to ExternalProject.
On Windows the limit for command line arguments is 8192 characters, and
this was limiting longer paths with some of our more nested projects
such as Library. Placing the -D arguments into CMAKE_CACHE_ARGS will
write out an initial cache file, that will be passed to CMake with a -C
argument as the initial cache.

By forcing the cache variables we preserve the existing behavior with
-D, to change the values of cache variables in our inner projects.
2010-12-10 17:41:41 -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
Brad King 09d1c1080d FortranCInterface: Recognize NAG Fortran module symbols 2010-12-09 18:12:42 -05:00
Brad King af2ad90991 Add NAG Fortran compiler information files
On Linux the NAG Fortran compiler uses gcc under the hood to link.  Use
"-Wl,-v" to pass "-v" to the underlying gcc compiler to get verbose link
output.  Detect the NAG Fortran directory (using -dryrun) and then honor
object files in the directory referenced in the implicit link line.
Pass real linker options with "-Wl,-Xlinker,".  The -Wl, gets through
the NAG front-end and the -Xlinker gets through the gcc front-end.
2010-12-09 18:12:34 -05:00
Brad King 24cc3d4817 Recognize the NAG Fortran compiler
The Numerical Algorithms Group (NAG) Fortran compiler does not document
a preprocessor macro to identify it.  Check for identifying output using
the -V option.
2010-12-09 17:51:47 -05:00
Brad King 83892c4a11 Allow Fortran platform files to set empty values
Teach CMakeFortranInformation to use default flags only for variables
that have not been set at all, rather then not set or empty.  This will
allow platform or compiler-specific information files to set empty
values without getting the defaults.
2010-12-09 17:51:47 -05:00
Brad King fe3f878f15 Detect object files in implicit link information
The NAG Fortran compiler implicitly passes object files by full path to
the linker.  Teach CMakeParseImplicitLinkInfo to parse object files that
match some tool-specific regular expression.
2010-12-09 17:07:34 -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
Kai Wasserbäch d95913e232 FindTCL: Fix TCL and TK version variable references (#11528)
FindTCL.cmake switched variables in the FIND_LIBRARY invocation.  The
FIND_LIBRARY() statement for TCL used the TK variables and vice versa.
This patch reverses that into the right usage.

Closes debian issue 600245.
2010-12-09 11:31:00 -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
Ben Boeckel 937e3693d7 Use FPHSA in FindOpenGL
This gets FindOpenGL to obey the QUIET and REQUIRED options correctly.
2010-12-08 17:41:37 -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