mirror of
https://git.kernel.org/pub/scm/network/iproute2/iproute2.git
synced 2024-11-27 11:54:53 +08:00
54a0ade6d4
The codebase of iproute2 follows Linux kernel coding style, so it will be very helpful to reuse existing clang configuration file to reliably format code. For more information see kernel commit d4ef8d3ff005 ("clang-format: add configuration file"). Updated upto commit v5.0-rc1 with small number of ForEachMacros. Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Signed-off-by: David Ahern <dsahern@gmail.com>
131 lines
4.1 KiB
YAML
131 lines
4.1 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
#
|
|
# clang-format configuration file. Intended for clang-format >= 4.
|
|
#
|
|
# For more information, see:
|
|
#
|
|
# Documentation/process/clang-format.rst
|
|
# https://clang.llvm.org/docs/ClangFormat.html
|
|
# https://clang.llvm.org/docs/ClangFormatStyleOptions.html
|
|
#
|
|
---
|
|
AccessModifierOffset: -4
|
|
AlignAfterOpenBracket: Align
|
|
AlignConsecutiveAssignments: false
|
|
AlignConsecutiveDeclarations: false
|
|
#AlignEscapedNewlines: Left # Unknown to clang-format-4.0
|
|
AlignOperands: true
|
|
AlignTrailingComments: false
|
|
AllowAllParametersOfDeclarationOnNextLine: false
|
|
AllowShortBlocksOnASingleLine: false
|
|
AllowShortCaseLabelsOnASingleLine: false
|
|
AllowShortFunctionsOnASingleLine: None
|
|
AllowShortIfStatementsOnASingleLine: false
|
|
AllowShortLoopsOnASingleLine: false
|
|
AlwaysBreakAfterDefinitionReturnType: None
|
|
AlwaysBreakAfterReturnType: None
|
|
AlwaysBreakBeforeMultilineStrings: false
|
|
AlwaysBreakTemplateDeclarations: false
|
|
BinPackArguments: true
|
|
BinPackParameters: true
|
|
BraceWrapping:
|
|
AfterClass: false
|
|
AfterControlStatement: false
|
|
AfterEnum: false
|
|
AfterFunction: true
|
|
AfterNamespace: true
|
|
AfterObjCDeclaration: false
|
|
AfterStruct: false
|
|
AfterUnion: false
|
|
#AfterExternBlock: false # Unknown to clang-format-5.0
|
|
BeforeCatch: false
|
|
BeforeElse: false
|
|
IndentBraces: false
|
|
#SplitEmptyFunction: true # Unknown to clang-format-4.0
|
|
#SplitEmptyRecord: true # Unknown to clang-format-4.0
|
|
#SplitEmptyNamespace: true # Unknown to clang-format-4.0
|
|
BreakBeforeBinaryOperators: None
|
|
BreakBeforeBraces: Custom
|
|
#BreakBeforeInheritanceComma: false # Unknown to clang-format-4.0
|
|
BreakBeforeTernaryOperators: false
|
|
BreakConstructorInitializersBeforeComma: false
|
|
#BreakConstructorInitializers: BeforeComma # Unknown to clang-format-4.0
|
|
BreakAfterJavaFieldAnnotations: false
|
|
BreakStringLiterals: false
|
|
ColumnLimit: 80
|
|
CommentPragmas: '^ IWYU pragma:'
|
|
#CompactNamespaces: false # Unknown to clang-format-4.0
|
|
ConstructorInitializerAllOnOneLineOrOnePerLine: false
|
|
ConstructorInitializerIndentWidth: 8
|
|
ContinuationIndentWidth: 8
|
|
Cpp11BracedListStyle: false
|
|
DerivePointerAlignment: false
|
|
DisableFormat: false
|
|
ExperimentalAutoDetectBinPacking: false
|
|
#FixNamespaceComments: false # Unknown to clang-format-4.0
|
|
|
|
# Taken from:
|
|
# git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' include/ \
|
|
# | sed "s,^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$, - '\1'," \
|
|
# | sort | uniq
|
|
ForEachMacros:
|
|
- 'list_for_each_entry'
|
|
- 'list_for_each_entry_safe'
|
|
- 'mnl_attr_for_each_nested'
|
|
- 'hlist_for_each'
|
|
- 'hlist_for_each_safe'
|
|
- 'hlist_for_each_entry'
|
|
|
|
#IncludeBlocks: Preserve # Unknown to clang-format-5.0
|
|
IncludeCategories:
|
|
- Regex: '.*'
|
|
Priority: 1
|
|
IncludeIsMainRegex: '(Test)?$'
|
|
IndentCaseLabels: false
|
|
#IndentPPDirectives: None # Unknown to clang-format-5.0
|
|
IndentWidth: 8
|
|
IndentWrappedFunctionNames: false
|
|
JavaScriptQuotes: Leave
|
|
JavaScriptWrapImports: true
|
|
KeepEmptyLinesAtTheStartOfBlocks: false
|
|
MacroBlockBegin: ''
|
|
MacroBlockEnd: ''
|
|
MaxEmptyLinesToKeep: 1
|
|
NamespaceIndentation: Inner
|
|
#ObjCBinPackProtocolList: Auto # Unknown to clang-format-5.0
|
|
ObjCBlockIndentWidth: 8
|
|
ObjCSpaceAfterProperty: true
|
|
ObjCSpaceBeforeProtocolList: true
|
|
|
|
# Taken from git's rules
|
|
#PenaltyBreakAssignment: 10 # Unknown to clang-format-4.0
|
|
PenaltyBreakBeforeFirstCallParameter: 30
|
|
PenaltyBreakComment: 10
|
|
PenaltyBreakFirstLessLess: 0
|
|
PenaltyBreakString: 10
|
|
PenaltyExcessCharacter: 100
|
|
PenaltyReturnTypeOnItsOwnLine: 60
|
|
|
|
PointerAlignment: Right
|
|
ReflowComments: false
|
|
SortIncludes: false
|
|
#SortUsingDeclarations: false # Unknown to clang-format-4.0
|
|
SpaceAfterCStyleCast: false
|
|
SpaceAfterTemplateKeyword: true
|
|
SpaceBeforeAssignmentOperators: true
|
|
#SpaceBeforeCtorInitializerColon: true # Unknown to clang-format-5.0
|
|
#SpaceBeforeInheritanceColon: true # Unknown to clang-format-5.0
|
|
SpaceBeforeParens: ControlStatements
|
|
#SpaceBeforeRangeBasedForLoopColon: true # Unknown to clang-format-5.0
|
|
SpaceInEmptyParentheses: false
|
|
SpacesBeforeTrailingComments: 1
|
|
SpacesInAngles: false
|
|
SpacesInContainerLiterals: false
|
|
SpacesInCStyleCastParentheses: false
|
|
SpacesInParentheses: false
|
|
SpacesInSquareBrackets: false
|
|
Standard: Cpp03
|
|
TabWidth: 8
|
|
UseTab: Always
|
|
...
|