From 6d85ba384f35ff51200f27461b54457488fc27ce Mon Sep 17 00:00:00 2001 From: Nicolas Williams Date: Tue, 19 Jan 2021 14:23:58 -0600 Subject: [PATCH] clang-format generated code for easier debugging --- cf/Makefile.am.common | 13 +++++++++++-- configure.ac | 1 + 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/cf/Makefile.am.common b/cf/Makefile.am.common index 72b22d304..e79bb62ee 100644 --- a/cf/Makefile.am.common +++ b/cf/Makefile.am.common @@ -143,11 +143,20 @@ check-local:: SUFFIXES += .x .z .hx +# It's useful for debugging to format generated sources. The default for all +# clang-format styles is to sort includes, but in many cases in-tree we really +# don't want to do that. .x.c: - @cmp -s $< $@ 2> /dev/null || cp $< $@ + @if [ -z "$(CLANG_FORMAT)" ]; then \ + cmp -s $< $@ 2> /dev/null || cp $< $@; \ + else \ + cp $< $@.tmp.c; \ + $(CLANG_FORMAT) -style='{BasedOnStyle: Chromium, SortIncludes: false}' -i $@.tmp.c; \ + cmp -s $@.tmp.c $@ 2> /dev/null || mv $@.tmp.c $@; \ + fi .hx.h: - @cmp -s $< $@ 2> /dev/null || cp $< $@ + @cmp -s $< $@ 2> /dev/null || cp $< $@; SUFFIXES += .1 .3 .5 .7 .8 .cat1 .cat3 .cat5 .cat7 .cat8 diff --git a/configure.ac b/configure.ac index 396d978ee..1c4267179 100644 --- a/configure.ac +++ b/configure.ac @@ -18,6 +18,7 @@ dnl Checks for programs. AC_PROG_CC AM_PROG_CC_C_O AC_PROG_CPP +AC_CHECK_PROG(CLANG_FORMAT, clang-format, [clang-format], [no]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])