From 2eb581ab2f90fbcea878f5696da3e1d7acad3c58 Mon Sep 17 00:00:00 2001 From: Niclas Zeising Date: Mon, 12 Aug 2013 13:53:10 +0200 Subject: Check submodules before running autoconf. Exit early with an informative message if the submodules are missing, since they are needed. Without this autoconf throws a bunch of uninformative errors which does not point to the actual problem. This was taken from util-keysyms. Signed-off-by: Niclas Zeising Reviewed-By: Arnaud Fontaine --- autogen.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/autogen.sh b/autogen.sh index 904cd67..afe5299 100755 --- a/autogen.sh +++ b/autogen.sh @@ -6,6 +6,21 @@ test -z "$srcdir" && srcdir=. ORIGDIR=`pwd` cd $srcdir +# If this is a git checkout, verify that the submodules are initialized, +# otherwise autotools will just fail with an unhelpful error message. +if [ -d ".git" ] && [ -r ".gitmodules" ] +then + # If git is not in PATH, this will not return 0, thus not keeping us + # from building. Since the message is worthless when git is not + # installed, this is what we want. + if git submodule status 2>/dev/null | grep -q '^-' + then + echo "You have uninitialized git submodules." >&2 + echo "Please run: git submodule update --init" >&2 + exit 1 + fi +fi + autoreconf -v --install || exit 1 cd $ORIGDIR || exit $? -- cgit v1.2.3