Commit Graph

9037 Commits

Author SHA1 Message Date
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