Commit Graph

9869 Commits

Author SHA1 Message Date
Brad King 147d6f3101 ENH: Remove unused code from cmMakeDepend
This class is the old-style dependency scanner.  It is needed only to
implement the output_required_files command.  This change removes some
code not needed for that purpose, including a reference to the
HEADER_FILE_ONLY property.
2009-03-16 14:30:19 -04:00
Brad King 9862f383d0 ENH: Add NAME mode to ADD_TEST command
This creates command mode add_test(NAME ...).  This signature is
extensible with more keyword arguments later.  The main purpose is to
enable automatic replacement of target names with built target file
locations.  A side effect of this feature is support for tests that only
run under specific configurations.
2009-03-16 10:51:30 -04:00
Brad King 606e6ff9cd ENH: Refactor storage of test command lines
We used to separate the command executable from its argument vector.
It is simpler to just store the whole command line in one vector.
2009-03-16 10:42:40 -04:00
Brad King 66d69f864a ENH: Refactor generation of CTestTestfile content
This moves code which generates ADD_TEST and SET_TESTS_PROPERTIES calls
into CTestTestfile.cmake files out of cmLocalGenerator and into a
cmTestGenerator class.  This will allow more advanced generation without
cluttering cmLocalGenerator.  The cmTestGenerator class derives from
cmScriptGenerator to get support for per-configuration script
generation (not yet enabled).
2009-03-16 10:40:46 -04:00
Brad King e67f5138b8 ENH: Refactor cmInstallGenerator for re-use
A new cmScriptGenerator base class factors out the non-install-specific
part of cmInstallGenerator.  This will be useful for other generators
that want per-configuration functionality.
2009-03-16 10:39:56 -04:00
Brad King e30835345a STYLE: Nightly Date Stamp 2009-03-16 00:01:05 -04:00
Brad King fa325c1fdc STYLE: Nightly Date Stamp 2009-03-15 00:01:08 -04:00
Brad King e4eb90c875 STYLE: Nightly Date Stamp 2009-03-14 00:01:05 -04:00
Alexander Neundorf f40f867be6 ENH: don't enforce VERBOSE Makefiles, but set the env. var VERBOSE to 1 in
when make is executed from within Eclipse. This way when building from the
command line one can build also in non-verbose mode.

Alex
2009-03-13 17:04:57 -04:00
Alexander Neundorf cbb7a509e8 ENH: when using the Eclipse project generator, run gcc so that it tells us
its system include directories. These are catched in CMakeSystemSpecificInformation.cmake
(only with the Eclipse generator) and then written by the Eclipse generator
in the Eclipse project file. This way Eclipse can find the standard headers
(#7585)
Not sure CMakeSystemSpecificInformation.cmake is the best place to do this.

Alex
2009-03-13 16:52:58 -04:00
Alexander Neundorf 4a23e05237 STYLE: add line breaks to the documentation for CMAKE_MATCH_(0..9),
otherwise one might miss this information

Alex
2009-03-13 14:58:13 -04:00
Brad King 5cde305b99 BUG: Document internal cache property MODIFIED
All cmake-defined properties should be documented, even if they are
internal.  This fixes the DocTest when CMAKE_STRICT is enabled.
2009-03-13 10:53:53 -04:00
Brad King 5e49dc4346 BUG: Fix cache properties for CMAKE_STRICT build
All cmPropertyMap instances must have CMakeInstance set.  This teaches
cmCacheManager to set it on cache entries.
2009-03-13 10:53:47 -04:00
Brad King c6d0043e2a STYLE: Nightly Date Stamp 2009-03-13 00:01:06 -04:00
Alexander Neundorf 3fe6b3ce37 BUG: fix #8704, sometimes crash if include_directories() is called with a whitespace string
Alex
2009-03-12 19:24:27 -04:00
Alexander Neundorf 5174fbd390 STYLE: document NONE for disabling any languages, slightly change wording of
the rest of the documentation, so it is more similar to ENABLE_LANGUAGE() (#8718)

Alex
2009-03-12 18:43:17 -04:00
Bill Hoffman 0a65ee8d95 ENH: allow for https submission if ctest is built with a curl that supports it 2009-03-12 14:54:00 -04:00
Brad King d96e7e0e5a COMP: Do not use void returns
VS 6 does not support the C++ void returns feature.  This removes an
accidental use of it.
2009-03-12 13:11:48 -04:00
Clinton Stimpson c54f47635c ENH: Add support for showing combo box for choosing from a list of strings that a cache property can have. 2009-03-12 11:19:27 -04:00
Brad King dd7b48c9c3 ENH: Define STRINGS cache entry property
This property defines a list of values for a cache entry of type STRING.
A CMake GUI may optionally use a drop-down selection widget for the
entry instead of a generic text entry field.  We do not enforce that the
value of the entry match one of the strings listed.
2009-03-12 10:52:40 -04:00
Brad King 1b43bea91c ENH: Refactor cache entry writing and reading
This factors out duplicated code into reusable methods, thus simplifying
writing and reading of cache entry help strings, keys, values, and
properties.
2009-03-12 10:49:05 -04:00
Brad King 0460e31e67 STYLE: Nightly Date Stamp 2009-03-12 00:01:07 -04:00
Brad King 589b4265a6 BUG: Do not produce empty coverage log files
This moves the filtering of source files to before the production of
coverage log files in order to avoid producing a CoverageLog-*.xml file
for 100 filtered-out files.  The change greatly reduces the number of
submitted coverage files when using label filters.
2009-03-11 13:31:40 -04:00
Brad King 5bc17136a3 BUG: Do not carry over file list between coverage
When performing multiple ctest_coverage() commands in a single CTest
instance we need to clear the list of CoverageLog-*.xml files for
submission.  Otherwise if the current coverage run produces fewer log
files than the previous run CTest will attempt to submit non-existing
files.
2009-03-11 13:31:33 -04:00
Brad King f3e713ba65 BUG: Avoid duplicate CTest coverage submission
This teaches ctest_coverage() to remove any existing CoverageLog-*.xml
when it creates new coverage results.  Otherwise the next ctest_submit()
may submit old coverage log files which unnecessarily.
2009-03-11 12:03:47 -04:00
Brad King b4997c3020 STYLE: Nightly Date Stamp 2009-03-11 00:01:03 -04:00
Alexander Neundorf 5700deb16a ENH: only check for the existance of a header file if:
-the original file is a C/C++ implementation file
-the header file is not already part of the sources

Alex
2009-03-10 17:34:18 -04:00
Brad King 32258b44bc ENH: Document CACHE entry properties
This adds a property documentation section for CACHE properties.
We document the ADVANCED, HELPSTRING, TYPE, and VALUE properties.
2009-03-10 11:11:15 -04:00
Brad King e5e91d6179 ENH: Teach set/get_property about CACHE properties
This adds the CACHE option to set_property and get_property commands.
This allows full control over cache entry information, so advanced users
can tweak their project cache as desired.  The set_property command
allows only pre-defined CACHE properties to be set since others would
not persist anyway.
2009-03-10 11:10:59 -04:00
Brad King ca9fb4826f ENH: Use cmPropertyMap for cache properties
This re-implements cache entry property storage in cmCacheManager to use
cmPropertyMap so it can share the standard property implementation.
2009-03-10 11:10:42 -04:00
Brad King effd6d6e0b STYLE: Nightly Date Stamp 2009-03-10 00:01:05 -04:00
Brad King 21fc04efaf BUG: Fix get_property result for bad property
When a property does not exist we are supposed to return an empty value.
Previously if a property did not exist we just left the value of the
output variable unchanged.  This teaches CMake to remove the definition
of the output variable in this case.
2009-03-09 17:57:12 -04:00
Brad King 1d96c943e0 ENH: Efficiently filter CTest coverage by label
This teaches CTest to process coverage information only for object files
in targets containing labels of interest.  This change also improves
loading of global coverage information by globbing only in each target
support directory instead of the entire build tree.
2009-03-09 12:19:56 -04:00
Brad King a86e81c358 ENH: Generate a central list of target directories
This generalizes the previous CMakeFiles/LabelFiles.txt created at the
top of the build tree to a CMakeFiles/TargetDirectories.txt file.  It
lists the target support directories for all targets in the project.
Labels can still be loaded by looking for Labels.txt files in each
target directory.
2009-03-09 12:19:27 -04:00
Brad King b9323d2dd6 STYLE: Nightly Date Stamp 2009-03-09 00:01:04 -04:00
Alexander Neundorf 363c4e422d ENH: automatically add headers of implementation file to the codeblocks project file
Alex
2009-03-08 15:33:58 -04:00
Brad King 038827c5da STYLE: Nightly Date Stamp 2009-03-08 00:01:03 -05:00
Brad King 55760e9994 STYLE: Nightly Date Stamp 2009-03-07 00:01:04 -05:00
Brad King b04c37c700 BUG: Fix message(SEND_ERROR) to continue
During testing of the new message() signatures I mistakenly concluded
that SEND_ERROR stops processing.  The corresponding commit enforced
this wrong behavior.  This restores the correct behavior and fixes the
documentation accordingly.
2009-03-06 12:06:43 -05:00
Brad King ca3b93d9c6 ENH: Teach message() how to display warnings
This adds message(WARNING) and message(AUTHOR_WARNING) command modes and
fully documents the command behavior in all modes.
2009-03-06 10:04:06 -05:00
Brad King 62702551db BUG: Fix man-page preformatted text paragraphing
Man page preformatted text needs an extra newline after the ending
marker to create a paragraph break.  This bug was introduced by the
patch from issue #7797 to place explicit ".nf" and ".fi" markers around
preformatted blocks.
2009-03-06 10:01:14 -05:00
Brad King 2123b432d9 ENH: Teach file(REMOVE) how to use relative paths
This teaches the command to interpret relative paths with respect to the
location of the invoking CMakeLists.txt file.  The convention is already
used by most commands and won't change the behavior in script mode.
2009-03-06 09:14:57 -05:00
Brad King 73bea67fd3 STYLE: Nightly Date Stamp 2009-03-06 00:01:03 -05:00
Brad King 98c51ff6dc ENH: Overhaul CMake version numbering
This moves the version numbers into an isolated configured header so
that not all of CMake needs to rebuild when the version changes.

Previously we had spaces, dashes and/or the word 'patch' randomly chosen
before the patch number.  Now we always report version numbers in the
traditional format "<major>.<minor>.<patch>[-rc<rc>]".

We still use odd minor numbers for development versions.  Now we also
use the CCYYMMDD date as the patch number of development versions, thus
allowing tests for exact CMake versions.
2009-03-05 15:17:07 -05:00
Brad King 83f39ba41b STYLE: Remove unused cmake::CacheVersionMatches
This remove the method completely since nothing uses it.
2009-03-05 13:57:10 -05:00
Brad King dcd1c5cd8a BUG: Initialize ctest_coverage command ivar
This initializes the LabelsMentioned ivar in cmCTestCoverageCommand.
2009-03-05 10:17:42 -05:00
Brad King 46c3541392 STYLE: Nightly Date Stamp 2009-03-05 00:01:04 -05:00
Brad King 170febac52 ENH: Cleanup cmake --build interface.
This cleans up the 'cmake --build' command-line interface:
  - Rename --clean to --clean-first to better describe it.
  - Replace --extra-options with a -- separator to simplify passing of
    multiple native build tool options.
  - Document the options in the main CMake man page description of the
    --build option, and shares this with the usage message.
  - Require --build to be the first argument when present.
  - Move implementation into cmakemain where it belongs.
2009-03-04 15:39:27 -05:00
Brad King d35651fb6c ENH: Extend GG::Build method for pre-parsed args
This adds an argument to the cmGlobalGenerator::Build method to pass a
vector of arguments for the native build tool programatically.
2009-03-04 15:38:47 -05:00
Bill Hoffman e7f16fcb1b BUG: make sure error condition is reset before loading scripts 2009-03-04 11:24:57 -05:00
Brad King c0e0180f28 STYLE: Nightly Date Stamp 2009-03-04 00:01:02 -05:00
Brad King 123e9618b1 STYLE: Nightly Date Stamp 2009-03-03 00:01:02 -05:00
Brad King 82e9291629 BUG: Avoid encoding invalid XML chars in CTest
CTest encodes test and tool output in XML for dashboard submission.
This fixes the XML encoding implementation to not encode an invalid
character and instead put a human-readable tag in its place.
See issue #8647.
2009-03-02 16:27:50 -05:00
Brad King ed5e4d8be2 BUG: Gracefully handle broken version symlinks
This teaches the helper commands 'cmake -E cmake_symlink_executable' and
'cmake -E cmake_symlink_library' to remove broken symlinks before
creating a symlink and report an error when the symlink cannot be
created.  See issue #8654.
2009-03-02 16:02:19 -05:00
Brad King 91a8569648 ENH: Teach ctest_coverage to filter with LABELS
This teaches ctest_coverage() to report only coverage of files labeled
with at least one label given by a new LABELS option.
2009-03-02 15:33:18 -05:00
Brad King 3078fef81c BUG: Fix coverage label reports for Bullseye
This teaches CTest to report Labels elements in the Coverage.xml file
for Bullseye coverage results.
2009-03-02 15:33:03 -05:00
Brad King c4596605df BUG: Fix coverage handler initialization
This resets coverage handler internal state on initialization so that
multiple coverage runs are independent.
2009-03-02 15:32:59 -05:00
Brad King 3838ec7d9f BUG: Hack for issue #8647 2009-03-02 09:59:14 -05:00
Brad King 1e6b109fed STYLE: Nightly Date Stamp 2009-03-02 00:01:05 -05:00
Brad King 8ddec12021 STYLE: Nightly Date Stamp 2009-03-01 00:01:06 -05:00
Brad King de3a686a62 STYLE: Nightly Date Stamp 2009-02-28 00:01:08 -05:00
Bill Hoffman 3043ddf144 BUG: #8611 add pass fail reasons into log file 2009-02-27 16:28:07 -05:00
Brad King b41c8fe23e BUG: Pass shared library export symbol in DEFINES
The <target>_EXPORTS macro defined for object files when built in a
shared library <target> should be put in the <DEFINES> make rule
replacement and not <FLAGS>.  Also, it should honor the platform
variable CMAKE_<LANG>_DEFINE_FLAG.  See issue #8107.
2009-02-27 12:59:52 -05:00
Brad King 1d3308156e ENH: Enforce unique binary directories
The second argument of add_subdirectory must name a unique binary
directory or the build files will clobber each other.  This enforces
uniqueness with an error message.
2009-02-27 11:23:14 -05:00
Brad King 99b37665c9 STYLE: Nightly Date Stamp 2009-02-27 00:01:02 -05:00
Brad King 3829be4ca6 ENH: Refactor initial checkout into cmCTestVC
This adds cmCTestVC::InitialCheckout and uses it in cmCTestUpdateHandler
to run the initial checkout command.  The new implementation logs the
command in the update log consistently with the rest of the new update
implementation.
2009-02-26 09:22:32 -05:00
Brad King 8c3290b4a3 BUG: Use new include dir suppresson for all gens
This fixes CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES to be used for all
generators instead of just those that construct their own compiler
command lines directly.  See issue #8598.
2009-02-26 09:16:16 -05:00
Brad King 3498a8c668 ENH: Simplify reverse cmLocalGenerator::Convert
It does not make sense to call the reverse Convert signature (for remote
paths corresponding to CMake-managed directories) with NONE or FULL
since they have no path.  Patch from Modestas Vainius.  See issue #7779.
2009-02-26 08:49:10 -05:00
Brad King 338d37ee5a STYLE: Nightly Date Stamp 2009-02-26 00:01:04 -05:00
Brad King 7dbacb94f4 COMP: Fix cmCTestVC member access for HP compiler
The HP C++ compiler needs some help to allow access to some member
classes of cmCTestVC.
2009-02-25 15:45:14 -05:00
Brad King 80282b749f ENH: Rewrite CTest Update implementation
This adds a new VCS update implementation to the cmCTestVC hierarchy and
removes it from cmCTestUpdateHandler.  The new implementation has the
following advantages:

  - Factorized implementation instead of monolithic function
  - Logs vcs tool output as it is parsed (less memory, inline messages)
  - Uses one global svn log instead of one log per file
  - Reports changes on cvs branches (instead of latest trunk change)
  - Generates simpler Update.xml (only one Directory element per dir)

Shared components of the new implementation appear in cmCTestVC and may
be re-used by subclasses for other VCS tools in the future.
2009-02-25 14:42:45 -05:00
Brad King cb788e8f6d ENH: Re-enable system include dir suppression
This creates variable CMAKE_<LANG>_IMPLICIT_INCLUDE_DIRECTORIES to
specify implicit include directories on a per-language basis.  This
replaces the previous platform-wide variable.  It is necessary to
avoid explicit specification of -I/usr/include on some compilers
(such as HP aCC) because:

  1.) It may break ordering among system include directories defined
      internally by the compiler, thus getting wrong system headers.
  2.) It tells the compiler to treat the system include directory
      as a user include directory, enabling warnings in the headers.

