From 0c2f844420608b1865b77cff1e84ce01bb9e3937 Mon Sep 17 00:00:00 2001 From: Michael Jeanson Date: Mon, 22 Mar 2021 14:44:35 -0400 Subject: [PATCH] configure: Introduce macro ae_in_git_repo This is part of an effort to standardise our autotools setup across project to simplify maintenance. Change-Id: Ifffade15ac4a15823be8ab1b6c8232624a89ab7c Signed-off-by: Michael Jeanson Signed-off-by: Mathieu Desnoyers --- configure.ac | 9 ++------- m4/ae_in_git_repo.m4 | 26 ++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 7 deletions(-) create mode 100644 m4/ae_in_git_repo.m4 diff --git a/configure.ac b/configure.ac index d5ea3ee9..1f80ffe0 100644 --- a/configure.ac +++ b/configure.ac @@ -423,11 +423,6 @@ AC_ARG_ENABLE( AM_CONDITIONAL([ENABLE_EXAMPLES], [test "x$enable_examples" != "xno"]) -# Set $IN_GIT_REPO if we're in the Git repository; the `bootstrap` file -# is not distributed in tarballs. -AS_IF([test -f "$srcdir/bootstrap"], [in_git_repo=yes], [in_git_repo=no]) -AM_CONDITIONAL([IN_GIT_REPO], [test "x$in_git_repo" = "xyes"]) - # Enable building man pages (user's intention). AC_ARG_ENABLE( man-pages, @@ -448,7 +443,7 @@ AS_IF([test "x$man_pages_opt" = "xyes"], [ AC_PATH_PROG([XMLTO], [xmlto], [no]) AS_IF([test "x$ASCIIDOC" = "xno" || test "x$XMLTO" = "xno"], [ - AS_IF([test "x$in_git_repo" = "xyes"], [ + AE_IF_IN_GIT_REPO([ # This is an error because we're in the Git repo, which # means the man pages are not already generated for us, # thus asciidoc/xmlto are required because we were asked @@ -631,7 +626,7 @@ PPRINT_PROP_BOOL([Build and install examples], $value, $PPRINT_COLOR_SUBTITLE) m4_pushdef([build_man_pages_msg], [Build and install man pages]) AS_IF([test "x$man_pages_opt" != "xno"], [ - AS_IF([test "x$in_git_repo" = "xyes"], [ + AE_IF_IN_GIT_REPO([ PPRINT_PROP_BOOL([build_man_pages_msg], 1, $PPRINT_COLOR_SUBTITLE) ], [ AS_IF([test "x$have_asciidoc_xmlto" = "xyes"], [ diff --git a/m4/ae_in_git_repo.m4 b/m4/ae_in_git_repo.m4 new file mode 100644 index 00000000..2e370fb5 --- /dev/null +++ b/m4/ae_in_git_repo.m4 @@ -0,0 +1,26 @@ +# SPDX-License-Identifier: MIT +# +# Copyright (C) 2021 Michael Jeanson +# +# ae_in_git_repo.m4 -- Check if we are building from the git repo +# +# The cache variable for this test is `ae_cv_in_git_repo`. +# +# AE_IF_IN_GIT_REPO(ACTION-IF-TRUE, [ACTION-IF-FALSE]) +# --------------------------------------------------------------------------- +AC_DEFUN([AE_IF_IN_GIT_REPO], [ + AC_CACHE_VAL([ae_cv_in_git_repo], [ + + dnl We're in the Git repository; the `bootstrap` file + dnl is not distributed in tarballs + AS_IF([test -f "$srcdir/bootstrap"], + [ae_cv_in_git_repo=yes], + [ae_cv_in_git_repo=no]) + ]) + + AS_IF([test "x$ae_cv_in_git_repo" = "xyes"], [dnl + $1 + ], [: dnl + $2 + ]) +]) -- 2.34.1