On Thu, Jul 1, 2021 at 1:10 PM Vishal Verma <[email protected]> wrote:
>
> Copy the Linux kernel's .clang-format and modify it for ndctl. Only the
> 'ForEachMacros' section has been modified from the original kernel copy.
>
> Cc: Dan Williams <[email protected]>
> Reported-by: Ben Widawsky <[email protected]>
> Signed-off-by: Vishal Verma <[email protected]>

Nice!

Reviewed-by: Dan Williams <[email protected]>


> ---
>  .clang-format | 161 ++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 161 insertions(+)
>  create mode 100644 .clang-format
>
> diff --git a/.clang-format b/.clang-format
> new file mode 100644
> index 0000000..4e00fff
> --- /dev/null
> +++ b/.clang-format
> @@ -0,0 +1,161 @@
> +# SPDX-License-Identifier: GPL-2.0
> +#
> +# clang-format configuration file. Intended for clang-format >= 4.
> +# Copied from Linux's .clang-format
> +#
> +# For more information, see:
> +#
> +#   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:
> +# while read -r sym; do
> +#      printf "  - '%s'\n" "$sym";
> +# done < \
> +#      <(cscope -dL6 "foreach|for_each" \
> +#      | awk '{ print $4 $5 }' | grep -E 'foreach|for_each' \
> +#      | sed -e 's/#define//' \
> +#              -e 's/*//' \
> +#              -e 's/://' \
> +#              -e 's/\(.*for_each.*\)(.*/\1/' \
> +#              -e 's/\(.*foreach.*\)(.*/\1/' \
> +#      | sort -u)
> +ForEachMacros:
> +  - 'daxctl_dev_foreach'
> +  - 'daxctl_mapping_foreach'
> +  - 'daxctl_region_foreach'
> +  - 'kmod_list_foreach'
> +  - 'kmod_list_foreach_reverse'
> +  - 'list_for_each'
> +  - 'list_for_each_off'
> +  - 'list_for_each_rev'
> +  - 'list_for_each_safe'
> +  - 'list_for_each_safe_off'
> +  - 'ndctl_btt_foreach'
> +  - 'ndctl_btt_foreach_safe'
> +  - 'ndctl_bus_foreach'
> +  - 'ndctl_dax_foreach'
> +  - 'ndctl_dax_foreach_safe'
> +  - 'ndctl_dimm_foreach'
> +  - 'ndctl_dimm_foreach_in_interleave_set'
> +  - 'ndctl_dimm_foreach_in_region'
> +  - 'ndctl_interleave_set_foreach'
> +  - 'ndctl_mapping_foreach'
> +  - 'ndctl_namespace_badblock_foreach'
> +  - 'ndctl_namespace_bb_foreach'
> +  - 'ndctl_namespace_foreach'
> +  - 'ndctl_namespace_foreach_safe'
> +  - 'ndctl_pfn_foreach'
> +  - 'ndctl_pfn_foreach_safe'
> +  - 'ndctl_region_badblock_foreach'
> +  - 'ndctl_region_foreach'
> +  - 'udev_list_entry_foreach'
> +
> +#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: None
> +#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
> +...
> --
> 2.31.1
>

Reply via email to