CODING_STYLE: clang-format

parent 0c9119fc
...@@ -16,6 +16,50 @@ ...@@ -16,6 +16,50 @@
style and add their Signed-off-by line to it. This is especially helpful to style and add their Signed-off-by line to it. This is especially helpful to
make it easier for first-time contributors and to prevent having pull make it easier for first-time contributors and to prevent having pull
requests being stuck in the merge queue because of minor details. requests being stuck in the merge queue because of minor details.
- We currently do not provide automatic coding style checks but if a suitable
tool is found we are happy to integrate it into our test suite. It is
possible and recommended to use the `clang-format` binary to check your code.
The following options are an approximation of the coding style used here.
Simply create a file called `.clang-format` in your home directory with the
following options:
```sh
cat << EOF > "${HOME}"/.clang-format
BreakBeforeBraces: Attach
AlwaysBreakBeforeMultilineStrings: false
BreakBeforeBinaryOperators: None
MaxEmptyLinesToKeep: 1
PenaltyBreakBeforeFirstCallParameter: 1000000
BinPackArguments: true
BinPackParameters: true
AllowAllParametersOfDeclarationOnNextLine: false
AlignAfterOpenBracket: true
SpacesInSquareBrackets: false
SpacesInCStyleCastParentheses: false
SpaceInEmptyParentheses: false
SpaceBeforeParens: ControlStatements
SpaceAfterCStyleCast: false
SortIncludes: true
PenaltyReturnTypeOnItsOwnLine: 10000
PenaltyExcessCharacter: 10
Language: Cpp
ForEachMacros: ['lxc_list_for_each', 'lxc_list_for_each_safe']
AllowShortLoopsOnASingleLine: false
AllowShortIfStatementsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortCaseLabelsOnASingleLine: false
AllowShortBlocksOnASingleLine: false
BasedOnStyle: LLVM
TabWidth: 8
IndentWidth: 8
UseTab: Always
BreakBeforeBraces: Linux
AllowShortIfStatementsOnASingleLine: false
IndentCaseLabels: false
EOF
```
However, it will not handle all cases correctly. For example, most `struct`
initializations will not be correct. In such cases please refer to the coding
style here.
#### Only Use Tabs #### Only Use Tabs
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment