Commit Graph

10459 Commits

Author SHA1 Message Date
KWSys Robot 6ea1581dfe KWSys Nightly Date Stamp 2010-01-08 23:51:49 -05:00
Bill Hoffman 4cf560fb8b change the name to be closer to NMake Makefiles which is basically what jom parses 2010-01-08 13:31:37 -05:00
KWSys Robot f89b0abad5 KWSys Nightly Date Stamp 2010-01-07 23:51:56 -05:00
KWSys Robot aa658f6a63 KWSys Nightly Date Stamp 2010-01-06 23:52:02 -05:00
Marcus Hanwell 58d82cd5bd COMP: Added missing case for the export macro, thanks to Kenneth Moreland. 2010-01-06 15:31:25 -05:00
Marcus Hanwell b0a0714343 ENH: Added support for building kwsys with GCC visibility support.
When kwsys is built using GCC visibility support can be used. This is similar
to the way that Windows exports symbols in DLLs, and requires projects that
build kwsys to change the default visibility using some compiler flags. See
http://gcc.gnu.org/wiki/Visibility for more details about GCC visibility.
2010-01-06 12:00:36 -05:00
KWSys Robot 4671b39363 KWSys Nightly Date Stamp 2010-01-05 23:52:08 -05:00
Bill Hoffman 42d175f26c Fix a line length issue. 2010-01-05 08:53:37 -05:00
KWSys Robot e0d09ef0a8 KWSys Nightly Date Stamp 2010-01-04 23:52:15 -05:00
Brad King cbfbb86b58 Fix escapes in Fortran depend.make entries
Makefile dependencies must be escaped using cmLocalGenerator::Convert
with the cmLocalGenerator::MAKEFILE option.  This fixes Fortran module
dependencies with spaces in the path.  We test the fix by adding a space
to one of the module paths in the Fortran test.
2010-01-04 10:18:44 -05:00
KWSys Robot 40641e3cba KWSys Nightly Date Stamp 2010-01-03 23:52:20 -05:00
KWSys Robot 827b636393 KWSys Nightly Date Stamp 2010-01-02 23:52:40 -05:00
KWSys Robot d92a43b09a KWSys Nightly Date Stamp 2010-01-01 23:52:33 -05:00
KWSys Robot 79c0485678 KWSys Nightly Date Stamp 2009-12-31 23:52:47 -05:00
KWSys Robot 729ee803d6 KWSys Nightly Date Stamp 2009-12-30 23:52:48 -05:00
Zach Mullen 0a0788a72d Enhanced CTest HTTP Request API to support PUT file uploads. 2009-12-30 11:10:42 -05:00
Alexander Neundorf 646e71f290 fix line lengths
Alex
2009-12-30 07:31:10 -05:00
KWSys Robot 978de74d6e KWSys Nightly Date Stamp 2009-12-29 23:53:04 -05:00
David Cole b0d5fa0bc7 Fix for issue #5041 - improve error messages that may occur during ctest_build and ctest_configure.
The improved text gives very clear information when either the CMakeLists.txt or CTestConfig.cmake file is missing. Hopefully, it makes it easier for those poor future souls who encounter these messages to solve their problems quickly.
2009-12-29 18:03:45 -05:00
David Cole 47bd8637ab Fix crash on Continuous dashboard - related to last commit fixing issue #10060. Do not call ShouldCreateNewTag if command is NULL... 2009-12-29 15:48:14 -05:00
David Cole aad15c3abf Fix issue #10060 - add APPEND arg to ctest_start command.
If APPEND is given to ctest_start, it will read the tag from the current existing Testing/TAG file rather than creating a new one based on the current time stamp. This allows a developer to run several dashboard scripts in a row, all of which will share the same tag/stamp/buildid when they finally get submitted to CDash. Now you can split the running of build phases and test phases for the same dashboard row into multiple scripts.
2009-12-29 14:38:31 -05:00
KWSys Robot 5ce7e35960 KWSys Nightly Date Stamp 2009-12-28 23:52:55 -05:00
David Cole 474cf519a0 Fix mem leak reported by valgrind. 2009-12-28 13:44:38 -05:00
David Cole 10a4abddfd Add missing archive_read_finish calls to fix some of the presently reported valgrind memory leaks. 2009-12-28 13:15:19 -05:00
KWSys Robot 9e96d80b24 KWSys Nightly Date Stamp 2009-12-27 23:53:18 -05:00
KWSys Robot 2dc2b13e86 KWSys Nightly Date Stamp 2009-12-26 23:53:12 -05:00
KWSys Robot 7d67773d9b KWSys Nightly Date Stamp 2009-12-25 23:53:22 -05:00
KWSys Robot 685b305c7e KWSys Nightly Date Stamp 2009-12-24 23:53:19 -05:00
David Cole 8952f49803 Fix issue #9042 - correctly this time. Fix failing tests on VS 7, 8 and 9 dashboards. Use ConvertToXMLOutputPathSingle instead of ConvertToOptionallyRelativeOutputPath to handle spaces in the path and double quoting properly. Related to commit trying to fix issue #9042 from yesterday. 2009-12-24 11:40:14 -05:00
KWSys Robot 5da839a759 KWSys Nightly Date Stamp 2009-12-23 23:53:25 -05:00
David Cole 4d3a387ac6 Preserve environment variables across calls to cmCTestScriptHandler::RunConfigurationScript. This will help prevent problems like we are currently experiencing (regarding CMake continuous dashboards only running once each day because the HOME environment variable is modified indirectly by a command in a called script, but affects the environment in the calling script). 2009-12-23 14:34:46 -05:00
David Cole 68ed752b7d Fix issue #9042 - use relative path for pdb file name when CMAKE_USE_RELATIVE_PATHS is on. 2009-12-23 14:17:51 -05:00
Alexander Neundorf c1beb3b141 fix the way the PATH and other related env.vars are stored in the eclipse project file when using MSVC
Before this commit, the value of PATH at cmake time was put into the eclipse
project file. The problem with this is that this will be lost the first time
cmake is rerun from an build inside eclipse which was started without the
environment externally already set.
This patch now:
-adds the env.var to the cache if it is not already in the cache
-reuses the variable from the cache if it is in the cache, but not in the env.
-uses the variable from the cache if it contains the whole content of the
current env.var (e.g. if it is the full PATH plus the MSVC dirs)

Also store INTEL_LICENSE_FILE in the project file if an Intel compiler is used.

Alex
2009-12-23 13:56:01 -05:00
Alexander Neundorf a1614caf37 disable cmake's verbose output in the Eclipse and KDevelop generators
The Eclipse and KDevelop generators set the VERBOSE environment variable to
TRUE in the project files, because they must be able to "see" the full
command lines and errors, otherwise they can't parse the errors. But the
VERBOSE env.var. also enables cmakes own verbose output, which can be quite
long. This commit introduces an environment variable CMAKE_NO_VERBOSE, which
when set disables cmake's verbose output also when VERBOSE is set. This
env.var is now set by both the Eclipse and the KDevelop generators.

