summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVivien Kraus <vivien@planete-kraus.eu>2020-12-05 15:29:49 +0100
committerVivien Kraus <vivien@planete-kraus.eu>2021-06-05 16:08:24 +0200
commit9fd67ce5251cc6a16e11d01f9e4031111d73e3b0 (patch)
tree6480a8ffa617ad9b8d98b8b713133d29392ecd2b
parent24b2eed3efa3fb9f6f042878d28952831a28398c (diff)
Check that the code is indented on distcheck.
-rw-r--r--Makefile.am20
-rw-r--r--configure.ac5
-rw-r--r--src/Makefile.am2
3 files changed, 26 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am
index 6e77a42..d16d029 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -3,12 +3,14 @@ noinst_LTLIBRARIES =
noinst_PROGRAMS =
EXTRA_DIST =
BUILT_SOURCES =
-DISTCHECK_CONFIGURE_FLAGS = CONFIG_SHELL=$(CONFIG_SHELL) SHELL=$(SHELL)
+DISTCHECK_CONFIGURE_FLAGS = CONFIG_SHELL=$(CONFIG_SHELL) SHELL=$(SHELL) \
+ --enable-indent-check=yes
SUFFIXES =
SUBDIRS = . po man
ACLOCAL_AMFLAGS = -I m4
AM_CPPFLAGS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir)
AM_CFLAGS = $(GUILE_CFLAGS) $(NETTLE_CFLAGS)
+INDENTED =
include src/Makefile.am
include doc/Makefile.am
@@ -20,3 +22,19 @@ $(top_srcdir)/.version:
@mv $@-t $@
dist-hook:
echo $(VERSION) > $(distdir)/.tarball-version
+
+.PHONY: check-indented
+
+check-indented: $(INDENTED)
+ for source in $(INDENTED) ; do \
+ echo "Checking that $$source is indented..." ; \
+ (mkdir -p $$(dirname $$source-indented) \
+ && $(INDENT) $(srcdir)/$$source -o $$source-indented \
+ && cmp $(srcdir)/$$source $$source-indented \
+ && rm -f $$source-indented) \
+ || exit 1 ; \
+ done
+
+if INDENT_CHECK_ENABLED
+check-local: check-indented
+endif
diff --git a/configure.ac b/configure.ac
index 44d902b..9b3b3b0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,9 +3,14 @@ AC_CONFIG_SRCDIR([src/libwebidoidc.c])
AM_INIT_AUTOMAKE([subdir-objects])
AM_SILENT_RULES([yes])
+AC_ARG_ENABLE([--enable-indent-check],
+ [When running tests, also check that the source code is indented])
+
+AM_CONDITIONAL([INDENT_CHECK_ENABLED], [test "x$enable_indent_check" = "xyes"])
AC_PROG_CC
AM_MISSING_PROG([SNARF], [guile-snarf])
AM_MISSING_PROG([HELP2MAN], [help2man])
+AM_MISSING_PROG([INDENT], [indent])
LT_INIT
AC_CONFIG_HEADERS([config.h])
AM_GNU_GETTEXT([external])
diff --git a/src/Makefile.am b/src/Makefile.am
index 832391d..95a66ff 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -5,6 +5,8 @@ AM_CPPFLAGS += -I %reldir% -I $(srcdir)/%reldir%
%canon_reldir%_libwebidoidc_la_SOURCES = %reldir%/gettext.h %reldir%/libwebidoidc.c
%canon_reldir%_libwebidoidc_la_LIBADD = $(noinst_LTLIBRARIES) $(GUILE_LIBS) $(NETTLE_LIBS)
+INDENTED += $(%canon_reldir%_libwebidoidc_la_SOURCES)
+
SUFFIXES += .c .x
.c.x:
$(AM_V_GEN) $(SNARF) -o $@ $< $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(AM_CPPFLAGS) $(AM_CFLAGS) $(GUILE_CFLAGS) $(NETTLE_CFLAGS)