Commit Graph

9141 Commits

Author SHA1 Message Date
Brad King fce27e0bf0 STYLE: Nightly Date Stamp 2008-10-22 23:53:56 -04:00
Brad King 220e962c3d STYLE: Nightly Date Stamp 2008-10-21 23:54:01 -04:00
Brad King 1c2bbf9d01 STYLE: Nightly Date Stamp 2008-10-20 23:54:07 -04:00
Brad King 6405e77098 STYLE: Nightly Date Stamp 2008-10-19 23:54:13 -04:00
Bill Hoffman 935e984900 BUG: use LC_MESSAGES = C instead of en_EN 2008-10-19 10:44:16 -04:00
Brad King 043f1b5366 STYLE: Nightly Date Stamp 2008-10-18 23:54:18 -04:00
Brad King 9d1f471845 BUG: Fix recognition of files deleted from CVS
The output of "cvs update" contains a line such as one of

  cvs update: `foo.txt' is no longer in the repository
  cvs update: foo.txt is no longer in the repository
  cvs update: warning: foo.txt is not (any longer) pertinent

when file "foo.txt" has been removed in the version to which the update
occurs.  Previously only the first case would be recognized.  This fixes
the regular expression to match all these cases.
2008-10-18 12:07:15 -04:00
Brad King ddf36eb3cf STYLE: Nightly Date Stamp 2008-10-17 23:54:34 -04:00
Brad King 1c70745c62 BUG: Fix KWSys SystemInformation dependencies
The SystemInformation component of KWSys requires Process and
FundamentalType.
2008-10-17 12:52:03 -04:00
Brad King 32be27c6de BUG: Enforce KWSys component dependencies early
KWSys component dependencies must be enforced before any tests for
enabled components are done.  This moves the dependency enforcement code
to be as early as possible.
2008-10-17 12:51:57 -04:00
Sebastien Barre 4ed9faa830 ENH: fix for VS6 and Cygwin 2008-10-17 11:29:30 -04:00
Brad King e2661f1f05 STYLE: Nightly Date Stamp 2008-10-16 23:54:32 -04:00
Sebastien Barre 8e5886e652 ENH: fix for Vista 2008-10-16 19:30:49 -04:00
Sebastien Barre b55f7a261f ENH: oops 2008-10-16 11:34:16 -04:00
Brad King 45793aad16 STYLE: Nightly Date Stamp 2008-10-15 23:54:38 -04:00
Sebastien Barre ef93279573 ENH: fix for Windows Vista 2008-10-15 23:24:33 -04:00
Bill Hoffman 3fc5ca34f9 ENH: fix bootstrap test and warning 2008-10-15 15:13:06 -04:00
Bill Hoffman 1777bb502a BUG: 4244, add a --build option to cmake that can build projects configured by CMake 2008-10-15 13:56:07 -04:00
Brad King 690121f098 BUG: Fix color check for dependency scanning
Generation of color rules for dependency scanning messages did not
account for disabling color at generation time.  See issue #7814.
2008-10-15 10:40:57 -04:00
Brad King 9c29a72fbc ENH: Support object lists longer than 128K on MSVC
We use response files to list object files for the MSVC linker.  The
linker complains if any response file is greater than 128K, so we split
the object file lists into multiple response files.
2008-10-15 10:21:21 -04:00
Brad King 07454a39f1 ENH: Factor out listing of objects on command line
Previously generation of object file lists for linker and cleaning
command lines was duplicated for library and executable target
generators.  This combines the implementations.
2008-10-15 10:21:14 -04:00
Brad King cd1528279c STYLE: Remove computed but unused variable.
An old list of object files for cleaning seems to have been left behind.
This removes it.
2008-10-15 10:21:03 -04:00
David Cole cc51ddd34b BUG: Use the DESTDIR prefix when creating the directory in CPack when CPACK_SET_DESTDIR is ON. Thanks to Petri Hodju for reporting this regression to the CMake mailing list: http://www.cmake.org/pipermail/cmake/2008-October/024563.html. 2008-10-15 09:35:27 -04:00
Brad King cbbf0b8183 STYLE: Nightly Date Stamp 2008-10-14 23:54:42 -04:00
Bill Hoffman ec9f2a18cc ENH: revert last change, as it fails tests 2008-10-14 13:56:49 -04:00
Bill Hoffman 9210fef65b ENH: better error message for mis-configured nmake environment 2008-10-14 11:43:35 -04:00
Bill Hoffman 9430c3f335 ENH: better error message for mis-configured nmake environment 2008-10-14 11:42:45 -04:00
Brad King 9b8d30081c ENH: Clarify PATH_SUFFIXES documentation
This clarifies documentation of the find_* commands' PATH_SUFFIXES
option.  The option adds paths with the suffixes but does not remove the
paths without the suffixes.
2008-10-14 08:43:19 -04:00
Brad King 4b303ddd38 STYLE: Nightly Date Stamp 2008-10-13 23:54:50 -04:00
Brad King c1075aef7b BUG: Fix find_* search order with path suffixes
In cmFindBase we were searching all path suffixes appended to all paths
before considering the paths without any suffixes.  Instead we should
consider each path with and without suffixes before moving to the next
path.  See issue #7783.
2008-10-13 09:58:22 -04:00
Brad King ed7c45b263 STYLE: Nightly Date Stamp 2008-10-12 23:54:53 -04:00
Brad King 8e77a9ed5c STYLE: Nightly Date Stamp 2008-10-11 23:55:01 -04:00
Brad King 46e3956349 COMP: Fix assignment inside condition 2008-10-11 15:35:30 -04:00
Brad King 4db6658d8f BUG: Make sure context info is always initialized
This adds a missing default constructor to cmListFileContext that makes
sure the line number is initialized to zero.  A zero line number will
indicate a generated context.
2008-10-11 12:02:50 -04:00
Brad King a4cc35021b STYLE: Nightly Date Stamp 2008-10-10 23:55:08 -04:00
David Cole c3976b0283 BUG: Fix issue #7800. Enable CPack to find the NSIS installer on Windows 2000. 2008-10-10 17:08:00 -04:00
Brad King 5a82a0b108 ENH: Improve generated documentation formatting
Applying patch provided in issue #7797.

Fixes to man-pages:
  - Character '-' must be espaced as '\-'
  - Surround preformatted text with '.nf' and '.fi' to adjust filling
  - Give every page a NAME section for indexing by mandb
  - Pass the man page filename without extension to .TH in its header

Also added a title to the HTML header.
2008-10-10 11:23:35 -04:00
Brad King 657627c231 BUG: Fix help type for filenames with many dots
The help page type should be determined using only the extension after
the last dot.  See issue #7797.
2008-10-10 11:23:17 -04:00
Brad King b3f43f0065 STYLE: Fix typo in GetFilenameLastExtension docs
See issue #7797.
2008-10-10 11:23:02 -04:00
Bill Hoffman ada0f98e91 BUG: fix for 5071, report error if output file can not be opened 2008-10-10 10:48:10 -04:00
Bill Hoffman 4e6e9e8335 BUG: fix for 3778, better docs for -E 2008-10-10 10:20:49 -04:00
Bill Hoffman 74e606a270 ENH: play it safe and restore the value of LC_MESSAGES 2008-10-10 09:36:16 -04:00
Bill Hoffman d306ab66b1 ENH: make sure LC_MESSAGES is en_EN so that we can parse the output of svn and cvs 2008-10-10 09:23:49 -04:00
Brad King 10dec2eac8 STYLE: Fix line-too-long 2008-10-10 08:11:08 -04:00
Brad King 1dc33e763d STYLE: Nightly Date Stamp 2008-10-09 23:55:10 -04:00
Brad King ad44a41a18 ENH: Fix optional use of relative paths.
These changes refactor cmLocalGenerator methods Convert and
ConvertToOutputForExisting to support references inside the build tree
using relative paths.  After this commit, all tests pass with Makefile
generators when relative paths are enabled by default.  See issue #7779.
2008-10-09 15:30:07 -04:00
Brad King 416bf5730f ENH: Simplify makefile ref to interactive editor
The CMAKE_EDIT_COMMAND make variable need not be constructed with
ConvertToOutputForExisting.  The CMAKE_COMMAND variable works fine
without it.
2008-10-09 15:08:53 -04:00
Brad King 8bffd5af36 ENH: Simplify framework -F flag generation
This removes an unnecessary use of ConvertToOutputForExisting which is
needed only on Windows to consider short-pathing.
2008-10-09 15:07:35 -04:00
Brad King 0d425cd501 BUG: Finish fix to old DEFINITIONS property
The cmMakefile::DefineFlagsOrig ivar was created to help preserve the
old DEFINITIONS property behavior now that definitions are moved from
DefineFlags to the COMPILE_DEFINITIONS directory property.  This fixes
propagation of the original value into subdirectories.
2008-10-09 13:52:25 -04:00
Bill Hoffman 57a2a408c4 BUG: fix for 5218 Error message pattern match for VS8 2008-10-09 13:00:31 -04:00
Bill Hoffman f0a41ce160 BUG: fix for 4026, display a message if ccmake has errors 2008-10-09 12:49:49 -04:00
Brad King 576167d381 ENH: Put custom target sources in Xcode projects
Source files in custom targets are now placed in the Xcode project for
convenient editing.  See issue #5848.
2008-10-09 11:01:48 -04:00
Brad King c5f70ff27f ENH: Allow custom sources in custom targets
This adds a SOURCES option to ADD_CUSTOM_TARGET, enabling users to
specify extra sources for inclusion in the target.  Such sources may not
build, but will show up in the IDE project files for convenient editing.
See issue #5848.
2008-10-09 11:01:23 -04:00
Brad King 0ad5eb177b ENH: Return utility target after creation
After creating a utility target with AddUtilityCommand, return a pointer
to the cmTarget instance so the caller may further modify the target as
needed.
2008-10-09 11:00:54 -04:00
Brad King 802b76a7c4 STYLE: Nightly Date Stamp 2008-10-08 23:55:16 -04:00
Alexander Neundorf 3b0862749d STYLE: lowercase ctest_test() in the documentation
Alex
2008-10-08 17:58:39 -04:00
David Cole fdb0c8758a BUG: Fix issue #7533. Revise fix for issue #7058 to use pragma comment libs in the source file rather than using TARGET_LINK_LIBRARIES in CMakeLists.txt because of the complex ifdef logic used in correct copies of comdef.h. 2008-10-08 14:19:01 -04:00
Brad King 25a5c34a62 ENH: Remove implicit NO_MODULE when recursing
Recently we taught find_package that the NO_MODULE option is implied
when it is recursively invoked in a find-module.  This behavior may be
confusing because two identical calls may enter different modes
depending on context.  It also disallows the possibility that one
find-module defers to another find-module by changing CMAKE_MODULE_PATH
and recursively invoking find_package.  This change reverts the feature.
2008-10-08 10:56:23 -04:00
Brad King a5695eb7ac STYLE: Nightly Date Stamp 2008-10-07 23:55:22 -04:00
Bill Hoffman 086cf607c3 ENH: add missing property definitions 2008-10-07 16:46:25 -04:00
Bill Hoffman 637418a835 BUG: fix for 4524, add support for target properties to set vs source code control information 2008-10-07 16:23:20 -04:00
Brad King 1b91be332c STYLE: Nightly Date Stamp 2008-10-06 23:55:30 -04:00
Brad King 934c832cba BUG: Fix convenience rule working directory
We generate convenience rules to build object files, preprocessed
outputs, and assembly outputs of source files individually with make
rules.  This removes a redundant working directory change when more than
one target builds the same source file.
2008-10-06 11:04:06 -04:00
Brad King 1704afa08d STYLE: Nightly Date Stamp 2008-10-05 23:55:33 -04:00
Brad King 09c5248cdf STYLE: Nightly Date Stamp 2008-10-04 23:55:42 -04:00
Brad King 9a9ed09f76 STYLE: Nightly Date Stamp 2008-10-03 23:55:45 -04:00
Brad King 0ae545ebad ENH: Add UNSUITABLE result to package version test
Package version test files may now declare that they are unsuitable for
use with the project testing them.  This is important when the version
being tested does not provide a compatible ABI with the project target
environment.
2008-10-03 10:41:15 -04:00
Brad King 79e9b75558 ENH: Help recursive find_package calls in modules
These changes teach find_package to behave nicely when invoked
recursively inside a find-module for the same package.  The module will
never be recursively loaded again.  Version arguments are automatically
forwarded.
2008-10-03 10:40:07 -04:00
Brad King 75f8d5aab7 ENH: Warn and ignore EXACT without version
If the find_package command is invoked with the EXACT option but without
a version, warn and ignore the option.
2008-10-03 10:39:53 -04:00
Brad King 7f819903ed BUG: Fix config test for target install rules
In single-configuration generators a target installation rule should
apply to all configurations for which the INSTALL command was specified.
The configuration in which the target is built does not matter.

In multi-configuration generators each installation rule must be
associated with a particular build configuration to install the proper
file.  The set of configurations for which rules are generated is the
intersection of the build configurations and those for which the INSTALL
command was specified.
2008-10-03 10:11:47 -04:00
Bill Hoffman adc880d2eb ENH: undo bad checkin 2008-10-03 08:16:37 -04:00
Brad King bc15811d2a STYLE: Nightly Date Stamp 2008-10-02 23:55:54 -04:00
Alexander Neundorf fc7a017d1a STYLE: add documentation for the "TYPE" target property
Alex
2008-10-02 18:48:06 -04:00
Bill Hoffman 600470e5ca BUG: 7763 fix, OPTIMIZATION was not set right. Also fix for BUG 7764, put XCODE_ATTRIBUTES_ last 2008-10-02 13:49:32 -04:00
Bill Hoffman 71fee8522e STYLE: fix line length issues 2008-10-02 09:18:47 -04:00
Brad King efd096118f STYLE: Nightly Date Stamp 2008-10-01 23:56:00 -04:00
Bill Hoffman 05f908e08c BUG: fix for 6280, -E time was not sending back return value 2008-10-01 16:16:43 -04:00
Bill Hoffman 32bc02d660 BUG: undo fix for 7292 because a switched file should show up as an odd thing on the dashbaord 2008-10-01 12:46:45 -04:00
Bill Hoffman 049e3da2ec STYLE: fix hidden variable warning 2008-10-01 12:45:49 -04:00
Bill Hoffman ab409fec89 BUG: fix for 7738, allow for spaces in the package target path to CPackConfig files 2008-10-01 09:50:11 -04:00
Bill Hoffman ecf312ccc8 STYLE: fix line length stuff for KWStyle 2008-10-01 09:04:27 -04:00
Brad King 8a704d5686 STYLE: Nightly Date Stamp 2008-09-30 23:56:05 -04:00
Brad King d424158dc1 STYLE: Nightly Date Stamp 2008-09-29 23:56:13 -04:00
Brad King 5824aa6143 STYLE: Nightly Date Stamp 2008-09-28 23:56:16 -04:00
Brad King 9b13b6a05e STYLE: Nightly Date Stamp 2008-09-27 23:56:25 -04:00
Brad King 734ef07548 COMP: Avoid incompatible pointer warning
In SharedForward, the call to execvp warned on MinGW because the
signature declared in process.h has an extra const.  We use an explicit
cast to convert the pointer type.
2008-09-27 08:04:13 -04:00
Brad King f01df7fa3d STYLE: Nightly Date Stamp 2008-09-26 23:56:27 -04:00
Brad King d82f98f8b1 ENH: Add test for KWSys SharedForward
This tests the basic capability of running another executable from the
build tree.
2008-09-26 08:24:31 -04:00
Brad King d6643ebba4 BUG: Fix SharedForward with spaces on windows
The windows execvp function does not re-escape arguments correctly.
Instead we generate the escape sequences before calling it.
2008-09-26 08:24:25 -04:00
Brad King 014f684317 BUG: Fix SharedForward in-tree detection
To detect when the launcher is running from the build tree we now test
if the directory containing it is the same as the build-tree directory
using an inode test instead of string comparison.  This makes it more
robust on case-insensitive filesystems and other quirky situations.
2008-09-26 08:24:20 -04:00
Brad King 97c7c86898 COMP: Avoid 64-to-32-bit integer conversion warning
In SharedForward we are only dealing with command-line-length strings so we
need not worry about integer overflow.
2008-09-26 08:24:15 -04:00
Brad King 1f33e26efc STYLE: Nightly Date Stamp 2008-09-25 23:56:34 -04:00
Bill Hoffman 5a67665f68 BUG: fix for bug 7733, document that debug try compile may break the build 2008-09-25 16:52:46 -04:00
Brad King f8bc0492e1 ENH: Create $CACHE{VAR} syntax
This syntax allows reading of cache entries even when variables of the
same name have been defined in the local scope.  See issue #7715.
2008-09-25 10:21:15 -04:00
Brad King 883d8e186c STYLE: Nightly Date Stamp 2008-09-24 23:56:41 -04:00
Bill Hoffman d31c890220 ENH: missed one 2008-09-24 10:01:32 -04:00
Bill Hoffman 302aadadb3 STYLE: fix compiler warning 2008-09-24 09:57:52 -04:00
Brad King 5f57efb417 BUG: Skip a command if its arguments fail to parse
If the arguments to a command fail to parse correctly due to a syntax
error, the command should not be invoked.  This avoids problems created
by processing of commands with bad arguments.  Even though the build
system will not be generated, the command may affect files on disk that
persist across CMake runs.
2008-09-24 08:51:33 -04:00
Brad King dbd88e00c7 ENH: Improve context for errors in macros
We now properly report the source location of command arguments inside
macros instead of using the macro invocation site.  No information is
lost because full call-stack information is already reported.
2008-09-24 08:51:26 -04:00
Brad King d524f3675e ENH: Improve argument parsing error messages
Previously error messages produced by parsing of command argument
variable references, such as bad $KEY{VAR} syntax or a bad escape
sequence, did not provide good context information.  Errors parsing
arguments inside macro invocations gave no context at all.  Furthermore,
some errors such as a missing close curly "${VAR" would be reported but
build files would still be generated.

These changes teach CMake to report errors with good context information
for all command argument parsing problems.  Policy CMP0010 is introduced
so that existing projects that built despite such errors will continue
to work.
2008-09-24 08:51:19 -04:00
Brad King 4a1317de36 STYLE: Nightly Date Stamp 2008-09-23 23:56:43 -04:00
Brad King 5fd54d7946 BUG: Fix lib/ to lib/64/ search path conversion
Automatic generation of 64-bit library search paths must preserve
trailing slashes.  This fixes a failure case exposed by the recent
rewrite of find_library, which assumes trailing slashes occur on all
search paths.
2008-09-23 13:34:23 -04:00
Bill Hoffman 5778b6efe9 ENH: one more fix for HAIKU 2008-09-23 12:04:39 -04:00
Bill Hoffman 7fd080d695 STYLE: fix warning and rename method 2008-09-23 10:15:13 -04:00
Brad King b6d799c407 STYLE: Nightly Date Stamp 2008-09-22 23:56:53 -04:00
Bill Hoffman 52e6733fbc BUG: fix 7669, cpack did not work with symlinks 2008-09-22 18:12:54 -04:00
Bill Hoffman 67dc176ffa ENH: a few more haiku fixes, stop the debugger from coming up for tests 2008-09-22 14:05:13 -04:00
Bill Hoffman 43fe0d3978 ENH: add max width option to ctest ouptut 2008-09-22 14:04:13 -04:00
Brad King 434a99bbeb ENH: Teach find_library to find OpenBSD-style libs
OpenBSD shared libraries use a ".so.<major>.<minor>" extension and do
not have a symlink with just a ".so" extension.  Its "ld" is capable of
finding the library with the best version.  This change adds support for
finding such libraries.  See issue #3470.
2008-09-22 11:08:17 -04:00
Brad King 6b85166920 ENH: Refactor find_library search logic
Previously we searched for library files by enumerating every possible
combination of prefix and suffix.  Now we load (and cache) directory
content from disk and search for matching file names.  This should
reduce disk access.  It will also allow more advanced matching rules in
the future.  See issue #3470.
2008-09-22 10:59:52 -04:00
Brad King 4719984553 ENH: Make dir content cache work during configure
Previously the cmGlobalGenerator::GetDirectoryContent method would work
safely only during build system generation.  These changes make it safe
to use during each configure step by flushing it at the beginning.
2008-09-22 10:56:48 -04:00
Brad King 85961d44c3 ENH: Improve docs of OBJECT_DEPENDS property
Specify exactly what the value of the property should contain and the
resulting behavior.  Note alternatives for a common out-dated usage.
2008-09-22 09:42:27 -04:00
Brad King 3e21316f59 STYLE: Nightly Date Stamp 2008-09-21 23:56:55 -04:00
Brad King bcf629bd11 STYLE: Nightly Date Stamp 2008-09-20 23:57:02 -04:00
Brad King c0a7f67f3a STYLE: Nightly Date Stamp 2008-09-19 23:57:10 -04:00
Brad King b56d755f6e STYLE: Nightly Date Stamp 2008-09-18 23:57:13 -04:00
Brad King 6ac4795a44 STYLE: Nightly Date Stamp 2008-09-17 23:57:22 -04:00
Brad King 12396bebac STYLE: Nightly Date Stamp 2008-09-16 23:57:27 -04:00
Brad King ccc7ca9871 STYLE: Nightly Date Stamp 2008-09-15 23:57:32 -04:00
Bill Hoffman 64fc597de2 ENH: add initial support for HAIKU OS from bug# 7425 2008-09-15 17:53:28 -04:00
Brad King f49f1d2973 ENH: Simplify NOTFOUND variable check
When looking for NOTFOUND libraries, use the direct dependencies of a
target instead of all dependencies.  At least one target will trigger
the NOTFOUND error anyway because at least one must directly link it.
This removes another use of the old-style link line computation.
2008-09-15 13:46:56 -04:00
Brad King 434d07afe6 ENH: Use new link info during dependency scanning
This removes another use of the old-style link line computation.
2008-09-15 13:30:17 -04:00
Brad King 4f6137c70c ENH: Allow link line computation for static libs
In some cases it may be useful to compute a "link" line for a static
library even though it will not be put in the generated build system.
This removes the assertion which previously diallowed the case.
2008-09-15 13:30:11 -04:00
Brad King 0fe06c8126 ENH: Keep target information in final link line
In cmComputeLinkInformation items in the final link line returned by
GetItems now contain a pointer to their corresponding cmTarget if they
were produced by a target.  This makes available the set of all targets
linked.
2008-09-15 13:30:07 -04:00
Brad King 76c5697a16 ENH: Use improved target dependencies for Xcode
In cmGlobalGenerator we use cmComputeTargetDepends to construct a safe,
non-circular set of inter-target dependencies.  This change enables use
of the results by the Xcode generator.  It also removes a lot of old
code and another use of the old-style linking logic.  See issue #7652.
2008-09-15 09:51:47 -04:00
Brad King a4d679af90 STYLE: Nightly Date Stamp 2008-09-14 23:57:38 -04:00
Brad King f77e827478 STYLE: Nightly Date Stamp 2008-09-13 23:57:42 -04:00
Brad King 2e6f6e89c7 STYLE: Nightly Date Stamp 2008-09-12 23:57:50 -04:00
Brad King 52d8f4853d STYLE: Nightly Date Stamp 2008-09-11 23:57:58 -04:00
Bill Hoffman 7ac6912d5e BUG: make sure flag is found even with extra spaces at the start 2008-09-11 14:50:38 -04:00
David Cole bd1935dcd1 ENH: Improve FILE GLOB_RECURSE handling of symlinks with a new CMake policy. CMP0009 establishes NEW default behavior of not recursing through symlinks. OLD default behavior or explicit FOLLOW_SYMLINKS argument to FILE GLOB_RECURSE will still recurse through symlinks. 2008-09-11 14:34:04 -04:00
Bill Hoffman 7e5222165d ENH: add installed size to deb package 2008-09-11 10:48:49 -04:00
Brad King 7d01e62a92 STYLE: Nightly Date Stamp 2008-09-10 23:58:03 -04:00
Brad King 4fa96dbf95 ENH: Add version comparison to if() command
Provide VERSION_LESS, VERSION_EQUAL, and VERSION_GREATER operators in
the if() command.  This simplifies component-wise comparison of version
numbers in the form "major[.minor[.patch[.tweak]]]".
2008-09-10 11:58:40 -04:00
Brad King 994262e5cc ENH: Improve find_package version numbering
Make the number of version components specified explicitly available.
Set variables for unspecified version components to "0" instead of
leaving them unset.  This simplifies version number handling for find-
and config-modules.  Also support a fourth "tweak" version component
since some packages use them.
2008-09-10 10:11:48 -04:00
Brad King 823300d23b STYLE: Nightly Date Stamp 2008-09-09 23:58:08 -04:00
Bill Hoffman 3864910681 BUG: fix for bug 7292, svn parsing flagged errors or conflicts for switched or locked files 2008-09-09 13:12:46 -04:00
Bill Hoffman 364ac7e386 BUG: fix empty /D option for vs6, fix for 7580 2008-09-09 13:04:30 -04:00
Bill Hoffman 6bc394c8e5 BUG: 0007569 add ability to do -R/-E in ctest_test command 2008-09-09 11:44:16 -04:00
Brad King acbe39ff7e STYLE: Nightly Date Stamp 2008-09-08 23:58:12 -04:00
Bill Hoffman 771f127fe9 BUG: fix for 7624, vs7 flag table missing /MAP 2008-09-08 17:53:47 -04:00
Brad King d8bfafeff8 ENH: Improve message for bad find_package call
Use the new-style error reporting mechanism to provide more context
information for a find_package call with a bad package name.  When the
package is not required, issue a warning instead of an error.
2008-09-08 10:08:33 -04:00
Brad King 947521f437 STYLE: Nightly Date Stamp 2008-09-07 23:58:26 -04:00
Alexander Neundorf c2cc883430 COMP: fix compile warning/error (non-void function returning void)
Alex
2008-09-07 06:52:06 -04:00
Brad King aeaae298be STYLE: Nightly Date Stamp 2008-09-06 23:58:22 -04:00
Alexander Neundorf 8903f88b36 ENH: provide the xxx_FIND_QUIETLY, xxx_FIND_REQUIRED and xxx_FIND_VERSION_ variables
also in Config mode, so the xxxConfig.cmake files can e.g. test the QUIETLY
parameter and print something or not

Alex
2008-09-06 19:10:02 -04:00
Brad King 6a0ab340c6 STYLE: Nightly Date Stamp 2008-09-05 23:58:37 -04:00
David Cole 58be1b005f BUG: Fix issue #7046 - make sure extensionless headers and resource files work with the Xcode generator. Also fix incorrect mappings in the lastKnownFileType code. Add some extensionless files to the Framework test. 2008-09-05 15:51:19 -04:00
Brad King e3dda17db2 STYLE: Nightly Date Stamp 2008-09-04 23:58:37 -04:00
Brad King 3c5cf1bb8c ENH: Allow a custom list of debug configurations
Create a DEBUG_CONFIGURATIONS global property as a way for projects to
specify which configuration names are considered to be 'debug'
configurations.
2008-09-04 17:34:25 -04:00
Bill Hoffman bf796f1434 BUG: fix extra close that killed cmake when being debugged 2008-09-04 17:02:25 -04:00
Brad King 4bf27d31fc BUG: Fix typo in get_property documentation
Add some missing whitespace to fix formatting of the documentation.
2008-09-04 13:15:18 -04:00
Brad King 92a51377a1 BUG: Fix unsetting of global properties
The set_property command unsets a property if it is given no value.  In
the case of GLOBAL properties, the cmake::SetProperty method would
replace a NULL value with "NOTFOUND".  Instead it should be left as NULL
so that the property is unset as expected.  Once it is unset the
get_cmake_property command will still report NOTFOUND while the
get_property command will return the empty string as documented.
2008-09-04 13:15:08 -04:00
Brad King 810c47f56e BUG: Make CTest honor user-specified config
When the -C or --build-config option is used to specify the
configuration to be tested by CTest, do not override it with the
configuration in which CTest is built.
2008-09-04 11:31:10 -04:00
Brad King 34b5a8ff11 STYLE: Nightly Date Stamp 2008-09-03 23:58:41 -04:00
Bill Hoffman d8837b92ba BUG: fix for 7519 extra closing > in fortran projects 2008-09-03 16:22:55 -04:00
Brad King 4b58312502 STYLE: Nightly Date Stamp 2008-09-02 23:58:50 -04:00
David Cole d797592726 BUG: Fix issue #3648 - make sure CMake reruns if a Bundle application's directory is removed or if it's Info.plist file disappears since those elements are put in place at CMake configure time. 2008-09-02 12:43:45 -04:00
Brad King f89dae7a94 ENH: Create Info.plist files in OS X Frameworks
A Mac OS X Framework should provide a Resources/Info.plist file
containing meta-data about the framework.  This change generates a
default Info.plist for frameworks and provides an interface for users to
customize it.
2008-09-02 12:06:32 -04:00
Brad King 698b8044a6 ENH: Simplify string attributes in Xcode generator
This change cleans up the implementation of cmXCodeObject to avoid
un-escaping and re-escaping string values.  There is no need to store
the string in escaped form.  It can be escaped once when it is printed
out to the generated project file.
2008-09-02 10:27:15 -04:00
Brad King 6eea886474 STYLE: Nightly Date Stamp 2008-09-01 23:59:06 -04:00
Brad King 747c7f2ad9 STYLE: Nightly Date Stamp 2008-08-31 23:59:03 -04:00
Brad King 8112fbaf79 STYLE: Nightly Date Stamp 2008-08-30 23:59:03 -04:00
Brad King 58192f6d87 STYLE: Nightly Date Stamp 2008-08-29 23:59:46 -04:00
Brad King 56713fbab9 BUG: Link flags should still be chained
The recent fix to avoid including flags in dependency inferral also
dropped them from chaining of dependencies through targets.  This fix
restores chaining of flags through known dependency lists while still
leaving them out of inferred dependency lists.
2008-08-29 13:22:41 -04:00
Brad King ba7fff0161 STYLE: Nightly Date Stamp 2008-08-28 23:59:15 -04:00
Brad King 2018d40001 BUG: A -framework Foo is also a lib 2008-08-28 22:25:13 -04:00
Brad King cbeced92ba BUG: Fix previous fix. 2008-08-28 22:12:15 -04:00
Brad King 006f2b069a BUG: When recognizing flags on link lines, we must still treat -l as a library. 2008-08-28 22:07:19 -04:00
Brad King 4292f45160 STYLE: Nightly Date Stamp 2008-08-27 23:59:20 -04:00
Brad King 6c14041e75 COMP: Do not use private typedef from outside class. 2008-08-27 10:35:53 -04:00
Brad King 816ee0f83c ENH: New link line item ordering algorithm
This change introduces a new algorithm for link line construction.  The
order it computes always begins with the exact link line specified by
the user.  Dependencies of items specified by the user are tracked, and
those that are not already satisified by the line are appended to it at
the end with minimal repeats.  This restores the behavior of CMake 2.4
and below while still fixing some of its bugs.  See issue #7546.
2008-08-27 10:21:57 -04:00
Brad King 012e4c4f68 BUG: Do not infer dependencies of link flags
In cmComputeLinkDepends link items that look like flags (starting in
'-') should not be included in dependency inferral.  They are not
libraries and therefore have no dependencies.  They should just be
passed through to the final link line unchanged.  See issue #7546.
2008-08-27 10:21:50 -04:00
Brad King 32fe1d5b0d BUG: Treat empty config name as no configuration
In cmComputeLinkDepends we should treat an empty configuration name as
equivalent to no specific configuration at all.
2008-08-27 10:21:41 -04:00
Brad King 1dfc557322 STYLE: Nightly Date Stamp 2008-08-26 23:59:38 -04:00
David Cole 9cd09b59c6 BUG: Correct typo in error message. 2008-08-26 12:54:06 -04:00
Brad King 81f89284c6 STYLE: Nightly Date Stamp 2008-08-25 23:59:44 -04:00
Brad King 33e865c041 ENH: Add unset() command.
This introduces the unset() command to make it easy to unset CMake
variables, environment variables, and CMake cache variables.  Previously
it was not even possible to unset ENV or CACHE variables (as in
completely remove them).  Changes based on patch from Philip Lowman.
See issue #7507.
2008-08-25 10:31:29 -04:00
Brad King 04fc897536 STYLE: Nightly Date Stamp 2008-08-24 23:59:38 -04:00
Brad King e5aab39f60 STYLE: Nightly Date Stamp 2008-08-23 23:59:55 -04:00
David Cole 0f2fa9a27f BUG: Correct typo in documentation: or -> of 2008-08-23 13:47:24 -04:00
David Cole ccf603f0c2 ENH: Add the RECURSE_SYMLINKS_OFF flag to the FILE GLOB_RECURSE command. Exposes the recently added kwsys capability that prevents recursing through symlinks to CMake scripts. 2008-08-23 13:33:13 -04:00
Brad King 2e0dd80957 STYLE: Nightly Date Stamp 2008-08-22 23:59:53 -04:00
Brad King ca7f6a1cf3 STYLE: Nightly Date Stamp 2008-08-22 00:00:08 -04:00
Brad King 990c6b0b90 ENH: Allow custom limit on object file path length
Some native build tools, particularly those for cross compiling, may
have a limit on the length of the full path to an object file name that
is lower than the platform otherwise supports.  This change allows the
limit to be set by the project toolchain file through the variable
CMAKE_OBJECT_PATH_MAX.
2008-08-21 09:54:36 -04:00
Brad King 5fda12b73f STYLE: Nightly Date Stamp 2008-08-21 00:00:08 -04:00
David Cole 86e7a9dad8 ENH: Add RecurseThroughSymlinks data member to kwsys::Glob. Allows recursive globs to skip symlinks when necessary. Default to true for backwards compatible behavior. Used from the ctest coverage handler to avoid recursing through the '/Applications' directory on the Mac looking for *.da files... Should fix the hangs reported recently by Mac CMake dashboard submitters. 2008-08-20 13:24:16 -04:00
Brad King fff812db95 ENH: Add if(TARGET) command
It is useful to be able to test if a target has been created.  Often
targets are created only inside conditions.  Rather than storing the
result of the condition manually for testing by other parts of the
project, it is much easier for the other parts to just test for the
target's existence.  This will also be useful when find-modules start
reporting results with IMPORTED targets and projects want to test if a
certain target is available.
2008-08-20 11:45:16 -04:00
Brad King 07665de038 BUG: Handle case when select() lies
According to "man select" on Linux it is possible that select() lies
about data being ready on a pipe in some subtle cases.  We deal with
this by switching to non-blocking i/o and checking for EAGAIN.  See
issue #7180.
2008-08-20 09:57:09 -04:00
Brad King 9f1c7bdbaa STYLE: Nightly Date Stamp 2008-08-20 00:00:14 -04:00
Bill Hoffman b3b4350879 BUG: fix for 6462, delete key should delete the current char 2008-08-19 16:40:19 -04:00
Bill Hoffman 1629963e7c BUG: fix for 7045, use gcc for .m 2008-08-19 15:55:10 -04:00
Bill Hoffman d632b96841 BUG: fix 6647 arguments after -E should not be parsed by CMake 2008-08-19 15:42:48 -04:00
Bill Hoffman d2e2ab72bf BUG: fix for 6794 support for LTCG WholeProgramOptimization, which is not available in VS 8 and newer. 2008-08-19 15:07:47 -04:00
Bill Hoffman 513f7d1869 BUG: fix for 7496, do not just report configure done when there is an error during configure 2008-08-19 13:48:21 -04:00
Bill Hoffman 1bda46564e BUG: 7448 fix crash in ccmake when compiler is changed 2008-08-19 13:31:21 -04:00
Brad King fe98e57e38 ENH: Disallow link-type keywords in link interface
The LINK_INTERFACE_LIBRARIES target property may not contain the
"debug", "optimized", or "general" keywords.  These keywords are
supported only by the target_link_libraries (and link_libraries) command
and are not a generic library list feature in CMake.  When a user
attempts to add one of these keywords to the property value, we now
produce an error message that refers users to alternative means.
2008-08-19 11:43:51 -04:00
Brad King 41c5dd13dc ENH: Clarify link interface documentation
The LINK_INTERFACE_LIBRARIES property does not apply for STATIC
libraries.  The IMPORTED_LINK_INTERFACE_LIBRARIES property does apply
for STATIC libraries.  State both explicitly in the documentation.
Also, clarify that the per-configuration version of these properties
completely overrids the generic version.
2008-08-19 10:29:35 -04:00
Brad King 8ee5c92015 BUG: Linking to modules is for 2.2 compat only
The compatibility check to allow linking to modules should test for
CMake 2.2, not the unreleased 2.3.  See issue #7500.  Furthermore, the
message should be more clear about fixing the code instead of setting
CMAKE_BACKWARDS_COMPATIBILITY unless one is just trying to build an
existing project.
2008-08-19 10:28:22 -04:00
Brad King 5264834868 STYLE: Nightly Date Stamp 2008-08-19 00:00:20 -04:00
Brad King f50ed1fd88 ENH: Improve errors when a policy is REQUIRED
In the future some policies may be set to REQUIRED_IF_USED or
REQUIRED_ALWAYS.  This change clarifies the error messages users receive
when violating the requirements.
2008-08-18 16:29:00 -04:00
Brad King 061d20be38 ENH: Add UNKNOWN type for IMPORTED libraries
When creating an IMPORTED target for a library that has been found on
disk, it may not be known whether the library is STATIC or SHARED.
However, the library may still be linked using the file found from disk.
Use of an IMPORTED target is still important to allow per-configuration
files to be specified for the library.

This change creates an UNKNOWN type for IMPORTED library targets.  The
IMPORTED_LOCATION property (and its per-config equivalents) specifies
the location of the library.  CMake makes no assumptions about the
library that cannot be inferred from the file on disk.  This will help
projects and find-modules import targets found on disk or specified by
the user.
2008-08-18 11:39:22 -04:00
Brad King 0bf093fd17 STYLE: Convert unused target type cases to default
In switch statements that deal with only a few target types, use a
'default' case for the remaining target types instead of listing them
explicitly.  This will make it easier to add more types in the future.
2008-08-18 11:26:51 -04:00
Brad King 94c1fe83fd ENH: Make link interface mode more distinct
Rename the recently added INTERFACE mode of the target_link_libraries()
command to LINK_INTERFACE_LIBRARIES.  This makes it much more distinct
from a normal call to the command, and clearly states its connection to
the property of the same name.  Also require the option to appear
immediately after the target name to make it a mode rather than an
option.
2008-08-18 10:11:29 -04:00
Brad King 7f7068e9d4 ENH: Add cmake_policy(GET) command mode
It is likely that projects or CMake modules in the future will need to
check the value of a policy setting.  For example, if we add a policy
that affects the results of FindXYZ.cmake modules, the module code will
need to be able to check the policy.
2008-08-18 09:53:06 -04:00
Brad King f2d2a82cd0 STYLE: Nightly Date Stamp 2008-08-18 00:00:30 -04:00
Brad King 070d4cc28b STYLE: Nightly Date Stamp 2008-08-17 00:00:30 -04:00
Alexander Neundorf 814b368725 STYLE: extend documentation for RETURN() a bit
ENH: add a test for calling RETURN() in an included file

Alex
2008-08-16 18:06:17 -04:00
Alexander Neundorf 9ead2fd67a BUG: fix #7477, set VERBOSE=1 in the kdevelop setting for the environment,
not together with the make executable

Alex
2008-08-16 16:58:20 -04:00
Alexander Neundorf 4d5ea6ddff STYLE: remove some commented code
Alex
2008-08-16 16:48:42 -04:00
Alexander Neundorf 235cb0216f BUG: fix #7471, only put build directories and CMakeFiles/ in the blacklist
Alex
2008-08-16 16:33:47 -04:00
Brad King 442742a187 STYLE: Nightly Date Stamp 2008-08-16 00:00:33 -04:00
Brad King ae60cc235c COMP: Work-around bogus compiler warning. 2008-08-15 09:47:21 -04:00
Brad King 05624f2fe8 STYLE: Nightly Date Stamp 2008-08-15 00:00:38 -04:00
Brad King 8063dd293e ENH: Inform user when RPATH or RUNPATH is removed 2008-08-14 09:53:26 -04:00
Brad King 485c3faea7 BUG: Update both RPATH and RUNPATH entries
During installation the RPATH and RUNPATH entries of ELF binaries are
edited to match the user specification.  Usually either one entry is
present or both entries refer to the same string literal.  In the case
that they are both present and refer to separate string literals we need
to update both.  I have never seen this case in practice, but we should
do this just in case.
2008-08-14 09:53:21 -04:00
Brad King 2a85f8289f BUG: Remove both RPATH and RUNPATH entries
Removal of the RPATH and RUNPATH from ELF binaries must work when both
entries are present.  Both entries should be removed.  Previously only
one would be removed and the other would be blanked because it pointed
at the same string which was zeroed.  This fixes gentoo bug number
224901.
2008-08-14 09:53:17 -04:00
Brad King 777e2d328a STYLE: Nightly Date Stamp 2008-08-14 00:00:44 -04:00
Brad King 3724161114 STYLE: Nightly Date Stamp 2008-08-13 00:00:55 -04:00
Brad King 2b96e0edab ENH: Teach find_package about lib64 paths
When find_package is about to look in <prefix>/lib, search first in
<prefix>/lib64 in cases that find_library would use lib64 paths.
2008-08-12 19:01:04 -04:00
Alexander Neundorf ec5f5b093f STYLE: one ifdef block less, the documentation object can be created a bit later
Alex
2008-08-12 07:01:44 -04:00
Brad King 6d857edb45 STYLE: Nightly Date Stamp 2008-08-12 00:00:55 -04:00
Brad King e322d288af ENH: Simple specification of link interfaces
Create an INTERFACE option to the target_link_libraries command to help
set the LINK_INTERFACE_LIBRARIES and LINK_INTERFACE_LIBRARIES_DEBUG
properties.  This will help users specify link interfaces using
variables from Find*.cmake modules that include the 'debug' and
'optimized' keywords.
2008-08-11 16:23:02 -04:00
Brad King 881a0345d0 STYLE: Nightly Date Stamp 2008-08-11 00:01:01 -04:00
Brad King dd73408328 STYLE: Nightly Date Stamp 2008-08-10 00:01:08 -04:00
Brad King 760fb1f4b7 STYLE: Nightly Date Stamp 2008-08-09 00:01:13 -04:00
Brad King 0208012d83 STYLE: Nightly Date Stamp 2008-08-08 00:01:19 -04:00
Brad King 40fc9174e2 ENH: Tolerate repeated link library types
The "debug", "optimized", and "general" link library type specifier
arguments to the target_link_library commands are sometimes repeated in
user code due to variable expansion and other complications.  Instead of
silently accepting the duplicates and trying to link to a bogus library
like "optimized.lib", warn and ignore the earlier specifiers.
2008-08-07 17:51:29 -04:00
Brad King 2bbb1713de ENH: Clarify documentation of EXCLUDE_FROM_ALL
The add_subdirectory() command's EXCLUDE_FROM_ALL option does not
override inter-target dependencies.  This change clarifies the
documentation accordingly.
2008-08-07 17:12:16 -04:00
Brad King e58fab841f STYLE: Nightly Date Stamp 2008-08-07 00:01:24 -04:00
Brad King d76b20bf3a BUG: Avoid bogus dependency on executable targets
When an executable target within the project is named in
target_link_libraries for another target, but the executable does not
have the ENABLE_EXPORTS property set, then the executable cannot really
be linked.  This is probably a case where the user intends to link to a
third-party library that happens to have the same name as an executable
target in the project (or else will get an error at build time).  We
need to avoid making the other target depend on the executable target
incorrectly, since the executable may actually want to link to that
target and this is not a circular depenency.
2008-08-06 17:48:53 -04:00
Brad King 37a009b7f7 ENH: Improve readability of circular depends error
When reporting the dependencies in a strongly connected component quote
the target names to make the message more readable no matter the target
name.
2008-08-06 17:48:49 -04:00
Brad King 578e83501b BUG: Fix crash on circular target dependencies
After reporting an error about circular target dependencies do not try
to continue generation because the dependency computation object is not
in a useful state.
2008-08-06 17:48:44 -04:00
Alexander Neundorf 138c8a0dab BUG: don't crash in the generator is EXECUTABLE_OUTPUT_PATH or
LIBRARY_OUTPUT_PATH are empty

Alex
2008-08-06 15:35:52 -04:00
Brad King b853e9c19f STYLE: Nightly Date Stamp 2008-08-06 00:01:30 -04:00
Brad King 7e11c5e928 BUG: Custom command depends may match sources
Custom command dependencies that are not full paths or targets may also
match source files.  When one does, the full information about the
source file's location and name may be used.  This fixes the case when a
custom commands depends by relative path on a source file generated by
another custom command specifying its output by relative path.
2008-08-05 13:27:06 -04:00
Brad King d800910efd BUG: Fix matching of ambiguous sf extensions.
A name with an ambiguous extension may only match an unambiguous name
that is extended by one of the fixed set of extensions tried when
finding the source file on disk.  This rule makes matching of source
files with ambiguous extensions much less aggressive but still
sufficient.
2008-08-05 13:27:01 -04:00
Brad King d35b5a2fb1 BUG: Do not convert RPATH entries to full path.
When generating RPATH entries on the link line using a repeated linker
flag (-R ... -R ... style) do not convert individual entries to a full
path.  We need to preserve what the user requested.
2008-08-05 09:55:08 -04:00
Brad King e44a9c9299 BUG: Fix escaping in link scripts
When generating escape sequences for the native build tool do not put in
Makefile escapes for paths generated into link scripts.  This fixes
putting "$ORIGIN" into the RPATH, and probably some other subtle
problems.
2008-08-05 09:55:02 -04:00
Brad King 090b90d727 STYLE: Nightly Date Stamp 2008-08-05 00:01:35 -04:00
Brad King aaa88d33a9 ENH: Build large archives incrementally
Creation of archive libraries with the unix 'ar' tool should be done
incrementally when the number of object files is large.  This avoids
problems with the command line getting too many arguments.
2008-08-04 11:37:19 -04:00
Brad King 0c20967a6b BUG: Fix operator precedence error in cmELF
When attempting to load the RPATH out of a non-ELF file cmELF would
crash because the check for a valid file was done with in correct
operator precedence.  See bug#7392.
2008-08-04 09:38:38 -04:00
Brad King acd9e9e5e9 STYLE: Nightly Date Stamp 2008-08-04 00:01:41 -04:00
Brad King 2d95311f75 STYLE: Nightly Date Stamp 2008-08-03 00:01:47 -04:00
Brad King 50fd6e7c3d STYLE: Nightly Date Stamp 2008-08-02 00:01:53 -04:00
David Cole 5c47163d41 BUG: Improve fix for issue #7058 - comsuppd did not yet exist in VC6. 2008-08-01 12:10:43 -04:00
Brad King ead5e0ce85 STYLE: Nightly Date Stamp 2008-08-01 00:01:59 -04:00
David Cole 5a0389a0b7 BUG: Fix issue#4792 - improve verbose and log output when ctest cannot find a file during coverage analysis. 2008-07-31 14:16:34 -04:00
David Cole 3312685616 BUG: Fix issue #7058 - link the commsup lib explicitly for use on some Visual Studio + SDK combinations 2008-07-31 13:46:17 -04:00
Bill Hoffman 45b9a2d575 BUG: fix for 7426 bad check for cpack 2008-07-31 13:36:53 -04:00
David Cole e1ac9227a0 BUG: Fix issue #5773 - add table entry to map /W0 to WarningLevel="0" 2008-07-31 12:54:09 -04:00
David Cole f059ebff69 BUG: Fix issue #4971 - use lower case when comparing file names from gcov output on _WIN32 since sometimes the drive letters have different case. 2008-07-31 11:28:45 -04:00
Bill Hoffman 6f31b0dfbd ENH: add a --trace option 2008-07-31 10:33:25 -04:00
Brad King 9926b7f717 STYLE: Nightly Date Stamp 2008-07-31 00:02:11 -04:00
David Cole 17452105cd BUG: Fix issue #7088 - do not emit error messages when attempts to run Visual Studio macros fail. You can still get the error output as messages if you want using --debug-output from the cmake command line. 2008-07-30 15:26:34 -04:00
Bill Hoffman beeebcdc40 BUG: fix for bug 7427, preinstall target name hard coded 2008-07-30 15:18:19 -04:00
David Cole b2f041f6a8 BUG: Fix issue #7414 - do not crash when given components with circular dependencies. Thanks to Doug Gregor for the patch. 2008-07-30 13:28:17 -04:00
Brad King 0247a495c1 ENH: Recognize src extensions of all enabled langs
For historical reasons we still support naming of source files without
their extension.  Sources without known extensions are located on disk
by iterating through a fixed set of possible extensions.  We now want
users to always specify the extension, so the fixed set will not be
expanded and is preserved for compatibility with older projects.

This change adds recognition of extensions of all enabled languages to
avoid checking the disk for files whose extensions are unambiguous but
not in the original fixed set.
2008-07-30 11:06:11 -04:00
Brad King 24c9434a81 BUG: Avoid double-slash in check for source file 2008-07-30 11:06:06 -04:00
Bill Hoffman d6f02cd911 BUG: fix for bug 7421, fortran did not get arch flags on the mac 2008-07-30 10:44:57 -04:00
Brad King 08221c2a49 BUG: Preserve all non-targets on user link lines
In CMake 2.4 the generated link line for a target always preserved the
originally specified libraries in their original order.  Dependencies
were satisfied by inserting extra libraries into the line, though it had
some bugs.  In CMake 2.6.0 we preserved only the items on the link line
that are not known to be shared libraries.  This reduced excess
libraries on the link line.  However, since we link to system libraries
(such as /usr/lib/libm.so) by asking the linker to search (-lm), some
linkers secretly replace the library with a static library in another
implicit search directory (developers can override this by using an
imported target to force linking by full path).  When this happens the
order still matters.

To avoid this and other potential subtle issues this commit restores
preservation of all non-target items and static library targets.  This
will create cases of unnecessary, duplicate shared libraries on the link
line if the user specifies them, but at least it will work.  In the
future we can attempt a more advanced analysis to safely remove
duplicate shared libraries from the link line.
2008-07-30 10:23:41 -04:00
Brad King 96c9e7de7e BUG: Preserve shared lib order for 2.4 compatibility
We preserve the order and multiplicity of libraries directly linked by a
target as specified by the user.  Items known to be shared libraries may
be safely skipped because order preservation is only needed for static
libraries.  However, CMake 2.4 did not skip shared libs, so we do the
same when in 2.4 compatibility mode.
2008-07-30 09:25:52 -04:00
Brad King bd4601f987 STYLE: Nightly Date Stamp 2008-07-30 00:02:10 -04:00
Brad King f8f5dde2ee ENH: Warn when system libraries may be hidden.
We never explicitly specify system library directories in linker or
runtime search paths.  Furthermore, libraries in these directories are
always linked by asking the linker to search for them.  We need to
generate a warning when explicitly specified search directories contain
files that may hide the system libraries during the search.
2008-07-29 14:57:00 -04:00
Brad King 01d143c77b ENH: Provide context in path ordering warnings 2008-07-29 14:01:04 -04:00
Brad King 478fbdfc23 STYLE: Fix typo in comment in cmOrderDirectories 2008-07-29 14:00:59 -04:00
Bill Hoffman d652aed13a ENH: do not depend on files that do not exist 2008-07-29 10:51:46 -04:00
Brad King 1a08c9aa5e STYLE: Nightly Date Stamp 2008-07-29 00:02:16 -04:00
Brad King 36b898ccf4 STYLE: Nightly Date Stamp 2008-07-28 00:02:22 -04:00
Brad King 1aefb48e5b STYLE: Nightly Date Stamp 2008-07-27 00:02:28 -04:00
Brad King 9d680d2c4d STYLE: Nightly Date Stamp 2008-07-26 00:02:07 -04:00
Bill Hoffman a4b30b8b25 BUG: fix source file extension bug that broke Second life build 2008-07-25 18:00:47 -04:00
Brad King 1782d90338 STYLE: Nightly Date Stamp 2008-07-25 00:02:13 -04:00
Brad King eea0cd3d8b STYLE: Nightly Date Stamp 2008-07-24 00:02:14 -04:00
Brad King b93f0318fe ENH: Support full-path libs w/out valid names.
This change introduces policy CMP0008 to decide how to treat full path
libraries that do not appear to be valid library file names.  Such
libraries worked by accident in the VS IDE and Xcode generators with
CMake 2.4 and below.  We support them in CMake 2.6 by introducing this
policy.  See policy documentation added by this change for details.
2008-07-23 12:59:14 -04:00
Brad King 74d6536024 ENH: Skip libs in known dirs for CMP0003 warnings.
Sometimes we ask the linker to search for a library for which the path
is known but for some reason cannot be specified by full path.  In these
cases do not include the library in CMP0003 warnings because we know the
extra paths are not needed for it.
2008-07-23 12:19:54 -04:00
Brad King ffd231869f STYLE: Nightly Date Stamp 2008-07-23 00:02:19 -04:00
Bill Hoffman 1d1d874cf1 COMP: fix compiler warning and follow style 2008-07-22 13:32:43 -04:00
Brad King 6db292d656 STYLE: Nightly Date Stamp 2008-07-22 00:02:21 -04:00
Alexander Neundorf 4175b514fc ENH: handle HTML documentation for single items better: no warning about
ComputeSectionLinkPrefix, don't create an index for only one item

Alex
2008-07-21 17:52:59 -04:00
Brad King ff63bb1b44 ENH: Support full-path libs w/out extension in VS IDE.
- This case worked accidentally in CMake 2.4, though not in Makefiles.
  - Some projects build only with the VS IDE on windows and have this
    mistake.
  - Support them when 2.4 compatibility is enabled by adding the extension.
2008-07-21 10:07:56 -04:00
Brad King c52f9425c7 STYLE: Nightly Date Stamp 2008-07-21 00:02:24 -04:00
Alexander Neundorf 0b27f1f766 STYLE: fix #7146, add documentation for
CMAKE[_SYSTEM]_(LIBRARY|PROGRAM|INCLUDE|PREFIX)_PATH variables
-moved CMAKE_CROSSCOMPILING from "Variables that modify behaviour" to
"variables that Provide Information", since it should be used only for
testing whether we are currently in cross compiling mode, not for switching
between the modes.

Alex
2008-07-20 17:14:00 -04:00
Brad King 75e6fe0579 STYLE: Nightly Date Stamp 2008-07-19 23:52:22 -04:00
Brad King 5d39290bb2 STYLE: Nightly Date Stamp 2008-07-18 23:52:35 -04:00
David Cole b3752abc8d ENH: Improvements to the bundle cpack generator from second patch attached to feature request #7170. Thanks to Tim Shead. 2008-07-18 16:12:36 -04:00
Brad King 6e9ea6c65a STYLE: Nightly Date Stamp 2008-07-17 23:52:46 -04:00
Brad King 315fed9d49 STYLE: Nightly Date Stamp 2008-07-16 23:52:47 -04:00
Brad King 2bc9acb1ca BUG: Fix try_compile during EnableLanguage
- The source-file signature of try_compile looks up the language
    of the source file using the extension-to-language map so that
    it knows what language to enable in the generated project.
  - This map needs to be filled before loading a file specified by
      CMAKE_USER_MAKE_RULES_OVERRIDE
      CMAKE_USER_MAKE_RULES_OVERRIDE_<LANG>
    so that the user file may call the try_compile() source-file
    signature.
  - It must still be re-filled after loading CMake<LANG>Information.cmake
    in case the compiler- or platform-specific files added anything.
  - See bug #7340.
2008-07-16 11:03:58 -04:00
Brad King 9e0e27ccc7 STYLE: Nightly Date Stamp 2008-07-15 23:52:56 -04:00
Brad King a744f2d131 STYLE: Nightly Date Stamp 2008-07-14 23:53:09 -04:00
Bill Hoffman e5ba0296c2 BUG: fix for bug 7316 2008-07-14 18:51:54 -04:00
Brad King 0d99216dfb STYLE: Nightly Date Stamp 2008-07-13 23:53:09 -04:00
Brad King 180e05acdc STYLE: Nightly Date Stamp 2008-07-12 23:53:20 -04:00
Brad King dbfe32d2ed STYLE: Nightly Date Stamp 2008-07-11 23:53:29 -04:00
Brad King dc08bb837a STYLE: Nightly Date Stamp 2008-07-10 23:53:45 -04:00
Bill Hoffman 0143b83264 COMP: remove warning and check for assignment to itself in operator= 2008-07-10 17:20:14 -04:00
Brad King 06d38d313f STYLE: Nightly Date Stamp 2008-07-09 23:53:43 -04:00
David Cole d7b9041516 COMP: Fix HP continuous. Pull stl headers into CMake header files using cmStandardIncludes.h 2008-07-09 16:30:53 -04:00
David Cole 71f61636b6 ENH: One more patch from Doug Gregor including PackageMaker functionality for componentized-for-the-end-user and download-some-bit-on-demand installers. 2008-07-09 13:38:56 -04:00
Bill Hoffman 3366e6c2cd ENH: fix memory leak 2008-07-09 11:46:03 -04:00
Brad King 0d54001276 ENH: Set version info for shared libs on OSX.
- Map SOVERSION major.minor.patch to compatibility_version
  - Map VERSION major.minor.patch to current_version
  - See issue #4383.
2008-07-09 10:09:46 -04:00
Brad King da4f142cc1 ENH: Add full target version signature cmTarget::GetTargetVersion. 2008-07-09 10:09:00 -04:00
Brad King ba84524207 STYLE: Nightly Date Stamp 2008-07-08 23:53:48 -04:00
David Cole 83ec8c3593 ENH: Further refinement of the CPack components functionality from Doug Gregor.
Details:
==========

 - New cpack_add_component, cpack_add_component_group, and
cpack_add_install_type "commands" defined as macros in the CPack
module.
 - Documentation for all of the variables and commands in the CPack module.
 - Added get_cmake_property(... COMPONENTS) to CMake to ask for the
names of all components. Used in the CPack module to automatically
build component-based installers. (Set CPACK_MONOLITHIC_INSTALL to
turn off component-based installation).
 - A group can declare its PARENT_GROUP, to build an arbitrary
hierarchy of groups.
 - New CPack command cpack_configure_downloads, which creates an
installer that downloads only the selected components on-the-fly.
Those components marked DOWNLOADED will be separate packages
downloaded on-the-fly (or, all packages can be marked as such with the
ALL option to cpack_configure_downloads). Individual components are
compressed with ZIP at installer-creation time and
downloaded/uncompressed by the installer as needed. This feature is
only available on Windows with NSIS at the moment.
 - NSIS installers can install themselves and enable the "Change"
button in Add/Remove programs, allowing users to go back and install
or remove components. This can be disabled through
cpack_configure_downloads, because it's only really useful is most of
the application's functionality is in downloaded components.
 - Bug fix: automatically install everything whose COMPONENT was not
specified (it's a hidden, required group)
 - Bug fix: fixed removal of components when re-running the NSIS
installer and unchecking components
 - Bug fix: NSIS installers now only install/remove the minimal
number of files when re-run to update the installation (or by clicking
"Change" in Add/Remove programs)
2008-07-08 11:52:25 -04:00
Brad King 7515492079 STYLE: Nightly Date Stamp 2008-07-07 23:53:59 -04:00
Bill Hoffman 2081dcbfce ENH: add get_test_property to bootstrap so bootstrap builds test the same as non-bootstrap builds 2008-07-07 15:07:54 -04:00
Brad King 9a3c0bf073 BUG: Do not build human-reference files in Xcode
- The Info.plist file in app bundles should not be built.
  - User-specified files such as foo.txt should not be built.
  - Only files with a recognized language should be built,
    just as in the Makefiles generators.
  - See bug #7277.
2008-07-07 13:12:21 -04:00
Brad King e225a377b9 ENH: Add projectRoot to Xcode projects
- This attribute points Xcode at the source tree.
  - Xcode 3 wants this to be set always.
  - See bug #7044.
2008-07-07 10:57:32 -04:00
Brad King 97e658c571 BUG: Fix AppBundle=>Library depends in Xcode
- The Xcode generator xcode-depend-helper needs to account
    for the paths of executables within application bundles.
  - See bug #7278.
2008-07-07 10:05:29 -04:00
Brad King 7a10a8ca33 STYLE: Nightly Date Stamp 2008-07-06 23:54:05 -04:00
Bill Hoffman bc58fe6485 COMP: fix warning 2008-07-06 22:06:08 -04:00
Bill Hoffman a4ae5a72a0 COMP: fix some more warnings 2008-07-06 20:03:08 -04:00
Bill Hoffman cb4eaeabe5 COMP: fix a few more warnings 2008-07-06 19:58:38 -04:00
Brad King c3933acc75 STYLE: Nightly Date Stamp 2008-07-05 23:54:11 -04:00
Clinton Stimpson f729538aaa ENH: Replace Advanced checkbox and group option in menu with a combo box to
choose view type.
2008-07-05 13:25:04 -04:00
Bill Hoffman 70662e7f86 COMP: fix warning 2008-07-05 09:29:33 -04:00
Brad King b44ac00240 STYLE: Nightly Date Stamp 2008-07-04 23:54:18 -04:00
Bill Hoffman 5292b3edef COMP: try to fix sgi compiler problem with set and also shorten symbol lengths for set class 2008-07-04 10:28:22 -04:00
Bill Hoffman 112d377fbb COMP: fix more warnings 2008-07-04 10:10:30 -04:00
Bill Hoffman fba54c56f2 COMP: fix warning 2008-07-04 09:55:26 -04:00
Bill Hoffman 7098b666fa COMP: fix some warnings 2008-07-04 09:50:32 -04:00
Brad King 9466dd3481 STYLE: Nightly Date Stamp 2008-07-03 23:54:30 -04:00
Bill Hoffman 9e167b6800 ENH: one more fix for the old hp c++ compiler 2008-07-03 16:26:03 -04:00
Bill Hoffman f188d0e241 ENH: one more fix for hp 2008-07-03 15:02:52 -04:00
Bill Hoffman 096c139c80 ENH: fix for old hp compiler 2008-07-03 13:55:36 -04:00
Brad King dd1ee6975f ENH: Do not auto-create out-dated cache variables
- We used to always put LIBRARY_OUTPUT_PATH and EXECUTABLE_OUTPUT_PATH
    in the cache if the project did not.
  - In CMake 2.6 these variables should no longer be used.
  - Now add them only if CMAKE_BACKWARDS_COMPATIBILITY is also cached.
  - This happens only when CMP0001 is set to OLD or WARN or if
    the user or project sets it.  In any case compatibility is needed.
  - Reported by Miguel A. Figueroa-Villanueva and Philip Lowman.
2008-07-03 13:55:33 -04:00
Brad King 1342965b05 BUG: Fix Xcode reference to Info.plist resource
- Generated Xcode projects for application bundles list the
    CMake-generated Info.plist input file as a resource.
  - The location of the input file was moved by a previous commit,
    but the reference to it as a resource file was not updated.
  - This change moves the file to CMakeFiles/<tgt>.dir/Info.plist
    to give it a more intuitive name in the Xcode project.
  - We also update the reference to point at the correct location.
  - See bug #7277.
2008-07-03 13:28:54 -04:00
Brad King 264af17bfc BUG: Fix Xcode per-config bundle name in Info.plist
- The Xcode generator creates one Info.plist input file which is
    converted at build time by Xcode and placed in the final bundle.
  - The <CONFIG>_OUTPUT_NAME target property can place different content
    for the exe name in Info.plist on a per-configuration basis.
  - Instead of generating a per-config Info.plist input file just let
    Xcode put the name in at build time using the $(EXECUTABLE_NAME) var.
2008-07-03 13:28:49 -04:00
Bill Hoffman 7950b99d9d ENH: add missing file 2008-07-03 09:49:49 -04:00
Bill Hoffman bb7b27e417 ENH: add initial ctest -j feature 2008-07-03 09:31:33 -04:00
Brad King ea71721b80 STYLE: Nightly Date Stamp 2008-07-02 23:54:33 -04:00
Brad King 1589e112e6 STYLE: Nightly Date Stamp 2008-07-01 23:54:43 -04:00
Brad King 7317f2cbe6 STYLE: Nightly Date Stamp 2008-06-30 23:55:16 -04:00
Clinton Stimpson 667d5f9446 BUG: Fix column widths on some systems. 2008-06-30 14:29:08 -04:00
Brad King b73cac6409 BUG: Do not escape make variable references in VS additional options. 2008-06-30 09:57:07 -04:00
Brad King 5b09901f69 STYLE: Nightly Date Stamp 2008-06-29 23:55:14 -04:00
Brad King d50cbe101a STYLE: Nightly Date Stamp 2008-06-28 23:55:21 -04:00
Ken Martin 52d8b1b5d9 BUG: fix memory leak and cleanup error string code 2008-06-28 11:16:36 -04:00
Brad King 3cc9efceb7 STYLE: Nightly Date Stamp 2008-06-27 23:55:43 -04:00
Brad King bf4070d726 STYLE: Nightly Date Stamp 2008-06-26 23:55:19 -04:00
Brad King b9b11903ab BUG: Fix computed directory property DEFINITIONS.
- The property tracks the value formed by add_definitions
    and remove_definitions command invocations.
  - The string should be maintained for use in returning for the
    DEFINITIONS property value.
  - It is no longer used for any other purpose.
  - The DEFINITIONS property was recently documented as deprecated.
  - See bug #7239.
2008-06-26 13:30:10 -04:00
Ken Martin 19e891532a ENH: support parenthesis as arguments and in conditionals feature request #6191 2008-06-26 13:01:35 -04:00
Brad King d8e05b43a1 ENH: Update documentation of computed directory properites.
- Fix documentation of get_directory_property command.
  - Convert its list of computed directory properties to be
    defined/documented directory properties.
2008-06-26 10:58:44 -04:00
Brad King 2ca9a70fd1 BUG: Fix PARENT_DIRECTORY property in top-level to not crash. 2008-06-26 10:58:16 -04:00
Brad King bb7bc28c78 STYLE: Nightly Date Stamp 2008-06-25 23:55:31 -04:00
Bill Hoffman 02ff910044 BUG: fix for bug 7239, DEFINITIONS property not backwards compatible to 2.4 2008-06-25 09:44:56 -04:00
Brad King 4aa35cee98 STYLE: Nightly Date Stamp 2008-06-24 23:56:15 -04:00
Clinton Stimpson 88a9a3254e BUG: Don't create empty property. Fixes bug #7193. 2008-06-24 00:00:42 -04:00
Brad King 2b9e0af408 STYLE: Nightly Date Stamp 2008-06-23 23:55:45 -04:00