Alex
2009-12-23 13:51:46 -05:00
KWSys Robot cab08a19ff KWSys Nightly Date Stamp 2009-12-22 23:53:30 -05:00
Zach Mullen 3cb2a0ffa6 Move cURL dependent code out of CMakeLib to fix complex tests. 2009-12-22 14:37:06 -05:00
Zach Mullen 766ef1d011 Fix broken bootstrap test 2009-12-22 09:03:18 -05:00
KWSys Robot e44bed50de KWSys Nightly Date Stamp 2009-12-21 23:53:38 -05:00
Zach Mullen 5aad7bf2d4 Make new web api safe for bootstrap build. 2009-12-21 16:42:32 -05:00
Zach Mullen a302b51db5 Query the CDash web API to automate CDash version detection. 2009-12-21 15:47:29 -05:00
Zach Mullen 3ff0b94055 Added functionality to allow CTest to easily access web APIs. This will be used for better communication with CDash. 2009-12-21 15:19:57 -05:00
Zach Mullen 7af553188e Added support for CTest awareness of the CDash version. This will help forward compatibility for both tools. Note that this changeset effectively makes the default to disable output compression. Now, to enable output compression, the CDASH_CTEST_VERSION must be explicity set to >= 1.6. Automated detection of the CDash version is the next step. 2009-12-21 12:27:04 -05:00
Brad King cb27cfb1cc Use human-readable Git commit times in Update.xml
Previously we produced commit times formatted like

  1261403774 -0500

which is what the Git plumbing prints.  Now we use a human-readable
format like

  2009-12-21 15:28:06 -0500

which is still easy to machine-parse.
2009-12-21 10:29:00 -05:00
Zach Mullen 3312e3d710 Fix size type conversion warning in RunTest. 2009-12-21 09:52:56 -05:00
KWSys Robot 24ba4d7e01 KWSys Nightly Date Stamp 2009-12-20 23:53:43 -05:00
KWSys Robot 043ab8d754 KWSys Nightly Date Stamp 2009-12-19 23:53:53 -05:00
KWSys Robot 31cf7f91d2 KWSys Nightly Date Stamp 2009-12-18 23:53:59 -05:00
Zach Mullen 66f44f64d5 Fix segfault on Borland compiler resulting from divide by 0. 2009-12-18 11:42:58 -05:00
Brad King a4cdd73636 Use literal quotes in Update.xml UpdateCommand
Previously we escaped quotes in <UpdateCommand>...</UpdateCommand>
values using '&quot;'.  This is not necessary because the value is in
xml CDATA and not an xml attribute.
2009-12-18 10:54:24 -05:00
Brad King 3e724b2725 Submit Subversion directory path in Update.xml
A Subversion revision is unique across the entire repository, but work
trees typically correspond only to a subdirectory below the root path.
In order to specify the version of the source code that was tested,
CTest now submits a <SVNPath> element in Update.xml that specifies the
directory of the repository that corresponds to the work tree.  In
combination with the revision number this uniquely specifies the tested
source.  See issue #7541.
2009-12-18 08:19:41 -05:00
Brad King a73833d037 Submit global tree revision in Update.xml
We teach CTest to report in a <Revision> element the revision of the
source tree that was tested.  This makes sense for all modern VCS tools
because they version the whole tree.  We simply omit this element for
CVS because it only versions files.  See issue #7541.
2009-12-18 08:13:51 -05:00
KWSys Robot 449b9aea23 KWSys Nightly Date Stamp 2009-12-17 23:54:11 -05:00
Zach Mullen 0477e97988 Move documentation for new set_tests_properties properties. 2009-12-17 14:34:47 -05:00
Zach Mullen 1842d2eae0 Fix output compression error message 2009-12-17 11:17:57 -05:00
Zach Mullen ff916b48bd CTest output submitted to the dashboard is now compressed by default. 2009-12-17 11:14:49 -05:00
KWSys Robot 019e6db332 KWSys Nightly Date Stamp 2009-12-16 23:54:25 -05:00
Zach Mullen 9add940eb6 Added an option to conditionally attach files to a test submission only if the test does not pass. Also some preliminary changes for test output compression. 2009-12-16 14:50:16 -05:00
Brad King 56fe170043 KWSys: Improve SharedForward platform table
The SharedForward header contains a preprocessor table mapping from
platform to equivalents for ldd and LD_LIBRARY_PATH.  This commit fixes
the table preprocessor directives to guarantee at most one platform.
This generalizes the commit "Fix compilation of VTK on debian/sparc".
2009-12-16 14:25:46 -05:00
KWSys Robot e800604f34 KWSys Nightly Date Stamp 2009-12-15 23:54:16 -05:00
Zach Mullen 5bfe1a1962 Changed XML formatting of files attached to test so that each file is archived and marked up individually, in order to make things easier on the CDash side. Also switched to using the NamedMeasurement tag instead of a new tag. 2009-12-15 14:24:24 -05:00
Brad King 357096d35a KWSys: Build tests after libraries
The TestSharedForward executable and TestDynload module do not actually
link to a KWSys library, but it is nice to build them after the
libraries just like all other test binaries.

