/contrib/ntp/bootstrap
https://bitbucket.org/freebsd/freebsd-head/ · Shell · 120 lines · 40 code · 20 blank · 60 comment · 5 complexity · c02e9b9bc44252dee985c1a7bc072561 MD5 · raw file
- #! /bin/sh
- # This "bootstrap" script performs various pre-autoreconf actions
- # that are required after pulling fresh sources from the repository.
- #
- # NOTE: THE NTP VERSION NUMBER COMES FROM packageinfo.sh
- #
- # all other instances of it anywhere in the source base have propagated
- # from this one source.
- #
- # To use the raw sources from the repository, you must have the following
- # tools available to you:
- #
- # 1. Autoconf and Automake.
- #
- # 2. lynx. This is used to extract the COPYRIGHT file extracted from
- # the html documentation.
- #
- # *** The following are no longer needed for simple builds from the repo
- # 3. AutoGen. The repository does *not* contain the files generated from
- # the option definition files and it does not contain the libopts
- # tear-off/redistributable library.
- #
- # Note: AutoGen needs GNU Guile.
- #
- # 4. gunzip. The tear-off library is a gzipped tarball.
- set -e
- scripts/genver
- # autoreconf says:
- # The environment variables AUTOCONF, AUTOHEADER, AUTOMAKE, ACLOCAL,
- # AUTOPOINT, LIBTOOLIZE, M4 are honored.
- AUTORECONF=${AUTORECONF:-autoreconf}
- case `hostname` in
- pogo.udel.edu)
- if fgrep -q 4.2.4 version.m4; then
- AUTOCONF=autoconf-2.59
- AUTOHEADER=autoheader-2.59
- AUTOMAKE=automake-1.9
- ACLOCAL=aclocal-1.9
- export AUTOCONF AUTOHEADER AUTOMAKE ACLOCAL
- fi
- ;;
- esac
- # 20060629: HMS: Let's try checking in libopts and the autogen-generated files
- ## The copy for ntp...
- #rm -rf libopts*
- #gunzip -c $(autoopts-config --libsrc) | (
- # tar -xvf -
- # mv libopts-*.*.* libopts )
- ## The copy for sntp...
- #rm -rf sntp/libopts*
- #gunzip -c $(autoopts-config --libsrc) | (
- # cd sntp
- # tar -xvf -
- # mv libopts-*.*.* libopts )
- def_files=`find [B-Za-z]* -type f -name '*.def' -print | fgrep -v /SCCS/`
- prog_opt_files=`grep -l '^prog.name' $def_files`
- ## AutoGen stuff
- #incdir=${PWD}/include
- #for f in ${prog_opt_files}
- #do
- # ( cd $(dirname ${f})
- # echo "Running autogen on $f..."
- # autogen -L${incdir} $(basename ${f})
- # ) || exit 1
- #done
- ## Non-AutoGen stuff
- for i in autogen-version.def version.def
- do
- cmp -s include/$i sntp/$i || cp -p include/$i sntp/$i
- done
- # touch the stuff generated by the opt files
- for f in ${prog_opt_files}
- do
- f=`echo $f | sed -e 's/-opts.def//'`
- l=
- for i in `ls -1 $f*`
- do
- case "$i" in
- *.c|*.h|*.1|*.texi|*.menu)
- l="$l $i"
- ;;
- esac
- done
- case "$l" in
- '') ;;
- *) touch $l
- ;;
- esac
- done
- ## EOAutoGen stuff
- cp bincheck.mf sntp/
- ${AUTORECONF} -i -v
- # HMS: 20060618: Now that we use separate copies of libopts
- # we should only need the previous line.
- #
- ## HMS: 20060615: the next line seems to be needed to make sure
- ## we get the correct srcdir path in sntp/libopts/Makefile.in
- #rm -rf sntp/autom4te.cache
- #
- #(cd sntp && ${AUTORECONF} -i -v)