See issue #8598.
2009-02-25 11:44:46 -05:00
Brad King 261600bd09 COMP: Fix cmCTestVC char[]->string Borland warning
The Borland compiler warns about returning a char[] from a function with
return type std::string without an explicit construction.
2009-02-25 09:20:26 -05:00
Brad King 8c88787b8b STYLE: Nightly Date Stamp 2009-02-25 00:01:19 -05:00
Bill Hoffman 3b73cdc89f ENH: add a CDash measured value showing the reason for passed and failed tests based on regular expressions 2009-02-24 17:23:51 -05:00
Brad King b5db18e723 ENH: Added cmXMLParser::FindAttribute method
This method will help subclasses look for element attributes in their
StartElement methods.
2009-02-24 15:43:49 -05:00
Brad King d033f0d2d1 ENH: Allow cmXMLParser subclasses to report errors
This tells cmXMLParser to report error messages through virtual method
cmXMLParser::ReportError so that subclasses can override the default
report.
2009-02-24 15:43:37 -05:00
Brad King 506e745c37 ENH: Teach cmCTestSVN to load repo/tree relation
This teaches cmCTestSVN::NoteNewRevision to save the repository URL
checked out in the work tree, the repository root, and the path below
the root to reach the full URL.
2009-02-24 15:43:25 -05:00
Brad King 3f4064f7ac ENH: Add cmCTest::DecodeURL method
This new method decodes the "percent-encoding" used in URL syntax.
2009-02-24 15:43:06 -05:00
Brad King 39f8b91125 BUG: Remove implicit include dir suppression
We used to suppress generation of -I/usr/include (and on OSX also
-I/usr/local/include).  This behavior seems to cause more trouble than
it's worth, so I'm removing it until someone encounters the original
problem it fixed.  See issue #8598.
2009-02-24 15:37:09 -05:00
Brad King 66f2edbe63 BUG: Fix Fortran implicit dependency include path
The previous change to Source/cmDependsFortran.cxx while refactoring
implicit dependency scanning configuration rules completely broke
loading of the include file search path while scanning Fortran
dependencies.  This adds the line that should have been added during the
previous change to load the include path correctly.
2009-02-24 14:32:25 -05:00
Brad King de3dedb4ea ENH: Factor out VCS work tree revision checks
This moves checks of the work tree revision before and after update from
cmCTestUpdateHandler::ProcessHandler into the cmCTestVC hierarchy.
2009-02-24 12:52:36 -05:00
Brad King d76bc78a12 ENH: Factor out nightly start time computation
Move generation of the nightly start time string from
cmCTestUpdateHandler::ProcessHandler into cmCTestVC.
2009-02-24 12:50:48 -05:00
Brad King fdd0d2a32b ENH: Factor out svn work tree cleanup
This removes work tree cleanup from cmCTestUpdateHandler and adds an
interface for it in cmCTestVC with an implementation in cmCTestSVN.
2009-02-24 12:50:15 -05:00
Brad King 4e4f2a3a10 ENH: Create cmCTestVC::RunChild and parse helpers
This method will help VCS tool subclasses run child processes and log
the output while parsing it.
2009-02-24 12:49:57 -05:00
Brad King 1595b8e69e ENH: Add install(DIRECTORY) option 'OPTIONAL'
This adds the OPTIONAL option to the install(DIRECTORY) command.  It
tells the installation rule that it is not an error if the source
directory does not exist.  See issue #8394.
2009-02-24 11:41:40 -05:00
Brad King a79f8cd4c1 ENH: Refactor install(DIRECTORY) argument parsing
We previously used several booleans with at most one set to true at a
time to track argument parsing state.  This refactors it to use one
enumeration.
2009-02-24 11:41:00 -05:00
Brad King 5a7ac0def1 COMP: cmProcessTools::OutputParser virtual dtor
This class has virtual methods and therefore should have a virtual
destructor.
2009-02-24 11:08:38 -05:00
Brad King 1936499250 ENH: Create cmProcessTools to parse child output
This class provides a RunProcess method to run a child process and send
its output to an abstract parsing interface.  This also provides a
simple line parser and logger implementing the parsing interface.
2009-02-24 10:40:18 -05:00
Brad King 6bdc2b5d99 ENH: Add cmCTestCVS and cmCTestSVN
These cmCTestVC subclasses will implement interaction with CVS and SVN
tools.
2009-02-24 10:39:55 -05:00
Brad King 1b8ea27bd1 ENH: Create cmCTestVC for VCS interaction
This creates cmCTestVC, the base for a forthcoming class hierarchy to
interact with version control systems.
2009-02-24 10:39:28 -05:00
David Cole 60a46ca76e STYLE: Fix line length violation. 2009-02-24 09:34:03 -05:00
Brad King 0d66aa3915 ENH: Factor out VCS tool detection
In cmCTestUpdateHandler, this factors out version control tool detection
from the monolithic cmCTestUpdateHandler::ProcessHandler to separate
methods.  This also places priority on detection of the tool managing
the source tree since using any other tool will cause errors.
2009-02-24 09:09:43 -05:00
Brad King 844df75676 ENH: Factor out initial checkout method
This moves the initial checkout code from the monolithic
cmCTestUpdateHandler::ProcessHandler to a separate method
cmCTestUpdateHandler::InitialCheckout.
2009-02-24 09:09:14 -05:00
Brad King 0458da3ba9 STYLE: Nightly Date Stamp 2009-02-24 00:01:07 -05:00
Brad King a6c0784489 ENH: Refactor quoting of VCS tool command
Previously we pre-quoted the command line tool path.  This avoids it by
quoting the command everywhere it is used, thus preserving access to the
original, unquoted command.
2009-02-23 15:59:39 -05:00
David Cole c148714b82 ENH: Add license file presentation to the Drag-N-Drop dmg file CPack generator. Fixes issue #8442. Thanks to Clinton Stimpson for the patch. 2009-02-23 13:25:18 -05:00
Brad King 9185f36b06 STYLE: Nightly Date Stamp 2009-02-23 00:01:08 -05:00
Brad King 089896ae0a STYLE: Nightly Date Stamp 2009-02-22 00:01:06 -05:00
Bill Hoffman 71577b1d00 BUG: make sure the gui still runs... 2009-02-21 14:38:35 -05:00
Bill Hoffman 9cd850c4c7 BUG: make sure an x server is not required for the build 2009-02-21 14:23:32 -05:00
Brad King 06a61c8518 STYLE: Nightly Date Stamp 2009-02-21 00:01:02 -05:00
Brad King 31e652059a ENH: Document APPEND option in ctest_* commands
This adds documentation of the APPEND option to the configure, build,
test, memcheck, and coverage commands.  The docs leave specific
semantics for the dashboard server to define.
2009-02-20 15:51:03 -05:00
Brad King ab1b9b45ff ENH: Improve ctest_* command documentation
This corrects the terse documentation and adds detail to the full
documentation of some commands.  It also normalizes the layout of the
documentation string endings to make adding lines easier.
2009-02-20 15:50:57 -05:00
Brad King 17dc49c013 ENH: More documentation for ctest_submit command
This clarifies the terse documentation and lists valid values for PARTS.
2009-02-20 15:50:15 -05:00
Brad King f04fed206f ENH: Clarify docs of old *_OUTPUT_PATH vars
This clarifies the documentation of EXECUTABLE_OUTPUT_PATH and
LIBRARY_OUTPUT_PATH to sound less like deprecation.
2009-02-20 14:03:41 -05:00
David Cole c6051d7ad0 STYLE: Fix style line-too-long violations. 2009-02-20 10:14:40 -05:00
Brad King 20da2cbe03 STYLE: Nightly Date Stamp 2009-02-20 00:01:05 -05:00
Bill Hoffman 756cb547f3 BUG: fix xcode depend issue and add a test for it 2009-02-19 11:51:24 -05:00
David Cole 6e87aa49e6 BUG: Fix issue #8253 - handle xib file extension in Xcode projects so that double clicking on xib files opens them up in Interface Builder. Thanks to baron_roberts for the patch. 2009-02-19 11:20:09 -05:00
David Cole 1bf669207b BUG: A little bit more refactoring from BundleGenerator to DragNDropGenerator. See issue #8556. Thanks for Clinton Stimpson for the patch. 2009-02-19 10:39:08 -05:00
Bill Hoffman 65c1511814 BUG: fix depend bug again for Xcode 2009-02-19 10:31:16 -05:00
Brad King 9d177237a7 STYLE: Nightly Date Stamp 2009-02-19 00:01:05 -05:00
Bill Hoffman f535cf99ed BUG: use the top level project name for the xcode depend helper directory names 2009-02-18 12:09:20 -05:00
Brad King e266c37730 STYLE: Nightly Date Stamp 2009-02-18 00:01:04 -05:00
Brad King ab629e28f3 BUG: Do not use 'char' type as array subscript
This converts uses of 'char' as an array subscript to 'unsigned char' to
heed the warning from gcc.  The subscript must be an unsigned type to
avoid indexing before the beginning of the array.  This change avoids a
potential crash if input text contains a byte value beyond 0x7f.
2009-02-17 11:53:57 -05:00
Brad King 57a1d0093e ENH: Remove generation of unused Update.xml parts
This removes generation of some Update.xml content that is not used by
any Dart1, Dart2, or CDash servers:
  - Revisions elements
  - Directory attribute of File elements
  - File elements within Author elements
