summaryrefslogtreecommitdiffstats
path: root/Source/cmake.cxx
Commit message (Collapse)AuthorAgeFilesLines
...
* message: Add a DEPRECATION modeStephen Kelly2013-10-081-0/+9
| | | | | | By default, the message is not issued. If CMAKE_ERROR_DEPRECATED is on, the message is fatal. If CMAKE_WARN_DEPRECATED is on, the message is a warning.
* Merge topic 'split-cmake-E'Brad King2013-10-071-1355/+0
|\ | | | | | | | | c04995b cmake: Split -E command implementation into separate source file
| * cmake: Split -E command implementation into separate source fileBrad King2013-10-031-1355/+0
| | | | | | | | | | | | | | | | | | | | | | Move the cmake::ExecuteCMakeCommand static method and all the static methods it calls out of the 'cmake' class to a separate 'cmcmd' class. Build the latter as part of the main cmake executable with cmakemain.cxx and not in CMakeLib. Drop unused header includes from "cmake.cxx". By moving this implementation out of cmake.cxx we avoid carrying it around in all the executables that use class 'cmake'. It is needed only for the main "cmake -E" functionality.
* | Merge topic 'cleanup-properties'Brad King2013-10-071-7/+0
|\ \ | | | | | | | | | | | | | | | b78bc33 Cleanup some variable documentation names bbfff52 Remove redundant cmake::GetIsPropertyDefined method
| * | Remove redundant cmake::GetIsPropertyDefined methodBrad King2013-09-171-7/+0
| |/ | | | | | | We already have cmake::IsPropertyDefined for the same reason.
* | Generate graphviz files at generate time, not configure time.Stephen Kelly2013-08-291-5/+5
|/ | | | | | | | | | The feature needs access to all link libraries. In the future that will only be possible to calculate at generate-time. Even when the files were generated at configure time, they were generated after user code in CMakeLists files were generated. No policy is needed to handle manipulation of the files from CMake code, because that was never possible.
* Merge topic 'cppcheck-fixes'Brad King2013-07-161-4/+4
|\ | | | | | | | | | | | | | | a20c819 cmake: Fix resource leak reported by cppcheck c8adab9 cmcurl: Fix resource leak reported by cppcheck 499531c libarchive: Fix free() order to avoid accessing freed memory 3b849a7 ccmake: Add missing initializers reported by cppcheck
| * cmake: Fix resource leak reported by cppcheckBrad King2013-07-151-4/+4
| | | | | | | | | | | | | | Return early in cmake::ReportUndefinedPropertyAccesses if there is no global generator instead of opening a file and leaking the descriptor. Reported-by: Ömer Fadıl USTA <omerusta@gmail.com>
* | Add Target API to determine if an include is a system include.Stephen Kelly2013-07-021-1/+1
|/ | | | | The implementation can be modified later so that system includes can be determined on a per-target basis.
* Merge topic 'vs12-generator'Brad King2013-07-011-0/+4
|\ | | | | | | | | | | | | | | | | 9a76d83 VS12: Find proper MSBuild for VSProjectInSubdir test 4e5cb39 Merge branch 'master' into vs12-generator 78fdbbc FindBoost: Add -vc120 mangling for VS 12 e99d7b1 VS12: Generate flag tables from MSBuild v120 tool files 77ac9b8 VS12: Add Visual Studio 12 generator (#14251)
| * Merge branch 'master' into vs12-generatorBrad King2013-06-281-12/+24
| |\ | | | | | | | | | | | | Resolve conflicts in Tests/Preprocess/CMakeLists.txt by keeping the side from 'master'.
| * | VS12: Add Visual Studio 12 generator (#14251)Brad King2013-06-281-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Copy cmGlobalVisualStudio11Generator to cmGlobalVisualStudio12Generator and update version numbers accordingly. Add the VS12 enumeration value. Add module CMakeVS12FindMake to find MSBuild. Look for MSBuild in its now-dedicated Windows Registry entry. Teach the platform module Windows-MSVC to set MSVC12 and document the variable. Teach module InstallRequiredSystemLibraries to look for the VS 12 runtime libraries. Teach tests CheckCompilerRelatedVariables, Preprocess, VSExternalInclude, and RunCMake.GeneratorToolset to treat VS 12 as they do VS 10 and 11. Inspired-by: Minmin Gong <minmin.gong@gmail.com>
* | | automoc: add a global AUTOMOC_TARGETS_FOLDER propertyAlex Neundorf2013-06-281-0/+8
| |/ |/| | | | | | | | | | | | | | | | | This has been requested, along with a patch, by Shaun Williams in http://public.kitware.com/Bug/view.php?id=13788 . It adds a global property AUTOMOC_TARGETS_FOLDER, which can be used to group the automoc targets together in a folder e.g. in Visual Studio. Alex
* | Merge topic 'config-dependent-CMAKE_AUTOMOC'Brad King2013-06-241-1/+2
|\ \ | | | | | | | | | | | | | | | ea4d784 QtAutomoc: Use config-dependent compile definitions and includes. 67f6ceb QtAutomoc: Fix handling of list separator for compile definitions.
| * | QtAutomoc: Use config-dependent compile definitions and includes.Stephen Kelly2013-06-121-1/+2
| | | | | | | | | | | | | | | | | | | | | Instead of always using the includes and defines which are not config-specific, ensure that the config specific ones can be used. Task-number: #13589
* | | Merge topic 'add-whitespace'Brad King2013-06-241-1/+1
|\ \ \ | | | | | | | | | | | | | | | | 2331b57 Add whitespace after colons in error messages.
| * | | Add whitespace after colons in error messages.Stephen Kelly2013-06-211-1/+1
| |/ /
* | | Merge topic 'doc-E-tar-zip'Brad King2013-06-241-3/+2
|\ \ \ | | | | | | | | | | | | | | | | ae06f80 cmake: Document "-E tar" support for .zip (#14225)
| * | | cmake: Document "-E tar" support for .zip (#14225)Brad King2013-06-191-3/+2
| |/ / | | | | | | | | | | | | | | | Through use of libarchive internally we support .zip files as well as .tar format. The ExternalProject module makes use of this feature. Document support officially.
* | | Split cmBootstrapCommands.cxx into two sourcesBrad King2013-06-141-1/+2
|/ / | | | | | | | | The single translation unit has grown too large for some compilers. Split it into cmBootstrapCommands1.cxx and cmBootstrapCommands2.cxx.
* | CLI: Suppress the unused warning if the key value pair is cached.Stephen Kelly2013-06-041-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is common to specify a CMAKE_TOOLCHAIN_FILE and get a warning for using it despite it not being used. The WarnUnusedCliUnused test relies on the warning being emitted each time cmake is run on an existing build. That behavior is changed by this patch to warn only on the first invokation of CMake, and not on subsequent invokations (because the variable is in the cache with the same value). For that test, a clean target is added which clears the cache and cause the warning to be emitted each time. As the Ninja generator does not support the feature needed to test this, it is not tested with that generator.
* | Fix spelling and typos (non-binary)Andreas Mohr2013-05-071-2/+2
| |
* | Fix spelling and typos (affecting binary data / module messages)Andreas Mohr2013-05-071-1/+1
| |
* | Fix spelling and typos (affecting users)Andreas Mohr2013-05-071-2/+2
|/
* Merge topic 'sublime-text-2-generator'Brad King2013-02-191-0/+3
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. ...
| * Merge branch 'master' into sublime-text-2-generatorRobert Maynard2013-02-191-0/+17
| |\
| * \ Merge branch 'master' into sublime-text-2-generatorRobert Maynard2013-02-191-11/+45
| |\ \ | | | | | | | | | | | | | | | | Resolve conflict in Source/cmDocumentVariables.cxx by adding both variables.
| * \ \ Merge branch 'master' into sublime-text-2-generatorMorné Chamberlain2012-11-241-79/+68
| |\ \ \
| * | | | Added a generator for Sublime Text 2 project files.Morné Chamberlain2012-10-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | | | 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.
* | | | | | Fix crash on empty CMAKE_<lang>_COMPILER value (#13901)Brad King2013-02-081-1/+1
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit fd33bf93 (fix for bug 6102, allow users to change the compiler, 2007-12-13) we keep an internal ;-list of language compiler variable and value pairs. Preserve empty values on expansion to ensure that the key/value pairing remains consistent.
* | | | | Merge branch 'master' into generator-toolsetBrad King2013-02-071-0/+4
|\ \ \ \ \ | | |_|_|/ | |/| | | | | | | | We need the latest Tests/CMakeLists.txt so we can refactor all tests.
| * | | | Output include directories as LOG messages, not warnings.Stephen Kelly2013-01-211-0/+4
| | | | |
* | | | | CMake: Add -T option to choose a generator toolsetBrad King2013-02-071-0/+55
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reject the option by default. It will be implemented on a per-generator basis. Pass the setting into try_compile project generation. Add cache entry CMAKE_GENERATOR_TOOLSET and associated variable documentation to hold the value persistently. Add a RunCMake.GeneratorToolset test to cover basic "-T" option cases. Verify that CMAKE_GENERATOR_TOOLSET is empty without -T, that -T is rejected when the generator doesn't support it, and that two -T options are always rejected.
* | | | Merge topic 'compatible-INTERFACE-user-properties'Brad King2013-01-151-0/+7
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 7171fd0 Add a way to check INTERFACE user property compatibility.
| * | | | Add a way to check INTERFACE user property compatibility.Stephen Kelly2013-01-151-0/+7
| | |_|/ | |/| |
* | | | CMake: Skip empty link.txt lines (#13845)Brad King2013-01-111-0/+6
|/ / / | | | | | | | | | | | | | | | In the implementation of "cmake -E cmake_link_script", skip lines from the input file that are empty or contain only whitespace. Do not try to run a child with no command line.
* | | Fix some warnings from -WundefStephen Kelly2012-12-221-1/+1
| | | | | | | | | | | | Other warnings come from kwsys, so the flag can't be enabled.
* | | Add command to generate environment for a Windows CE SDKPatrick Gansterer2012-11-301-0/+36
| | |
* | | Always use the auto_ptr from cmsys.Stephen Kelly2012-11-201-10/+8
| |/ |/| | | | | | | | | This is for consistency throughout cmake. The cmsys version exists becaues uses of auto_ptr types as return types does not work with some implementations in ancient compilers.
* | VS: Remove platform specific generator filesPatrick Gansterer2012-11-191-21/+0
| | | | | | | | Move the whole logic into the base class and the factory.
* | Allow a GeneratorFactory handling of more than one generatorPatrick Gansterer2012-11-191-58/+62
| | | | | | | | | | | | | | | | Pass the name of the requested generator to the generator factory, which is now responsible to check if it can create a matching generator for the name. This allows us to add more logic to the factory in a next step, so that not every possible generator needs to get registered explicit in cmake::AddDefaultGenerators().
* | Search generator in cmake::ExtraGenerators before in cmake::GeneratorsPatrick Gansterer2012-11-191-19/+22
| | | | | | | | | | | | Since ExtraGenerators does not contain items, which are in Generators too, there is not change in behaviour. The benefit of this change is, that the lookup in the Generators map is now only done once.
* | Add cmGlobalGeneratorFactory::GetGenerators()Patrick Gansterer2012-11-191-1/+1
| | | | | | | | | | This allows cmGlobalGeneratorFactory to create more than one type of cmGlobalGenerator in a next step.
* | Introduce the abstract class cmGlobalGeneratorFactoryPatrick Gansterer2012-11-191-27/+30
|/ | | | | This new abstract class allows us move some logic from the cmGlobalGenerator into its own layer in a next step.
* Ninja: move -LIBPATH behind -link optionPeter Kümmel2012-10-011-1/+5
| | | | Don' pass linker option to the compile
* Revert "Ninja: don't expand any rsp files"Bill Hoffman2012-10-011-15/+7
| | | | | | | | | This reverts commit 5598d9b2a06d4ec788b5e058435bb3bba99fd517. Since commit f1670ab1 (Ninja: don't confuse ninja's rsp files with nmake's, 2012-09-26) Ninja generator response files are placed in CMakeFiles/ so the previously existing check already avoids expanding them.
* Merge topic 'use-generator-target'David Cole2012-09-251-1/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 879fd35 Revert "Move GenerateTargetManifest to cmGeneratorTarget." 6674583 Fix compiler warning with initialization order. 5285458 Add convenience for getting a cmGeneratorTarget to use. c31f3d9 Add a wrapper for accessing config-specific compile-definitions. d1446ca Append the COMPILE_DEFINITIONS from the Makefile to all targets. 290e92a Move GetIncludeDirectories to cmGeneratorTarget. f9146f6 Port cmLocalGenerator::GetTargetFlags to cmGeneratorTarget. 9facfd1 Move GetCreateRuleVariable to cmGeneratorTarget. 78bfee3 Make cmLocalGenerator::AddArchitectureFlags take a cmGeneratorTarget. 4f5384e Move GetLinkInformation to cmGeneratorTarget 987e12e Move GenerateTargetManifest to cmGeneratorTarget. 14bf778 Store cmGeneratorTargets with the makefile. f428ca2 Add more forwarding API to cmGeneratorTarget.
| * Port cmLocalGenerator::GetTargetFlags to cmGeneratorTarget.Stephen Kelly2012-09-191-1/+2
| |