Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Octocat-spinner-32-eaf2f5

Cannot retrieve contributors at this time

executable file 102 lines (90 sloc) 2.242 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101
#!/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=${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='
argz
fnmatch
getline
getopt-gnu
gitlog-to-changelog
canonicalize-lgpl
isblank
locale
mkstemp
regex
safe-alloc
selinux-h
stpcpy
stpncpy
strchrnul
strndup
sys_wait
vasprintf
'

# Tell gnulib to:
# require LGPLv2+
# put *.m4 files in new gnulib/m4/ dir
# put *.[ch] files in new gnulib/lib/ dir.

$gnulib_tool \
  --lgpl=2 \
  --with-tests \
  --m4-base=gnulib/m4 \
  --source-base=gnulib/lib \
  --tests-base=gnulib/tests \
  --aux-dir=build/aux \
  --libtool \
  --quiet \
  --import $modules
Something went wrong with that request. Please try again.