The content was generated only because the original Dart1 Tcl client
generated it, but the content was never used.
2009-02-17 11:37:18 -05:00
Brad King 832459c392 STYLE: Nightly Date Stamp 2009-02-17 00:01:06 -05:00
Ken Martin ad25cf8d17 ENH: fix style 2009-02-16 13:56:04 -05:00
Bill Hoffman 50ec299708 ENH: change name for start menu entry 2009-02-16 11:17:54 -05:00
Brad King 1b499f0019 BUG: Fix svn update logic for modified files
The main svn update parsing loop in cmCTestUpdateHandler previously had
a logic error because the variable 'res' was not reset for each
iteration.  For a locally modified file it would report the update info
for the previous non-modified file, or nothing if there was no previous
file.  This fixes the logic by setting variable 'res' in both control
paths for each iteration.  See issue #8168.
2009-02-16 10:01:43 -05:00
Brad King 354f7eb9ab STYLE: Fix spelling in cmCTestUpdateHandler
This renames the variable 'numModiefied' to 'numModified' to fix its
spelling.  It also renames 'modifiedOrConflict' to 'notLocallyModified'
to describe its purpose (rather than the opposite of its purpose).
See issue #8168.
2009-02-16 10:00:58 -05:00
Brad King 727cae7806 STYLE: Nightly Date Stamp 2009-02-16 00:01:03 -05:00
Brad King 8d99166070 STYLE: Nightly Date Stamp 2009-02-15 00:01:04 -05:00
Brad King 65ad22901d STYLE: Nightly Date Stamp 2009-02-14 00:01:03 -05:00
Bill Hoffman f24e8e9d2a ENH: take cmake-gui out of beta 2009-02-13 16:28:10 -05:00
Brad King b44026f74a ENH: Optionally label KWSys targets and tests
This provides an API for parent projects to use to specify values to be
set in the LABELS properties of KWSys libraries, executables, and tests.
2009-02-13 15:49:52 -05:00
Brad King 6d8b207867 ENH: Add KWSys header files to library targets
This adds the configured KWSys header files to the library targets that
implement their APIs so that they show up in IDE project files.
2009-02-13 15:49:47 -05:00
Brad King 70b1ed2548 ENH: Teach CTest to put labels in coverage results
This teaches CTest to include source file labels in coverage dashboard
submissions.  The labels for each source are the union of the LABELS
property from the source file and all the targets in which it is built.
2009-02-13 15:17:06 -05:00
Brad King 5be7846277 STYLE: Remove unused variable 2009-02-13 15:16:58 -05:00
Brad King a0359d3c15 BUG: Fix CTEST_USE_LAUNCHERS in dashboard scripts
Since CTest does not currently load configuration settings computed at
CMake Configure time while running dashboard scripts, the ctest_build
command must honor the CTEST_USE_LAUNCHERS option directly.
2009-02-13 11:49:31 -05:00
Brad King dc69ed8e99 STYLE: Add TODO comment about CTest configuration
Currently CTest does not load configuration settings computed at CMake
Configure time when running a dashboard script.  This adds a comment
describing refactoring that might help resolve the problem.
2009-02-13 11:49:26 -05:00
Brad King a26481f9fb STYLE: Nightly Date Stamp 2009-02-13 00:01:04 -05:00
Brad King 7590ad17ad BUG: Fix logic of LabelFiles.txt generation
This fixes a dumb logic error which causes generation of LabelFiles.txt
to try to open the file once for every target with labels.
2009-02-12 13:25:15 -05:00
Brad King 7435355ec8 ENH: Report file names relative to source dir
This teaches cmCTestLaunch to report source files that lie under the top
source directory relative to the top.
2009-02-12 13:00:22 -05:00
Ken Martin 4f369610f5 ENH: fix documentation and add docs on parenthetical expressions 2009-02-12 12:50:12 -05:00
Bill Hoffman 3d0e241498 BUG: #8496 add support for system info on haiku 2009-02-12 10:08:15 -05:00
Brad King fa9e93f712 BUG: Do not drop build fragments with same time
When we collect Build.xml fragments generated by 'ctest --launch', this
lexicographically orders fragments with the same time stamp on disk
instead of incorrectly dropping duplicates.
2009-02-12 10:01:39 -05:00
Brad King 47e8ee71dd STYLE: Nightly Date Stamp 2009-02-12 00:01:03 -05:00
Brad King 7497fd575d ENH: Teach CTest dashboard builds to use launchers
This defines a 'UseLaunchers' CTest configuration option.  When enabled,
CTest skips log scraping from the Build step output.  Instead it defines
the environment variable CTEST_LAUNCH_LOGS to a log directory during the
build.  After the build it looks for error-*.xml and warning-*.xml files
containing fragments for inclusion in Build.xml and submission.

This is useful in conjuction with 'ctest --launch' and the RULE_LAUNCH_*
properties to get reliable, highly-granular build failure reports.
2009-02-11 15:18:08 -05:00
Brad King b42b6a7f60 COMP: Do not use modern empty init list syntax
cmCTestLaunch first used an empty initializer list to zero-initialize a
buffer, but this is not supported on older compilers.  Instead we avoid
the need for initialization altogether.
2009-02-11 11:57:24 -05:00
Brad King 0847d825b3 ENH: Create internal 'ctest --launch' tool
This creates an undocumented 'ctest --launch' mode.  It launches a
specified command and optionally records a failure in an xml fragment.
We will optionally use this in CTest's Build stage to record per-rule
build failure information when using Makefile generators.
2009-02-11 11:31:25 -05:00
Brad King 52692cccaa STYLE: Nightly Date Stamp 2009-02-11 00:01:04 -05:00
Bill Hoffman 32dbc4acf8 ENH: fix fix for unc paths 2009-02-10 17:25:20 -05:00
Bill Hoffman efad72a9a3 ENH: add label global property to ctest scripts 2009-02-10 16:08:40 -05:00
Bill Hoffman 4e710a9ebe ENH: add the ability to run tests by labels 2009-02-10 14:24:24 -05:00
Bill Hoffman 70363cbf8f BUG: partial fix for 8056 -W now works with -j 2009-02-10 14:19:50 -05:00
Brad King 15c52e9891 ENH: Add rule substitutions useful for launchers
This defines make rule substitutions <LANGUAGE>, <TARGET_NAME>,
<TARGET_TYPE>, and <OUTPUT>.  They will be useful for RULE_LAUNCH_*
property values.
2009-02-10 08:52:07 -05:00
Brad King b604b98c56 ENH: Define RULE_LAUNCH_* properties
This defines global, directory, and target properties
RULE_LAUNCH_COMPILE, RULE_LAUNCH_LINK, and RULE_LAUNCH_CUSTOM.  Their
values specify 'launcher' command lines which are prefixed to compile,
link, and custom build rules by Makefile generators.
2009-02-10 08:51:15 -05:00
Brad King c895d9f2e0 ENH: Give target in which custom commands build
This gives the cmTarget instance for which custom command rules are
being generated to cmLocalUnixMakefileGenerator3::AppendCustomCommands.
It will be useful in the future.
2009-02-10 08:50:33 -05:00
Brad King 13f9bb646d ENH: Define target and source property LABELS
This creates a new LABELS property for targets and source files.  We
write the labels of each target and its source files in target-specific
locations in the build tree for future use.
2009-02-10 08:50:21 -05:00
Brad King d0ed46e3d6 ENH: Define target-specific support directories
This creates method cmTarget::GetSupportDirectory to compute a
target-specific support directory in the build tree.  It uses the
"CMakeFiles/<name>.dir" convention already used by the Makefile
generators.  The method will be useful for any code that needs to
generate per-target information into the build tree for use by CMake
tools that do not run at generate time.
2009-02-10 08:50:09 -05:00
Brad King ffba5b14ae STYLE: Nightly Date Stamp 2009-02-10 00:01:03 -05:00
Alexander Neundorf f27a2ca363 COMP: remove unused variable TargetSourceFileCount, it seems it is unused since version 1.88 of cmGlobalUnixMakefileGenerator3.cxx
patch by Daniel DOT Teske AT Nokia DOT com

