#! /bin/bash # Gnulib files in zmanda repo are from gnulib CVS updated with: # cvs update -D '2007-10-25 17:00:00 -0600' # get to the project root cd `dirname $0`/../.. if [ ! -f configure.in ] then echo "Cannot navigate to project root" exit 1 fi # check that gnulib-tool is available before we do anything drastic [ -z "${GNULIB_TOOL}" ] && GNULIB_TOOL=gnulib-tool "${GNULIB_TOOL}" --version >/dev/null 2>/dev/null if [ "$?" != 0 ] then echo "gnulib-tool not found; try using" echo " GNULIB_TOOL=/path/to/gnulib-tool ${0} ${@}" exit 1 fi # remove the files in gnulib and config/gnulib, but not directories # (and, in particular, not the gnulib/regenerate directory) shopt -s nullglob for filename in gnulib/* config/gnulib/* do [ -d "${filename}" ] && continue echo "Removing ${filename}" rm "${filename}" || exit 1 done shopt -u nullglob ########################## DEVELOPERS! ############################### ## Add your modules here, then see below if you need to patch them. ## ###################################################################### GNULIB_MODULES="getaddrinfo lock visibility base64 physmem fsusage mkdtemp" ###################################################################### ## End modules ## ###################################################################### # create a brand new gnulib directory "${GNULIB_TOOL}" --import \ --dir=. --lib=libgnu --source-base=gnulib --m4-base=config/gnulib \ --doc-base=doc --aux-dir=config --libtool --macro-prefix=gl \ ${GNULIB_MODULES} || exit 1 ########################## DEVELOPERS! ############################### ## Add your patch commands here, or use sed invoacations, etc. ## ## Please comment heavily! ## ###################################################################### PATCH_DIR="`pwd`/gnulib/regenerate" # Patch Makefile.am to not error out on warnings patch -p0 < "${PATCH_DIR}/no-error.patch" || exit 1 # Add John's patches to getaddrinfo.c for use in cygwin patch -p0 < "${PATCH_DIR}/getaddrinfo-cygwin.patch" || exit 1 # Add info to the makefile to ensure all this stuff gets put in # the distribution tarball ( echo "" echo "# Make sure regenerate/* are in the distribution tarball" echo "EXTRA_DIST += "`cd gnulib; find regenerate -name .svn -prune -o -type f -print ` ) >> gnulib/Makefile.am ###################################################################### ## End patches ## ######################################################################