summaryrefslogtreecommitdiffstats
path: root/bootstrap
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2009-08-03 05:18:10 -0400
committerJim Meyering <meyering@redhat.com>2009-08-03 15:14:30 +0200
commit480a489ee4c31cb2f9c9f45941645f05b5f74c67 (patch)
treef5c37d526739c71d36499e3dc9294e3bb5199e06 /bootstrap
parent3572996364d9d24406241dee5155048440053ecf (diff)
downloadlibguestfs-480a489ee4c31cb2f9c9f45941645f05b5f74c67.tar.gz
libguestfs-480a489ee4c31cb2f9c9f45941645f05b5f74c67.tar.xz
libguestfs-480a489ee4c31cb2f9c9f45941645f05b5f74c67.zip
maint: use a git submodule for gnulib
* .gitmodules: New file, to track gnulib. * .gnulib: Submodule directory. * Makefile.am (EXTRA_DIST): Don't list config.rpath or gitlog-to-changelog. * autogen.sh: Adapt to use the new submodule. * cfg.mk: New file. (SUBDIRS): Add gnulib/lib and gnulib/tests. (dist-hook): Reflect new location of getlog-to-changelog. * configure.ac: Set build-aux/ as AUX_DIR. Invoke gl_EARLY and gl_INIT. (AC_CONFIG_FILES): Add gnulib/lib/Makefile and gnulib/tests/Makefile.
Diffstat (limited to 'bootstrap')
-rwxr-xr-xbootstrap82
1 files changed, 82 insertions, 0 deletions
diff --git a/bootstrap b/bootstrap
new file mode 100755
index 00000000..73a5e046
--- /dev/null
+++ b/bootstrap
@@ -0,0 +1,82 @@
+#!/bin/sh
+
+usage() {
+ echo >&2 "\
+Usage: $0 [OPTION]...
+Bootstrap this package from the checked-out sources.
+
+Options:
+ --gnulib-srcdir=DIRNAME Specify the local directory where gnulib
+ sources reside. Use this if you already
+ have gnulib sources on your machine, and
+ do not want to waste your bandwidth downloading
+ them again.
+
+If the file bootstrap.conf exists in the current working directory, its
+contents are read as shell variables to configure the bootstrap.
+
+Running without arguments will suffice in most cases.
+"
+}
+
+for option
+do
+ case $option in
+ --help)
+ usage
+ exit;;
+ --gnulib-srcdir=*)
+ GNULIB_SRCDIR=`expr "$option" : '--gnulib-srcdir=\(.*\)'`;;
+ *)
+ echo >&2 "$0: $option: unknown option"
+ exit 1;;
+ esac
+done
+
+# Get gnulib files.
+
+case ${GNULIB_SRCDIR--} in
+-)
+ echo "$0: getting gnulib files..."
+ git submodule init || exit $?
+ git submodule update || exit $?
+ GNULIB_SRCDIR=.gnulib
+ ;;
+*)
+ # Redirect the gnulib submodule to the directory on the command line
+ # if possible.
+ if test -d "$GNULIB_SRCDIR"/.git && \
+ git config --file .gitmodules submodule.gnulib.url >/dev/null; then
+ git submodule init
+ GNULIB_SRCDIR=`cd $GNULIB_SRCDIR && pwd`
+ git config --replace-all submodule.gnulib.url $GNULIB_SRCDIR
+ echo "$0: getting gnulib files..."
+ git submodule update || exit $?
+ GNULIB_SRCDIR=.gnulib
+ else
+ echo >&2 "$0: invalid gnulib srcdir: $GNULIB_SRCDIR"
+ exit 1
+ fi
+ ;;
+esac
+
+gnulib_tool=$GNULIB_SRCDIR/gnulib-tool
+<$gnulib_tool || exit
+
+modules='
+gitlog-to-changelog
+gnu-make
+gnumakefile
+maintainer-makefile
+manywarnings
+warnings
+vc-list-files
+'
+
+$gnulib_tool \
+ --avoid=dummy \
+ --with-tests \
+ --m4-base=gnulib/m4 \
+ --source-base=gnulib/lib \
+ --tests-base=gnulib/tests \
+ --import $modules