This also works around a universal binary bug in Xcode 2.x.  It forgets
to create the output directory for the executable before linking it.  We
avoid the problem by putting the library in the directory first.
2009-12-15 14:15:27 -05:00
Zach Mullen dc66139f7c CTest-side changes to allow users to attach arbitrary files to test results that will be submitted to cdash using the ATTACHED_FILES test property. 2009-12-15 12:07:15 -05:00
KWSys Robot 6adeb340f2 KWSys Nightly Date Stamp 2009-12-14 23:54:21 -05:00
David Cole 19839e96f6 Fix issue #9054 - ensure a valid install name for frameworks.
When the INSTALL_NAME_DIR property is empty, still use a name
of the form <name>.framework/Versions/<version>/<name> for
installed frameworks.
2009-12-14 17:46:29 -05:00
KWSys Robot f7171e2b76 KWSys Nightly Date Stamp 2009-12-13 23:54:25 -05:00
KWSys Robot 36b9e0b984 KWSys Nightly Date Stamp 2009-12-12 23:54:35 -05:00
KWSys Robot f73c7b106e KWSys Nightly Date Stamp 2009-12-11 23:54:39 -05:00
Zach Mullen c46fd5ebf9 Document new --http1.0 option. 2009-12-11 14:30:26 -05:00
Zach Mullen b2e7da885d Added a "-http1.0" option to ctest to make it submit using curl's http 1.0 option. Also added parsing of html reponse output to determine whether errors or warnings were sent in response from the server. If errors or warnings occurred, the response is output to stdout, and the "submission successful" message has been changed to accurately reflect whether or not warnings or errors were returned with the response. 2009-12-11 14:10:37 -05:00
David Cole 146cb98cb0 Add fallback for detecting CPU speed from Windows registry on builds where USE_ASM_INSTRUCTIONS gets defined to 0. (Win64 builds.) Clean up methods to return false when not implemented or when they fail to detect the things they're supposed to detect. This file still needs a lot more work to have a fully working implementation on Win64 builds. Committing it now because it's slightly better than it was, and there is a need for the CPU speed detection code in projects that depend on kwsys. Will file a bug shortly to request that the missing implementations get filled in... 2009-12-11 13:08:29 -05:00
Clinton Stimpson 691d8784a7 BUG: Fix bug #9894. Make higher resolution CMake icon available as an application icon. On Mac, the higher resolution one is used in the dock. 2009-12-11 00:35:33 -05:00
KWSys Robot be12a1ae8f KWSys Nightly Date Stamp 2009-12-10 23:54:42 -05:00
Zach Mullen 5e427677c3 Restore the "***Not Run" message to ctest command line output for tests which did not start due to missing/bad executables or missing required files. 2009-12-10 15:51:56 -05:00
Zach Mullen 4de7cc3621 Unfortunately, I noticed the comment on bug 8668 too late. This changes my last implementation of the exe wrapper to something which makes much more sense: a REQUIRED_FILES property on tests. 2009-12-10 15:37:04 -05:00
Zach Mullen 48b6133928 [0008668: CTest Dev: Missing executables shown as failed tests when using MPI.] Added a wrapping option to add_test so that exes built by the project can be safely wrapped in other exes and be listed as "not run" rather than "failed" if they are not built. 2009-12-10 14:38:32 -05:00
Zach Mullen 08ac33fe6a Fix memory leak that occurred when a test executable could not be started. (See BadExe test) 2009-12-10 09:39:19 -05:00
Brad King d5eb99cb6f Simplify CMake self-install special case
CMake has a special case for the "make install" target when building
CMake itself.  We use the just-built CMake to install itself since an
existing CMake installation cannot replace itself (at least on Windows).
We simplify the code that computes the location of the CMake binary by
taking advantage of existing generator support for target lookup.  This
will make it robust to any changes in CMake's own CMakeLists.txt files
in the future.
2009-12-10 09:09:50 -05:00
Clinton Stimpson 419d050bb5 BUG: Fix bug #10,000.
Some fixes for including Qt frameworks.
Remove extra "QtGui.framework" so its not Contents/Frameworks/QtGui.framework/QtGui.framwork/... anymore.
Also include QtGui Resource folder, so a Cocoa/Qt based cmake-gui app works.
2009-12-10 01:17:45 -05:00
KWSys Robot a082702d84 KWSys Nightly Date Stamp 2009-12-09 23:54:50 -05:00
Bill Hoffman 39f851dc7c Fix for bug 10001, make vs 10 compiler .rc files correctly 2009-12-09 11:52:10 -05:00
KWSys Robot 02a8eee3aa KWSys Nightly Date Stamp 2009-12-08 23:54:59 -05:00
Brad King e4beefeb6d CTest: Do not munge UTF-8 output in XML files
CTest filters the output from tools and tests to ensure that the XML
build/test result documents it generates have valid characters.
Previously we just converted all non-ASCII bytes into XML-escaped
Unicode characters of the corresponding index.  This does not preserve
tool output encoded in UTF-8.

We now assume UTF-8 output from tools and implement decoding as
specified in RFC 3629.  Valid characters are preserved, possibly with
XML escaping.  Invalid byte sequences and characters are converted to
human-readable hex values with distinguishing tags.  See issue #10003.
2009-12-08 15:43:55 -05:00
Brad King d4ada9d0d5 Clean up CMake build tree 'bin' directory
We re-arrange EXECUTABLE_OUTPUT_PATH settings to avoid putting utility
and test executables in the 'bin' directory of the build tree.  This
makes the directory look like that in the installation tree, except that
on multi-configuration generators we still use a per-config
subdirectory.
2009-12-08 11:44:28 -05:00
Brad King 15316c12f5 KWSys: Remove default exe output path
KWSys should not set variables outside its namespace.  It can honor the
EXECUTABLE_OUTPUT_PATH set by a host project, but tere is no need for it
to set a default in the host project cache.
2009-12-08 11:27:22 -05:00
Zach Mullen c32088cfee Local test timeouts will now always take precedence over the global --timeout option. 2009-12-08 10:26:43 -05:00
Brad King 1d91bc64aa Remove unused DumpDocumentation code
The DumpDocumentation executable and some supporting code and tests were
completely unused by CMake.  Generation of documentation is done by the
individual executables with --help* options.  In this commit we simply
remove the unused code, executable, and test.
2009-12-08 09:38:36 -05:00
KWSys Robot dd1a0c0562 KWSys Nightly Date Stamp 2009-12-07 23:55:03 -05:00
Zach Mullen b30f627190 CMake global timeout (--timeout option) should prevail over individual test timeouts if it is lower than the individual timeout. 2009-12-07 13:25:54 -05:00
KWSys Robot 80b2c30d56 KWSys Nightly Date Stamp 2009-12-06 23:55:09 -05:00
KWSys Robot bc4be86a9d KWSys Nightly Date Stamp 2009-12-05 23:55:13 -05:00
KWSys Robot 0570b3c794 KWSys Nightly Date Stamp 2009-12-04 23:55:18 -05:00
David Cole 0b38bb4c53 Fix issue #2336 - honor the -C arg to ctest. Honor it for all stages of running -D dashboards from the command line and running ctest_configure, ctest_build and ctest_test commands in -S scripts. Also, allow a script to change it by setting the CTEST_CONFIGURATION_TYPE variable: allows for multiple configuration build/test cycles within one script. Add a new signature for the cmake command build_command that accepts CONFIGURATION as one argument. The original build_command signature is still there, but now marked as deprecated in the documentation. Of course... also add CTestConfig tests to verify that -C is honored for -D dashboards and -S scripts. 2009-12-04 12:09:01 -05:00
KWSys Robot d2f1dac136 KWSys Nightly Date Stamp 2009-12-03 23:55:24 -05:00
KWSys Robot 5b0f15f509 KWSys Nightly Date Stamp 2009-12-02 23:55:34 -05:00
Bill Hoffman 22c37b2b19 Hanle the case where a test can not be run because it is a bad executable. 2009-12-02 16:37:43 -05:00
Brad King 9daa4a6c3f Remove CMAKE_SHARED_MODULE_RUNTIME_${lang}_FLAG
This platform configuration variable is unused.  Modules are built using
the value of CMAKE_SHARED_LIBRARY_RUNTIME_${lang}_FLAG.
2009-12-02 15:17:32 -05:00
Brad King 8c5d817779 Fix .vfproj files with per-source settings
The Intel Fortran plugin to VS defines VFFortranCompilerTool as the
compiler tool.  This commit fixes generated projects to use that tool
for per-source settings instead of VCCLCompilerTool.  We were already
using it for target-wide compiler settings.
2009-12-02 11:49:52 -05:00
KWSys Robot cdc9ef3b5a KWSys Nightly Date Stamp 2009-12-01 23:55:35 -05:00
Brad King 1a5f209e62 KWSys: List processes with "ps -ef" on OpenSolaris
In order to kill process trees we need to list all processes to find
those whose parent we are killing.  We implement process listing on
OpenSolaris by using "ps -ef" and parsing the resulting format:

     UID   PID  PPID   C    STIME TTY         TIME CMD
     %*s    %d    %d   %*[^\n]\n
