#!/bin/bash
#
# $Header: /cvsroot/hungry/lesstif/scripts/ftp.hungry.com/nightly,v 1.3 2000/01/05 15:17:56 amai Exp $
#
PATH=/home/lesstif/gnu/bin:/usr/local/bin:$PATH
export PATH
NIGHTLY_DIR=/home/lesstif/nightly-stuff

#
# use our copies of the auto configuration tools
#

ACLOCAL=/usr/local/bin/aclocal
AUTOMAKE=/usr/local/bin/automake
AUTOCONF=/usr/local/bin/autoconf
AUTOHEADER=/usr/local/bin/autoheader
LIBTOOLIZE=/home/lesstif/gnu/bin/libtoolize
M4=/home/lesstif/gnu/bin/m4

export ACLOCAL
export AUTOMAKE
export AUTOCONF
export AUTOHEADER
export LIBTOOLIZE
export M4

(
  D=`date +%y%m%d`
  FTPDIR=/usr/ftp/pub/hungry/lesstif
  F=/tmp/lesstif-diff-$D
  SRC=/home/lesstif/lesstif-src
  COPY=$SRC/lesstif-current
  WEB_DIR=/usr/local/etc/htdocs-lesstif

  echo Clean up generated files
  cd $COPY
  rm -f $COPY/doc/lessdox/clients/*.html
  rm -f $COPY/doc/lessdox/widgets/*.html
  rm -f $COPY/configure
  rm -f $COPY/aclocal.m4
  rm -f $COPY/lib/Xlt/configure
  rm -f $COPY/lib/Xlt/aclocal.m4
  rm -f $COPY/lib/Xbae/configure
  rm -f $COPY/lib/Xbae/aclocal.m4
  echo done.

  echo Clean up cores.
  find . -name \*.core -exec rm -f {} \; -print
  echo done.

  echo Making daily CVS tree diff
  cd $COPY
  echo "(In directory" `pwd` ")"
#
# Creation date
#
  mv creation-date creation-date.old
  echo $D >creation-date
  diff -c creation-date.old creation-date >$F
  rm -f creation-date.old
  /usr/bin/cvs -q diff -N -c -D yesterday -D today | $NIGHTLY_DIR/cvs2patch >>$F
  gzip -f $F
  cp $F.gz $FTPDIR/diffs
  cd $FTPDIR/diffs
  ls -l $F.gz
  rm -f $F.gz
  echo done.
  echo

  echo Updating CVS tree
  cd $COPY
  echo "(In directory" `pwd` ")"
  /usr/bin/cvs -q update -d -P -I Makefile.in
  echo done.
  echo

  echo Running aclocal, libtoolize, autoheader, automake, autoconf for lesstif.
  $ACLOCAL --acdir=/home/lesstif/gnu/share/aclocal
  echo "(done running aclocal)"
  $LIBTOOLIZE --force --copy
  echo "(done running libtoolize)"
  $AUTOHEADER
  echo "(done running autoheader)"
  $AUTOMAKE -i -a -c
  echo "(done running automake)"
  $AUTOCONF
  echo done.
  echo

  echo Running autoheader, automake, and  autoconf for test tree.
  cd $COPY/test
# already done, doesn't need to be done every night!
#  ./mklinks
  $AUTOHEADER
  echo "(done running autoheader)"
  $AUTOMAKE -i
  echo "(done running automake)"
  $AUTOCONF
  echo done.
  echo

  echo Running aclocal, libtoolize, autoheader, automake, autoconf for Xlt.
  cd $COPY/lib/Xlt
  $ACLOCAL --acdir=/home/lesstif/gnu/share/aclocal
  echo "(done running aclocal)"
  $LIBTOOLIZE --force --copy
  echo "(done running libtoolize)"
  $AUTOHEADER
  echo "(done running autoheader)"
  $AUTOMAKE -i -a -c
  echo "(done running automake)"
  $AUTOCONF
  echo done.
  echo

  echo Running aclocal, libtoolize, autoheader, automake, autoconf for Xbae.
  cd $COPY/lib/Xbae
  $ACLOCAL --acdir=/home/lesstif/gnu/share/aclocal
  echo "(done running aclocal)"
  $LIBTOOLIZE --force --copy
  echo "(done running libtoolize)"
  $AUTOHEADER
  echo "(done running autoheader)"
  $AUTOMAKE -i -a -c
  echo "(done running automake)"
  $AUTOCONF
  echo done.
  echo

  echo Building HTML documentation
  cd $COPY/doc/lessdox/clients
  for i in `ls *.1 *.5`
  do
    $NIGHTLY_DIR/man2html -f <$i >${i%.*}.html
  done
  cd $COPY/doc/lessdox/widgets
  for i in `ls *.3`
  do
    $NIGHTLY_DIR/man2html -f <$i >${i%.*}.html
  done
  cd $COPY/lib/Xbae/src
  for i in `ls *.3`
  do
    $NIGHTLY_DIR/man2html -f <$i >${i%.*}.html
  done
  echo done.

  echo Copying it to the web site
  cp $COPY/doc/lessdox/clients/*.html $WEB_DIR/Lessdox
  cp $COPY/doc/lessdox/widgets/*.html $WEB_DIR/Lessdox
  cp $COPY/doc/lessdox/clients/lesstif.html $WEB_DIR/Lessdox/index.html
  cp $COPY/lib/Xbae/src/*.html $WEB_DIR/Lessdox
  cp $COPY/lib/Xbae/FAQ.html $WEB_DIR/Lessdox/XbaeFAQ.html
  echo Copying include files
  cp $COPY/include/Motif-1.2/Xm/*.h $WEB_DIR/Lessdox/include/Xm
  cp $COPY/include/Motif-2.0/Xm/*.h $WEB_DIR/Lessdox/include/Xm
  cp $COPY/include/Motif-1.2/Mrm/*.h $WEB_DIR/Lessdox/include/Mrm
  echo done.

# now done below
#  echo Copying INSTALL.html
#  cp $COPY/doc/INSTALL.html $WEB_DIR
#  echo done.

  echo Tarring it all up
  cd $SRC
  echo "(In directory" `pwd` ")"
  tar -zcf lesstif-current.tar.gz lesstif-current
  ls -l lesstif-current.tar.gz
  tar -zcf lesstif-notest-current.tar.gz lesstif-current/[^t]*
  ls -l lesstif-notest-current.tar.gz
  tar -zcf lesstif-testonly-current.tar.gz lesstif-current/test/
  ls -l lesstif-testonly-current.tar.gz
  echo done.
  echo

  echo Copying to the ftp site
  mv -f $SRC/lesstif-current.tar.gz $FTPDIR
  mv -f $SRC/lesstif-notest-current.tar.gz $FTPDIR
  mv -f $SRC/lesstif-testonly-current.tar.gz $FTPDIR
  echo done.
  echo

#  echo Running sup scanner
#  /usr/sbin/supscan -r current -r cvs lesstif /home
#  echo done.

  echo Updating web site
#  cd $WEB_DIR
#  chmod a+w *.html images images/*
  cd $COPY
  cp NOTES $WEB_DIR/release-notes.html
  cd doc/www.lesstif.org
  cp *.html $WEB_DIR
  cp images/*.gif images/*.png images/*.jpg $WEB_DIR/images
#  cd $WEB_DIR
#  chmod a-w *.html images images/*
  cp $COPY/include/Motif-1.2/Xm/*.h $WEB_DIR/Lessdox/include/Xm
  cp $COPY/include/Motif-2.0/Xm/*.h $WEB_DIR/Lessdox/include/Xm
  cp $COPY/include/Motif-1.2/Mrm/*.h $WEB_DIR/Lessdox/include/Mrm
  echo done.

) > ${NIGHTLY_DIR}/message 2>&1

/usr/bin/Mail -s "Nightly lesstif-current update " lesstif-commits@hungry.com < ${NIGHTLY_DIR}/message

rm ${NIGHTLY_DIR}/message
