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
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
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
b22e5d0ab7
Remove some obsolete declarations
...
Ensure that cmStandardIncludes.h is included before any platform header
in cmGeneratorExpressionEvaluator.h. That file needs to change as
a result of removal of the cmMakefile.h header from
cmGeneratorExpressionNode.h, affecting the compilation of
cmGeneratorExpressionNode.cxx.
On AIX we need to include our own headers first to get large file
support macros defined consistently within system headers. The old
order in this header worked only because it was always included after
other headers.
2015-10-27 21:52:47 +01:00
Stephen Kelly
00b8c0a8d4
cmLocalGenerator: Add IsRootMakefile API
2015-10-27 07:44:21 +01:00
Stephen Kelly
d90c9738da
Makefiles: Remove some unneeded casts
2015-10-26 22:30:18 +01:00
Stephen Kelly
4bc65d76f1
Makefiles: Port to cmGeneratorTarget.
2015-10-24 09:19:53 +02:00
Stephen Kelly
4c41e74da5
Use cmLocalGenerator at generate-time.
2015-10-24 09:19:53 +02:00
Stephen Kelly
67b2f4312c
Port to GetGeneratorTargets.
2015-10-24 09:19:53 +02:00
Stephen Kelly
f528e6bcb9
Makefiles: Port progress marks to cmGeneratorTarget.
2015-10-24 09:19:53 +02:00
Stephen Kelly
a8c0fbcc19
cmLocalGenerator: Store a vector of generator targets.
...
Not a map from cmTarget to cmGeneratorTarget.
2015-10-21 23:21:01 +02:00
Stephen Kelly
400e3d19fc
cmLocalGenerator: Don't store imported generator targets
...
No consumers need them. This makes GetGeneratorTargets more comparable
to cmMakefile::GetTargets, which does not include imported targets.
2015-10-20 23:58:48 +02:00
Stephen Kelly
ed09f3b292
Use IsImported from cmGeneratorTarget.
2015-10-16 20:24:44 +02:00
Brad King
f13521317a
Merge topic 'clean-up-cmTarget'
...
55474e61
cmState: Move GetTargetTypeName from cmTarget.
38df5c36
Remove now-obsolete casts.
4ee2b267
cmGeneratorTarget: Use enum for GetType.
eac15298
cmState: Move TargetType enum from cmTarget.
482b3811
cmTarget: Move link type enum out.
2ee1cb85
cmTarget: Move ImportInfoMap out of internal class.
a48bcabd
cmTarget: Move backtrace member out of internal class.
6694d993
cmTarget: Remove unneeded constructors.
983c00f8
Generators: Use GetType from the cmGeneratorTarget.
2015-10-16 09:35:34 -04: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
7f5ec9f109
cmLocalGenerator: Port GetTargetDirectory to cmGeneratorTarget.
2015-10-15 00:33:12 +02:00
Stephen Kelly
c8f8f16541
cmLocalUnixMakefileGenerator3: Port another API to cmGeneratorTarget.
2015-10-15 00:20:16 +02:00
Brad King
ad3ff60f4a
Merge topic 'genex-generator-objects'
...
2293d43d
cmLocalGenerator: Store cmGeneratorTargets.
488723f5
cmMakefile: Store container of cmExportBuildFileGenerators.
15834405
cmGeneratorExpression: Port interface to cmGeneratorTarget.
11165525
cmGeneratorExpression: Port to cmLocalGenerator.
2015-10-14 13:35:59 -04:00
Stephen Kelly
2293d43d00
cmLocalGenerator: Store cmGeneratorTargets.
...
Relieve cmMakefile of this responsibility.
2015-10-14 13:32:09 -04:00
Stephen Kelly
20b95ef8c8
cmState: Initialize default definitions immediately.
...
Don't leave this as cmMakefile responsibility.
2015-10-14 00:16:20 +02:00
Brad King
762108f3ec
Merge topic 'add-cmLocalGenerator-API'
...
223d0efe
Remove some needless GetMakefile() calls.
a367416c
cmLocalGenerator: Add current source directory accessor.
bbef3c2d
cmLocalGenerator: Add current binary directory accessor.
12cb3bdc
cmLocalGenerator: Add Home directory accessors.
72efa15d
Eclipse: Port API to cmLocalGenerator.
f2a641d6
Kate: Remove unused variables.
10cf42f5
Kate: Port API to cmLocalGenerator.
e46ef270
export: Port internal method to cmGeneratorTarget.
53d3a1c9
cmMakefile: Remove unused GetProjectName calls.
4ab2750c
cmLocalGenerator: Add GetProjectName method.
c8187f41
cmCPluginAPI: Inline code to get project name.
8c6e6dd3
cmMakefile: Inline initialization of project name.
27916f2c
cmLocalGenerator: Add cmake instance accessor.
2015-10-12 10:26:15 -04:00
Stephen Kelly
223d0efe55
Remove some needless GetMakefile() calls.
2015-10-10 11:04:39 +02:00
Stephen Kelly
bbef3c2da8
cmLocalGenerator: Add current binary directory accessor.
2015-10-10 11:04:39 +02:00
Stephen Kelly
ee44be22cb
cmGeneratorTarget: Use local GetProperty method.
2015-10-09 00:07:55 +02:00
Stephen Kelly
12cb3bdce4
cmLocalGenerator: Add Home directory accessors.
...
Reduce reasons for cmLocalGenerator to have a cmMakefile.
2015-10-09 00:00:19 +02:00
Stephen Kelly
360e4e1db0
Set the current dirs on the snapshot before creating the cmMakefile.
...
The cmMakefile should get a fully prepared snapshot and not clobber its
definitions. It should eventually be able to process list files from any
starting-point snapshot, though that is some refactoring away still.
2015-10-07 20:19:41 +02:00
Stephen Kelly
934aa454d0
Makefiles: Remove need to create local generator at configure time.
...
This method is used during try_compile.
2015-09-24 09:39:38 +02:00
Stephen Kelly
61b48e70bc
Makefiles: Port to cmOutputConverter.
2015-09-24 09:39:38 +02:00
Stephen Kelly
ff8ac8ee6a
cmLocalGenerator: Create from already-constructed cmMakefile.
...
Don't manage the lifetime of the cmMakefile with cmLocalGenerator.
2015-08-28 18:44:39 +02:00
Stephen Kelly
92041eec49
cmGlobalGenerator: Remove MakeLocalGenerator method.
...
Inline implementation to callers.
2015-08-28 18:44:38 +02:00
Stephen Kelly
acb006229d
cmGlobalGenerator: Require a snapshot to create a local generator.
2015-08-28 18:44:38 +02:00
Stephen Kelly
9b6a743b80
cmLocalGenerator: Remove Parent pointer.
2015-08-28 18:44:38 +02:00
Brad King
27e4b21dfa
Merge topic 'use-generator-target'
...
c2b7336f
cmGeneratorTarget: Move GetConfigCommonSourceFiles from cmTarget.
69329fff
cmGeneratorTarget: Move GetLanguages from cmTarget.
0431f2c4
cmGeneratorTarget: Move ComputeLinkImplementationLanguages from cmTarget.
abe9505d
cmGeneratorTarget: Move HaveBuildTreeRPath from cmTarget.
d4a24c0e
cmGeneratorTarget: Move GetLinkImplementation from cmTarget.
83981cf5
cmTarget: Add GetLinkImplMap method.
771e79a2
cmLinkItem: Add cmOptionalLinkImplementation type.
3846ebcf
cmLinkItem: Add cmLinkImplementation type.
a7f5d70d
cmGeneratorTarget: Move compile defintions processing from cmTarget.
d051086c
cmGeneratorTarget: Move compile features processing from cmTarget.
db4cb92b
cmGeneratorTarget: Move compile options processing from cmTarget.
e6ccbf6f
cmGeneratorTarget: Move include directory processing from cmTarget.
8bfb0c53
cmGeneratorTarget: Move link iface helpers from cmTarget.
2cb3e574
cmGeneratorTarget: Move GetImportLinkInterface from cmTarget.
6d3d099b
cmGeneratorTarget: Move ComputeLinkInterfaceLibraries from cmTarget.
0db9d927
cmGeneratorTarget: Move GetLinkInterfaceLibraries from cmTarget.
...
2015-08-27 10:07:32 -04:00
Brad King
6904b6efdc
Merge topic 'rm-cmLocalGenerator-Children'
...
867b5be8
cmLocalGenerator: Remove unused Children member.
6c832219
cmLocalGenerator: Implement child traversal in terms of cmState.
3fcf3837
Makefiles: Remove valueless cast.
223f4a66
cmLocalGenerator: Simplify condition.
ae026f54
cmState: Store Children states in parent state.
2015-08-27 10:04:07 -04:00
Stephen Kelly
69329fff70
cmGeneratorTarget: Move GetLanguages from cmTarget.
2015-08-26 19:46:32 +02:00
Stephen Kelly
6c832219ea
cmLocalGenerator: Implement child traversal in terms of cmState.
2015-08-24 20:05:37 +02:00
Stephen Kelly
3fcf383763
Makefiles: Remove valueless cast.
2015-08-24 20:05:37 +02:00
Stephen Kelly
7fbc56ac40
cmGlobalUnixMakefileGenerator3: Implement progress in terms of cmState.
2015-08-24 20:03:30 +02:00
Stephen Kelly
65c434e1b0
cmGlobalUnixMakefileGenerator3: Inline an IsExcluded call.
2015-08-24 20:03:29 +02:00
Stephen Kelly
3fa1b9641d
cmGlobalUnixMakefileGenerator3: Change the progress container key.
2015-08-23 18:05:13 +02:00
Stephen Kelly
04168cbb59
cmGlobalUnixMakefileGenerator3: Rename member.
2015-08-23 18:05:13 +02:00
Stephen Kelly
2394584ce2
cmGlobalGenerator: Rename progress initializer method.
2015-08-23 18:05:13 +02:00
Stephen Kelly
b9eb3cd140
cmGlobalGenerator: Move LG to target map to subclass.
...
This is the only user.
2015-08-23 18:05:01 +02:00
Stephen Kelly
dd11f72ced
cmGlobalGenerator: Base exclusion computation on cmGeneratorTarget.
2015-08-07 00:32:15 +02:00
Stephen Kelly
8d2de00244
cmGeneratorTarget: Move NeedRelinkBeforeInstall from cmTarget.
2015-08-05 18:20:47 +02:00
Michael Ensslin
1d3984780d
Makefile: Optionally disable target completion messages in build output
...
Add a TARGET_MESSAGES property to control whether Makefile targets print
the "Built target " completion messages. Default to ON to preserve
existing behavior.
2015-07-14 13:57:58 -04:00
Brad King
a4a2518dd4
cmLocalUnixMakefileGenerator3: Provide GetConfigName() accessor
...
Rename internal member from ConfigurationName to ConfigName to
match the ninja generator.
2015-07-09 09:50:05 -04:00
Brad King
001f9b3617
Add common base classes to Makefile and Ninja generators
...
Provide a place to move functionality common to both.
2015-07-09 09:50:05 -04:00
Stephen Kelly
d4a8a554ea
cmGlobalGenerator: Map local generators to generator targets.
2015-07-01 19:46:19 +02:00