2009-12-01 08:37:14 -05:00
Brad King be36c14bea KWSys: Use "ps -Af" for process list on QNX
In order to kill process trees we need to list all processes to find
those whose parent we are killing.  We implement process listing on QNX
using "ps -Af" and parsing the resulting format:

  UID        PID       PPID  C STIME TTY          TIME CMD
  %*d         %d         %d  %*[^\n]\n
2009-12-01 08:10:22 -05:00
KWSys Robot afef52454e KWSys Nightly Date Stamp 2009-11-30 23:55:43 -05:00
Brad King 2aaa967715 KWSys: Fix process tree kill on 64-bit Windows
We enumerate processes to identify those whose parent is being killed so
that we can recursively kill the children.  Enumeration uses the
Process32(First|Next) windows API functions, which accept PROCESSENTRY32
objects to be filled.  This commit corrects the declaration of the entry
structure to account for its size on 64-bit Windows.
2009-11-30 16:30:19 -05:00
Zach Mullen b286e6ec7f Document new timeout command line option 2009-11-30 16:12:24 -05:00
Zach Mullen c17ce46c73 Align test output for timeout condition. 2009-11-30 16:09:00 -05:00
Zach Mullen a52c0118d4 Added the --timeout option to ctest command line. This sets a global timeout on all tests if no more specific timeout is set on them. 2009-11-30 16:08:11 -05:00
Brad King b21f1eaeae KWSys: Restore SIGSTOP/SIGKILL to end process tree
On UNIX systems we kill a tree of processes by performing a DFS walk of
the tree.  We send SIGSTOP to each process encountered, recursively
handle its children, and then send SIGKILL.

We once used the above approach in the past, but it was removed by the
commit "Do not send both SIGSTOP and SIGKILL when killing a process".
The commit was meant to work-around an OS X 10.3 bug in which the child
would not always honor SIGKILL after SIGSTOP.  At the time we wrongly
assumed that the process tree remains intact after SIGKILL and before
the child is reaped.  In fact the grandchildren may be re-parented to
ppid=1 even before the child is reaped, which causes the DFS walk to
miss them.
2009-11-30 13:14:02 -05:00
Brad King 4f43c1f276 Singly-quote target names for Watcom linker
The Watcom tools do their own command-line parsing and do not accept
double-quotes.  Instead we single-quote the target output name when
invoking wlink and other Watcom tools.  This fixes support for spaces in
the target output directory path when it is not under the build tree.
2009-11-30 11:16:24 -05:00
KWSys Robot 997f20b93b KWSys Nightly Date Stamp 2009-11-29 23:55:49 -05:00
KWSys Robot b936065084 KWSys Nightly Date Stamp 2009-11-28 23:55:57 -05:00
KWSys Robot d93bd3ac42 KWSys Nightly Date Stamp 2009-11-27 23:56:03 -05:00
KWSys Robot 8e7a630ff6 KWSys Nightly Date Stamp 2009-11-26 23:56:07 -05:00
KWSys Robot e802130fe2 KWSys Nightly Date Stamp 2009-11-25 23:56:11 -05:00
Zach Mullen de5d22ce1c BUG 9969: document set_tests_properties TIMEOUT property. 2009-11-25 11:25:04 -05:00
KWSys Robot f81a3dfff2 KWSys Nightly Date Stamp 2009-11-24 23:56:18 -05:00
Bill Hoffman 5d62c50732 Fix for bug #9965 -i was not passed to -E commands. 2009-11-24 20:13:29 -05:00
Zach Mullen 254d267e36 Mac has gettimeofday defined, but cmsys wasn't aware of that, so it was falling back to using time() which only provides second resolution. Fixed to allow usec res. 2009-11-24 14:10:05 -05:00
Zach Mullen 0ae0780055 BUG 9961: ctest --help should not display a Generators section 2009-11-24 11:46:06 -05:00
Brad King 02db43239b Teach link_directories to recognize relative paths
We create CMake Policy CMP0015 to make link_directories() treat relative
paths with respect to the source tree while retaining compatibility.
This makes it consistent with include_directories() and other commands.

Changes based on patch from Alex.  See issue #9697.
2009-11-24 11:16:38 -05:00
Brad King e1548142fb CTest: Move initial checkout to ctest_start()
In CTest command-driven script mode we support starting without a source
tree.  Previously the ctest_start() command would do some initialization
but could not do anything that required CTestConfig.cmake from the input
source tree.  Later, ctest_update() would run CTEST_CHECKOUT_COMMAND to
create the source tree, and then re-initialize everything.  This
delayed-initialization approach led to many complicated cases of which
only some worked.  For example, the second initialization only worked
correctly in Nightly mode and simply failed for Experimental and
Continuous builds.

A simpler solution is to run CTEST_CHECKOUT_COMMAND during ctest_start()
and then have a single initialization path.  In principle this change in
behavior could break scripts that set the checkout command after
ctest_start() but before ctest_update().  However, the convention we've
always followed has been to set all variables before ctest_start().

See issue #9450.
2009-11-24 08:58:59 -05:00
Brad King c2ba35787e CTest: Simplify Initialize method signature
We make the cmCTest::Initialize method private since it is only called
from inside the class implementation.  We also combine the two boolean
arguments into one since they both meant the same thing.
2009-11-24 08:58:48 -05:00
Brad King a03f801f7f Suppress Intel float-equality test warnings
We suppress Intel warning 1572 because the cases where we do equality
tests are valid.  Since this project does not do numerical computations
we need not worry about real instances against which this warning
protects.
2009-11-24 08:57:06 -05:00
KWSys Robot 24106f8600 KWSys Nightly Date Stamp 2009-11-23 23:56:25 -05:00
Clinton Stimpson b3023d2587 Remove dependence on Qt/STL support. 2009-11-23 17:30:00 -05:00
Brad King 574902fef2 KWSys: Work-around llvm-gcc-4.2 optimizer bug
Under -O3 optimization this compiler breaks our testProcess.c source file.
We force -O0 for the file to avoid the problem.
2009-11-23 15:31:29 -05:00
Bill Hoffman c4e002fd49 64 bit should be setting 64 bit and not 32 bit. 2009-11-23 14:09:24 -05:00
KWSys Robot 62acb921f3 KWSys Nightly Date Stamp 2009-11-22 23:56:29 -05:00
Alexander Neundorf 2d9c72c7e5 improve system/compiler specific settings of Eclipse
-use CMAKE_EXECUTABLE_FORMAT and CMAKE_SYSTEM_NAME to decide which binary
parsers to load (ELF/Mach O/PE)
-use CMAKE_(C|CXX)_COMPILER_ID to load the respective compiler error parser
-remove EclipseToolchainType, which was a mixture between compiler and operating system

