]> git.draconx.ca Git - liblbx.git/blob - bootstrap
Trivial manual fixes.
[liblbx.git] / bootstrap
1 #!/bin/sh
2 #
3 # Copyright © 2011-2012, 2021, 2023 Nick Bowler
4 #
5 # Simple script to get started from a fresh git checkout.
6 #
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.
10
11 scriptname=$0
12
13 err() {
14   printf '%s: %s\n' "$scriptname" "$*" 1>&2
15 }
16
17 die() {
18   err "$@"
19   exit 1
20 }
21
22 : ${AUTORECONF=autoreconf}
23 : ${AUTOMAKE=automake}
24 : ${GNULIB=gnulib}
25 : ${GIT=git}
26 : ${PERL=perl}
27
28 $GIT submodule update --init || err "Failed to update submodules from git."
29
30 if test -x $GNULIB/gnulib-tool; then
31   $GNULIB/gnulib-tool --update -S || die "Failed to update Gnulib."
32 else
33   err "Gnulib sources are not properly installed in $GNULIB/"
34   cat >&2 <<'EOF'
35
36 To bootstrap this package using an external Gnulib, you can set the GNULIB
37 environment variable to indicate the location of the Gnulib sources.
38 EOF
39
40   test ! -f configure || cat >&2 <<'EOF'
41
42 However, it seems this package is already bootstrapped.  It should not
43 normally be necessary to run this script from a release tarball.
44 EOF
45   exit 1
46 fi
47
48 $PERL common/scripts/fix-gnulib.pl -o lib/gnulib.mk -i lib/gnulib.mk.in \
49   || die "Failed to fixup Gnulib makefile fragment."
50
51 # Punt some automake-generated files so that Gentoo's wrapper script doesn't
52 # try to detect the automake version in use.
53 rm -f Makefile.in aclocal.m4
54 $AUTORECONF -fis || exit
55
56 amdir=`$AUTOMAKE --print-libdir`
57 if test -f "$amdir/INSTALL"; then
58   ln -sf "$amdir/INSTALL" INSTALL
59 fi