mirror of
https://github.com/systemd/systemd
synced 2024-09-06 16:56:43 +00:00
![Daan De Meyer](/assets/img/avatar_default.png)
I contributed this option to LLVM a while ago to reduce the amount of changes clang-format makes when formatting systemd source files. As LLVM 11 is now starting to becomes widely available, let's configure it in the clang-format config.
125 lines
3.7 KiB
YAML
125 lines
3.7 KiB
YAML
# This configuration file can be used to auto-format the code base.
|
|
# Not all guidelines specified in CODING_STYLE are followed, so the
|
|
# result MUST NOT be committed indiscriminately, but each automated
|
|
# change should be reviewed and only the appropriate ones commited.
|
|
#
|
|
# The easiest way to apply the formatting to your changes ONLY,
|
|
# is to use the git-clang-format script (usually installed with clang-format).
|
|
#
|
|
# - Fix up formatting before committing
|
|
# 1. Edit and stage your files.
|
|
# 2. Run `git clang-format`.
|
|
# 3. Verify + correct + (un)stage changes.
|
|
# 4. Commit.
|
|
#
|
|
# - Fix up formatting after committing
|
|
# 1. Commit your changes.
|
|
# 2. Run `git clang-format HEAD~` - Refer the commit *before* your changes here.
|
|
# 3. Verify + correct changes, `git difftool -d` can help here.
|
|
# 4. Stage + commit, potentially with `--amend` (means to fixup the last commit).
|
|
#
|
|
# To run clang-format on all sourcefiles, use the following line:
|
|
# $ git ls-files 'src/*.[ch]' 'src/*.cc' | xargs clang-format -i -style=file
|
|
#
|
|
# You can find more information on the different config parameters in this file here:
|
|
# https://clang.llvm.org/docs/ClangFormatStyleOptions.html
|
|
---
|
|
AccessModifierOffset: -4
|
|
AlignAfterOpenBracket: AlwaysBreak
|
|
AlignEscapedNewlines: Left
|
|
AlignOperands: false
|
|
AllowShortFunctionsOnASingleLine: None
|
|
AlwaysBreakBeforeMultilineStrings: true
|
|
AlwaysBreakTemplateDeclarations: Yes
|
|
BinPackArguments: false
|
|
BinPackParameters: false
|
|
BraceWrapping:
|
|
AfterEnum: false
|
|
SplitEmptyFunction: false
|
|
SplitEmptyRecord: false
|
|
SplitEmptyNamespace: false
|
|
BreakBeforeBraces: Custom
|
|
BreakInheritanceList: BeforeComma
|
|
BreakBeforeTernaryOperators: false
|
|
BreakStringLiterals: false
|
|
ColumnLimit: 109
|
|
CompactNamespaces: true
|
|
ConstructorInitializerAllOnOneLineOrOnePerLine: true
|
|
ConstructorInitializerIndentWidth: 8
|
|
ContinuationIndentWidth: 8
|
|
Cpp11BracedListStyle: false
|
|
ForEachMacros:
|
|
- BITMAP_FOREACH
|
|
- CMSG_FOREACH
|
|
- _DNS_ANSWER_FOREACH
|
|
- DNS_ANSWER_FOREACH
|
|
- _DNS_ANSWER_FOREACH_FLAGS
|
|
- DNS_ANSWER_FOREACH_FLAGS
|
|
- _DNS_ANSWER_FOREACH_FULL
|
|
- DNS_ANSWER_FOREACH_FULL
|
|
- _DNS_ANSWER_FOREACH_IFINDEX
|
|
- DNS_ANSWER_FOREACH_IFINDEX
|
|
- _DNS_QUESTION_FOREACH
|
|
- DNS_QUESTION_FOREACH
|
|
- FDSET_FOREACH
|
|
- FOREACH_BTRFS_IOCTL_SEARCH_HEADER
|
|
- FOREACH_DEVICE
|
|
- FOREACH_DEVICE_AND_SUBSYSTEM
|
|
- FOREACH_DEVICE_DEVLINK
|
|
- FOREACH_DEVICE_PROPERTY
|
|
- FOREACH_DEVICE_SYSATTR
|
|
- FOREACH_DEVICE_TAG
|
|
- FOREACH_DIRENT
|
|
- FOREACH_DIRENT_ALL
|
|
- FOREACH_INOTIFY_EVENT
|
|
- FOREACH_STRING
|
|
- FOREACH_SUBSYSTEM
|
|
- HASHMAP_FOREACH
|
|
- HASHMAP_FOREACH_IDX
|
|
- HASHMAP_FOREACH_KEY
|
|
- JOURNAL_FOREACH_DATA_RETVAL
|
|
- JSON_VARIANT_ARRAY_FOREACH
|
|
- JSON_VARIANT_OBJECT_FOREACH
|
|
- LIST_FOREACH
|
|
- LIST_FOREACH_AFTER
|
|
- LIST_FOREACH_BEFORE
|
|
- LIST_FOREACH_OTHERS
|
|
- LIST_FOREACH_SAFE
|
|
- MESSAGE_FOREACH_PART
|
|
- NULSTR_FOREACH
|
|
- NULSTR_FOREACH_PAIR
|
|
- OBJECT_PATH_FOREACH_PREFIX
|
|
- ORDERED_HASHMAP_FOREACH
|
|
- ORDERED_HASHMAP_FOREACH_KEY
|
|
- ORDERED_SET_FOREACH
|
|
- PATH_FOREACH_PREFIX
|
|
- PATH_FOREACH_PREFIX_MORE
|
|
- SD_HWDB_FOREACH_PROPERTY
|
|
- SD_JOURNAL_FOREACH
|
|
- SD_JOURNAL_FOREACH_BACKWARDS
|
|
- SD_JOURNAL_FOREACH_DATA
|
|
- SD_JOURNAL_FOREACH_FIELD
|
|
- SD_JOURNAL_FOREACH_UNIQUE
|
|
- SECCOMP_FOREACH_LOCAL_ARCH
|
|
- SET_FOREACH
|
|
- SET_FOREACH_MOVE
|
|
- STRV_FOREACH
|
|
- STRV_FOREACH_BACKWARDS
|
|
- STRV_FOREACH_PAIR
|
|
IndentPPDirectives: AfterHash
|
|
IndentWidth: 8
|
|
IndentWrappedFunctionNames: true
|
|
MaxEmptyLinesToKeep: 2
|
|
PenaltyBreakAssignment: 65
|
|
PenaltyBreakBeforeFirstCallParameter: 16
|
|
PenaltyBreakComment: 320
|
|
PenaltyBreakFirstLessLess: 50
|
|
PenaltyBreakString: 0
|
|
PenaltyExcessCharacter: 10
|
|
PenaltyReturnTypeOnItsOwnLine: 100
|
|
SpaceAfterCStyleCast: true
|
|
SpaceBeforeParens: ControlStatementsExceptForEachMacros
|
|
SpacesInAngles: true
|
|
TabWidth: 8
|
|
UseCRLF: false
|