Alex
2009-11-22 05:01:04 -05:00
KWSys Robot 892accffba KWSys Nightly Date Stamp 2009-11-21 23:56:35 -05:00
Alexander Neundorf 679c1422b4 -document CMAKE_EXTRA_GENERATOR
Alex
2009-11-21 19:07:03 -05:00
KWSys Robot d06ec80d0c KWSys Nightly Date Stamp 2009-11-20 23:56:43 -05:00
Brad King 9ec851bc90 KWSys: Set CMP0003 to NEW
The commit "Enable loose loop constructs in KWSys" set the minimum
required CMake version to 2.4.5.  This regressed the setting of CMP0003,
so we restore it in this commit.
2009-11-20 12:04:08 -05:00
Bill Hoffman 268448b891 Teach VS generators to set the MACHINE type correctly. 2009-11-20 11:55:28 -05:00
Brad King bbbdf54a35 Fix KWSys FundamentalType for Universal Binaries
The FundamentalType header needs to know type sizes at preprocessing
time.  This commit teaches it to avoid using CHECK_TYPE_SIZE because the
macro does not work for types whose size varies across architectuers in
Mac OS X universal binaries.  Fortunately the Mac compilers provide just
enough information to detect the needed type sizes during preprocessing.

We now use preprocessor macros instead of configuration tests whenever
they are available.  As a side effect this reduces the number of
try-compiles needed with GCC.

See issue #9913.
2009-11-20 08:38:18 -05:00
Brad King 1136b97647 Create KWSYS_PLATFORM_INFO_TEST macro
This macro helps KWSys perform try-compile tests that extract 'INFO'
strings out of compiled binaries.  It works for CMake 2.6 and above.
On CMake 2.4 it always returns an empty list of information values,
so this should be used only as an optimization until 2.6 is required.
2009-11-20 08:37:56 -05:00
Brad King 2d80c9e31a Check for 'long long' without computing size
In KWSys IOStream we need to detect whether 'long long' exists but we do
not need its size.  We avoid using CHECK_TYPE_SIZE because it does not
work for types whose size varies across architectuers in Mac OS X
universal binaries.  See issue #9913.
2009-11-20 08:37:33 -05:00
Brad King 2a789187fc Enable loose loop constructs in KWSys
We set CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS in KWSys's CMakeLists.txt file
to enable simpler endif() syntax for CMake 2.4.
2009-11-20 08:37:10 -05:00
KWSys Robot c6f13b97ea KWSys Nightly Date Stamp 2009-11-19 23:56:47 -05:00
KWSys Robot 59334dc8a4 KWSys Nightly Date Stamp 2009-11-18 23:56:53 -05:00
Brad King 5ca6f158d4 Use backslashes in VS 10 library dependencies
The list of libraries to be linked into the current target must be
specified using windows slashes to that UNC paths such as

  \\server\share\somelibrary.lib

work correctly.  See issue #9917.
2009-11-18 16:14:36 -05:00
Brad King c7b0dbb3fc Fix VS 10 value of CMAKE_CFG_INTDIR
VS 10 provides $(Configuration) and $(ConfigurationName) but only the
former is documented so we prefer it.  This also makes CMAKE_CFG_INTDIR
consistent with its documentation.  See issue #9916.
2009-11-18 15:50:29 -05:00
David Cole ba21622048 Fix bogus calls to GetMemoryStatus and GetMemoryStatusEx: need to set the dwLength member of the struct prior to calling. Otherwise it's just a garbage value from the stack. Also, pay attention to return value of GetMemoryStatusEx: if it indicates failure then just return 0 without using any of the other data the call returns. 2009-11-18 11:22:38 -05:00
Brad King 5fbefd66dc Fix get_filename_component(... REALPATH) work dir
The commit "Fix get_filename_component ABSOLUTE mode" broke REALPATH
treatment of relative paths because it stopped storing the absolute path
in local variable 'filename'.  This commit fixes the call to GetRealPath
to use the proper local variable and adds a test.
2009-11-18 10:56:40 -05:00
KWSys Robot 77fddc1f65 KWSys Nightly Date Stamp 2009-11-17 23:57:01 -05:00
KWSys Robot a52ebca54c KWSys Nightly Date Stamp 2009-11-16 23:57:05 -05:00
Bill Hoffman b1fe517688 Try to fix missing size_t on qnx 2009-11-16 17:03:59 -05:00
Luis Ibanez 69fdf711fe COMP: Fixing return type of the Get methods associated with variables that
were changed from "unsigned long" to "size_t" to solve warnings about
      64 bits to 32 bits truncations.
