On 04.09.2013 04:41, Eric Blake wrote: > Automake has builtin support to prevent botched conditional nesting, > but only if you use: > if FOO > else !FOO > endif !FOO > > An example error message when using the wrong name: > > daemon/Makefile.am:378: error: else reminder (LIBVIRT_INIT_SCRIPT_SYSTEMD_TRUE) incompatible with current conditional: LIBVIRT_INIT_SCRIPT_SYSTEMD_FALSE > daemon/Makefile.am:381: error: endif reminder (LIBVIRT_INIT_SCRIPT_SYSTEMD_TRUE) incompatible with current conditional: LIBVIRT_INIT_SCRIPT_SYSTEMD_FALSE > > As our makefiles tend to have quite a bit of nested conditionals, > it's better to take advantage of the benefits of the build system > double-checking that our conditionals are well-nested, but that > requires a syntax check to enforce our usage stye. > > Alas, unlike C preprocessor and spec files, we can't use indentation > to make it easier to see how deeply nesting goes. > > * cfg.mk (sc_makefile_conditionals): New rule. > * daemon/Makefile.am: Enforce the style. > * gnulib/tests/Makefile.am: Likewise. > * python/Makefile.am: Likewise. > * src/Makefile.am: Likewise. > * tests/Makefile.am: Likewise. > * tools/Makefile.am: Likewise. > > Signed-off-by: Eric Blake <eblake@xxxxxxxxxx> > --- > cfg.mk | 8 ++ > daemon/Makefile.am | 64 +++++----- > gnulib/tests/Makefile.am | 2 +- > python/Makefile.am | 4 +- > src/Makefile.am | 326 +++++++++++++++++++++++------------------------ > tests/Makefile.am | 130 +++++++++---------- > tools/Makefile.am | 14 +- > 7 files changed, 278 insertions(+), 270 deletions(-) ACK Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list