File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / ntp / bootstrap
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Tue May 29 12:08:37 2012 UTC (12 years, 6 months ago) by misho
Branches: ntp, MAIN
CVS tags: v4_2_6p5p0, v4_2_6p5, HEAD
ntp 4.2.6p5

    1: #! /bin/sh
    2: 
    3: #  This "bootstrap" script performs various pre-autoreconf actions
    4: #  that are required after pulling fresh sources from the repository.
    5: #
    6: #  --force is supported and will be passed to autoreconf
    7: #
    8: #  NOTE:  THE NTP VERSION NUMBER COMES FROM packageinfo.sh
    9: #
   10: #  all other instances of it anywhere in the source base have propagated
   11: #  from this one source.
   12: #
   13: #  To use the raw sources from the repository, you must have the following
   14: #  tools available to you:
   15: #
   16: #  1.  Autoconf and Automake.
   17: #
   18: #  2.  lynx.  This is used to extract the COPYRIGHT file extracted from
   19: #      the html documentation.
   20: #
   21: #  *** The following are no longer needed for simple builds from the repo
   22: #  3.  AutoGen.  The repository does *not* contain the files generated from
   23: #      the option definition files and it does not contain the libopts
   24: #      tear-off/redistributable library.
   25: #
   26: #      Note: AutoGen needs GNU Guile.
   27: #
   28: #  4.  gunzip.  The tear-off library is a gzipped tarball.
   29: 
   30: set -e
   31: 
   32: scripts/genver || { echo scripts/genver failed ; exit 1; }
   33: 
   34: # autoreconf says:
   35: # The environment variables AUTOCONF, AUTOHEADER, AUTOMAKE, ACLOCAL,
   36: # AUTOPOINT, LIBTOOLIZE, M4 are honored.
   37: 
   38: AUTORECONF=${AUTORECONF:-autoreconf}
   39: 
   40: case `hostname` in
   41:  pogo.udel.edu)
   42:     if fgrep -q 4.2.4 version.m4; then
   43: 	AUTOCONF=autoconf-2.59
   44: 	AUTOHEADER=autoheader-2.59
   45: 	AUTOMAKE=automake-1.9
   46: 	ACLOCAL=aclocal-1.9
   47: 	export AUTOCONF AUTOHEADER AUTOMAKE ACLOCAL
   48:     fi
   49:     ;;
   50: esac
   51: 
   52: # 20060629: HMS: Let's try checking in libopts and the autogen-generated files
   53: ## The copy for ntp...
   54: #rm -rf libopts*
   55: #gunzip -c $(autoopts-config --libsrc) | (
   56: #  tar -xvf -
   57: #  mv libopts-*.*.* libopts )
   58: 
   59: ## The copy for sntp...
   60: #rm -rf sntp/libopts*
   61: #gunzip -c $(autoopts-config --libsrc) | (
   62: #  cd sntp
   63: #  tar -xvf -
   64: #  mv libopts-*.*.* libopts )
   65: 
   66: def_files=`find [B-Za-z]* -type f -name '*.def' -print | fgrep -v /SCCS/`
   67: prog_opt_files=`grep -l '^prog.name' $def_files`
   68: 
   69: ## AutoGen stuff
   70: 
   71: #incdir=${PWD}/include
   72: 
   73: #for f in ${prog_opt_files}
   74: #do
   75: #  ( cd $(dirname ${f})
   76: #    echo "Running autogen on $f..."
   77: #    autogen -L${incdir} $(basename ${f})
   78: #  ) || exit 1
   79: #done
   80: 
   81: ## Non-AutoGen stuff
   82: 
   83: for i in autogen-version.def version.def version.texi
   84: do
   85:     cmp -s include/$i sntp/$i || cp -fp include/$i sntp/$i
   86: done
   87: 
   88: # touch the stuff generated by the opt files
   89: 
   90: for f in ${prog_opt_files}
   91: do
   92:     f=`echo $f | sed -e 's/-opts.def//'`
   93:     l=
   94:     lh=
   95:     for i in `ls -1 $f*`
   96:     do
   97: 	case "$i" in
   98: 	 *.c|*.h|*.1|*.texi|*.menu)
   99: 	    l="$l $i"
  100: 	    ;;
  101: 	 *.html)
  102: 	    lh="$lh $i"
  103: 	    ;;
  104: 	esac
  105:     done
  106:     case "$l:$lh" in
  107:      ':') ;;
  108:      *) touch $l $lh
  109: 	;;
  110:     esac
  111: done
  112: 
  113: ## EOAutoGen stuff
  114: 
  115: # Yacc/bison files ntp_parser.[ch] so we don't require the tool if
  116: # ntp_parser.y hasn't been updated.  At the same time, keyword-gen-utd
  117: # and ntp_keyword.h which are derived from ntp_parser.h and
  118: # keyword-gen.c.
  119: 
  120: touch ntpd/ntp_parser.[ch] ntpd/keyword-gen-utd ntpd/ntp_keyword.h
  121: 
  122: cp bincheck.mf sntp/
  123: cp depsver.mf sntp/
  124: 
  125: ${AUTORECONF} -i -v --no-recursive "$@"
  126: 
  127: # DH: 20101120: We are back to a single copy of libopts, and
  128: # once again it seems we need to run autoreconf in sntp after
  129: # the top-level run to get a correct sntp/libopts/Makefile.in.
  130: # To reduce redundancy, the top-level autoreconf uses --no-recursive.
  131: #
  132: # HMS: 20060618: Now that we use separate copies of libopts
  133: # we should only need the previous line.
  134: #
  135: ## HMS: 20060615: the next line seems to be needed to make sure
  136: ## we get the correct srcdir path in sntp/libopts/Makefile.in
  137: #rm -rf sntp/autom4te.cache
  138: #
  139: (cd sntp && ${AUTORECONF} -i -v "$@")

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>