3 # Copyright © 2011-2012, 2015, 2021-2023 Nick Bowler
5 # Simple script to get started from a fresh git checkout.
7 # License WTFPL2: Do What The Fuck You Want To Public License, version 2.
8 # This is free software: you are free to do what the fuck you want to.
9 # There is NO WARRANTY, to the extent permitted by law.
13 err () { printf '%s: %s\n' "$scriptname" "$*" 1>&2; }
14 die () { err "$@"; exit 1; }
16 : ${AUTORECONF=autoreconf}
17 : ${AUTOMAKE=automake}
22 $GIT submodule update --init || err "Failed to update submodules from git."
24 if test -x $GNULIB/gnulib-tool; then
25 $GNULIB/gnulib-tool --update -S || die "Failed to update Gnulib."
26 $GNULIB/gnulib-tool --copy-file -S build-aux/config.rpath config.rpath
28 err "Gnulib sources are not properly installed in $GNULIB/"
31 To bootstrap this package using an external Gnulib, you can set the GNULIB
32 environment variable to indicate the location of the Gnulib sources.
35 test ! -f configure || cat >&2 <<'EOF'
37 However, it seems this package is already bootstrapped. It should not
38 normally be necessary to run this script from a release tarball.
43 $PERL common/scripts/fix-gnulib.pl -o lib/gnulib.mk -i lib/gnulib.mk.in \
44 || die "Failed to fixup Gnulib makefile fragment."
46 # Rewrite if ! ... construts produced by gnulib conditional dependencies
47 # as these fail in heirloom-sh.
48 sed 's/if ! *\(.*gnulib_enabled[^;]*\); then/if \1; then :; else/' \
49 m4/gnulib-comp.m4 >m4/gnulib-comp.m4.new || exit
50 mv -f m4/gnulib-comp.m4.new m4/gnulib-comp.m4 || exit
52 # Punt some automake-generated files so that Gentoo's wrapper script doesn't
53 # try to detect the automake version in use.
54 rm -f Makefile.in aclocal.m4
55 $AUTORECONF -fis || exit
57 amdir=`$AUTOMAKE --print-libdir`
58 if test -f "$amdir/INSTALL"; then
59 ln -sf "$amdir/INSTALL" INSTALL