| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| | |
Apply fix-its from clang-tidy's performance-faster-string-find checker.
Ignore findings in kwsys.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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"
|
| | |
|
| |
| |
| |
| | |
Also, prefer the character overload.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | | |
Do not bother looping over all targets if we have no system include
directories to add anyway.
|
| | |
| | |
| | |
| | |
| | | |
All generators use cmLocalGenerator::GetIncludeDirectories to construct
the final list of include directories for a target.
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
25d1ef64 Use enums defined in cmOutputConverter using their fully qualified name.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
| |_|/
|/| | |
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
adbd3985 CPack/Deb possibility to change package name
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
|\ \ \
| |_|/
|/| |
| | |
| | |
| | | |
06ca7795 CPackIFW: Command cpack_ifw_configure_component learned ESSENTIAL option
222fa595 CPackIFW: Doc decoration
|
| |/ |
|
|/ |
|
|\
| |
| |
| |
| | |
f4d3c44c Fix support for large RPATH updates (#16105)
|
| |
| |
| |
| |
| | |
Avoid using a KWSys RegularExpression to search for RPATH substrings.
It cannot handle large expressions.
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
40bee43a cmCPackDragNDropGenerator: Replace std::{ostringstream => string}
|
| | | |
|
| |/
|/| |
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | | |
This gives us a central location to revise paths.
|
| | |
| | |
| | |
| | |
| | | |
In WriteLinkStatement we convert all target output paths to ninja-style
paths. Add a missing conversion for the `soname` file name.
|
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | |
| | | |
All paths generated on Ninja-invoked command lines should be passed
through ConvertToNinjaPath. Fix ConvertToLinkReference to call this
instead of partially duplicating its implementation.
|
| | | |
|
| | | |
|
| |/
| |
| |
| |
| |
| | |
In `AppendTargetOutputs` we generate a logical build target name for
each UTILITY command. Simplify the logic to avoid testing the result
of `ConvertToNinjaPath`.
|
|\ \
| | |
| | |
| | |
| | |
| | | |
41199f8c CPackIFW: Add support for Promoting Updates
6ca6b0dd CPackIFW: Add more known QtIFW releases
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
|/ / |
|
|\ \
| | |
| | |
| | |
| | | |
edcccde7 file: Sort GLOB results to make it deterministic (#14491)
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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/).
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
d7233a04 GHS: Use shorter object file names on collision
|
| | |/
| |/| |
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | | |
030556b7 cmListFileLexer: Revise C++ coding style using clang-format
e4a92dab cmListFileLexer: Update to flex 2.6
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Manually extract the C++ portion of `cmListFileLexer.in.l` into a
temporary file, format it, and then move it back into the original file.
Manually format C++ code inside the lexer actions to match our style.
Then re-generate the lexer.
|
| |/ /
| | |
| | |
| | |
| | |
| | | |
Revise the documented modifications we need to make to the
flex-generated source file according to the needs of the new version.
Update our own implementation to avoid warnings with flex types.
|
|/ / |
|
|\ \
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
d9fd2f54 Revise C++ coding style using clang-format
82df6dea Empty commit at end of history preceding clang-format style transition
6a13f43f CONTRIBUTING: Add a section on coding style
bf451d9f Add a script to run clang-format on the entire source tree
1e90d78f Configure clang-format for CMake source tree
da60adc3 Tell Git to use a distinct conflict marker size in `.rst` files
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Run the `Utilities/Scripts/clang-format.bash` script to update
all our C++ code to a new style defined by `.clang-format`.
Use `clang-format` version 3.8.
* If you reached this commit for a line in `git blame`, re-run the blame
operation starting at the parent of this commit to see older history
for the content.
* See the parent commit for instructions to rebase a change across this
style transition commit.
|
|\ \
| |/
| |
| |
| | |
c7006d2e cmGeneratorTarget: Protect macro code layout from clang-format
|
| |
| |
| |
| |
| |
| |
| | |
The `IMPLEMENT_VISIT_IMPL` macro must preserve a space before the `>`
character in case the `DATATYPE` is a template type ending in `>`.
Manually format the macro layout as clang-format would except for this
space. Then add markup to tell clang-format not to format this macro.
|