Alex
2009-02-09 16:45:18 -05:00
Brad King 6ed916795d BUG: Work around broken GetLongPathName case
On Windows the GetLongPathName API function does not work on some
filesystems even if the file exists.  In this case we should just use
the original long path name and not the GetShortPathName result.
See issue #8480.
2009-02-09 16:45:15 -05:00
Alexander Neundorf bd92bec66c STYLE: fix two typos in the comments, patch from Daniel DOT Teske AT Nokia DOT com, QtCreator developer
Alex
2009-02-09 16:36:56 -05:00
Brad King ae873d4a89 ENH: Add get_filename_component(... REALPATH)
This patch from Philip Lowman creates a REALPATH mode in the
get_filename_component command.  It is like ABSOLUTE, but will also
resolve symlinks (which ABSOLUTE once did but was broken long ago).
See issue #8423.
2009-02-09 09:23:55 -05:00
Brad King ca096a4596 BUG: Fix GetRealPath when realpath fails
This patch from Philip Lowman teaches SystemTools::GetRealPath to deal
with paths that do not exist by dealing with the case that realpath
returns NULL.  See issue #8423.
2009-02-09 09:23:13 -05:00
Bill Hoffman 67ddd0c837 BUG: fix for 0008378, lists with FILEPATH and UNC //server/path fail 2009-02-09 08:25:55 -05:00
Brad King 37428e32aa STYLE: Nightly Date Stamp 2009-02-09 00:01:14 -05:00
Brad King 4c2ff835bb STYLE: Nightly Date Stamp 2009-02-08 00:01:05 -05:00
Brad King 640fd4a528 STYLE: Nightly Date Stamp 2009-02-07 00:01:08 -05:00
Brad King f35c0c2a17 BUG: Fix OS X FW symlink byproduct dependencies
When testing whether to re-run CMake, a byproduct may be a symlink.  If
so, the existence of the link is important rather than the link's
target.  See issue #8465.
2009-02-06 11:49:00 -05:00
Brad King 2282748907 BUG: Fix OS X AppBundle/FW byproducts dependencies
App Bundle and Framework directories, symlinks, and Info.plist files we
create during generation are byproducts, not outputs.  We should re-run
CMake only when they are missing, not when they are old.
See issue #8465.
2009-02-06 11:18:56 -05:00
Brad King 81601796a6 COMP: Avoid parameter/member shadow in cmXMLSafe
A cmXMLSafe constructor named its parameter 'str' which shadowed the
name of the 'str' method.  This renames the parameter to avoid the
conflict warning.
2009-02-06 09:08:02 -05:00
Brad King 67671ac400 BUG: Do not re-generate after a AppBundle build
A previous change accidentally added the MacOS content directory and
Info.plist files created for MACOSX_BUNDLE executables to the list of
CMake input files.  This causes CMake to re-generate the project too
often.  These items should be added to the list of CMake output files.
2009-02-06 09:03:27 -05:00
Brad King 16fe328dfc BUG: Alternative fix to bug #8423
The patch used to fix this bug used SystemTools::GetRealPath which works
only for existing files.  It broke the case of using the command
get_filename_component for a non-existing file.  Also, it changed
long-standing behavior in a possibly incompatible way even for existing
files.  This reverts the original fix and instead updates the
documentation to be consistent with the behavior.
2009-02-06 08:33:52 -05:00
Brad King 0499ca66aa ENH: Clarify cmake_policy(VERSION) documentation
The previous documentation could be interpreted as setting policies
newer than the given version to OLD instead of unset.  This clarifies
it.
2009-02-06 08:15:05 -05:00
Brad King 8dfb99c660 STYLE: Nightly Date Stamp 2009-02-06 00:01:04 -05:00
Brad King 63d718e9f2 COMP: Avoid warning about signed-char comparison
On some compilers 'char' is signed and is therefore always equal to or
less than 0x7f.  In order to avoid the compiler warning we perform the
comparison with an unsigned char type.
2009-02-05 17:09:28 -05:00
Brad King dc13914cd6 ENH: Create cmXMLSafe to help escapes in XML
This class provides easy syntax to efficiently insert blocks of data
into XML documents with proper escapes.  It replaces the old
cmCTest::MakeXMLSafe and cmSystemTools::MakeXMLSafe methods which
allocated extra memory instead of directly streaming the data.
2009-02-05 16:31:37 -05:00
Brad King f16a471576 STYLE: Nightly Date Stamp 2009-02-05 00:01:12 -05:00
Brad King d18ae05da1 ENH: Re-order generation of build summary and xml
This moves the error/warning count summary printed by
cmCTestBuildHandler to after Build.xml is generated.  Later we will
compute the counts during generation of the xml.
2009-02-04 14:34:25 -05:00
Brad King 5f65e04ea2 ENH: Refactor Build.xml generation
This divides cmCTestBuildHandler::GenerateDartBuildOutput into three
methods to generate the header, content, and footer components of
Build.xml files.  It will allow the content generation to be replaced
later.
2009-02-04 14:34:12 -05:00
David Cole c6d499aba5 COMP: Iterator version of std::set not available with vs6 implementation of STL. Use explicit iteration to insert individual elements one at a time. Sigh. 2009-02-04 12:38:03 -05:00
Brad King a27e9ca4a2 BUG: Fix old-style install to prefix top
The old install_files, install_programs, and install_targets commands
used to permit installation to the top of the prefix by specifying
destination '/'.  This was broken in 2.6.0 to 2.6.2 by changes to
enforce valid destinations that did not account for this case.  This
change fixes the case by converting the install destination to '.' which
is the new-style way to specify the top of the installation prefix.
2009-02-04 10:34:10 -05:00
Brad King 2d662e0083 STYLE: Nightly Date Stamp 2009-02-04 00:01:12 -05:00
David Cole 6f88b29121 ENH: Add FILES arg to the ctest_submit command. BUG: Propagate the IsCDash setting properly to the ctest configuration during a submit. Also, do not propagate TriggerSite for projects submitting to CDash. No triggers are necessary with CDash. 2009-02-03 11:52:54 -05:00
Bill Hoffman a1d7f82d68 ENH: fix dynamic loading on haiku 2009-02-03 11:27:08 -05:00
Brad King feafe2abee STYLE: Nightly Date Stamp 2009-02-03 00:01:13 -05:00
Brad King 084e5a5e9e BUG: Fix preprocess and assembly rule expansion
The recent change to avoid expanding rule variables in informational and
'cd' commands broke the logical order in generation of preprocess and
assembly rules.  This corrects the order.
2009-02-02 14:36:53 -05:00
Brad King fd40f27420 COMP: Fix rule hash code during bootstrap
During bootstrap we do not bother with rule hashing.  This updates the
dummy implementation to account for the recent change in rule hash
method signatures.
2009-02-02 14:36:45 -05:00
Brad King 496c203a0b BUG: Do not expand rule variables in info rules
Previously the makefile generator would expand rule variables even on
its progress and echo commands for object compilation rules (but not for
link rules).  This fixes the implementation to only expand rule
variables on user-specified rules.
2009-02-02 13:28:17 -05:00
Brad King ac9b7ec155 ENH: Refactor custom command rule hashing
This simplifies computation of custom command rule hashes to hash
content exactly chosen as the custom commands are generated.
Unfortunately this will change the hashes of existing build trees from
earlier CMake versions, but this is not a big deal.  The change is
necessary so that in the future we can make optional adjustments to
custom command lines at generate time without changing the hashes every
time the option is changed.
2009-02-02 13:28:12 -05:00
Brad King 7d6a5e097f ENH: More robust property lookup
This teaches cmMakefile::GetProperty and cmake::GetProperty methods to
return NULL when the property name is NULL, making them more robust and
consistent with the behavior of cmTarget::GetProperty.
2009-02-02 13:27:30 -05:00
Brad King cc2092d5bb ENH: Put test labels in MemCheck results
This refactors generation of <Test> element headers and footers in
cmCTestTestHandler and re-uses it in cmCTestMemCheckHandler.  The change
removes duplicate code and enables the new <Labels> element for MemCheck
results.
2009-02-02 13:24:26 -05:00
Brad King eea054d82c ENH: Clarify target_link_libraries docs
The target_link_libraries command supports flags as well as libraries.
This makes the support explicit in the documentation.
2009-02-02 09:42:23 -05:00
Brad King 367101b02c STYLE: Nightly Date Stamp 2009-02-02 00:01:24 -05:00
Brad King dba64adac2 STYLE: Nightly Date Stamp 2009-02-01 00:01:18 -05:00
Brad King aa45ec10bc STYLE: Nightly Date Stamp 2009-01-31 00:01:24 -05:00
Brad King 140403ae62 STYLE: Nightly Date Stamp 2009-01-30 00:01:28 -05:00
David Cole d74b75af09 ENH: Emit a little more information in the error message when the output file is not found during a core try compile. 2009-01-29 15:23:18 -05:00
Bill Hoffman f6cb5c39bd BUG: fix for #8418 -E chdir should return fail of dir does not exist 2009-01-29 14:31:45 -05:00
Brad King ab11f82a52 ENH: Docs for relative paths in link_directories
The link_directories command treats relative paths differently from most
CMake commands.  This notes the difference in the documentation.
See issue #8377.
2009-01-29 14:14:02 -05:00
Bill Hoffman 33c296a44e BUG: fix for #8423 2009-01-29 11:39:03 -05:00
Bill Hoffman 56ea0ad186 STYLE: fix warning 2009-01-29 09:26:40 -05:00
Brad King e69050643c STYLE: Nightly Date Stamp 2009-01-29 00:01:32 -05:00
Bill Hoffman a26c70477c STYLE: fix warning 2009-01-28 16:56:33 -05:00
Brad King 7ef31a2461 STYLE: Nightly Date Stamp 2009-01-28 00:01:34 -05:00
David Cole 3df1535c80 STYLE: Emit filenames in try_compile error message to get more information from the Continuous dashboard test that is failing. 2009-01-27 11:35:36 -05:00
Brad King 5527ca5524 BUG: Reset file submission list on test restart
When running in script mode it is possible to run multiple separate
dashboard submissions in one cmCTest instance.  The recent refactoring
of file submission lists into parts failed to clear the submission lists
when starting a new dashboard (ctest_start or ctest_update).  Only the
unused old submission set was cleared.  This fixes the refactored
version to remove the old submission set completely and also clear the
part-wise lists.
2009-01-27 10:58:33 -05:00
Brad King 6ae2f8e7ee BUG: Fix CTest submit-only operation
We need to initialize cmCTestSubmitHandler on construction to make sure
all parts get enabled by default.  The recent fix to re-enable all parts
on initialization broke submit-only operations because the handler did
not initialize on construction.  This also removes duplicate
initialization code.
2009-01-27 10:58:25 -05:00
David Cole 1dee719cdc BUG: Fix issue #6195. Add CMAKE_OSX_DEPLOYMENT_TARGET cache variable to specify the target deployment runtime OS version of the built executables on Mac OSX. Thanks to Mike Jackson for the patch. 2009-01-27 10:30:55 -05:00
Bill Hoffman 97ef91d57b BUG: fix for 7845, idl files compile even with headerfile only on 2009-01-27 10:26:55 -05:00
Brad King 1902f8e63c STYLE: Nightly Date Stamp 2009-01-27 00:02:07 -05:00
Brad King 504fa52f6b STYLE: Nightly Date Stamp 2009-01-26 00:01:41 -05:00
Brad King 64c78918a1 STYLE: Nightly Date Stamp 2009-01-25 00:01:50 -05:00
Brad King 72aad46fea STYLE: Nightly Date Stamp 2009-01-24 00:01:49 -05:00
Bill Hoffman 29ba1aa77a ENH: try to fix vs6 build 2009-01-23 12:20:09 -05:00
Brad King f0eef5ab52 STYLE: Nightly Date Stamp 2009-01-23 00:02:12 -05:00
David Cole 2914b740c2 BUG: Forgot to change parent class in cmCPackTypeMacro when I added cmCPackDragNDropGenerator. Fix it now that it really matters. (The BundleGenerator test started failing after the last commit. This fixes it.) 2009-01-22 14:23:44 -05:00
David Cole 6bf31875ce BUG: Fix issue #8383. Avoid crashing when using the Bundle CPack generator and CPACK_BUNDLE_NAME is not set. Instead, fail gracefully giving an informative error message and non-zero exit code. 2009-01-22 13:56:13 -05:00
Brad King c332e0bf3c ENH: Isolate policy changes in included scripts
Isolation of policy changes inside scripts is important for protecting
the including context.  This teaches include() and find_package() to
imply a cmake_policy(PUSH) and cmake_policy(POP) around the scripts they
load, with a NO_POLICY_SCOPE option to disable the behavior.  This also
creates CMake Policy CMP0011 to provide compatibility.  See issue #8192.
2009-01-22 13:18:40 -05:00
Brad King 3028ca756c ENH: Better policies for functions and macros
This teaches functions and macros to use policies recorded at creation
time when they are invoked.  It restores the policies as a weak policy
stack entry so that any policies set by a function escape to its caller
as before.
2009-01-22 13:16:47 -05:00
Brad King 18eadebc4c ENH: Improve stack discussion in cmake_policy
This re-organizes the discussion of the policy stack in documentation of
the cmake_policy() command.  The new organization clearer and easier to
extend with new information.
2009-01-22 13:16:33 -05:00
Brad King 26bf8b2cda ENH: Create notion of a 'weak' policy stack entry
A 'weak' poilcy stack entry responds normally to queries.  However,
setting a policy in a weak entry will recursively set the policy in the
next entry too.  This also gives the internal interface to create a weak
entry the option to provide an initial PolicyMap for it.
2009-01-22 13:16:27 -05:00
David Cole 3a4f76949a BUG: Fix issue #8402. Add a drag and drop bundle generator to the Mac build of CPack. Add a test of it in the CPackComponents test. Thanks to Clinton Stimpson for the patch. 2009-01-22 12:12:44 -05:00
Brad King dfc181a1dc ENH: Create policy scope barriers
This creates a barrier mechanism to prevent user code from using
cmake_policy(POP) to pop a scope it didn't push with cmake_policy(PUSH).
2009-01-22 10:57:16 -05:00
Brad King ac14b5d2eb ENH: Make policy push/pop methods private
This makes cmMakefile::PushPolicy and cmMakefile::PopPolicy private so
that any outside place that uses them needs to use the PolicyPushPop
helper in an automatic variable.  We grant an exception to
cmCMakePolicyCommand so it can implement cmake_policy(PUSH) and
cmake_policy(POP).
2009-01-22 10:57:09 -05:00
Brad King c980021814 ENH: Refactor find_package version file scoping
This converts the variable and policy scope protection find_package()
uses when loading version files to use automatic variables.
2009-01-22 10:56:58 -05:00
Brad King a01eb6b27b ENH: Create automatic policy push/pop helper
This creates cmMakefile::PolicyPushPop to push and pop policy scope
automatically.  It also enforces balanced push/pop pairs inside the
scope it handles.
2009-01-22 10:56:50 -05:00
Brad King 8997f4760a ENH: Refactor policy stack representation
This defines PolicyMap as a public member of cmPolicies.  Its previous
role as a policy stack entry is now called PolicyStackEntry and
represented as a class to which more information can be added later.
2009-01-22 10:56:39 -05:00
David Cole 0a23c0ee40 BUG: Fix issue #8363. Wrap output with MakeXMLSafe calls so that the generated XML files are valid, parse-able XML. 2009-01-22 07:16:05 -05:00
Brad King 5f3c354b66 STYLE: Nightly Date Stamp 2009-01-22 00:01:56 -05:00
Brad King f1e74ae018 BUG: Fix VS IDE solution files order again
The previous change to order projects in the VS IDE did not account for
duplicate target names (such as ALL_BUILD and ZERO_CHECK) among the
input set.  While we suppress generation of the duplicate project
entries, we need to use a multiset to store ordered duplicates.
2009-01-21 17:36:06 -05:00
Brad King 0d83faf3e3 BUG: Fix ALL_BUILD ordering enforcement
The previous change to make ALL_BUILD come first among targets did not
account for comparing the target name against itself.  This led to an
invalid ordering of the target set.  This change fixes it.
2009-01-21 17:24:54 -05:00
Brad King 5b63e31041 ENH: Make ALL_BUILD always the default project
This teaches the VS IDE generators to write ALL_BUILD into solution
files first so that it is always the default active project.  Previously
it was first only if no target name sorted lexicographically earlier.
See issue #8172.
2009-01-21 17:06:57 -05:00
Brad King 00ca96ae7c BUG: Fix VS IDE project order
Our implementation of the feature to pull in dependent targets in VS
solution files for subprojects caused the order of project files in the
solution to be arbitrary (based on pointer value in the representation).
Target ordering in solution files is important to prevent unnecessary
changing of the files and because the VS IDE selects the first project
listed as the default active target.  This change restores lexicographic
order by target name.
2009-01-21 16:39:43 -05:00
David Cole 36c228814b BUG: Fix issue #7523: Analyze output of 'hdiutil attach' to get the name of the volume that was mounted. Eliminates the need to use the -mountpoint arg of hdiutil which has a silly 90 character limit on the name of the mount point. Also add a custom volume icon to the BundleGeneratorTest to cover this code. 2009-01-21 13:39:22 -05:00
David Cole 88a499c54c ENH: Use the latest CMake-logo-triangle-high-res.png to improve the look of CMakeSetup.icns on the Mac. 2009-01-21 13:20:47 -05:00
David Cole c647ed54d9 BUG: Fix issue #7833: Add file extension handling to CPack generated installers for OSXX11 applications. Also modify the X11 test to build such an installer on Mac builds that test CPack and have X11 available. Thanks to Wes Turner for the patch. 2009-01-21 11:54:30 -05:00
Brad King 919fdb7f27 ENH: Enforce logical blocks in functions/macros
This teaches function() and macro() to enforce matching logical blocks
inside the recorded bodies.  This makes the error message more specific.
2009-01-21 09:49:31 -05:00
Brad King 1dcc5b4558 ENH: Better handling of mismatched blocks
If a logical block terminates with mismatching arguments we previously
failed to remove the function blocker but replayed the commands anyway,
which led to cases in which we failed to report the mismatch (return
shortly after the ending command).  The recent refactoring of function
blocker deletion changed this behavior to produce an error on the ending
line by not blocking the command.  Furthermore, the function blocker
would stay in place and complain at the end of every equal-level block
of the same type.

