1#!/bin/sh
2#
3# ngIRCd -- The Next Generation IRC Daemon
4# Copyright (c)2001-2019 Alexander Barton (alex@barton.de) and Contributors
5#
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2 of the License, or
9# (at your option) any later version.
10# Please read the file COPYING, README and AUTHORS for more information.
11#
12# This script uses GNU indent(1) to format C source code files of ngIRCd.
13# Usage:
14#  - ./contrib/ngindent.sh [<file> [<file> [...]]]
15#  - cat ./src/ngircd/<c_file> | ./contrib/ngindent.sh
16
17# Use a coding-style based on "Kernighan & Ritchie" (-kr):
18INDENTARGS="-kr
19	-bad
20	-c3
21	-cd41
22	-i8
23	-l80
24	-ncs
25	-psl
26	-sob
27	-ss
28	-ts8
29	-blf
30	-il0
31"
32
33# check if indent(1) is available
34command -v indent >/dev/null 2>&1 && INDENT="indent"
35command -v gindent >/dev/null 2>&1 && INDENT="gindent"
36command -v gnuindent >/dev/null 2>&1 && INDENT="gnuindent"
37
38if [ -z "$INDENT" ]; then
39	echo "Error: GNU \"indent\" not found!"
40	exit 1
41fi
42
43# shellcheck disable=SC2086
44$INDENT -v $INDENTARGS "$@"
45
46# -eof-
47