summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix if() command and CMP0012 OLD/NEW behaviorBrad King2009-10-274-94/+127
| | | | | | | | | | | | | | 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.
* Report expanded arguments in if() command errorsBrad King2009-10-271-20/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* KWSys Nightly Date StampKWSys Robot2009-10-271-1/+1
|
* Allow for /D to change install directory on the command line.Bill Hoffman2009-10-261-4/+16
|
* Add test to enable detecting differences between generation N and N+1 of a ↵David Cole2009-10-262-0/+180
| | | | cmake generated build tree. Theoretically, each generation run with exactly the same arguments should be identical to the previous generation... Practically, there are differences. This is a tool to help us measure those differences. For now, the test always succeeds. Eventually, we may add the code to make it fail when there are differences.
* Disable run_script test for now, it is failing currently on linuxZach Mullen2009-10-261-4/+4
|
* Correct one of the valgrind errors from the CPackTestAllGenerators test. Do ↵David Cole2009-10-261-3/+6
| | | | not use auto_ptr on a new [] allocation because auto_ptr does not use delete [].
* ENH: Move SetErrorMode around calls to generate and configure instead of ↵Clinton Stimpson2009-10-262-9/+21
| | | | setting it for the whole application.
* Added test coverage for cmCTestRunScriptCommandZach Mullen2009-10-263-0/+26
|
* change to a new version of qt.Bill Hoffman2009-10-261-1/+1
|
* Skip SHARED lib Fortran test with XL and old GNUBrad King2009-10-261-1/+15
| | | | | | | | | | The commit "Test all target types in Fortran" enabled a SHARED library in the Fortran test. However, we do not yet implement support for shared libraries with XL Fortran (it seems this requires using the C compiler to link). Furthermore, the old g77 2.97 from Red Hat does not support shared libs on Itanium because the g2c lib is not -fPIC. For now we just disable SHARED libs in the test for these tools.
* Fix Intel and MinGW Fortran DLL import librariesBrad King2009-10-264-4/+7
| | | | | | | | | We add Intel and MinGW Fortran linker options to create the import library portion of a DLL. This allows other binaries to link to a Fortran DLL. We also update the Fortran test to use a .def file to specify exports since there is no __declspec(dllexport) markup syntax in Fortran.
* Fix Xcode dylib version defaultBrad King2009-10-261-10/+10
| | | | | | | | | | 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.
* Add a ctest test to cover cmCTestBatchTestHandler. Since its behavior isn't ↵Zach Mullen2009-10-262-6/+7
| | | | fully defined yet, we just run it as is and don't care much about the result.
* Revert "Always set OutputPath in VS 10 projects"Brad King2009-10-261-3/+0
| | | | | | | | | | | 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.
* KWSys Nightly Date StampKWSys Robot2009-10-261-1/+1
|
* Turn on the NSIS binary for the CPackComponents test if NSIS is found. ↵David Cole2009-10-251-4/+9
| | | | Should increase coverage of the NSIS generator on the dash16 coverage dashboard.
* KWSys Nightly Date StampKWSys Robot2009-10-251-1/+1
|
* Exclude Qt source files from coverage results.David Cole2009-10-241-0/+3
|
* KWSys Nightly Date StampKWSys Robot2009-10-241-1/+1
|
* Fix the showing of non-cpp files in the IDEBill Hoffman2009-10-231-3/+7
|
* Fix optionally-valued booleans in VS 10 flag tableBrad King2009-10-233-11/+21
| | | | | | | | | | | 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.
* Detect and set Unicode character set in VS 10Brad King2009-10-232-11/+57
| | | | | | | | 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
* Always set OutputPath in VS 10 projectsBrad King2009-10-231-4/+9
| | | | | | | | | | | 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.
* Add support for the g95 Fortran compilerBrad King2009-10-232-0/+9
| | | | | | | | | | This commit teaches CMake about the g95 compiler from http://www.g95.org We use 'G95' as the compiler id string, and add some basic flags. See issue #9241.
* Test all target types in FortranBrad King2009-10-234-3/+19
| | | | | This teaches the Fortran test to try all basic target types (archive, shared lib, exe) with Fortran-only sources.
* Fix line-too-long style violationsBrad King2009-10-234-4/+8
| | | | | The commit "Define per-target OSX_ARCHITECTURES property" introduced some long lines. This wraps them into multiple shorter lines.
* KWSys Nightly Date StampKWSys Robot2009-10-231-1/+1
|
* Add Xcode file association for FortranBrad King2009-10-221-0/+4
| | | | | | | 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.
* Fix VS 10 flag table for precompiled headersBrad King2009-10-221-3/+10
| | | | | | | | | | 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.
* Fix VS 10 .sln files for Windows ExplorerBrad King2009-10-221-1/+1
| | | | | | | This commit fixes generated .sln files so they open VS 2010 correctly when double-clicked in Windows Explorer. See issue #9758.
* Fix Microsoft.Cpp.$(Platform).user.props in VS10b2Brad King2009-10-221-6/+4
| | | | | | | 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.
* Add test of all cmake -G generators. Ignore any errors from this as not all ↵David Cole2009-10-222-0/+109
| | | | generators are expected to be usable on all machines. Help to increase coverage of the various generators and cmake.cxx itself.
* Fix up download a bit, better error checking and uses of long not double for ↵Bill Hoffman2009-10-222-38/+125
| | | | timeout as curl needs, bug# 9748
* More verbose BuildDepends test outputBrad King2009-10-221-2/+4
| | | | | We teach BuildDepends to always print the output from each try_compile. This may make debugging easier.
* WIP: VS 10 Win64 generatorBrad King2009-10-229-14/+98
| | | | See issue #9754.
* Fix for bug#9686 convert java_home to a cmake path before using.Bill Hoffman2009-10-221-5/+8
|
* KWSys Nightly Date StampKWSys Robot2009-10-221-1/+1
|
* fix for bug# 9751, add check for MSVC10Bill Hoffman2009-10-221-0/+2
|
* Fix for bugs #9756, #9690 and #9755, header files were not included, and ↵Bill Hoffman2009-10-221-8/+25
| | | | link_directories we incorrect
* Add license.Bill Hoffman2009-10-211-0/+14
|
* Clean up output a bit.Bill Hoffman2009-10-211-1/+3
|
* Add a module to test an install tree to verify that the MS CRT version is ↵Bill Hoffman2009-10-211-0/+4
| | | | correct.
* Add a module to test an install tree to verify that the MS CRT version is ↵Bill Hoffman2009-10-211-0/+91
| | | | correct.
* Use copies for versioned names on WindowsBrad King2009-10-211-0/+4
| | | | | | | | | | | | | | | 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.
* Tweak all files during target installationBrad King2009-10-212-48/+104
| | | | | | | | | | | | | 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.
* Add IS_SYMLINK test to if commandBrad King2009-10-212-0/+10
|
* Compute install destination for all target filesBrad King2009-10-211-70/+70
| | | | | | | | | 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.
* Factor out "cmake -E cmake_symlink_*" codeBrad King2009-10-212-51/+61
| | | | | | | | | | | | | | 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.
* Simplify 'strip' and 'ranlib' install tweak codeBrad King2009-10-212-8/+4
| | | | | | 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.