This teaches CMake to treat the begin/end commands (if/endif, etc.) as
correct and just warns when the arguments mismatch.  The change allows
cases in which CMake 2.6.2 silently ignored a mismatch to run as before
but with a warning.
2009-01-21 09:49:00 -05:00
Brad King bca1026250 ENH: Better error message for unclosed blocks
This centralizes construction of the error message for an unclosed
logical block (if, foreach, etc.).  We record the line at which each
block is opened so it can be reported in the error message.
2009-01-21 09:48:20 -05:00
Brad King b8f5a934ec ENH: Refactor logical block enforcement
This uses a stack of 'barriers' to efficiently divide function blockers
into groups corresponding to each input file.  It simplifies detection
of missing block close commands and factors it out of ReadListFile.
2009-01-21 09:48:00 -05:00
Brad King f4d37eebb2 STYLE: Nightly Date Stamp 2009-01-21 00:02:30 -05:00
Brad King acb0e8fb85 BUG: Fix LOCATION property for Mac AppBundles
Previously cmTarget::GetLocation and cmTarget::GetFullPath would return
for Mac AppBundles the top-level bundle directory but without the .app
extension.  We worked around this at the call sites.  This fixes the
methods and removes the work-arounds.  See issue #8406.
2009-01-20 15:49:37 -05:00
Brad King 2c81e5fb5c ENH: Refactor function blocker deletion
When a function blocker decides to remove itself we previously removed
it at every return point from the C++ scope in which its removal is
needed.  This teaches function blockers to transfer ownership of
themselves from cmMakefile to an automatic variable for deletion on
return.  Since this removes blockers before they replay their commands,
we no longer need to avoid running blockers on their own commands.
2009-01-20 14:36:18 -05:00
Brad King a541cac325 ENH: Improve response to bad if or elseif
Previously bad arguments to an if() or elseif() would cause some
subsequent statements in the corresponding block to execute.  This
teaches CMake to stop processing commands with a fatal error.  It also
provides context to bad elseif() error messages.
2009-01-20 14:35:22 -05:00
David Cole 03c940aeb3 BUG: Fix for issue #7470. Allow spaces in the path names of installed files with the NSIS CPack generator and component-based installs. Add an installed file to the CPackComponents test: it failed before the fix; now it passes. 2009-01-20 14:29:41 -05:00
Bill Hoffman 7f92b77997 BUG: fix crash with cmd.exe shell and cmake in the path 2009-01-20 10:06:39 -05:00
Brad King 57896e296f STYLE: Nightly Date Stamp 2009-01-20 00:02:08 -05:00
Brad King 811d8acb6b STYLE: Nightly Date Stamp 2009-01-19 00:02:07 -05:00
Bill Hoffman 7e1ba9d075 BUG: add output on failure to ctest #8255 2009-01-18 13:03:32 -05:00
Bill Hoffman e4048118de BUG: fix crash with empty properties 2009-01-18 12:05:45 -05:00
Brad King 97b2bc3d6b STYLE: Nightly Date Stamp 2009-01-18 00:02:11 -05:00
Brad King 3427a4bdb0 STYLE: Nightly Date Stamp 2009-01-17 00:02:16 -05:00
Brad King bf4f05e69d STYLE: Nightly Date Stamp 2009-01-16 00:02:22 -05:00
Brad King c1e791ce10 BUG: Fix find_package docs for refind feature
Recently we taught find_package to re-find a package configuration file
if it is given a wrong answer.  This fixes the documentation to reflect
the change.
2009-01-15 16:16:19 -05:00
Brad King d602a3db85 BUG: Enforce matching policy PUSH/POP in all files
The documentation of cmake_policy PUSH and POP states that they must
always match.  Previously we enforced this only for the top scope of
each CMakeLists.txt file.  This enforces the requirement for all files.
2009-01-15 14:37:14 -05:00
Bill Hoffman 40366f6ced ENH: fix part submission to not have memory of the last part submission 2009-01-15 13:24:54 -05:00
Bill Hoffman be52e3b6fc BUG: fix for bug #8174 2009-01-15 10:32:56 -05:00
Brad King 35e391c93b ENH: Provide variable CMAKE_VERSION
This creates the variable CMAKE_VERSION containing the full version of
cmake in "major.minor.patch" format.  It is particularly useful with the
component-wise version comparison provided by the if() command.
2009-01-15 08:57:44 -05:00
Brad King 004cdfe6ff ENH: Document variable CMAKE_PATCH_VERSION
This adds documentation of CMAKE_PATCH_VERSION to the generated
variables documentation.
2009-01-15 08:57:17 -05:00
Brad King 22c12edaea STYLE: Nightly Date Stamp 2009-01-15 00:02:27 -05:00
Brad King 9551cafd69 BUG: Pop a function scope even on error
This uses an automatic variable to push and pop variable scope inside a
function call.  Previously if the function failed its scope would not be
popped.  This approach guarantees a balanced push/pop.
2009-01-14 15:14:06 -05:00
Bill Hoffman 046449e2f7 ENH: fix return value to ctest_build and remove debug print in cmProcess 2009-01-14 13:48:03 -05:00
Bill Hoffman 82c3afcf6f ENH: allow ctest_build to return error and warning counts 2009-01-14 13:01:38 -05:00
Brad King e92d99d05c COMP: Fix const set find for Borland 5.5
The Borland 5.5 compiler's STL set does not define correct signatures
for its find() members, leading to build errors.  This works around the
problem.
2009-01-14 09:51:58 -05:00
Brad King 914740cfab STYLE: Nightly Date Stamp 2009-01-14 00:02:27 -05:00
Brad King 1cfd3912c1 STYLE: Nightly Date Stamp 2009-01-13 00:02:33 -05:00
Brad King 6783ca8364 COMP: Remove unused variable 2009-01-12 11:10:04 -05:00
Brad King d66c25c2f0 ENH: Teach ctest_submit about parts
This adds a PARTS option to the ctest_submit command which tells it to
submit only parts whose names are listed with the option.
2009-01-12 10:38:27 -05:00
Brad King 447f5b303e ENH: Divide CTest file submission list by part
This splits the list of files for CTest to submit into those belonging
to each part.  The set is recombined just before submission.  Later this
will allow piecewise submissions.
2009-01-12 10:37:55 -05:00
Brad King 4b97fab34d ENH: Refactor cmCTest test part representation
This introduces the name "part" to denote a portion of the testing and
submission process performed by ctest.  We generalize the boolean
indicating whether each part is enabled into a structure to which more
information can be added later.  We provide bi-directional mapping
between part id and part names.
2009-01-12 10:37:25 -05:00
Brad King cccac773ce ENH: Teach ctest_* to create appending XML files
This adds an APPEND option to the ctest_* commands which tells them to
put the Append="true" attribute in the Site element of their XML file.
2009-01-12 09:11:29 -05:00
Brad King ae2c4143d2 ENH: Refactor CTest command argument handling
The previous approach to handling of arguments to ctest_* commands
worked only for keyword/value arguments with a single value.  This
refactors the approach to allow some commands to define alternative
argument forms.
2009-01-12 09:10:47 -05:00
Brad King 02fb5880c1 STYLE: Nightly Date Stamp 2009-01-12 00:02:58 -05:00
Alexander Neundorf 0d48ea6984 ENH: patch from Miguel,
As it is today the generator creates linked resources to
LIBRARY_OUTPUT_PATH and EXECUTABLE_OUTPUT_PATH if they are not a
subdirectory of the binary dir, so that the IDE can detect the
Binaries (this was addressed previously as a result of a bug report).

