Kitware Robot
d9fd2f5402
Revise C++ coding style using clang-format
...
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.
2016-05-16 16:05:19 -04:00
Brad King
0ac18d40c8
Remove `//------...` horizontal separator comments
...
Modern editors provide plenty of ways to visually separate functions.
Drop the explicit comments that previously served this purpose.
Use the following command to automate the change:
$ git ls-files -z -- \
"*.c" "*.cc" "*.cpp" "*.cxx" "*.h" "*.hh" "*.hpp" "*.hxx" |
egrep -z -v "^Source/cmCommandArgumentLexer\." |
egrep -z -v "^Source/cmCommandArgumentParser(\.y|\.cxx|Tokens\.h)" |
egrep -z -v "^Source/cmDependsJavaLexer\." |
egrep -z -v "^Source/cmDependsJavaParser(\.y|\.cxx|Tokens\.h)" |
egrep -z -v "^Source/cmExprLexer\." |
egrep -z -v "^Source/cmExprParser(\.y|\.cxx|Tokens\.h)" |
egrep -z -v "^Source/cmFortranLexer\." |
egrep -z -v "^Source/cmFortranParser(\.y|\.cxx|Tokens\.h)" |
egrep -z -v "^Source/cmListFileLexer\." |
egrep -z -v "^Source/cm_sha2" |
egrep -z -v "^Source/(kwsys|CursesDialog/form)/" |
egrep -z -v "^Utilities/(KW|cm).*/" |
xargs -0 sed -i '/^\(\/\/---*\|\/\*---*\*\/\)$/ {d;}'
This avoids modifying third-party sources and generated sources.
2016-05-09 09:41:43 -04:00
Brad King
afca373510
Help clang-format wrap after braces on long initializer lists
...
Add a long comment inside a few braced initializer lists in order to
convince clang-format to break after the opening brace and format the
list without indenting every value past the opening brace.
2016-05-06 15:54:32 -04:00
Brad King
e1c7747253
Format include directive blocks and ordering with clang-format
...
Sort include directives within each block (separated by a blank line) in
lexicographic order (except to prioritize `sys/types.h` first). First
run `clang-format` with the config file:
---
SortIncludes: false
...
Commit the result temporarily. Then run `clang-format` again with:
---
SortIncludes: true
IncludeCategories:
- Regex: 'sys/types.h'
Priority: -1
...
Commit the result temporarily. Start a new branch and cherry-pick the
second commit. Manually resolve conflicts to preserve indentation of
re-ordered includes. This cleans up the include ordering without
changing any other style.
Use the following command to run `clang-format`:
$ git ls-files -z -- \
'*.c' '*.cc' '*.cpp' '*.cxx' '*.h' '*.hh' '*.hpp' '*.hxx' |
egrep -z -v '(Lexer|Parser|ParserHelper)\.' |
egrep -z -v '^Source/cm_sha2' |
egrep -z -v '^Source/(kwsys|CursesDialog/form)/' |
egrep -z -v '^Utilities/(KW|cm).*/' |
egrep -z -v '^Tests/Module/GenerateExportHeader' |
egrep -z -v '^Tests/RunCMake/CommandLine/cmake_depends/test_UTF-16LE.h' |
xargs -0 clang-format -i
This selects source files that do not come from a third-party.
Inspired-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
2016-04-29 13:58:54 -04:00
Brad King
180538c706
Source: Stabilize include order
...
Each source file has a logical first include file. Include it in an
isolated block so that tools that sort includes do not move them.
2016-04-29 13:58:31 -04:00
Daniel Pfeifer
5e62444cff
Add options to run clang-tidy with the compiler
...
Create a <LANG>_CLANG_TIDY target property (initialized by a
CMAKE_<LANG>_CLANG_TIDY variable) to specify a clang-tidy command line
to be run along with the compiler.
2016-04-13 09:56:10 -04:00
Brad King
b42866a34a
Drop Visual Studio 6 generator
...
This generator has been deprecated since CMake 3.3. Remove it.
Update documentation, modules, and tests to drop content specific
to this generator.
2016-03-09 09:42:18 -05:00
Ruslan Baratov
565d080a9a
Xcode: Add support for combined install on iOS
...
This patch solves the problem of installing both: Device and Simulator
libraries on iOS. Before only one of them was installed.
If the IOS_INSTALL_COMBINED property is set on a target, a
special install hook will be activated which builds the corresponding
target and combines both at the install location.
The original patch was contributed by Ruslan Baratov, and polished by
Gregor Jasny.
2015-12-10 22:36:12 +01:00
Brad King
2fd5fd1f4d
Merge topic 'minor-cleanups'
...
13a37f5f
cmMakefile: Fix typo in comment
958508bb
cmMakefile: Fix style
91a829c1
Makefiles: Remove unused variable
e0213882
cmTarget: Remove obsolete member
0554c2c9
cmTarget: Fix style
b22e5d0a
Remove some obsolete declarations
ce43ed2c
Use LocalGenerator when possible
d90c9738
Makefiles: Remove some unneeded casts
331023ae
Export: Remove unused variable
a03f3d0e
cmFunctionBlocker: Constify method
d50c4220
Xcode: Fix typo in comment
803f1901
Xcode: Remove trailing semicolon
2015-10-28 08:48:08 -04:00
Stephen Kelly
e021388222
cmTarget: Remove obsolete member
2015-10-27 21:54:11 +01:00
Stephen Kelly
0554c2c970
cmTarget: Fix style
2015-10-27 21:54:11 +01:00
Stephen Kelly
0fb187cc58
CMP0026: Port away from GetGeneratorTarget
2015-10-27 07:44:25 +01:00
Stephen Kelly
0c97d32f7a
cmGlobalGenerator: Remove direct storage of targets
...
Find the target by looping when needed.
2015-10-27 07:44:23 +01:00
Stephen Kelly
f210cb131e
cmTarget: Make compatbility API explicit.
2015-10-27 07:44:20 +01:00
Stephen Kelly
cf69630e51
cmGeneratorTarget: Move GetFrameworkVersion from cmTarget
2015-10-26 22:02:13 +01:00
Stephen Kelly
c6e8695508
cmTarget: Remove unused NameResolvesToFramework.
2015-10-21 00:52:23 +02:00
Stephen Kelly
91411641a7
Move ComputeLinkType out of cmTarget.
...
Keep it out of the way, so that it does not become part of cmGeneratorTarget,
but where it can be used to implement CMP0003.
2015-10-21 00:52:22 +02:00
Stephen Kelly
3ebc62850c
cmGeneratorTarget: Move HaveWellDefinedOutputFiles from cmTarget.
2015-10-21 00:52:22 +02:00
Stephen Kelly
311018e5ad
cmGeneratorTarget: Move GetExportMacro from cmTarget.
2015-10-21 00:52:22 +02:00
Stephen Kelly
d8f8940bc6
cmGeneratorTarget: Move IsCFBundleOnApple from cmTarget.
2015-10-19 20:27:41 +02:00
Stephen Kelly
7550879f57
cmGeneratorTarget: Move IsXCTestOnApple from cmTarget.
2015-10-19 20:27:41 +02:00
Stephen Kelly
8e20ea6ef2
cmGeneratorTarget: Move IsLinkable from cmTarget.
2015-10-19 20:27:40 +02:00
Stephen Kelly
eb3be7d688
cmGeneratorTarget: Move GetExportName from cmTarget.
2015-10-18 16:29:30 +02:00
Stephen Kelly
beff29f0d4
cmGeneratorTarget: Move ComputeVersionedName from cmTarget.
2015-10-16 20:24:44 +02:00
Stephen Kelly
12e4790a0b
cmGeneratorTarget: Move GetTargetVersion from cmTarget.
2015-10-16 20:24:44 +02:00
Stephen Kelly
1427227720
cmGeneratorTarget: Move CheckCMP0004 from cmTarget.
2015-10-16 20:24:44 +02:00
Stephen Kelly
8f363d6771
cmGeneratorTarget: Move ImportInfo from cmTarget.
2015-10-16 20:24:43 +02:00
Stephen Kelly
5794dbc301
cmTarget: Inline the essential part of imported target location.
2015-10-16 20:24:43 +02:00
Stephen Kelly
a892b285f8
cmGeneratorTarget: Move ImportedGetLocation from cmTarget.
2015-10-16 20:24:43 +02:00
Stephen Kelly
cb8c728f17
cmGeneratorTarget: Move GetFullNameImported from cmTarget.
2015-10-16 20:24:43 +02:00
Stephen Kelly
60bd9f9c92
cmGeneratorTarget: Move GetObjectLibrariesCMP0026 from cmTarget.
2015-10-16 20:17:22 +02:00
Stephen Kelly
55474e6182
cmState: Move GetTargetTypeName from cmTarget.
2015-10-15 00:41:40 +02:00
Stephen Kelly
eac15298a8
cmState: Move TargetType enum from cmTarget.
...
Mostly automated:
values=( "EXECUTABLE" "STATIC_LIBRARY" "SHARED_LIBRARY" "MODULE_LIBRARY" "OBJECT_LIBRARY" "UTILITY" "GLOBAL_TARGET" "INTERFACE_LIBRARY" "UNKNOWN_LIBRARY" "TargetType")
for i in "${values[@]}"; do git grep -l cmTarget::$i | xargs sed -i "s|cmTarget::$i|cmState::$i|g"; done
2015-10-15 00:41:39 +02:00
Stephen Kelly
482b3811e4
cmTarget: Move link type enum out.
...
Remove a reason for generate time code to depend on the cmTarget header/type.
2015-10-15 00:41:22 +02:00
Stephen Kelly
2ee1cb85e8
cmTarget: Move ImportInfoMap out of internal class.
2015-10-15 00:41:22 +02:00
Stephen Kelly
a48bcabd33
cmTarget: Move backtrace member out of internal class.
2015-10-15 00:41:21 +02:00
Stephen Kelly
6694d99376
cmTarget: Remove unneeded constructors.
...
The compiler generated ones are fine here.
2015-10-15 00:41:21 +02:00
Stephen Kelly
ce75c86ec3
cmGeneratorTarget: Move GetSupportDirectory from cmTarget.
2015-10-12 18:39:59 +02:00
Stephen Kelly
8d2e3e53b9
cmGeneratorTarget: Move HasImplibGNUtoMS from cmTarget.
2015-10-12 18:39:59 +02:00
Stephen Kelly
bf2d061ad3
cmGeneratorTarget: Move FindTargetToLink from cmTarget.
2015-10-12 18:39:58 +02:00
Stephen Kelly
9ca4cae51e
cmGeneratorTarget: Move GetUtilityItems from cmTarget.
2015-10-12 18:39:58 +02:00
Stephen Kelly
3e428fdcb4
cmGeneratorTarget: Move IsImportedSharedLibWithoutSOName from cmTarget.
2015-10-10 11:03:48 +02:00
Stephen Kelly
110fd2fba1
cmGeneratorTarget: Move GetOutputTargetType from cmTarget.
2015-10-10 11:03:48 +02:00
Stephen Kelly
e73916992c
cmGeneratorTarget: Move HasMacOSXRpathInstallNameDir from cmTarget.
2015-10-10 11:03:48 +02:00
Stephen Kelly
c5718217ad
cmGeneratorTarget: Move HaveInstallTreeRPATH from cmTarget.
2015-10-09 01:04:38 +02:00
Stephen Kelly
bf5eb4a3f3
cmGeneratorTarget: Move ComputePDBOutputDir from cmTarget.
2015-10-09 01:04:38 +02:00
Stephen Kelly
49017cddab
cmGeneratorTarget: Move IsNullImpliedByLinkLibraries from cmTarget.
2015-10-09 01:04:38 +02:00
Stephen Kelly
0bae4a416f
cmGeneratorTarget: Move output info from cmTarget.
2015-10-09 01:04:38 +02:00
Stephen Kelly
1abc20d81d
cmGeneratorTarget: Move UsesDefaultOutputDir from cmTarget.
2015-10-09 01:04:38 +02:00
Stephen Kelly
50dc9b4440
cmGeneratorTarget: Move GetPDBDirectory from cmTarget.
2015-10-09 01:04:37 +02:00