2009-11-16 12:43:44 -05:00
Zach Mullen 2921fa96ed Handle multiple carriage return issue on windows VS9. Also make sure that running ctest in showonly mode does not kill our cost store, since many ctest tests do this and corrupt our cost data. 2009-11-16 10:58:43 -05:00
KWSys Robot 8ec9935099 KWSys Nightly Date Stamp 2009-11-15 23:57:13 -05:00
Luis Ibanez 7f601830a2 COMP: Fixing type declarations and type conversions that could potentially
truncate 64 bits types into 32 bits types.
2009-11-15 15:57:06 -05:00
KWSys Robot bc303427bf KWSys Nightly Date Stamp 2009-11-14 23:57:18 -05:00
Bill Hoffman 22fb266d06 use different tar format to handle longer file names 2009-11-14 08:48:32 -05:00
KWSys Robot 57865607f4 KWSys Nightly Date Stamp 2009-11-13 23:57:24 -05:00
Bill Hoffman 28664b96f7 Show the current file when there is a tar error 2009-11-13 16:07:42 -05:00
Bill Hoffman a875845be9 fix warning for borland 2009-11-13 07:39:10 -05:00
KWSys Robot e28636ba61 KWSys Nightly Date Stamp 2009-11-12 23:57:29 -05:00
Bill Hoffman dc5d1edcfd Fix missing return value. 2009-11-12 10:52:32 -05:00
KWSys Robot 0a5b247761 KWSys Nightly Date Stamp 2009-11-11 23:57:35 -05:00
Bill Hoffman 1b48d361d8 fix number of callers to work with newer versions of valgrind 2009-11-11 08:43:15 -05:00
KWSys Robot 218bd8553a KWSys Nightly Date Stamp 2009-11-10 23:57:40 -05:00
Zach Mullen c9c0ee4056 Change logic of ctest subdirs command to allow for absolute paths. Also added test coverage for passing absolute paths to subdirs. 2009-11-10 10:40:24 -05:00
Bill Hoffman 21a59bdc4d Fix double bootstrap build for in source builds 2009-11-10 08:09:54 -05:00
KWSys Robot f5b7f95c45 KWSys Nightly Date Stamp 2009-11-09 23:57:55 -05:00
Zach Mullen f7899c7445 Fixed a bug where it was possible for a test to be started twice if a lower-indexed test depended on it. 2009-11-09 16:07:47 -05:00
Zach Mullen b4ed21c305 Removed duplicated documentation entry. 2009-11-09 14:08:17 -05:00
Zach Mullen 17afd5257b Bug 9090: CTest does not handle absolute paths in CTestTestfile SUBDIR( ) entries.
The ctest subdirs command now checks the relative path first, and if that does not exist, also checks if the given path was absolute.  Thanks vodall for the patch.
2009-11-09 14:07:36 -05:00
Bill Hoffman 70dbbcc542 add better error checking and run from correct directory. 2009-11-09 09:58:03 -05:00
KWSys Robot 36197f45ca KWSys Nightly Date Stamp 2009-11-08 23:57:52 -05:00
Bill Hoffman 4fd75f959a add better error checking and support for symlinks to cpack's use of libarchive 2009-11-08 20:54:13 -05:00
Bill Hoffman 79b8d61ae9 Fix for working with symlinks in tar files 2009-11-08 19:59:01 -05:00
Bill Hoffman f5fe20dc12 Fix some warnings 2009-11-08 10:34:12 -05:00
Bill Hoffman aae8dca797 fix line length error 2009-11-08 10:25:42 -05:00
Bill Hoffman 7961c8685b go back to running stat and put size check in 2009-11-08 10:19:36 -05:00
KWSys Robot 3c17c4117f KWSys Nightly Date Stamp 2009-11-07 23:58:00 -05:00
Bill Hoffman 34ce92f151 Remove check for now so test passes on linux 2009-11-07 21:08:38 -05:00
Bill Hoffman 03cebb9a7f create a better error message 2009-11-07 20:45:34 -05:00
Bill Hoffman 3d1afdee4a add much better error checking on libarchive calls. 2009-11-07 19:35:35 -05:00
KWSys Robot a7ba04a8cc KWSys Nightly Date Stamp 2009-11-06 23:58:04 -05:00
David Cole d6fe0438c1 Fix issue #9851 - only seed the random number generator on the first call to STRING(RANDOM or if given the new RANDOM_SEED argument. Add test and documentation of new argument. 2009-11-06 10:07:10 -05:00
Brad King 10762565e9 Implement LINK_FLAGS_<CONFIG> property on Xcode
See issue #9841.
2009-11-06 08:04:19 -05:00
KWSys Robot 723453d4aa KWSys Nightly Date Stamp 2009-11-05 23:58:10 -05:00
Zach Mullen a9a4814971 Fix compiler error in cmSystemTools.cxx 2009-11-05 16:14:46 -05:00
Zach Mullen 4b795e7bca Doc --help-command, --help-command-list, --help-commands for ctest. (bug 9833) 2009-11-05 15:25:24 -05:00
Bill Hoffman dd09d88065 Add JOM support and clean up some of the tar -E stuff 2009-11-05 15:00:15 -05:00
Zach Mullen 9f105a3f6d Fix style warning in cmsystemtools, cosmetic change to ctest code 2009-11-05 11:37:47 -05:00
Zach Mullen 9aa4e134b5 Fixed infinite loop condition when a test's dependent test executable could not be found. 2009-11-05 11:03:07 -05:00
KWSys Robot 0cdc1e979e KWSys Nightly Date Stamp 2009-11-04 23:58:17 -05:00
Brad King 3a790251f4 Document and test find_package <pkg>_DIR env var
The find_package(<pkg>) command checks the <pkg>_DIR environment
variable.  This commit documents and tests the feature.
2009-11-04 13:14:57 -05:00
Zach Mullen cdbbe00a8b Fix unused param warning resulting from libarchive API change. 2009-11-04 11:36:23 -05:00
Zach Mullen d6630330d6 Fixed ctest doc typos. (bug 9836) 2009-11-04 10:24:30 -05:00
KWSys Robot f87bdbf328 KWSys Nightly Date Stamp 2009-11-03 23:58:33 -05:00
Bill Hoffman b0d43475c6 Fix warning 2009-11-03 17:21:25 -05:00
Bill Hoffman 5f41fe03ca Fix warnings for unused variables 2009-11-03 16:50:49 -05:00
Zach Mullen 85912a3777 Added TARGET, CONFIGURATION, PROJECT_NAME, and FLAGS arguments to ctest_build command 2009-11-03 16:46:30 -05:00
Bill Hoffman 78b2d5097c Fix cygwin package stuff to work with libarchive 2009-11-03 09:40:57 -05:00
KWSys Robot 1b1d954f7e KWSys Nightly Date Stamp 2009-11-02 23:58:29 -05:00
Zach Mullen d47ada823a Added logic to check for cycles in the test dependency graph before any tests are run. Previously a cycle resulted in a segfault from stack overflow. 2009-11-02 12:52:50 -05:00
Brad King 59f6f383e9 Warn on set(PARENT_SCOPE) at top scope
Previously we silently ignored such calls and set nothing.  The commit
"Initialize directory scope with closure of parent" inroduced a bad test
for the top scope.  This commit fixes the test to avoid dereferencing a
null pointer, and adds a warning when the case is encountered.
2009-11-02 11:56:17 -05:00
Bill Hoffman d4b8945301 Fix for hpux... 2009-11-02 09:20:53 -05:00
KWSys Robot 66fdf2038c KWSys Nightly Date Stamp 2009-11-01 23:58:34 -05:00
KWSys Robot e2d9595ae9 KWSys Nightly Date Stamp 2009-10-31 23:58:41 -04:00
KWSys Robot b7e25ab3e0 KWSys Nightly Date Stamp 2009-10-30 23:58:46 -04:00
Clinton Stimpson 3dab0e477f Fix bug #9722. Report error when not able to create build directory. 2009-10-30 15:02:25 -04:00
Bill Hoffman fb51d98562 Switch to using libarchive from libtar for cpack and cmake -E tar
This allows for a built in bzip and zip capability, so external tools
will not be needed for these packagers.  The cmake -E tar xf should be
able to handle all compression types now as well.
2009-10-30 13:10:56 -04:00
David Cole 43d07f6620 Fix more mismatched new[] / delete[] (eliminate invalid auto_ptr use) to correct valgrind reported memory issues. 2009-10-30 10:31:54 -04:00
KWSys Robot 4e26159ec2 KWSys Nightly Date Stamp 2009-10-29 23:58:53 -04:00
Zach Mullen 8612aa10b6 Hook for scheduling tests in a random order
This may help statistically detect implicit dependencies among unit
tests while running in parallel.
2009-10-29 15:30:12 -04:00
Bill Hoffman d7a3277fb3 Fix bug#9767 catch missing leak. 2009-10-29 08:38:04 -04:00
KWSys Robot 45d0e96694 KWSys Nightly Date Stamp 2009-10-28 23:59:01 -04:00
Brad King 74c59a748d Introduce per-config OUTPUT_DIRECTORY properties
We create per-configuration target properties to specify ARCHIVE,
LIBRARY, and RUNTIME output directories.  The properties override the
generic properties for the <CONFIG> configuration:

  ARCHIVE_OUTPUT_DIRECTORY -> ARCHIVE_OUTPUT_DIRECTORY_<CONFIG>
  LIBRARY_OUTPUT_DIRECTORY -> LIBRARY_OUTPUT_DIRECTORY_<CONFIG>
  RUNTIME_OUTPUT_DIRECTORY -> RUNTIME_OUTPUT_DIRECTORY_<CONFIG>