Reduces code redundancy by encapsulating common behaviour for
LIBRARY_OUTPUT_PATH and EXECUTABLE_OUTPUT_PATH in AppendLinkedResource.

Addresses the two new variable names for these locations,
CMAKE_LIBRARY_OUTPUT_DIRECTORY and CMAKE_RUNTIME_OUTPUT_DIRECTORY respectively.

Finally, it is addressing a bug in the current code for relative paths
in these variables. If it is a relative path to the binary dir, the
IsSubdirectory call returns false and so it creates the linked
resource. The created linked resource produces an error in the Eclipse
IDE because the IDE expects it to be a full path. The patch now
addresses this by concatenating the binary dir if it is a relative
path.
2009-01-11 12:18:44 -05:00
Brad King 3db17e22c9 STYLE: Nightly Date Stamp 2009-01-11 00:02:51 -05:00
Alexander Neundorf f9920b47a8 BUG: don't create empty <itemizedlist>s (#7289), dblatex didn't like that
Alex
2009-01-10 09:01:37 -05:00
Alexander Neundorf 0f38be1561 STYLE: document CMAKE_COLOR_MAKEFILE (#7878)
Alex
2009-01-10 08:16:39 -05:00
Brad King 992953bcfe STYLE: Nightly Date Stamp 2009-01-10 00:02:51 -05:00
Alexander Neundorf 8a86595f45 COMP: forgot to commit this file
Alex
2009-01-09 20:35:21 -05:00
Alexander Neundorf 9518a416eb STYLE: remove debug output
Alex
2009-01-09 20:09:54 -05:00
Alexander Neundorf 4ec6a801ee BUG: fix #8073: also show targets created using add_custom_targets()
-additionally also create the target/fast targets for Eclipse
-skip preinstall and install/local, they should be only rarely used

Alex
2009-01-09 19:52:46 -05:00
Alexander Neundorf 6b0a59d593 BUG: remove the call to EnableInstallTarget(), don't know why it was there.
This caused that always an install target was created which installed
nothing, even if there was no install rule in the project.

Alex
2009-01-09 19:08:40 -05:00
Alexander Neundorf c8b2c317e2 BUG: fix #8105: don't hardcode "gcc" and "make" but use CMAKE_C_COMPILER and
CMAKE_MAKE_PROGRAM instead

Alex
2009-01-09 18:58:21 -05:00
Alexander Neundorf fcc97a4f3c BUG: fix #8203: codeblocks + mingw doesn't like the extra quotes around the
path to the makefile if it contains spaces, under Linux it works with spaces

Alex
2009-01-09 18:04:20 -05:00
Brad King 82e7e7fb7d ENH: Add missing newline to CTest-generated xml
The Generator="ctest..." attribute of Site elements in CTest-generated
XML files was missing a newline, causing the next attribute to appear on
the same line.  This adds the newline.
2009-01-09 16:44:19 -05:00
Bill Hoffman 5690cafd62 ENH: fix crash for old style scripts 2009-01-09 12:56:09 -05:00
Bill Hoffman 5d5fd641c3 ENH: fix return type 2009-01-09 12:32:52 -05:00
Bill Hoffman ed387ffe6b ENH: add subproject tag property for ctest 2009-01-09 12:05:23 -05:00
Brad King 86b103f271 ENH: Extend kwsys.testProcess-4 timeout
The test is supposed to terminate quickly when its child crashes, but
that seems to take over 10s on busy systems.  This extends the test's
timeout to 30s to help it pass when running on a busy system.
2009-01-09 11:44:46 -05:00
Brad King 0b33a44e44 STYLE: Nightly Date Stamp 2009-01-09 00:02:51 -05:00
Alexander Neundorf cf0ab29fcb BUG: apply patch from #8205, also fixes #8212: escape characters for XML
when writing the eclipse project files

Alex
2009-01-08 18:09:50 -05:00
Alexander Neundorf ef3e48c3d5 ENH: when trying to find a FooConfig.cmake file, if in the directory pointed
to by the Foo_DIR variable there is no FooConfig.cmake file, then instead of
abort and complain that the user should set or clear the Foo_DIR variables,
just search for the file and discard the old Foo_DIR contents

The tests succeed, ok by Brad.

Alex
2009-01-08 17:57:52 -05:00
Brad King ffd5f117e6 STYLE: Nightly Date Stamp 2009-01-08 00:03:04 -05:00
Clinton Stimpson 497b6df207 ENH: Tweak System Name field for cross compiling, so it doesn't have a file chooser button. 2009-01-07 17:28:02 -05:00
Brad King 5797b1cd66 ENH: Clean per-config export files during install
When installing the main export file the install tree may be dirty.  If
out-dated per-config files exist they may break the newly installed main
file which when it globs them.  This teaches the installation script to
detect when it is about to replace the main export file with a different
one and cleans out any existing per-config files.
2009-01-07 14:16:40 -05:00
Brad King f074d9f571 ENH: Add undocumented file(DIFFERENT) command
This new command will be used by generated installation scripts to
determine whether an already-installed export file has changed.
2009-01-07 14:16:35 -05:00
Brad King 254782ed76 ENH: Refactor computation of import file glob
New method cmExportInstallFileGenerator::GetConfigImportFileGlob
computes the globbing expression that an installed export file uses to
load its per-configuration support files.
2009-01-07 14:16:28 -05:00
Brad King 377bebb910 ENH: Teach CTest to submit test property LABELS
This teaches CTest to send the test property "LABELS" in Test.xml
dashboard submissions as Label elements inside a Labels element.
2009-01-07 10:41:37 -05:00
Brad King 605f4bd34e STYLE: Nightly Date Stamp 2009-01-07 00:02:53 -05:00
Brad King f0e6000827 BUG: Manage LC_MESSAGES with an object
This moves management of the LC_MESSAGES environment variable into an
automatic variable.  Previously if an error occurred the original
environment value was not restored.  This makes the fix to issue #5936
more robust.
2009-01-06 14:58:30 -05:00
Brad King c2d2a412b8 STYLE: Remove trailing whitespace 2009-01-06 14:41:56 -05:00
Brad King 6ea3c461a0 STYLE: Nightly Date Stamp 2009-01-06 00:03:19 -05:00
Brad King ed3bb743f4 ENH: Improve test property speed with a map
Previously we stored a vector of tests to preserve their order.
Property set/get operations would do a linear search for matching tests.
This uses a map to efficiently look up tests while keeping the original
order with a vector for test file generation.
2009-01-05 15:00:57 -05:00
Brad King 2703d51b8f BUG: Capture cout and cerr from internal ctest
When CTest detects that a test is running its own executable it
optimizes the test by using an internal instance of cmCTest instead of
creating a new process.  However, the internal instance was using cout
and cerr directly.  This redirects the output to a string stream to
avoid direct display of the internal test's output.
2009-01-05 14:14:10 -05:00
Brad King 86aeefc7c9 COMP: Fix installation of cmake-gui by CMake 2.4
When CMake 2.4 generates the build tree for CMake itself it asks the
built CMake to install itself using the rules that 2.4 generated.  Since
the install rules use undocumented commands that are not compatible from
2.4 to 2.6 we need a special case to avoid failure.  This sets a special
indicator variable in the install rules that enables a compatibility
hack to support the old install rule format.
2009-01-05 11:05:57 -05:00
Brad King e2fa035c70 ENH: Refactor internal file(INSTALL) arg parsing
The internal file(INSTALL) command argument parsing used several
booleans with at most one set to true at a time to track argument
parsing state.  This refactors it to use one enumeration.
2009-01-05 11:03:41 -05:00
Brad King 024aa044de BUG: Remove old get_target_property docs
The get_target_property command contained some outdated documentation of
the LOCATION and TYPE properties.  This removes it since they are now
documented in the properties list section of the documentation.
2009-01-05 09:53:22 -05:00
Brad King d7ddcc214f ENH: Enable LOCATION property for imported targets
Previously we left the LOCATION property undefined for imported targets
since it should no longer be used for non-imported targets.  However, in
the case we do not know the name of an available imported configuration,
it is more readable to get the LOCATION property than LOCATION_<CONFIG>
for a bogus configuration <CONFIG>.  This enables LOCATION for imported
targets and returns an unspecified available imported configuration.
2009-01-05 09:53:14 -05:00
Brad King 57dd0d95e9 STYLE: Nightly Date Stamp 2009-01-05 00:03:11 -05:00
Alexander Neundorf 8b67694fd1 STYLE: changed "one may" into "it should" to make it stronger
Alex
2009-01-04 04:12:52 -05:00
Brad King 9ae04f6feb STYLE: Nightly Date Stamp 2009-01-04 00:03:10 -05:00
Brad King 8df4340909 ENH: Clarify FATAL_ERROR option to min-req command
The FATAL_ERROR to cmake_minimum_required is useful for projects that
require 2.6 to convince CMake 2.4 to error out.  This clarifies its
usefulness in the documentation.
2009-01-03 15:48:13 -05:00
Brad King cd7585df22 ENH: Ignore unknown cmake_minimum_required args
When cmake_minimum_required is called with an unknown argument it should
not complain about it if the version specified is in the future.  This
allows the proper error to be shown about the current CMake being too
old.
2009-01-03 15:47:58 -05:00
Brad King ee1d1b2c68 STYLE: Nightly Date Stamp 2009-01-03 00:03:09 -05:00
Brad King 3e484ceaae STYLE: Nightly Date Stamp 2009-01-02 00:03:19 -05:00
Brad King 68ca6024b0 STYLE: Nightly Date Stamp 2009-01-01 00:03:31 -05:00
Brad King 4fe3af3469 STYLE: Nightly Date Stamp 2008-12-31 00:03:25 -05:00
David Cole 9457ca3cf5 ENH: Add OPTIONS argument to the ctest_configure command so that you can pass -D arguments to the cmake configure step from a ctest -S script. Also clarify/correct some not so helpful error messages. 2008-12-30 09:13:02 -05:00
Brad King baecf2a31c STYLE: Nightly Date Stamp 2008-12-30 00:03:23 -05:00
Bill Hoffman ede2be4be1 ENH: add start end time for procs 2008-12-29 17:49:17 -05:00
Brad King a075cfe976 STYLE: Nightly Date Stamp 2008-12-29 00:03:40 -05:00
Brad King 8c9666c821 STYLE: Nightly Date Stamp 2008-12-28 00:03:32 -05:00
Brad King 7277723ab1 STYLE: Nightly Date Stamp 2008-12-27 00:03:40 -05:00
David Cole 61cda77869 STYLE: Fix line length violation. 2008-12-26 15:27:01 -05:00
Brad King 85a46e9e51 BUG: Fix same-file check for directory ordering
When computing runtime search path ordering a constraint exists when a
file that may be found by the runtime search exists in a directory other
than that containing the desired file.  We test whether a potential
conflict is really the same due to a symlink.  Recently the change to
cmFindLibraryCommand to load directory content created a case in which
the same-file check would be incorrectly skipped.  This avoids skipping
the check.
2008-12-26 13:28:20 -05:00
Brad King 3e0bb83841 STYLE: Nightly Date Stamp 2008-12-26 00:03:39 -05:00
Brad King 69dfb275e7 STYLE: Nightly Date Stamp 2008-12-25 00:03:54 -05:00
Brad King df2321f774 STYLE: Nightly Date Stamp 2008-12-24 00:03:51 -05:00
Brad King 24d9817677 STYLE: Nightly Date Stamp 2008-12-23 00:03:58 -05:00
Brad King baf324abd8 STYLE: Nightly Date Stamp 2008-12-22 00:03:53 -05:00
Brad King 9407c6ca12 STYLE: Nightly Date Stamp 2008-12-21 00:03:59 -05:00
Brad King 32fcf2dd74 STYLE: Nightly Date Stamp 2008-12-20 00:04:05 -05:00
Bill Hoffman 690f83b81b STYLE: fix shadow warning 2008-12-19 10:19:37 -05:00
Brad King 0d7c6ee67b STYLE: Nightly Date Stamp 2008-12-19 00:04:09 -05:00
Bill Hoffman f5ee5cc04f BUG: partial fix for #8056 2008-12-18 21:59:25 -05:00
Bill Hoffman 5b1139caea BUG: fix for bug #8224 fix crash 2008-12-18 21:57:42 -05:00
Bill Hoffman 269ce52ad5 BUG: fix spelling 2008-12-18 21:52:46 -05:00
Brad King 0c85e2e627 COMP: Add set_directory_properties to bootstrap
We now need this command in the Tests/CMakeLists.txt file.
2008-12-18 14:56:30 -05:00
Brad King 0a83aa6f57 BUG: Fix windows command line escape for empty arg
On Windows the KWSys System package generates escapes for command-line
arguments.  This fix enables quoting of the empty string as an argument.
This also adds a test to pass an empty argument to a custom command.
2008-12-18 13:36:58 -05:00
Brad King 4c725d1e0e ENH: Minor readability improvement in CTest output
When ctest --build-and-test runs the --test-command its output did not
quote the arguments of the command being tested making it difficult to
read.  This adds the quotes.  This also changes the wording of the
failure case to not sound like CTest could not run the executable when
in fact it ran and returned failure.
2008-12-18 12:27:59 -05:00
Brad King 1e2c7a7bb3 BUG: Fix crash when running internal CTest
When CTest encounters a test whose executable is the ctest executable
iteslf, it just invokes code inside itself to avoid starting a new
process.  This fixes a null-pointer dereference in the logging code of
that case.
2008-12-18 12:27:54 -05:00
David Cole 0fafdb7eb8 BUG: Do not copy permissions of files when making the copy in an install rule. If the source file was read-only, this prevents the subsequent set of the destination file's modification time, making the copied file always different in time-stamp than the original and always installing a new file with a new time stamp (but the same content) causing unnecessary downstream incremental rebuilds. As part of this fix, add an optional copyPermissions parameter to the SystemTools routines CopyFileIfDifferent, CopyFileAlways, CopyAFile and CopyADirectory. The copyPermissions parameter defaults to true to preserve the behavior of these routines for existing callers. 2008-12-18 10:43:24 -05:00
Brad King f8c0dc27b5 STYLE: Remove useless install generator typedefs
The cmInstall*Generator classes all derive from cmInstallGenerator which
provides the Indent typedef so they do not need to provide it
2008-12-18 10:06:09 -05:00
Brad King 62a9fc7e94 COMP: Restore fixes to generated lexer
The command argument lexer was recently regenerated which erased some
fixes that had been applied directly to the output.  This restores the
fixes and adds reminder notes in the generation instructions.
2008-12-18 09:58:06 -05:00
Brad King 8d4eda5781 BUG: Move previous parser bugfixes into input file
The command argument parser code is generated by bison.  This change
restores some fixes previously applied to the generated output that were
destroyed by regenerating the parser source.  This time the fixes have
been put in the input file so regenerating the parser will not destroy
them again.
2008-12-18 09:58:01 -05:00
Clinton Stimpson e382ec035e ENH: Remove Application category. See #8151. 2008-12-18 09:37:20 -05:00
Brad King 93920277f4 STYLE: Nightly Date Stamp 2008-12-18 00:04:10 -05:00
Brad King ae7f2b47b3 COMP: Fix unused yyunput warning in lexer
This adds the "nounput" option to the flex input file so that yyunput is
not generated.  The function is static but not used so some compilers
warn.
2008-12-17 09:33:18 -05:00
Brad King 3958b3e112 ENH: Teach find_package about more install dirs
We now search in

  <prefix>/<name>*/
  <prefix>/<name>*/(cmake|CMake)

when looking for package configuration files.  This is useful on Windows
since the Program Files folder is in CMAKE_SYSTEM_PREFIX_PATH.  These
paths are the Windows equivalent to the Apple convention application and
framework paths we already search.  See issue #8264.
2008-12-17 09:24:05 -05:00
Brad King 625ef26163 ENH: Allow most characters in ENV variable refs
The $ENV{VAR} syntax permits access to environment variables.  This
teaches CMake to recognize most characters in the VAR name since some
environments may have variables with non-C-identifier characters.
2008-12-17 08:24:35 -05:00
Brad King 093cfc22f1 STYLE: Nightly Date Stamp 2008-12-17 00:04:11 -05:00
Clinton Stimpson b0c8b15fb9 ENH: Improve performance with file completion. Fix for #8292. 2008-12-16 15:15:33 -05:00
Clinton Stimpson 64b377d707 ENH:
For bug #7191.
Improvements to the dialog that sets up the first configure.
Fixing the large size of it by breaking it up into a wizard.
Also incorporated suggestions from bug report.
2008-12-16 15:00:17 -05:00
Brad King 2d842b6798 BUG: find_package must push/pop policies
When the find_package command loads a <name>-version.cmake file to test
the package version it must prevent the version file from affecting
policy settings.  Therefore the policy settings must be pushed and
popped.
2008-12-16 09:23:41 -05:00
Brad King b14abe31a9 BUG: Fix component-name test on installation
Generated cmake_install.cmake script code used MATCHES to compare
component names.  This does not support characters considered special by
regular expression syntax in component names.  This change uses STREQUAL
instead.  See issue #8256.
2008-12-16 09:20:51 -05:00
Brad King 205fce61b6 ENH: Warn if build dir is too long for filesystem
When an object file directory is too deep to place an object file
without exceeding CMAKE_OBJECT_PATH_MAX, this issues a warning.
Previously we silently ignored the problem.  See issue #7860.
2008-12-16 09:15:18 -05:00
Brad King 3cf9265fa7 ENH: Refactor passing of max length object dir
When computing the maximum length full path to the build directory under
which object files will be placed, pass the actual path instead of just
its length.  This will be useful for error message generation.
2008-12-16 09:14:40 -05:00
Brad King 8ecd9ed768 STYLE: Nightly Date Stamp 2008-12-16 00:04:17 -05:00
Francois Bertel ef36d72c89 COMP:Fixed warnings. 2008-12-15 17:19:26 -05:00
Brad King e4325e7d9c BUG: Fix <CONFIG>_POSTFIX property/variable docs
The CMAKE_<CONFIG>_POSTFIX variable and <CONFIG>_POSTFIX property were
not documented.  This updates the CMAKE_DEBUG_POSTFIX and DEBUG_POSTFIX
documentation to refer to the more general variable/property.  It also
clarifies that the variable is used as the property default only for
non-executable targets.  See issue #7868.
2008-12-15 13:30:09 -05:00
Brad King 7b6ac0db83 STYLE: Nightly Date Stamp 2008-12-14 00:04:14 -05:00
Brad King 25c0c1c02e STYLE: Nightly Date Stamp 2008-12-12 00:00:50 -05:00
Brad King c795aa8ef2 STYLE: Nightly Date Stamp 2008-12-11 00:00:58 -05:00
David Cole 227c86d8cc STYLE: Fix line length style violations. 2008-12-10 10:50:07 -05:00
Brad King 73f5e13cf3 STYLE: Nightly Date Stamp 2008-12-10 00:01:18 -05:00
David Cole 16f35e189e COMP: Fix the ExternalProject test for Visual Studio 6. Visual Studio 6 *.dsp files cannot have hyphens in them. Add utility function GetVS6TargetName to replace hyphens with underscores when generating *.dsp file names. Use the function everywhere necessary in the VS6 generators. And, a workaround: VS6 uses ".\Debug" (for example) as an "$(IntDir)" value - strip any leading ".\" when processing a --config argument in the cmake --build handling code. 2008-12-09 16:07:10 -05:00
Brad King e51969ac49 ENH: Add useful search locations to find_package
This teaches find_package to search

  <prefix>/(share|lib)/cmake/<name>*/

for package configuration files.  Packages that do not already have
files in a <prefix>/lib/<name>* directory can use this location to avoid
cluttering the lib directory.
2008-12-09 14:07:19 -05:00
Brad King 4f5a8b9c0c STYLE: Remove old TODO comment in find_package
Versioning has been introduced to find_package, so the comment about it
is out of date.
2008-12-09 14:07:10 -05:00
Brad King ae28ec9f24 ENH: Preserve <pkg>_FIND_XXX vars in find_package
When the find_package command loads a module it sets several
<pkg>_FIND_XXX variables to communicate information about the command
invocation to the module.  This restores the original state of the
variables when the command returns.  This behavior is useful when a
find-module recursively calls find_package with NO_MODULE so that the
inner call does not change the values in the find-module.
2008-12-09 10:08:54 -05:00
Brad King 360d9465a2 STYLE: Nightly Date Stamp 2008-12-09 00:01:18 -05:00
Brad King 34f073549e STYLE: Nightly Date Stamp 2008-12-08 00:01:21 -05:00
Bill Hoffman 97392a754c STYLE: fix link length issues 2008-12-07 19:36:03 -05:00
Brad King 715788108c STYLE: Nightly Date Stamp 2008-12-07 00:01:25 -05:00
Brad King c65d3c63a7 STYLE: Nightly Date Stamp 2008-12-06 00:01:31 -05:00
Brad King 4da124e968 STYLE: Nightly Date Stamp 2008-12-05 00:01:40 -05:00
Bill Hoffman 7c2445212e BUG: fix cpu info string 2008-12-04 10:51:11 -05:00
Bill Hoffman 81515ba8a5 ENH: allow startup command to be optional 2008-12-04 09:09:55 -05:00
Bill Hoffman 68cf9e0a0d BUG: fix for bug #8216 2008-12-04 08:57:27 -05:00
Brad King e3ff95af21 STYLE: Nightly Date Stamp 2008-12-04 00:01:52 -05:00
Bill Hoffman a50cdcb5a6 BUG: fix for rc and vs6 2008-12-03 15:35:35 -05:00
Brad King e59d3bdaab STYLE: Nightly Date Stamp 2008-12-03 00:01:55 -05:00
Brad King 7ca9ea98da STYLE: Nightly Date Stamp 2008-12-02 00:02:00 -05:00
David Cole c37b45ee9f BUG: Do not require CMAKE_AR in the MSYS Makefiles generator when enabling language "NONE". 2008-12-01 14:41:47 -05:00
Brad King 1845925e8f STYLE: Nightly Date Stamp 2008-12-01 00:02:10 -05:00
Brad King 7a0aba382d STYLE: Nightly Date Stamp 2008-11-30 00:02:18 -05:00
Brad King d7a3a6a921 STYLE: Nightly Date Stamp 2008-11-29 00:05:08 -05:00
David Cole 3e20b9c1a0 STYLE: Fix line length style violation. 2008-11-28 10:50:20 -05:00
Brad King 1b4601f907 STYLE: Nightly Date Stamp 2008-11-28 00:02:35 -05:00
Brad King 930893548c STYLE: Nightly Date Stamp 2008-11-27 00:02:36 -05:00
David Cole 306d517e82 COMP: Using the proper type for local variables can eliminate compiler warnings. 2008-11-26 15:41:16 -05:00
David Cole ceaef94ccc ENH: Implement feature request from issue 7885. Allow setting environment variables on a per-test basis for ctest using set_test_properties ENVIRONMENT. 2008-11-26 14:38:43 -05:00
Brad King 003dbff85d STYLE: Nightly Date Stamp 2008-11-26 00:02:42 -05:00
Brad King 0e03bd1ab4 BUG: Do not map install_name of imported targets
When we install a target on Mac, we generate a call to install_name_tool to fix
install_name entries in the target for shared libraries it links.  This change
makes the step ignore entries for imported targets since their install_name
will not change and cmTarget cannot produce a mapping for them.  This fixes the
error

  GetLibraryNamesInternal called on imported target: kdelibs

seen by kde folks.
2008-11-25 16:50:48 -05:00
Brad King 26c7a187b4 STYLE: Nightly Date Stamp 2008-11-25 00:02:56 -05:00
Brad King 4737f76451 STYLE: Nightly Date Stamp 2008-11-24 00:03:02 -05:00
Bill Hoffman 5bdfaba355 ENH: make it submit to cdash 2008-11-23 22:07:32 -05:00
Bill Hoffman bdfc3fadd3 ENH: add more debug stuff to CTestCTest2 so I can figure out redwall 2008-11-23 10:49:46 -05:00
Brad King b29265a6b9 STYLE: Nightly Date Stamp 2008-11-23 00:03:09 -05:00
Brad King 669e765105 STYLE: Nightly Date Stamp 2008-11-22 00:03:10 -05:00
Bill Hoffman 0c24570ee4 BUG: fix issue with -D and cache force 2008-11-21 16:32:39 -05:00
Bill Hoffman 629a0dc705 BUG: fix for 8123 documentation issue 2008-11-21 14:57:07 -05:00
Brad King c4fc150d22 STYLE: Nightly Date Stamp 2008-11-21 00:03:16 -05:00
Brad King 3e232c871a STYLE: Nightly Date Stamp 2008-11-20 00:03:25 -05:00
Brad King b77f1c324c STYLE: Nightly Date Stamp 2008-11-19 00:03:36 -05:00
Brad King 6ec8c837c5 STYLE: Nightly Date Stamp 2008-11-18 00:03:43 -05:00
Brad King da98bbcef2 STYLE: Nightly Date Stamp 2008-11-17 00:03:45 -05:00
Brad King 760cd6068d STYLE: Nightly Date Stamp 2008-11-16 00:03:59 -05:00
Brad King a32ba2f1bd STYLE: Nightly Date Stamp 2008-11-15 00:01:35 -05:00
Brad King 2bba929718 STYLE: Nightly Date Stamp 2008-11-14 00:01:44 -05:00
Brad King e6268034e9 STYLE: Nightly Date Stamp 2008-11-13 00:01:53 -05:00
Brad King 8fc863f772 STYLE: Nightly Date Stamp 2008-11-12 00:01:53 -05:00
Brad King 92bf86dcd9 STYLE: Nightly Date Stamp 2008-11-11 00:02:01 -05:00
Bill Hoffman 7d1bbb872c BUG: fix package_source target 2008-11-10 13:42:52 -05:00
Brad King b7643589a1 STYLE: Nightly Date Stamp 2008-11-10 00:02:05 -05:00
Brad King 81bb632ae6 STYLE: Nightly Date Stamp 2008-11-09 00:02:16 -05:00
Brad King 421861e86d STYLE: Nightly Date Stamp 2008-11-08 00:02:20 -05:00
Bill Hoffman 5973e83c9c BUG: fix for bug 8060 Haiku build 2008-11-07 16:40:02 -05:00
Alexander Neundorf 45aec04508 ENH: load CMakeDetermineSystem and CMakeSystemSpecificInformation when
executing a ctest script so the search paths are fully set up and variables
like CMAKE_SYSTEM are available. This is useful e.g. for new-style ctest
scripting.
(these files are also loaded on startup by cpack, so now they behave
similar).
Hmmm, maybe they should be also loaded by cmake -P ?

Alex
2008-11-07 15:56:54 -05:00
Brad King 81bc893520 STYLE: Nightly Date Stamp 2008-11-07 00:02:26 -05:00
Brad King d3e63ea4f7 STYLE: Nightly Date Stamp 2008-11-06 00:02:31 -05:00
Brad King e3cb059859 STYLE: Nightly Date Stamp 2008-11-05 00:02:38 -05:00
Brad King f3efb2bcf7 STYLE: Nightly Date Stamp 2008-11-04 00:02:45 -05:00
Brad King 093e5157a9 STYLE: Nightly Date Stamp 2008-11-03 00:02:49 -05:00
Brad King 12f2f93410 STYLE: Nightly Date Stamp 2008-11-02 00:02:55 -04:00
Brad King 16b4dcbe50 STYLE: Nightly Date Stamp 2008-11-01 00:03:01 -04:00
Brad King 0a556b2910 STYLE: Nightly Date Stamp 2008-10-31 00:03:11 -04:00
Brad King 88cf2cb30f STYLE: Nightly Date Stamp 2008-10-30 00:03:12 -04:00
Brad King 4eec7b2d03 STYLE: Nightly Date Stamp 2008-10-29 00:03:19 -04:00
Brad King 58d8310c14 STYLE: Nightly Date Stamp 2008-10-28 00:03:26 -04:00
Bill Hoffman 749dbcdc6e ENH: make the scc optional 2008-10-27 15:31:03 -04:00
Bill Hoffman 1ed93e0a0e BUG: fix for 7839 and 4524 2008-10-27 13:51:30 -04:00
Brad King 33a6dca1d1 STYLE: Nightly Date Stamp 2008-10-24 23:53:47 -04:00
Brad King 9ccd0bd4ff STYLE: Nightly Date Stamp 2008-10-23 23:53:49 -04:00
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