summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Xcode: Each target dependency edge needs a unique object (#13935)Brad King2013-02-193-33/+19
| | | | | | | | | | | | | Generate a unique PBXTargetDependency and PBXContainerItemProxy for every edge in the dependency graph as required by the Xcode format. Xcode only accidentally loads project files that re-use the same PBXTargetDependency for every edge leading to a single target. If one is removed by hand in the IDE then Xcode may crash due to dangling references from the others. Since cmGlobalXCodeGenerator::AddDependTarget is called exactly once for every edge in the target dependency graph we do not need to keep track of which edges have been visited to avoid generating duplicates.
* Xcode: Drop check for circular target dependenciesBrad King2013-02-191-18/+0
| | | | | | The modern cmComputeTargetDepends guarantees there will by no cycles. Drop the Xcode generator's check which only handled length 1 and 2 cycles anyway.
* Merge topic 'ninja-custom-command-implicit'Brad King2013-02-191-1/+1
|\ | | | | | | | | bbea30e Ninja: remove implicit dependency on custom command outputs
| * Ninja: remove implicit dependency on custom command outputsPeter Kümmel2013-02-161-1/+1
| | | | | | | | | | | | | | Revert aa2e1e9caef92b10083a03c2ded5c937703e69b8 With this commit all files are rebuild when only one moc file has changed. BUG 0013874
* | Merge topic 'sublime-text-2-generator'Brad King2013-02-194-0/+598
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f616ff2 Update generator to use new cmGeneratorTarget api. 674bd6e Merge branch 'master' into sublime-text-2-generator 4760ead Remove ability to generate sublime clang files. da0898e Correct missing parameter to CMP0018Flags call. badb40d Merge branch 'master' into sublime-text-2-generator b3ae61f Merge branch 'master' into sublime-text-2-generator 089d9cc SublimeText 2 Gen: Set the sublimeclang_options_script property. 44c2eee Merge branch 'master' into sublime-text-2-generator 304b885 Sublime Text 2 Gen: Per-source Compile flags are now saved in a separate file. 5b2aa3d SublimeText2 Gen: Fixed the issue where include directory flags used -D 90bcb77 SublimeText2 Gen: Improved use of define, include flags from CMAKE_C(XX)_FLAGS cc84072 Merge branch 'master' into sublime-text-2-generator 8670cbe Define flags in CMAKE_C(XX)_FLAGS are now included in SublimeClang settings. d022d4e Merge branch 'master' into sublime-text-2-generator 9cd3e70 Fixed Sublime Text project generation for in-source builds 44f35f7 Added a CMAKE_SUBLIMECLANG_DISABLED variable that disables SublimeClang. ...
| * | Update generator to use new cmGeneratorTarget api.Robert Maynard2013-02-191-11/+14
| | |
| * | Merge branch 'master' into sublime-text-2-generatorRobert Maynard2013-02-19125-505/+2300
| |\ \
| * | | Remove ability to generate sublime clang files.Robert Maynard2013-02-193-109/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SublimeClang is a optional plugin to SublimeText and I felt it shouldn't be part of the generator for the following reasons: 1. Reduces the amount of sublime and sublimeClang specific code we have to maintain inside CMake. 2. In testing the SublimeClang commands generated did not work for the VTK project. For people that do want this feature I recommend that they looking into https://gist.github.com/robertmaynard/4724705 for a way to use CMAKE_EXPORT_COMPILE_COMMANDS to generate JSON files that can be used by SublimeClang.
| * | | Correct missing parameter to CMP0018Flags call.Robert Maynard2013-02-191-1/+1
| | | |
| * | | Merge branch 'master' into sublime-text-2-generatorRobert Maynard2013-02-19277-3158/+7118
| |\ \ \ | | | | | | | | | | | | | | | | | | | | Resolve conflict in Source/cmDocumentVariables.cxx by adding both variables.
| * \ \ \ Merge branch 'master' into sublime-text-2-generatorMorné Chamberlain2012-11-24128-989/+1542
| |\ \ \ \
| * | | | | SublimeText 2 Gen: Set the sublimeclang_options_script property.Morné Chamberlain2012-11-242-1/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The sublimeclang_options_script property is now set in the project file. It is set to execute a python script that reads the JSON options file to get options per source file. Python must be installed and in the path for this feature to work from Sublime Text.
| * | | | | Merge branch 'master' into sublime-text-2-generatorMorné Chamberlain2012-11-11134-740/+2479
| |\ \ \ \ \
| * | | | | | Sublime Text 2 Gen: Per-source Compile flags are now saved in a separate file.Morné Chamberlain2012-11-112-160/+263
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We no longer write sublimeclang_options to the project file, but instead write a separate .sublimeclang-options JSON file that contains a map of source file paths to compile flags for that file.
| * | | | | | SublimeText2 Gen: Fixed the issue where include directory flags used -DMorné Chamberlain2012-11-071-1/+1
| | | | | | |
| * | | | | | SublimeText2 Gen: Improved use of define, include flags from CMAKE_C(XX)_FLAGSMorné Chamberlain2012-11-042-19/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Both define and include flags from CMAKE_C(XX)_FLAGS are now included in SublimeClang options. Include directories are now used with absolute paths instead of relative paths since CMake generated build trees cannot be moved anyway.
| * | | | | | Merge branch 'master' into sublime-text-2-generatorMorné Chamberlain2012-11-0453-1059/+2004
| |\ \ \ \ \ \
| * | | | | | | Define flags in CMAKE_C(XX)_FLAGS are now included in SublimeClang settings.Morné Chamberlain2012-10-182-19/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changed the the SublimeText2 generator name to Sublime Text 2. Fixed a minor issue where if the build directory was outside of the source directory an unnecessary folder_exclude_pattern was generated in the Sublime Text 2 project file.
| * | | | | | | Merge branch 'master' into sublime-text-2-generatorMorné Chamberlain2012-10-1778-186/+933
| |\ \ \ \ \ \ \
| * | | | | | | | Fixed Sublime Text project generation for in-source buildsMorné Chamberlain2012-10-141-14/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed the issue where for in-source builds the source directory (which is also the build directory) was excluded from the project file.
| * | | | | | | | Added a CMAKE_SUBLIMECLANG_DISABLED variable that disables SublimeClang.Morné Chamberlain2012-10-142-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the CMAKE_SUBLIMECLANG_DISABLED variable is on then SublimeClang is disabled in the generated project file. This is useful in large projects where SublimeClang might run slowly or perform poorly.
| * | | | | | | | The generator no longer generates absolute paths to the ninja.build/Makefiles.Morné Chamberlain2012-10-141-5/+4
| | | | | | | | |
| * | | | | | | | The generator no longer generates an explicit list of source files.Morné Chamberlain2012-10-142-154/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now the source directory is simply added to the project file, with the output/build directory excluded.
| * | | | | | | | Added and cleaned up some comments.Morné Chamberlain2012-10-132-3/+13
| | | | | | | | |
| * | | | | | | | Fixed support for the Ninja build system.Morné Chamberlain2012-10-131-10/+31
| | | | | | | | |
| * | | | | | | | Cleaned up the Sublime Text 2 Generator code a bit.Morné Chamberlain2012-10-132-86/+130
| | | | | | | | |
| * | | | | | | | Changed SublimeClang include path generation to expand to absolute paths.Morné Chamberlain2012-10-131-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed an issue where compiler definitions for SublimeClang were not written to the project file.
| * | | | | | | | Added some support for sublimeclang_options in the generated project file.Morné Chamberlain2012-10-132-8/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds -I include path flags and -D define flags for sublimeclang. The current problem with this is that these flags cannot be set per target (build_system in sublime text), it can only be set project wide. Currently all of the include paths and compiler definitions from ALL of the targets are used (with duplicates removed). This could be problematic in some cases (conflicting compiler definitions among targets).
| * | | | | | | | Added a generator for Sublime Text 2 project files.Morné Chamberlain2012-10-134-0/+456
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The generator adds all list and source files for each defined project. The generated project files also include build_system entries that run the platform-specific make on the generated Makefiles. A build_system entry is created for each target that was defined in the CMakeLists.txt files. At the moment this has only been tested with C/C++ projects.
* | | | | | | | | CMake Nightly Date StampKitware Robot2013-02-191-1/+1
| | | | | | | | |
* | | | | | | | | CMake Nightly Date StampKitware Robot2013-02-181-1/+1
| | | | | | | | |
* | | | | | | | | CMake Nightly Date StampKitware Robot2013-02-171-1/+1
| | | | | | | | |
* | | | | | | | | CMake Nightly Date StampKitware Robot2013-02-161-1/+1
| |_|_|_|_|_|_|/ |/| | | | | | |
* | | | | | | | Merge topic 'vs-atomic-generated-stamp'Brad King2013-02-151-3/+12
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2dc17f8 VS: Replace generation timestamp file atomically
| * | | | | | | | VS: Replace generation timestamp file atomicallyBrad King2013-02-121-3/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 34c882a9 (Allow VS 7 project Rebuild and Solution Rebuild to work, 2007-11-10) we use a "CMakeFiles/generated.stamp" and some associated files in the build tree to avoid re-running CMake when the inputs have not changed but VS has cleaned the outputs it knows about. When we do not really need to re-run we restore the generated.stamp file. The non-re-run case can happen in multiple targets in parallel in VS >= 10 so we must restore the file atomically to avoid races. Write the stamp file to a random temporary name and then atomically rename it to the real stamp file.
* | | | | | | | | Merge topic 'rpath-use-implicit-link-dirs'Brad King2013-02-153-4/+53
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 95a9c80 Merge topic 'LINK_LIBRARIES-property' into rpath-use-implicit-link-dirs baa33ac AIX-GNU: Put implicit link directories in runtime libpath (#13909) 171b099 Avoid duplicate RPATH entries
| * \ \ \ \ \ \ \ \ Merge topic 'LINK_LIBRARIES-property' into rpath-use-implicit-link-dirsBrad King2013-02-14441-5149/+10215
| |\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolve a logical conflict in the signature of cmTarget::GetLinkClosure.
| * | | | | | | | | | AIX-GNU: Put implicit link directories in runtime libpath (#13909)Brad King2013-02-143-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The GNU compiler front-ends on AIX invoke the linker with flags of the form "-L/path/to/gnu/runtime/lib" to tell ld where to find the language runtime libraries. They depend on the default libpath behavior documented in "man ld" to add the -L paths also to the runtime libpath so the dynamic loader can find the language runtime libraries. This differs from platforms whose linkers have distinct -rpath flags that non-system compilers can use to tell the dynamic loader where to find their language runtime libraries. Since commit 96fd5909 (Implement linking with paths to library files, 2008-01-22) CMake always passes "-Wl,-blibpath:" followed by any project-defined RPATH plus "/usr/lib:/lib" in order to explicitly set the runtime libpath and avoid getting all the project -L paths in the runtime libpath. The explicit libpath prevents the GNU compiler runtime library -L paths from being placed in the libpath and then the dynamic loader fails to find the language runtime libraries. CMake already detects the implicit link directories for each language since commit 07ea19ad (Implicit link info for C, CXX, and Fortran, 2009-07-23). Add the implicit link directories to the explicit runtime libpath for GNU compilers on AIX to fix this use case.
| * | | | | | | | | | Avoid duplicate RPATH entriesBrad King2013-02-141-4/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Teach cmComputeLinkInformation::GetRPath to avoid adding the same directory to the output runtime path more than once.
* | | | | | | | | | | Merge topic 'OpenMP-doc'Brad King2013-02-151-1/+3
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 77fd5e5 FindOpenMP: improve documentation (#13895)
| * | | | | | | | | | | FindOpenMP: improve documentation (#13895)Rolf Eike Beer2013-02-131-1/+3
| | | | | | | | | | | |
* | | | | | | | | | | | Merge topic 'windows-ce-vs-subsystem'Brad King2013-02-151-2/+20
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cf82d1e VS: Specify WinCE subsystems correctly in VS 9 2008 8f4cae7 VS: Specify WinCE subsystem also for DLLs
| * | | | | | | | | | | | VS: Specify WinCE subsystems correctly in VS 9 2008Mark Salisbury2013-02-131-3/+17
| | | | | | | | | | | | |
| * | | | | | | | | | | | VS: Specify WinCE subsystem also for DLLsMark Salisbury2013-02-131-0/+4
| |/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a link error in VS 2005: unresolved external symbol __DllMainCRTStartup@12.
* | | | | | | | | | | | Merge topic 'Embarcadero-linker-flags'Brad King2013-02-151-1/+1
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 188b0e9 Embarcadero: Fix default link stack/heap flags (#13912)
| * | | | | | | | | | | | Embarcadero: Fix default link stack/heap flags (#13912)Brad King2013-02-131-1/+1
| |/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit c70beb4b (change the default borland stack size, 2003-05-05), commit 1b572eb9 (remove -H flags, 2003-05-08), and commit 2d411398 (Stack size in generated programs should be 10 meg, 2003-06-12) CMake adds link flags to select a 10MB stack. At the time this was for consistency with our behavior on MS, but that was recently removed by commit 51af1da3 (Remove "/STACK:10000000" from default linker flags, 2012-11-23). Change our Embarcadero link flags to select the default stack and heap settings according to the compiler documentation. This is more reliable than leaving the flags out completely as it has been reported that the linker does not always use its documented defaults. Suggested-by: Mathäus Mendel <contato@mathausmendel.com>
* | | | | | | | | | | | Merge topic 'file-REMOVE_RECURSE-symlink'Brad King2013-02-151-1/+2
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f123367 file: Do not remove symlinked directories recursively (#10538)
| * | | | | | | | | | | | file: Do not remove symlinked directories recursively (#10538)Brad King2013-02-131-1/+2
| |/ / / / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If a symlink points at a directory the symlink should be removed but not the content of the directory.
* | | | | | | | | | | | Merge topic 'linked-usage-cleanup'Brad King2013-02-1535-496/+267
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fde949d Don't add target-specific interface includes and defines to Qt 4 targets. 79ae968 Revert "Add a way to exclude INTERFACE properties from exported targets." 71bf96e Revert "find_package: Reword <package>_NO_INTERFACES documentation" 3df36b5 Revert "Add the $<LINKED:...> generator expression." e1f9080 Don't populate INTERFACE includes and defines properties in tll. 567c8d1 Revert "Don't allow utility or global targets in the LINKED expression." a1c4905 Use the link information as a source of compile definitions and includes. 5c9f5e3 Don't use LINKED where not needed. 5b88504 Rename the IncludeDirectoriesEntry to be more generic. b030323 Fix determination of when we're evaluating compile definitions.
| * | | | | | | | | | | | Don't add target-specific interface includes and defines to Qt 4 targets.Stephen Kelly2013-02-131-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a partial revert of commit c8ee07d0 (FindQt4: Add INTERFACE includes and defines to Qt4 targets, 2012-12-31).