On Thu, Dec 05, 2024 at 07:50:02PM +0530, Ayush Singh wrote: > Add clang-format config based on Linux kernel clang-format config. > Allows for consistent formatting rules for all future contributions. > > Signed-off-by: Ayush Singh <ayush@xxxxxxxxxxxxxxx> Merged, thanks. > --- > Derived from the discussion in the following patch [0]. > > [0]: https://lore.kernel.org/devicetree-compiler/6b2dba90-3c52-4933-88f3-b47f96dc7710@xxxxxxxxxxxxxxx/T/#m1f35fa93f8fa2d38d9c6c0e6eaf7718d69b4a7a0 > --- > Changes in v2: > - Update ForEachMacros list for dtc. > - Also update the command to generate the ForEachMacros list. Not > specifying any particular folder since the dtc source is pretty small > and header files are spread out. > - Link to v1: https://lore.kernel.org/r/20241204-clang-format-v1-1-ad9105ca196e@xxxxxxxxxxxxxxx > --- > .clang-format | 135 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 135 insertions(+) > > diff --git a/.clang-format b/.clang-format > new file mode 100644 > index 0000000000000000000000000000000000000000..e5d1518bd42c9ff296731c1593d94511a7d82044 > --- /dev/null > +++ b/.clang-format > @@ -0,0 +1,135 @@ > +# SPDX-License-Identifier: GPL-2.0 > +# > +# clang-format configuration file. Intended for clang-format >= 11. > +# > +# For more information, see: > +# > +# Documentation/dev-tools/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 > +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 > + BeforeCatch: false > + BeforeElse: false > + IndentBraces: false > + SplitEmptyFunction: true > + SplitEmptyRecord: true > + SplitEmptyNamespace: true > +BreakBeforeBinaryOperators: None > +BreakBeforeBraces: Custom > +BreakBeforeInheritanceComma: false > +BreakBeforeTernaryOperators: false > +BreakConstructorInitializersBeforeComma: false > +BreakConstructorInitializers: BeforeComma > +BreakAfterJavaFieldAnnotations: false > +BreakStringLiterals: false > +ColumnLimit: 80 > +CommentPragmas: '^ IWYU pragma:' > +CompactNamespaces: false > +ConstructorInitializerAllOnOneLineOrOnePerLine: false > +ConstructorInitializerIndentWidth: 8 > +ContinuationIndentWidth: 8 > +Cpp11BracedListStyle: false > +DerivePointerAlignment: false > +DisableFormat: false > +ExperimentalAutoDetectBinPacking: false > +FixNamespaceComments: false > + > +# Taken from: > +# git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' \ > +# | sed "s,^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$, - '\1'," \ > +# | LC_ALL=C sort -u > +ForEachMacros: > + - 'fdt_for_each_property_offset' > + - 'fdt_for_each_subnode' > + - 'for_each_child' > + - 'for_each_child_withdel' > + - 'for_each_label' > + - 'for_each_label_withdel' > + - 'for_each_marker' > + - 'for_each_marker_of_type' > + - 'for_each_property' > + - 'for_each_property_withdel' > + > +IncludeBlocks: Preserve > +IncludeCategories: > + - Regex: '.*' > + Priority: 1 > +IncludeIsMainRegex: '(Test)?$' > +IndentCaseLabels: false > +IndentGotoLabels: false > +IndentPPDirectives: None > +IndentWidth: 8 > +IndentWrappedFunctionNames: false > +JavaScriptQuotes: Leave > +JavaScriptWrapImports: true > +KeepEmptyLinesAtTheStartOfBlocks: false > +MacroBlockBegin: '' > +MacroBlockEnd: '' > +MaxEmptyLinesToKeep: 1 > +NamespaceIndentation: None > +ObjCBinPackProtocolList: Auto > +ObjCBlockIndentWidth: 8 > +ObjCSpaceAfterProperty: true > +ObjCSpaceBeforeProtocolList: true > + > +# Taken from git's rules > +PenaltyBreakAssignment: 10 > +PenaltyBreakBeforeFirstCallParameter: 30 > +PenaltyBreakComment: 10 > +PenaltyBreakFirstLessLess: 0 > +PenaltyBreakString: 10 > +PenaltyExcessCharacter: 100 > +PenaltyReturnTypeOnItsOwnLine: 60 > + > +PointerAlignment: Right > +ReflowComments: false > +SortIncludes: false > +SortUsingDeclarations: false > +SpaceAfterCStyleCast: false > +SpaceAfterTemplateKeyword: true > +SpaceBeforeAssignmentOperators: true > +SpaceBeforeCtorInitializerColon: true > +SpaceBeforeInheritanceColon: true > +SpaceBeforeParens: ControlStatementsExceptForEachMacros > +SpaceBeforeRangeBasedForLoopColon: true > +SpaceInEmptyParentheses: false > +SpacesBeforeTrailingComments: 1 > +SpacesInAngles: false > +SpacesInContainerLiterals: false > +SpacesInCStyleCastParentheses: false > +SpacesInParentheses: false > +SpacesInSquareBrackets: false > +Standard: Cpp03 > +TabWidth: 8 > +UseTab: Always > +... > > --- > base-commit: 6f183c7d9246bde8f05d2edbc31fdd497c4a8702 > change-id: 20241204-clang-format-2536dd18a7c5 > > Best regards, -- David Gibson (he or they) | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you, not the other way | around. http://www.ozlabs.org/~dgibson
Attachment:
signature.asc
Description: PGP signature