For multi-configuration generators, the per-configuration subdirectory
normally appended to the generic output directory is not added to the
configuration-specific property values.  This allows projects to set the
exact location at which binaries will be placed for each configuration.

See issue #9163.
2009-10-28 13:35:25 -04:00
Brad King ba728f911a Consolidate duplicate documentation in cmTarget
The documentation of (ARCHIVE|LIBRARY|RUNTIME)_OUTPUT_DIRECTORY was
duplicated.  We consolidate it using a macro.
2009-10-28 13:34:59 -04:00
Brad King b38c2929b0 Create a static library's output dir for VS 6
VS 6 forgets to create the output directory for a static library if it
differs from the intermediate files directory.  We work around this VS
bug by creating a pre-link event on the library target to make the
directory.
2009-10-28 12:19:15 -04:00
Brad King 90b8164e44 Use per-config output dir in VS 6 templates
This commit removes use of configuration-less cmTarget::GetDirectory()
by the VS 6 generator (except for compatibility with user templates).
We replace OUTPUT_DIRECTORY_<CONFIG> tokens in the templates using the
per-configuration result of cmTarget::GetDirectory(config).
2009-10-28 12:18:55 -04:00
Brad King 1024ffad82 Fix Xcode <= 2.0 projects with CMAKE_BUILD_TYPE
The dependency-helper makefiles should not have per-configuration names
for Xcode <= 2.0.  Older Xcodes do not support multiple configurations.
2009-10-28 12:18:24 -04:00
Brad King 172d503c61 Fix try_compile when file cannot be found
The try_compile() command's COPY_FILE option should not try to actually
copy the file if it cannot be found.  Some C runtime library's fopen
cannot handle an empty file name.
2009-10-28 11:24:08 -04:00
Brad King 95038439ea Keep Xcode intermediate files away from output dir
Previously the Xcode generator set SYMROOT to be the target output
directory.  This told Xcode to put the "<proj>.build" directory in the
output path too.

