1791 Commits

Author SHA1 Message Date
David Cole
c81ad34e85 Add a contract test for building the CSE.
To activate the CSE contract test on a given Linux
machine's CMake dashboard, put

CMAKE_CONTRACT_PROJECTS:STRING=cse-snapshot

in the CMake dashboard's initial cache.

The chosen snapshot does not generate subproject
dependency info right now. That code was in a
previous revision in the CSE's svn repo that
apparently has not been merged into the present cse
git repository master branch. After that is fixed up
in the cse repo, we can update the tag here so that
the snapshot built here can run a sub-project based
dashboard script. For now, it runs as one big build
step, building 'all'.
2010-10-08 15:09:24 -04:00
Ben Boeckel
2507f937bd Change the failure case string to 'Unexpected'
VS6 detects the 'Error' string and fails itself even though we don't
actually care about it unless CMAKE_STRICT is on.
2010-10-08 09:46:38 -04:00
Ben Boeckel
fe390a2607 Add 'ArgumentExpansion' test 2010-10-07 13:01:32 -04:00
Brad King
dacc47853d Merge topic 'vs-project-groups'
fd3249e New USE_FOLDERS property OFF by default. (#3796)
2010-10-05 15:31:49 -04:00
Brad King
b653e8b6e7 Merge topic 'dev/test-for-bug-11230'
96a335f XCode generation should fail if lang isn't known
d3a8943 Fix which string is checked for in the test
220c5dc Add test that CMake errors with empty libs
2010-10-05 15:30:10 -04:00
David Cole
fd3249e11a New USE_FOLDERS property OFF by default. (#3796)
Visual Studio Express editions do not support solution folders,
so default behavior should be as if USE_FOLDERS global property
is OFF.

Also, allow folder names to be the same as target names: internally,
use a prefix to distinguish folder GUIDs from target GUIDs. Add
a target and folder with the same name in the ExternalProject
test to exercise this code.

For CMake itself, provide a new option CMAKE_USE_FOLDERS that
defaults to ON so that Visual Studio users get a nicely organized
CMake project. Express edition users will have to turn off the
CMAKE_USE_FOLDERS option in order to build CMake in the VS Express
IDE.
2010-10-02 14:31:02 -04:00
Ben Boeckel
d3a89432fd Fix which string is checked for in the test
GNU Makefiles have an extra line that Visual Studio doesn't output.
2010-09-30 11:39:26 -04:00
Ben Boeckel
220c5dc45a Add test that CMake errors with empty libs
When the library language cannot be determined, make sure CMake errors,
not segfaults (bug #11230)
2010-09-30 11:01:35 -04:00
Bill Hoffman
5253206798 Add a new line to the end of the generated main.cxx for the hpux compiler.
Some HPUX compilers give this error: Error 690: "/home/cport/Dashboards/My Tests/CMake-build/Tests/CheckCompilerRelatedVariables/main.cxx", line 1 # Nonempty source files must end with a newline that is not preceded by a backslash.
2010-09-29 14:46:45 -04:00
Alex Neundorf
41e4f1a210 Add automatic variable CMAKE_CURRENT_LIST_DIR(dir of CMAKE_CURRENT_LIST_FILE)
Comes with a simple test and docs.

Alex
2010-09-28 22:10:47 +02:00
Bill Hoffman
942ace8393 Fix contract test so it is not hard coded to the vtk542 test. 2010-09-21 15:08:13 -04:00
Brad King
781c34197b Merge topic 'fix-9963'
a798bb7 Avoid CustomCommand test failure on VS71 (#9963)
9b4ab06 Avoid CustomCommand test failure on VS71 (#9963)
9d2e648 No extra spaces in CustomCommand test (#9963)
269a4b8 Enable calling commands with : in argv[1] (#9963)
2010-09-21 10:44:08 -04:00
Bill Hoffman
fd343a1a36 Add a "Contract" test for VTK. The test downloads and builds VTK.
The idea is that we can make sure that CMake is staying backwards
compatible by testing projects against CMake as the changes are made
in CMake.  Because these tests will take a long time to run, they
will not be enabled by default.  Instead, they will be enabled by
putting a cache variable into CMake.
2010-09-21 10:23:09 -04:00
David Cole
a798bb7074 Avoid CustomCommand test failure on VS71 (#9963)
Test still failing on dash1.kitware. Give up on testing
the new arg on MSVC71. Test it with newer nmakes instead.
All other dashboards are fine with -DPATH=c:/posix/path
as the first arg, so keep it except when MSVC71 is true.
2010-09-20 13:20:15 -04:00
Ben Boeckel
dee19760a7 Fix typo in VariableUnusedViaUnset test 2010-09-17 10:04:18 -04:00
Ben Boeckel
a117e02cc8 Revert "Add test for unused warnings at the end of scope"
This reverts commit 91c4c9921c40361df860c1384a46ed77c6118c23.

The test doesn't work yet and should not have been put on this branch
yet.
2010-09-17 09:47:17 -04:00
Ben Boeckel
91c4c9921c Add test for unused warnings at the end of scope 2010-09-16 13:54:16 -04:00
Ben Boeckel
f7438ca7ac Add test for unused detection via setting it 2010-09-16 13:52:54 -04:00
Ben Boeckel
aefc91dd37 Add test for usage checks via unset 2010-09-16 13:51:51 -04:00
Brad King
4c06e23307 Merge topic 'resolve/fix_target_name_with_dot_vs10/allow_upper_case_cpp_and_others'
eccc7d5 Merge branch 'allow_upper_case_cpp_and_others' into resolve/fix_target_name_with_dot_vs10/allow_upper_case_cpp_and_others
ed37fc3 VS2010: Set IntDir for utility and global targets.
e79e412 VS2010: Honor PROJECT_LABEL target property (#10611)
530ade6 Fix targets with . in the name for VS 10 IDE.
2010-09-14 15:07:23 -04:00
Brad King
eccc7d5d26 Merge branch 'allow_upper_case_cpp_and_others' into resolve/fix_target_name_with_dot_vs10/allow_upper_case_cpp_and_others
Conflicts:
	Tests/CxxOnly/CMakeLists.txt
2010-09-14 15:05:09 -04:00
Brad King
6580f5de99 Merge topic 'improve-missing-source-file-error'
a6b5ead Report missing source files with context of target
2010-09-14 13:31:10 -04:00
David Cole
9b4ab06c2c Avoid CustomCommand test failure on VS71 (#9963)
The new first arg in the test is the critical one
to prove that the new NMake specific code works.
The additional colons in the middle of the arg
stream work fine everywhere else, but not on
dash1.kitware with Visual Studio 7.1. Just avoid
the failure for now by removing the unnecessary
new args from the test.
2010-09-14 10:36:43 -04:00
Brad King
a6b5ead62f Report missing source files with context of target
Previously we reported only the CMakeLists.txt file in the directory
that adds the target.
2010-09-13 16:17:20 -04:00
David Cole
9d2e6489bf No extra spaces in CustomCommand test (#9963)
The nightly dashboard showed that the following
platforms had difficulties dealing with "bin dir"
and/or "check command line" as directory and
file names:

  AIX
  Borland 5.5, 5.6 and 5.8
  IRIX
  NMake 6.0
  OpenBSD
  VS 7.1
  Watcom

Re-visit later, after the release, to use spaces
in the bin dir and in the target name where possible.
2010-09-12 05:01:35 -04:00
David Cole
269a4b876a Enable calling commands with : in argv[1] (#9963)
The solution seems hackish, but it works: for
NMake only, prepend a no-op command before each
real command that begins with ".

This is really a work-around for an NMake problem.
When a command begins with ", nmake truncates the
first argument to the command after the first :
in that arg. It has a parsing problem.

Workaround..., hackish..., but it should solve
the issue for #9963 and its related friends.

Also, modify the CustomCommand test to replicate
the problem reported in issue #9963. Before the
NMake specific code change, the test failed.
Now, it passes. Ahhhhhh.
2010-09-10 17:55:45 -04:00
David Cole
e79e412e70 VS2010: Honor PROJECT_LABEL target property (#10611) 2010-09-09 16:44:30 -04:00
David Cole
20a6f6cf7a Use QUIET to avoid Java status messages.
CMake devs mostly do not care when Java is found successfully.
2010-09-09 15:41:53 -04:00
Brad King
f444b9555f Merge topic 'allow_upper_case_cpp_and_others'
7944e4e Allow testing of .CPP on WIN32 as it is a case insensitive OS and should work.
ba0a890 Only test for .CPP on Microsoft compilers which will handle .CPP as c++.
d26cd46 Only use .CPP .CXX and .C++ do not work by default with g+++.
ced61f5 Let CMake recognize .CPP .CXX and .C++ as c++ files.
2010-09-08 11:36:46 -04:00
Brad King
28edb70a9e Merge topic 'vs-project-groups'
e6ac0aa Add FOLDER target property, for IDEs (#3796)
2010-09-08 11:08:05 -04:00
Brad King
81fa6bbcc7 Merge topic 'ctest-show-labels'
32242af Added CTest command --print-labels
2010-09-08 11:07:51 -04:00
Bill Hoffman
7944e4e0ac Allow testing of .CPP on WIN32 as it is a case insensitive OS and should work. 2010-09-07 09:14:57 -04:00
Bill Hoffman
ba0a890539 Only test for .CPP on Microsoft compilers which will handle .CPP as c++. 2010-09-06 12:43:57 -04:00
Bill Hoffman
530ade6677 Fix targets with . in the name for VS 10 IDE. 2010-09-06 12:06:43 -04:00
David Cole
e6ac0aacf6 Add FOLDER target property, for IDEs (#3796)
This work was started from a patch by Thomas Schiffer.
Thanks, Thomas!

See the newly added documentation of the FOLDER target
property for details.

Also added global properties, USE_FOLDERS and
PREDEFINED_TARGETS_FOLDER. See new docs here, too.

By default, the FOLDER target property is used to organize
targets into folders in IDEs that have support for such
organization.

This commit adds "solution folder" support to the Visual
Studio generators. Currently works with versions 7 through
10.

Also, use the new FOLDER property in the ExternalProject
test and in the CMake project itself.
2010-09-03 13:53:22 -04:00
Bill Hoffman
d26cd46989 Only use .CPP .CXX and .C++ do not work by default with g+++. 2010-09-02 18:02:57 -04:00
Ben Boeckel
439877f620 Be consistent with single and double quotes 2010-09-02 12:14:06 -04:00
Bill Hoffman
ced61f5722 Let CMake recognize .CPP .CXX and .C++ as c++ files. 2010-09-02 11:56:40 -04:00
Ben Boeckel
f047a17c59 Add test for uninitialized variables 2010-09-02 11:34:13 -04:00
Ben Boeckel
75bda3864e Add tests for unused command line variables 2010-09-02 11:33:57 -04:00
Brad King
1976c45a3c Merge topic 'intra-component-dependencies'
adb58d5 Honor strong intra-component target dependencies
681cf01 Distinguish "strong" and "weak" target dependency edges
7be2617 Split notion of node lists and edge lists
2010-08-31 14:36:50 -04:00
Zach Mullen
32242affea Added CTest command --print-labels
This command allows a user to quickly see the list of all available
test labels.  The labels are also printed in verbose show only mode,
alongside their corresponding tests.
2010-08-31 10:41:23 -04:00
Brad King
adb58d5e36 Honor strong intra-component target dependencies
Strong dependencies (created by add_dependencies) must be honored when
linearizing a strongly-connected component of the target dependency
graph.  The initial graph edges have strong/weak labels and can contain
cycles that do not consist exclusively of strong edges.  The final graph
never contains cycles so all edges can be strong.
2010-08-25 17:14:13 -04:00
David Cole
ef9dd49d3d Add STEP_TARGETS to ExternalProject module.
This commit introduces the ability to add custom targets
that correspond to individual ExternalProject steps.
The main motivation behind this new feature is to drive
sub-project based dashboard steps as external projects
with separate targets for update, configure, build and
test output. This makes it easy to construct a ctest -S
script to drive such a dashboard.

With no STEP_TARGETS defined, there are no additional
custom targets introduced, to minimize the chatter in
the target name space. Clients may define STEP_TARGETS
on a per-ExternalProject_Add basis, or at the directory
level by setting the EP_STEP_TARGETS directory property.
2010-08-23 17:50:58 -04:00
Brad King
0178a6b841 Merge topic 'module-notices'
c088e7a ModuleNoticesTest: Do not require "Kitware" copyright
2010-08-19 13:22:49 -04:00
Brad King
c088e7a341 ModuleNoticesTest: Do not require "Kitware" copyright
When a module is first contributed Kitware has made no modifications on
which to place a copyright.  Require the contributor to have a copyright
notice, but not specifically by Kitware.
2010-08-17 09:23:35 -04:00
Todd Gamblin
1221581aa8 Teach find_* commands to ignore some paths
Add platform configuration variable CMAKE_SYSTEM_IGNORE_PATH and user
configuration variable CMAKE_IGNORE_PATH.  These specify a set of
directories that will be ignored by all the find commands.  Update
FindPackageTest so that several cases will fail without a functioning
CMAKE_IGNORE_PATH.
2010-08-13 11:53:28 -04:00
Brad King
9cf9d2794c Merge topic 'remove_submit_large_output'
929b1c6 Remove the ctest submit larget output test.
2010-08-10 14:38:02 -04:00
Bill Hoffman
929b1c6be3 Remove the ctest submit larget output test.
This test is better covered in CDash now.  It is always failing due
to changes in CDash.  So, it is better removed from CMake.
2010-08-09 13:21:19 -04:00
Todd Gamblin
2cde67a781 Modules: Fix spelling 'To distributed' -> 'To distribute' 2010-08-09 08:48:31 -04:00