summaryrefslogtreecommitdiffstats
path: root/Source
Commit message (Collapse)AuthorAgeFilesLines
* 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 '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
* | | | | CMake Nightly Date StampKitware Robot2016-05-251-1/+1
| |_|/ / |/| | |
* | | | Merge topic 'cpack-deb-different-package-names'Brad King2016-05-241-4/+4
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | adbd3985 CPack/Deb possibility to change package name
| * | | | CPack/Deb possibility to change package nameDomen Vrankar2016-05-231-4/+4
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch preserves backward compatibility of deb package names with previous CMake versions but similarly to CPack/RPM allows to change package name format and supports DEB-DEFAULT setting that produces proper Debian package names.
* | | | Merge topic 'cpackifw-updates'Brad King2016-05-242-0/+14
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | 06ca7795 CPackIFW: Command cpack_ifw_configure_component learned ESSENTIAL option 222fa595 CPackIFW: Doc decoration
| * | | CPackIFW: Command cpack_ifw_configure_component learned ESSENTIAL optionKonstantin Podsvirov2016-05-232-0/+14
| |/ /
* | | CMake Nightly Date StampKitware Robot2016-05-241-1/+1
|/ /
* | Merge topic 'rpath-no-regex'Brad King2016-05-231-26/+22
|\ \ | |/ | | | | | | f4d3c44c Fix support for large RPATH updates (#16105)
| * Fix support for large RPATH updates (#16105)Brad King2016-05-191-26/+22
| | | | | | | | | | Avoid using a KWSys RegularExpression to search for RPATH substrings. It cannot handle large expressions.
* | CMake Nightly Date StampKitware Robot2016-05-231-1/+1
| |
* | CMake Nightly Date StampKitware Robot2016-05-221-1/+1
| |
* | CMake Nightly Date StampKitware Robot2016-05-211-1/+1
| |
* | Merge topic 'minor-cleanup'Brad King2016-05-201-5/+4
|\ \ | | | | | | | | | | | | 40bee43a cmCPackDragNDropGenerator: Replace std::{ostringstream => string}
| * | cmCPackDragNDropGenerator: Replace std::{ostringstream => string}Brad King2016-05-171-5/+4
| | |
* | | CMake Nightly Date StampKitware Robot2016-05-201-1/+1
| |/ |/|
* | Merge topic 'ninja-output-path-prefix'Brad King2016-05-197-32/+119
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | eb076692 Tests: Select RunCMake.Ninja test cases based on ninja version 8a862a4d Ninja: Support embedding of CMake as subninja project 038e7716 Ninja: Pass all build paths through a central method 7c26a6a2 Ninja: Fix path to soname-d target file ac3cdd9a Ninja: Convert object file names to ninja paths earlier d4381cb1 Ninja: Convert link library file names like all other output paths 0397c92a Ninja: Pre-compute "CMakeCache.txt" build target name 3b3ecdfa Ninja: Pre-compute "all" build target name 5ca72750 Ninja: Simplify generation of custom target logical path
| * | Ninja: Support embedding of CMake as subninja projectNicolas Despres2016-05-174-7/+70
| | | | | | | | | | | | | | | | | | Add a `CMAKE_NINJA_OUTPUT_PATH_PREFIX` variable. When it is set, CMake generates a `build.ninja` file suitable for embedding into another ninja project potentially generated by an alien generator.
| * | Ninja: Pass all build paths through a central methodNicolas Despres2016-05-174-9/+27
| | | | | | | | | | | | This gives us a central location to revise paths.
| * | Ninja: Fix path to soname-d target fileNicolas Despres2016-05-171-1/+2
| | | | | | | | | | | | | | | In WriteLinkStatement we convert all target output paths to ninja-style paths. Add a missing conversion for the `soname` file name.
| * | Ninja: Convert object file names to ninja paths earlierNicolas Despres2016-05-171-4/+6
| | | | | | | | | | | | | | | | | | In WriteObjectBuildStatement we pass object file names and directories to several places that expect paths as Ninja sees them. Convert them to Ninja paths before all such uses.
| * | Ninja: Convert link library file names like all other output pathsNicolas Despres2016-05-171-1/+2
| | | | | | | | | | | | | | | | | | All paths generated on Ninja-invoked command lines should be passed through ConvertToNinjaPath. Fix ConvertToLinkReference to call this instead of partially duplicating its implementation.
| * | Ninja: Pre-compute "CMakeCache.txt" build target nameNicolas Despres2016-05-172-2/+4
| | |
| * | Ninja: Pre-compute "all" build target nameNicolas Despres2016-05-172-2/+7
| | |
| * | Ninja: Simplify generation of custom target logical pathBrad King2016-05-171-9/+4
| |/ | | | | | | | | | | In `AppendTargetOutputs` we generate a logical build target name for each UTILITY command. Simplify the logic to avoid testing the result of `ConvertToNinjaPath`.
* | Merge topic 'cpack-ifw-updates'Brad King2016-05-197-90/+519
|\ \ | | | | | | | | | | | | | | | 41199f8c CPackIFW: Add support for Promoting Updates 6ca6b0dd CPackIFW: Add more known QtIFW releases
| * | CPackIFW: Add support for Promoting UpdatesKonstantin Podsvirov2016-05-187-90/+519
| | | | | | | | | | | | | | | | | | | | | | | | Add support for this feature added by QtIFW 2.0.3: http://doc.qt.io/qtinstallerframework/ifw-updates.html Add a `cpack_ifw_update_repository` command as porcelain.
* | | CMake Nightly Date StampKitware Robot2016-05-191-1/+1
|/ /
* | Merge topic 'file-glob-sort'Brad King2016-05-181-0/+1
|\ \ | | | | | | | | | | | | edcccde7 file: Sort GLOB results to make it deterministic (#14491)
| * | file: Sort GLOB results to make it deterministic (#14491)Reiner Herrmann2016-05-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even though the `file(GLOB)` documentation specifically warns against using it to collect a list of source files, projects often do it anyway. Since it uses `readdir()`, the list of files will be unsorted. This list is often passed directly to add_executable / add_library. Linking binaries with an unsorted list will make it unreproducible, which means that the produced binary will differ depending on the unpredictable `readdir()` order. To solve those reproducibility issues in a lot of programs (which don't explicitly `list(SORT)` the list manually), sort the resulting list of the `file(GLOB)` command. A more detailed rationale about reproducible builds is available [here](https://reproducible-builds.org/).