This commit sets SYMROOT, CONFIGURATION_BUILD_DIR, and OBJROOT to put
intermediate files in the build directory corresponding to the source
directory that created each target.  This is more consistent with the VS
IDE generators.  Now only the build output files (actual targets) go to
the target output directory.
2009-10-28 09:12:38 -04:00
Brad King e0d0d5db0f Remove unreachable code in cmIfCommand
The commit "Fix if() command and CMP0012 OLD/NEW behavior" introduced an
unreachable 'break' after 'return' in a switch statement.  We remove it.
2009-10-28 08:45:46 -04:00
KWSys Robot e97fc32a63 KWSys Nightly Date Stamp 2009-10-27 23:59:07 -04:00
Zack Galbreath 134d8dee1e BUG: hardcore some values so output matches cmVS10CLFlagTable.h (addresses bug #9753) 2009-10-27 11:35:37 -04:00
Zach Mullen e2b63e473d Fix working dir issue for ctest show only mode (-N) 2009-10-27 10:16:01 -04:00
Brad King cb185d93d2 Fix if() command and CMP0012 OLD/NEW behavior
The commit "modified the if command to address bug 9123 some" changed
the if() command behavior with respect to named boolean constants.  It
introduced policy CMP0012 to provide compatibility.  However, it also
changed behavior with respect to numbers (like '2') but did not cover
the change with the policy.  Also, the behavior it created for numbers
is confusing ('2' is false).

This commit teaches if() to recognize numbers again, and treats them
like the C language does in terms of boolean conversion.  We also fix
the CMP0012 check to trigger in all cases where the result of boolean
coersion differs from that produced by CMake 2.6.4.
2009-10-27 09:07:39 -04:00
Brad King 9f43fa602d Report expanded arguments in if() command errors
The if() command reports its arguments at the beginning of some error
messages.  Originally it reported the un-expanded form of the arguments
because in ancient CMake versions no context information was available.
Now it is more useful to see the real arguments, which may be mentioned
in the main error message.  Since full context information is now
available, users can refer back to the source if they need to see the
unexpanded form of the arguments.

For example, the code

  set(regex "++")
  if("x" MATCHES "${regex}")
  endif()

now produces the message

  if given arguments:

    "x" "MATCHES" "++"

  Regular expression "++" cannot compile

instead of

  if given arguments

    "x" MATCHES "${regex}"

  Regular expression "++" cannot compile
2009-10-27 09:01:33 -04:00
KWSys Robot 92caf34733 KWSys Nightly Date Stamp 2009-10-26 23:59:12 -04:00
David Cole e0bbaa889a Correct one of the valgrind errors from the CPackTestAllGenerators test. Do not use auto_ptr on a new [] allocation because auto_ptr does not use delete []. 2009-10-26 13:49:20 -04:00
Clinton Stimpson 0b8837814a ENH: Move SetErrorMode around calls to generate and configure instead of setting it for the whole application. 2009-10-26 13:18:15 -04:00
Brad King 7b28fbd656 Fix Xcode dylib version default
The commit "Set version info for shared libs on OSX" taught the Xcode
generator to honor VERSION and SOVERSION properties.  However, it also
set version '1.0.0' as the default when no version property is set,
which is inconsistent with the Makefiles generator.  This commit fixes
the default to '0.0.0' for consistency.

See issue #9773.
2009-10-26 10:05:46 -04:00
Zach Mullen 99697308f3 Add a ctest test to cover cmCTestBatchTestHandler. Since its behavior isn't fully defined yet, we just run it as is and don't care much about the result. 2009-10-26 09:44:08 -04:00
Brad King 5ff4e04180 Revert "Always set OutputPath in VS 10 projects"
The reverted commit attempted to preserve the "../" PREFIX work-around
for avoiding per-config build directories in the VS IDE generators.
However, the original reporter has concluded that a "../" PREFIX no
longer works everywhere in VS 10 project files anyway.  Rather than set
OutputPath, this commit restores the $(OutDir)$(TargetName)$(TargetExt)
default.

See issue #9768.
2009-10-26 08:57:01 -04:00
KWSys Robot 3d8784cd52 KWSys Nightly Date Stamp 2009-10-25 23:59:16 -04:00
KWSys Robot 609d27e4fa KWSys Nightly Date Stamp 2009-10-24 23:59:27 -04:00
KWSys Robot f5545899ae KWSys Nightly Date Stamp 2009-10-23 23:59:33 -04:00
Bill Hoffman 7963046350 Fix the showing of non-cpp files in the IDE 2009-10-23 17:02:27 -04:00
Brad King 8ae66bf456 Fix optionally-valued booleans in VS 10 flag table
This commit fixes the cmparseMSBuildXML.py script to generate correct
flag table entries for booleans with optional value.  These flags use
two entries: the first should ignore the value and enable the option,
and the second should use the value if given.  Previously the first
entry did not recognize flags with values.

In particular this fixes flags like /MP4, but the change corrects
matching of some other flags too.  See issue #9771.
2009-10-23 14:59:26 -04:00
Brad King 5484550af6 Detect and set Unicode character set in VS 10
This commit teaches the VS 10 generator to detect the -D_UNICODE option
in preprocessor definitions and set the CharacterSet attribute to the
value 'Unicode'.  This was already done for other VS IDE versions.

See issue #9769
2009-10-23 11:34:37 -04:00
Brad King d4377c3377 Always set OutputPath in VS 10 projects
The default $(OutDir)$(TargetName)$(TargetExt) for this value works in
most cases because we set the three properties.  However, if the target
property PREFIX contains a path component (not documented but happens to
work in other VS generators) we drop it from TargetName and do not put
it in OutDir either.  This commit corrects the resulting path by setting
the OutputPath property explicitly with the full path.

See issue #9768.
2009-10-23 11:33:27 -04:00
Brad King 867a1cc12c Fix line-too-long style violations
The commit "Define per-target OSX_ARCHITECTURES property" introduced
some long lines.  This wraps them into multiple shorter lines.
2009-10-23 08:02:24 -04:00
KWSys Robot 11d85a5748 KWSys Nightly Date Stamp 2009-10-22 23:59:35 -04:00
Brad King 70e98c73e9 Add Xcode file association for Fortran
Intel Fortran on Mac OS X enables Fortran support in Xcode.  This commit
teaches CMake to associate Fortran sources properly in Xcode projects.

See issue #9739.
2009-10-22 10:57:44 -04:00
Brad King 457b95322d Fix VS 10 flag table for precompiled headers
The VS 10 flag table generation script did not produce correct entries
for precompiled header flags.  Since precompiled header flag translation
requires multiple entries cooperating in a certain order, it is not
worth the time to make the generation script work automatically.  This
commit manually adds the proper entries.

See issue #9753.
2009-10-22 10:47:59 -04:00
Brad King 4f96af44f6 Fix VS 10 .sln files for Windows Explorer
This commit fixes generated .sln files so they open VS 2010 correctly
when double-clicked in Windows Explorer.

See issue #9758.
2009-10-22 10:22:16 -04:00
Brad King 0f0b726f50 Fix Microsoft.Cpp.$(Platform).user.props in VS10b2
MS changed the location of the Microsoft.Cpp.$(Platform).user.props
file.  This commit teaches the VS 10 generator about the new location.

See issue #9759.
2009-10-22 10:21:35 -04:00
Bill Hoffman 44c4600ae5 Fix up download a bit, better error checking and uses of long not double for timeout as curl needs, bug# 9748 2009-10-22 09:44:58 -04:00
Brad King 50759a9ed3 WIP: VS 10 Win64 generator
See issue #9754.
2009-10-22 08:24:11 -04:00
KWSys Robot 7b5ae0d282 KWSys Nightly Date Stamp 2009-10-21 23:59:41 -04:00
Bill Hoffman 7c06e91c9c Fix for bugs #9756, #9690 and #9755, header files were not included, and link_directories we incorrect 2009-10-21 21:30:41 -04:00
Brad King 9a88bc8c4b Use copies for versioned names on Windows
Versioned UNIX libraries and executables produce multiple names for a
single target using one of

  cmake -E cmake_symlink_library
  cmake -E cmake_symlink_executable

to create symlinks to the real file for the extra names.  However, when
cross-compiling from Windows to Linux we cannot create symlinks.  This
commit teaches CMake to make copies instead of symbolic links when
running on windows.  While this approach does not produce exactly what
Linux wants to see, at least the build will complete and the binary will
run on the target system.  See issue #9171.
2009-10-21 13:12:21 -04:00
Brad King 7a6db286c8 Tweak all files during target installation
During installation of a target we generate "tweak" rules to update the
installed file (RPATH, strip, ranlib, etc.).  However, some targets
install multiple files, such as the versioned names of a shared library.

Previously the extra files for a target have always been symbolic links,
but for cross-compiling from Windows to UNIX they may need to be copies.
This commit teaches the generated install scripts to loop over all files
installed for the target to apply tweaks to those that are not symlinks.

See issue #9171.
2009-10-21 13:11:42 -04:00
Brad King 7a9f75c1a8 Add IS_SYMLINK test to if command 2009-10-21 13:11:16 -04:00
Brad King a52fd03a2a Compute install destination for all target files
In cmInstallTargetGenerator::GenerateScriptForConfig we were computing
the full 'from' paths for all target files to be installed, but only
computing a 'to' path for the "main" target file.  This commit teaches
the method to compute both 'from' and 'to' paths for every target file
to be installed.  The result is cleaner, easier to follow, and will
allow installation tweaks to be added later on all target files.
2009-10-21 13:10:51 -04:00
Brad King 22cbfefb76 Factor out "cmake -E cmake_symlink_*" code
We factor the implementation of

   cmake -E cmake_symlink_library
   cmake -E cmake_symlink_executable

out of cmake::ExecuteCMakeCommand into methods

   cmake::SymlinkLibrary
   cmake::SymlinkExecutable

plus a helper method cmake::SymlinkInternal.
2009-10-21 13:10:24 -04:00
Brad King 3c326476ee Simplify 'strip' and 'ranlib' install tweak code
The cmInstallTargetGenerator methods AddStripRule and AddRanlibRule do
not need the target type argument.  They can simply use the type of the
target for which the generator instance was created.
2009-10-21 13:09:55 -04:00