summaryrefslogtreecommitdiffstats
path: root/Source/cmake.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Fix incremental linking for VS2010 with nmake or make.Bill Hoffman2010-12-091-0/+4
| | | | | | VS2010 deprecated /INCREMENTAL:YES. This change makes /INCREMENTAL the flag to use for incremental linking with VS2010.
* Merge topic 'dev/fix-cache-variable-parsing-ambiguity'David Cole2010-11-231-2/+1
|\ | | | | | | | | | | | | | | 8b143fa Condense parsing of cache entries 122ebf1 Support manual cache entries 90abc3a Use cmCacheManager to load entries from the cache 6fe8624 Fix parsing of cache variables without a type
| * Condense parsing of cache entriesBen Boeckel2010-11-221-2/+1
| | | | | | | | | | If a cache line is being parsed, it shouldn't matter whether it has a type or not; just parse it however possible.
* | Move the code for generating dot-files into separate class cmGraphVizWriterAlex Neundorf2010-11-091-324/+12
| | | | | | | | Alex
* | Generate separate dot files for each target, and a big one with everything.Alex Neundorf2010-10-311-68/+140
| | | | | | | | | | | | | | | | The big all-in-one file is basically unusable for e.g. kdelibs, it contains around 1000 nodes and the created image is huuuuge ! Too big actually to be displayable or viewable or comprehensable. Alex
* | Properly insert all targets, also those which don't link to anything.Alex Neundorf2010-10-311-84/+45
| | | | | | | | Alex
* | Move the code for collecting targets and libraries into separate functionsAlex Neundorf2010-10-311-82/+126
| | | | | | | | | | | | | | Found bug: targets which don't link to anything don't get inserted in the dot file. Alex
* | Remove trailing whitespace and minor formatting changes for the dot-codeAlex Neundorf2010-10-311-97/+107
|/ | | | Alex
* Merge topic 'vs-project-groups'Brad King2010-10-051-1/+1
|\ | | | | | | | | fd3249e New USE_FOLDERS property OFF by default. (#3796)
| * New USE_FOLDERS property OFF by default. (#3796)David Cole2010-10-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Add a delay after untar on windows to make external project work on windows 7Bill Hoffman2010-09-211-0/+18
| | | | | | | | | | | | | | | | | | OK, on windows 7 after we untar some files, sometimes we can not rename the directory after the untar is done. This breaks the external project untar and rename code. So, by default we will wait 1/10th of a second after the untar. If CMAKE_UNTAR_DELAY is set in the env, its value will be used instead of 100.
* | Merge topic 'vs-project-groups'Brad King2010-09-081-0/+17
|\ \ | |/ | | | | | | e6ac0aa Add FOLDER target property, for IDEs (#3796)
| * Add FOLDER target property, for IDEs (#3796)David Cole2010-09-031-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Fix spelling errors reported by Lintian.Kai Wasserbäch2010-07-131-1/+1
|/ | | | | During a Lintian run on the binary packages of CMake in Debian I was notified of many spelling mistakes.
* Merge branch 'script-mode-keep-makeflags'Brad King2010-06-221-10/+10
|\
| * Preserve ENV{MAKEFLAGS} in CMake script modeBrad King2010-06-211-10/+10
| | | | | | | | | | | | | | | | Commit 02f7cfbc (Need to remove the MAKEFLAGS when cmake starts, 2003-05-13) removed the MAKEFLAGS environment variable when CMake starts to prevent try_compile() from inheriting "make -i". This is unnecessary in script mode (cmake -P). Instead remove the variable only when configuring a project.
* | Use full path file names to express dependencies.David Cole2010-06-211-0/+3
|/ | | | | | | | | This is especially important for the Visual Studio 10 generator and its quirky current working directory behavior. Also, emit more information about exactly what files are out of date when cmakeCheckStampFile returns false.
* Enable extra CodeBlocks generator on CygwinBrad King2010-01-131-3/+1
| | | | | This generator builds correctly on Cygwin so it should be enabled. Change based on patch from issue #10122.
* Fix mem leak reported by valgrind.David Cole2009-12-281-3/+3
|
* disable cmake's verbose output in the Eclipse and KDevelop generatorsAlexander Neundorf2009-12-231-5/+9
| | | | | | | | | | | | 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
* Remove unused DumpDocumentation codeBrad King2009-12-081-28/+0
| | | | | | | 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.
* Removed duplicated documentation entry.Zach Mullen2009-11-091-5/+0
|
* fix line length errorBill Hoffman2009-11-081-2/+3
|
* Add JOM support and clean up some of the tar -E stuffBill Hoffman2009-11-051-4/+12
|
* WIP: VS 10 Win64 generatorBrad King2009-10-221-0/+3
| | | | See issue #9754.
* 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.
* Factor out "cmake -E cmake_symlink_*" codeBrad King2009-10-211-51/+57
| | | | | | | | | | | | | | 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.
* REALLY fix color check for dependency scanningBrad King2009-10-081-2/+3
| | | | | | | The commit "Really fix color check for dependency scanning" disabled color unless "make COLOR=ON" is specified. This restores the previous default behavior when CMAKE_COLOR_MAKEFILE is ON while retaining the previous commit's fix. See issue #9680.
* Really fix color check for dependency scanningBrad King2009-10-081-1/+1
| | | | | | | The commit "Fix color check for dependency scanning" was meant to disable color if CMAKE_COLOR_MAKEFILE was off. It did remove use of the activation option '--color' but it failed to make the default false when the option was missing. This commit corrects that. See issue #9680.
* Fix warnings in CMake source code. Suppress rampant warnings emanating from ↵David Cole2009-10-011-2/+8
| | | | Qt files.
* Convert CMake to OSI-approved BSD LicenseBrad King2009-09-281-14/+9
| | | | | | | This converts the CMake license to a pure 3-clause OSI-approved BSD License. We drop the previous license clause requiring modified versions to be plainly marked. We also update the CMake copyright to cover the full development time range.
* Fix typo in nameBill Hoffman2009-09-171-1/+1
|
* Fix for bug #8969, pick a better default version for VS, and make it easier ↵Bill Hoffman2009-09-151-27/+24
| | | | to add new versions of VS to look for.
* Fix for Bug #9190, -U did not work on case insensitive file systems because ↵Bill Hoffman2009-09-141-1/+1
| | | | of call to glob convert to regex that expected to work with files.
* Remove barely-used cmCacheManager::AddCacheEntryBrad King2009-09-111-2/+3
| | | | | | | The commit "Remove barely-used cmMakefile::AddCacheDefinition" removed all but one use of the cmCacheManager method 'bool' overload. This commit removes the other use and the entire method, thus reducing code duplication.
* Simplify VS CMake re-run checkBrad King2009-09-041-11/+0
| | | | | | | | | | | | When CMake is invoked by the VS IDE re-run rule we compute whether or not CMake really needs to re-run based on some timestamp helper files. Previously we assumed that if the main generate.stamp file exists then VS has correctly detected that the file is out of date. However, this assumption is too aggressive and re-runs CMake unnecessarily sometimes. This commit removes the assumption and always checks timestamps itself. The change breaks the explicit user re-run request (R-click -> Compile) but only in cases when the build system is already up to date.
* Remove CMakeSetup. Long live cmake-gui, start building Qt now.Bill Hoffman2009-09-031-1/+1
|
* Use the MANIFEST flag for non incremental linking as well.Bill Hoffman2009-09-011-0/+1
|
* Move /MANIFEST flag into -E vs_link. This is so it can be used by the intel ↵Bill Hoffman2009-09-011-7/+2
| | | | compilers without having to specifiy it in the intel compiler files
* Handle embeded manifests with ifort.Bill Hoffman2009-09-011-1/+7
|
* Create GLOBAL_DEPENDS_NO_CYCLES propertyBrad King2009-08-241-0/+10
| | | | | This global property disallows cycles in the inter-target dependency graph even among STATIC libraries. See issue #9444.
* DOCS: fix typo (#9231)Alexander Neundorf2009-07-311-1/+1
| | | | Alex
* BUG: Do not double-initialize local generatorsBrad King2009-07-281-5/+0
| | | | | | | | | All global generator CreateLocalGenerator methods automatically initialize the local generator instances with SetGlobalGenerator. In several places we were calling SetGlobalGenerator again after receiving the return value from CreateLocalGenerator. The double-initializations leaked the resources allocated by the first call to SetGlobalGenerator. This fix removes the unnecessary calls.
* ENH: first pass at VS 10, can bootstrap CMake, but many tests still failBill Hoffman2009-06-251-0/+3
|
* STYLE: fix typos in the docsAlexander Neundorf2009-04-191-1/+1
| | | | Alex
* ENH: Create command line api "cmake -E rename"Brad King2009-04-151-0/+16
| | | | | | This extends the "-E" command line mode with a "rename old new" signature. The new command atomically renames a file or directory within a single disk volume.
* ENH: Allow projects to disable per-rule echo linesBrad King2009-03-161-7/+7
| | | | | | | | | This creates global property RULE_MESSAGES which can be set to disbale per-rule progress and action reporting. On Windows, these reports may cause a noticable delay due to the cost of starting extra processes. This feature will allow scripted builds to avoid the cost since they do not need detailed information anyway. This replaces the RULE_PROGRESS property created earlier as it is more complete. See issue #8726.
* ENH: Allow projects to disable per-rule progressBrad King2009-03-161-0/+14
| | | | | | | | This creates global property RULE_PROGRESS which can be set to disbale per-rule progress reporting. On Windows, progress reports may cause a noticable delay due to the cost of starting an extra process. This feature will allow scripted builds to avoid the cost since they do not need detailed progress anyway. See issue #8726.
* BUG: Fix cache properties for CMAKE_STRICT buildBrad King2009-03-131-1/+1
| | | | | All cmPropertyMap instances must have CMakeInstance set. This teaches cmCacheManager to set it on cache entries.
* ENH: Document CACHE entry propertiesBrad King2009-03-101-0/+1
| | | | | This adds a property documentation section for CACHE properties. We document the ADVANCED, HELPSTRING, TYPE, and VALUE properties.