From 6fe2d34fffd64cee9fd43b8ed4276e6e1adc8626 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?P=C5=99emysl=20Eric=20Janouch?= Date: Sat, 30 Oct 2021 02:35:54 +0200 Subject: [PATCH] Add clang-format configuration --- .clang-format | 31 +++++++++++++++++++++++++++++++ Makefile | 2 +- 2 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 .clang-format diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..60c2f59 --- /dev/null +++ b/.clang-format @@ -0,0 +1,31 @@ +# clang-format is fairly limited, and these rules are approximate: +# - array initializers can get terribly mangled with clang-format 12.0, +# - sometimes it still aligns with space characters, +# - struct name NL { NL ... NL } NL name; is unachievable. +BasedOnStyle: GNU +ColumnLimit: 80 +IndentWidth: 4 +TabWidth: 4 +UseTab: ForContinuationAndIndentation +BreakBeforeBraces: Allman +SpaceAfterCStyleCast: true +AlignAfterOpenBracket: DontAlign +AlignOperands: DontAlign +AlignConsecutiveMacros: Consecutive +AllowAllArgumentsOnNextLine: false +AllowAllParametersOfDeclarationOnNextLine: false +AllowShortCaseLabelsOnASingleLine: true +AllowShortEnumsOnASingleLine: true +IndentGotoLabels: false + +# IncludeCategories has some potential, but it may also break the build. +# Note that the documentation says the value should be "Never". +SortIncludes: false + +# This is a compromise, it generally works out aesthetically better. +BinPackArguments: false + +# Unfortunately, this can't be told to align to column 40 or so. +SpacesBeforeTrailingComments: 2 + +StatementMacros: ['CODE', 'DB', 'DW', 'DD', 'DQ'] diff --git a/Makefile b/Makefile index d25311c..a7ff775 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -# All we need is C99 and POSIX, which this should make available +# All we need is C99 and POSIX.1-2001, which this should make available CFLAGS = -std=gnu99 NAMES = bfc-amd64-linux bfc-amd64-openbsd