-aclocal --force || die "Failed to run aclocal."
-autoheader --force || die "Failed to run autoheader."
-libtoolize --force --copy || die "Failed to run libtoolize."
-automake --force --add-missing || die "Failed to run automake."
-autoconf --force || die "Failed to run autoconf."
+test -d m4 || mkdir m4
+test -d lib || mkdir lib
+
+git submodule update --init || echo "Failed to update Gnulib sources from git."
+if test -x gnulib/gnulib-tool; then
+ gnulib/gnulib-tool --update || die "Failed to update gnulib."
+else
+ die "Gnulib sources are not properly installed in gnulib/"
+fi
+
+aclocal -I m4 || die "Failed to run aclocal."
+autoheader || die "Failed to run autoheader."
+libtoolize --copy || die "Failed to run libtoolize."
+automake --add-missing || die "Failed to run automake."
+autoconf || die "Failed to run autoconf."