summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* CPackIFW: Fix attributes for Promoting Updates repository replacementKonstantin Podsvirov2016-07-051-2/+2
| | | | | Fix spelling of attributes added by commit v3.6.0-rc1~52^2 (CPackIFW: Add support for Promoting Updates, 2016-05-17).
* CMake 3.6.0-rc4v3.6.0-rc4Brad King2016-06-291-1/+1
|
* Merge branch 'revert-try_compile-config-flags' into releaseBrad King2016-06-281-8/+0
|\
| * Revert "try_compile: Honor CMAKE_<LANG>_FLAGS_<CONFIG> changes"Brad King2016-06-281-8/+0
| | | | | | | | | | | | | | | | | | | | Revert commit v3.6.0-rc1~160^2 (try_compile: Honor CMAKE_<LANG>_FLAGS_<CONFIG> changes, 2016-04-11). The behavior it introduced can break projects that depend on the lack of such behavior. We will have to introduce a policy or other mechanism to enable the behavior in a compatible way. Simply revert it for now. See issue #16174.
* | ninja, rc: ignore CMAKE_NINJA_FORCE_RESPONSE_FILE for RC filesBen Boeckel2016-06-271-2/+4
|/ | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.6.0-rc1~174^2 (Ninja: Honor CMAKE_NINJA_FORCE_RESPONSE_FILE for compile rules, 2016-04-06), Ninja learned to look for `CMAKE_NINJA_FORCE_RESPONSE_FILE` in the current scope or the environment in order to force response file usage for all compilation rules. However, on Windows, the RC compiler goes through cmcldeps which does a `replace(output, output + ".dep.obj")` on the command line. However, with a response file (which we name `output + ".rsp"`), the response file path is replaced instead causing the compiler to (correctly) complain that the response file `output + ".dep.obj.rsp"` does not exist. What needs to happen is for cmcldeps to look through the response file, replace *its* contents and place it in the `output + ".dep.obj.rsp"` file. Also add a test which actually compiles an RC file into a library and executable for all generators on Windows and additionally test `CMAKE_NINJA_FORCE_RESPONSE_FILE` for Ninja generators. Fixes #16167.
* CMake 3.6.0-rc3v3.6.0-rc3Brad King2016-06-221-1/+1
|
* Merge branch 'CodeBlocks-include-order' into releaseBrad King2016-06-171-7/+11
|\
| * cmExtraCodeBlocksGenerator: Do not shuffle include directoriesTobias Hunger2016-06-171-7/+11
| | | | | | | | | | Report include directories in a sensible order. Do not shuffle them when trying to make them unique.
* | Merge branch 'revert-vs-clang-minsize' into releaseBrad King2016-06-171-1/+0
|\ \
| * | VS: Fix regressed mapping for the cl `/Os` compiler flagBrad King2016-06-171-1/+0
| |/ | | | | | | | | | | | | | | | | | | | | | | | | In commit v3.6.0-rc1~279^2~10 (VS: in Clang/C2 toolset, setup correct compiler settings, 2016-02-18) a flag mapping was added for the clang `-Os` flag. However, this collides with a mapping we already had for the MSVC flag of the same name. This is a symptom of a larger problem in that the VS generators need a per-toolset flag map (issue #16153). For now, simply drop the new mapping and drop `-Os` from clang compiler flags in the MinSizeRel configuration. Reported-by: Felix Bruns <felixbruns@gmail.com>
* | CMake 3.6.0-rc2v3.6.0-rc2Brad King2016-06-131-1/+1
| |
* | cmake-gui: Teach Qt5 where plugins are when launched through a symlinkRobert Maynard2016-06-091-0/+34
| | | | | | | | | | | | | | | | When we are on OSX and we are launching cmake-gui from a symlink, the application will fail to launch as it can't find the qt.conf file which tells it what the name of the plugin folder is. We need to add this path BEFORE the application is constructed as that is what triggers the searching for the platform plugins
* | Merge branch 'fix-TARGET_PROPERTY-LOCATION-crash' into releaseBrad King2016-06-021-3/+9
|\ \
| * | Fix crash on $<TARGET_PROPERTY:...,LOCATION> genex (#16134)Brad King2016-06-021-3/+9
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Policy CMP0026 deprecated the LOCATION property, and we have long provided a $<TARGET_FILE:...> generator expression. However, if a project tries to use $<TARGET_PROPERTY:...,LOCATION> we should at least not crash. The compatibility implementation of the LOCATION property uses cmGlobalGenerator::CreateGenerationObjects to create the structures needed to evaluate the property before generation starts. The implementation assumed that accessing the property could only be done during configuration (via the typical get_property command use case). The $<TARGET_PROPERTY:...,LOCATION> genex causes the LOCATION property to be accessed during generation. Calling CreateGenerationObjects during generation blows away all the objects currently being used for generation and is not safe. Add a condition to call it only when configuration is not finished.
* | CMake 3.6.0-rc1 version updateBrad King2016-06-011-3/+3
|/
* Merge topic 'minor-cleanups'Brad King2016-06-012-2/+2
|\ | | | | | | | | | | bd4fef64 cmSourceFileLocation: Fix typo in comment 814e774e cmSearchPath: Fix typo in comment
| * cmSourceFileLocation: Fix typo in commentTobias Hunger2016-06-011-1/+1
| |
| * cmSearchPath: Fix typo in commentTobias Hunger2016-06-011-1/+1
| |
* | CMake Nightly Date StampKitware Robot2016-06-011-1/+1
|/
* CMake Nightly Date StampKitware Robot2016-05-311-1/+1
|
* CMake Nightly Date StampKitware Robot2016-05-301-1/+1
|
* CMake Nightly Date StampKitware Robot2016-05-291-1/+1
|
* CMake Nightly Date StampKitware Robot2016-05-281-1/+1
|
* Merge topic 'remove-needless-copies'Brad King2016-05-2732-69/+62
|\ | | | | | | | | | | 27ead963 Remove unnecessary local copies. 618fb23f Pass arguments that are not modified as const&.
| * Remove unnecessary local copies.Daniel Pfeifer2016-05-269-25/+16
| | | | | | | | | | | | | | Use clang-tidy's performance-unnecessary-copy-initialization checker. After applying the fix-its (which turns the copies into const&), revise the changes and see whether the copies can be removed entirely by using the original instead.
| * Pass arguments that are not modified as const&.Daniel Pfeifer2016-05-2624-44/+46
| | | | | | | | | | | | | | Use clang-tidy's performance-unnecessary-value-param checker to find value parameter declarations of expensive to copy types that are not modified inside the function. Ignore findings in kwsys. After applying the fix-its, manually change `const T&` to `T const&`.
* | Merge topic 'remove-needless-c_str'Brad King2016-05-2717-51/+40
|\ \ | | | | | | | | | | | | 1b2bb933 Remove redundant c_str() calls.
| * | Remove redundant c_str() calls.Daniel Pfeifer2016-05-2617-51/+40
| |/ | | | | | | | | Run clang-tidy's readability-redundant-string-cstr checker. Ignore findings in kwsys.
* | CMake Nightly Date StampKitware Robot2016-05-271-1/+1
|/
* Merge topic 'try_compile-custom-variables'Brad King2016-05-261-74/+69
|\ | | | | | | | | | | d256ba07 try_compile: Optionally forward custom platform variables to test project fb4791b3 cmCoreTryCompile: Refactor forwarding of variables to test project
| * try_compile: Optionally forward custom platform variables to test projectBrad King2016-05-251-0/+9
| | | | | | | | | | | | | | | | | | Add a `CMAKE_TRY_COMPILE_PLATFORM_VARIABLES` variable to specify a list of custom variables to be forwarded to a `try_compile` test project. This will be useful for platform information modules or toolchain files to forward some platform-specific set of variables from the host project (perhaps set in its cache) to the test project so that it can build the same way.
| * cmCoreTryCompile: Refactor forwarding of variables to test projectBrad King2016-05-251-74/+60
| | | | | | | | | | | | | | De-duplicate the logic that constructs the cmake `-D` flag used to pass variables into the test project cache. Also subsume variables that were propagated by generating `set()` commands in the project and pass them as cache entries instead.
* | Merge topic 'fix-variable-watch-leak'Brad King2016-05-261-2/+4
|\ \ | | | | | | | | | | | | 75e3e0d3 cmVariableWatch: Fix potential memory leak
| * | cmVariableWatch: Fix potential memory leakBrad King2016-05-251-2/+4
| |/ | | | | | | | | Teach cmVariableWatch::AddWatch to own the Pair it allocates until it needs to pass ownership to WatchMap.
* | Merge topic 'cpack-dmg-no-app-link'Brad King2016-05-261-5/+10
|\ \ | | | | | | | | | | | | 3acc29fc CPack/DragNDrop: Optionally disable `/Applications` symlink
| * | CPack/DragNDrop: Optionally disable `/Applications` symlinkHarry Mallon2016-05-251-5/+10
| |/
* | Merge topic 'style-cmSystemTools'Brad King2016-05-261-1/+1
|\ \ | | | | | | | | | | | | 8e801eb5 cmSystemTools: Fix indentation typo
| * | cmSystemTools: Fix indentation typoBrad King2016-05-251-1/+1
| | |
* | | CMake Nightly Date StampKitware Robot2016-05-261-1/+1
| |/ |/|
* | Merge topic 'improve-character-find-and-replace'Brad King2016-05-2536-81/+78
|\ \ | | | | | | | | | | | | | | | | | | | | | 5784747d Improve string find: prefer character overloads. 5cec953e Use std::replace for replacing chars in strings. 2a1a2033 cmExtraEclipseCDT4Generator: use std::replace. 34bc6e1f cmCTestScriptHandler: don't call find repeatedly.
| * | Improve string find: prefer character overloads.Daniel Pfeifer2016-05-2419-37/+37
| | | | | | | | | | | | | | | Apply fix-its from clang-tidy's performance-faster-string-find checker. Ignore findings in kwsys.
| * | Use std::replace for replacing chars in strings.Daniel Pfeifer2016-05-2417-36/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Find uses of `cmSystemTools::ReplaceString` where both `replace` and `with` are string literals with a size of one. Automate with: git grep -l ReplaceString | xargs sed -i "s|cmSystemTools::ReplaceString(\([^,]*\), \"\(.\)\", \"\(.\)\");|std::replace(\1.begin(), \1.end(), '\2', '\3');|g" git grep -l ReplaceString | xargs sed -i "s|cmSystemTools::ReplaceString(\([^,]*\), \"\(.\)\", \"\\\\\\\\\");|std::replace(\1.begin(), \1.end(), '\2', '\\\\\\\\');|g" git grep -l ReplaceString | xargs sed -i "s|cmSystemTools::ReplaceString(\([^,]*\), \"\\\\\\\\\", \"\(.\)\");|std::replace(\1.begin(), \1.end(), '\\\\\\\\', '\2');|g"
| * | cmExtraEclipseCDT4Generator: use std::replace.Daniel Pfeifer2016-05-241-5/+1
| | |
| * | cmCTestScriptHandler: don't call find repeatedly.Daniel Pfeifer2016-05-241-3/+4
| | | | | | | | | | | | Also, prefer the character overload.
* | | Merge topic 'standard-include-directories'Brad King2016-05-254-2/+40
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | c1340827 Add a variable to specify language-wide system include directories 44199097 cmMakefile: Optimize AddSystemIncludeDirectories for empty set a896043b GHS: Compute include directories consistently with other generators
| * | | Add a variable to specify language-wide system include directoriesBrad King2016-05-252-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Create a `CMAKE_<LANG>_STANDARD_INCLUDE_DIRECTORIES` variable to specify system include directories for for `<LANG>` compiler command lines. This plays a role for include directories as the existing `CMAKE_<LANG>_STANDARD_LIBRARIES` variable does for link libraries.
| * | | cmMakefile: Optimize AddSystemIncludeDirectories for empty setBrad King2016-05-241-0/+4
| | | | | | | | | | | | | | | | | | | | Do not bother looping over all targets if we have no system include directories to add anyway.
| * | | GHS: Compute include directories consistently with other generatorsBrad King2016-05-241-2/+4
| | | | | | | | | | | | | | | | | | | | All generators use cmLocalGenerator::GetIncludeDirectories to construct the final list of include directories for a target.
* | | | Merge topic 'output-converter-enums'Brad King2016-05-2525-302/+339
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | 25d1ef64 Use enums defined in cmOutputConverter using their fully qualified name.
| * | | | Use enums defined in cmOutputConverter using their fully qualified name.Daniel Pfeifer2016-05-2525-302/+339
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mostly automated: values=("RelativeRoot" "NONE" "FULL" "HOME" "START" "HOME_OUTPUT" "START_OUTPUT" "OutputFormat" "UNCHANGED" "MAKERULE" "SHELL" "WATCOMQUOTE" "RESPONSE" "FortranFormat" "FortranFormatNone" "FortranFormatFixed" "FortranFormatFree") for i in "${values[@]}"; do git grep -l cmLocalGenerator::$i | xargs sed -i "s|cmLocalGenerator::$i|cmOutputConverter::$i|g"; done