#!/bin/sh
# tardist: make up a tar.gz distribution of wxWindows 2
# Supply a source (e.g. ~/wx2) and destination (e.g. ~/wx2/deliver)

# We can't use e.g. this:
# ls `cat $SRC/distrib/msw/makefile.rsp` zip -@ -u $DEST/wxWindows-$VERSION-gen.zip
# because there's not enough space on the command line, plus we need to ignore the
# blank lines.

TAR=tar
ARCH=`arch`
if [ "$ARCH" = "ppc" ]; then
  TAR=gnutar
fi

expandlines()
{
    toexpand=$1
    outputfile=$2

    rm -f $outputfile
    touch $outputfile
    for line in `cat $toexpand` ; do
      if [ "$line" != "" ]; then
        ls $line >> $outputfile
      fi
    uniq < $outputfile > /tmp/uniqtemp.txt
    mv /tmp/uniqtemp.txt $outputfile
    done
}


init=""
if [ "$1" = "" ]
then
  echo Usage: tardist wx-dir output-dir version
  exit
fi

if [ "$2" = "" ]
then
  echo Usage: tardist wx-dir output-dir version
  exit
fi

if [ "$3" = "" ]
then
  echo Usage: tardist wx-dir output-dir version
  exit
fi

WXVER=$3

echo About to archive wxWindows:
echo   From   $1
echo   To     $2
echo CTRL-C if this is not correct.
read dummy

cd $1

echo Removing backup files...
rm *~ */*~ */*/*~ */*/*/*~ */*/*/*/*~

rm -f $2/wx*-${WXVER}*.tar.gz

# Copy setup files
cp $1/include/wx/os2/setup0.h $1/include/wx/os2/setup.h
cp $1/include/wx/msw/setup0.h $1/include/wx/msw/setup.h

echo Tarring...

### Generic
#cat $1/distrib/msw/generic.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/makefile.rsp > /tmp/wxgen_in.txt
#expandlines /tmp/wxgen_in.txt /tmp/wxgen.txt
#$TAR cf $2/wxWindows-${WXVER}-gen.tar -T /tmp/wxgen.txt
#gzip $2/wxWindows-${WXVER}-gen.tar
#mv $2/wxWindows-${WXVER}-gen.tar.gz $2/wxWindows-${WXVER}-gen.tgz

### wxGTK
cd $1
cat $1/distrib/msw/generic.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/utils.rsp $1/distrib/msw/ogl.rsp $1/distrib/msw/tex2rtf.rsp $1/distrib/msw/dialoged.rsp $1/distrib/msw/gtk.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxgtk_in.txt
expandlines /tmp/wxgtk_in.txt /tmp/wxgtk.txt
$TAR cf $2/wxGTK-${WXVER}.tar -T /tmp/wxgtk.txt

echo Re-tarring wxGTK in a subdirectory...
cd $2
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxGTK-${WXVER}.tar
cd ..
rm -f wxGTK-${WXVER}.tar
$TAR cf $2/wxGTK-${WXVER}.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $2/wxGTK-${WXVER}.tar

### wxMotif
cd $1
cat $1/distrib/msw/generic.rsp $1/distrib/msw/motif.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/ogl.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxmotif_in.txt
expandlines /tmp/wxmotif_in.txt /tmp/wxmotif.txt
$TAR cf $2/wxMotif-${WXVER}.tar -T /tmp/wxmotif.txt

echo Re-tarring wxMotif in a subdirectory...
cd $2
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxMotif-${WXVER}.tar
cd ..
rm -f wxMotif-${WXVER}.tar
$TAR cf $2/wxMotif-${WXVER}.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $2/wxMotif-${WXVER}.tar

### wxX11: combined wxMotif and wxX11 distributions
cd $1
cat $1/distrib/msw/generic.rsp $1/distrib/msw/motif.rsp $1/distrib/msw/x11.rsp $1/distrib/msw/univ.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/utils.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/dialoged.rsp $1/distrib/msw/ogl.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxx11_in.txt
expandlines /tmp/wxx11_in.txt /tmp/wxx11.txt
$TAR cf $2/wxX11-${WXVER}.tar -T /tmp/wxx11.txt

echo Re-tarring wxX11 in a subdirectory...
cd $2
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxX11-${WXVER}.tar
cd ..
rm -f wxX11-${WXVER}.tar
$TAR cf $2/wxX11-${WXVER}.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $2/wxX11-${WXVER}.tar

### wxMSW
# cd $1
# cat $1/distrib/msw/msw.rsp $1/distrib/msw/vc.rsp $1/distrib/msw/bc.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxmsw_in.txt
# expandlines /tmp/wxmsw_in.txt /tmp/wxmsw.txt
# $TAR cf $2/wxMSW-${WXVER}.tar -T /tmp/wxmsw.txt
# gzip $2/wxMSW-${WXVER}.tar

### wxMac
cp $1/include/wx/mac/setup0.h $1/include/wx/setup.h
cd $1
cat $1/distrib/msw/mac.rsp $1/distrib/msw/generic.rsp $1/distrib/msw/cw_mac.rsp $1/distrib/msw/tex2rtf.rsp $1/distrib/msw/utils.rsp $1/distrib/msw/dialoged.rsp $1/distrib/msw/ogl.rsp $1/distrib/msw/stc.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxmac_in.txt
expandlines /tmp/wxmac_in.txt /tmp/wxmac.txt
$TAR cf $2/wxMac-${WXVER}.tar -T /tmp/wxmac.txt

rm -f $1/include/wx/setup.h

echo Re-tarring wxMac in a subdirectory...
cd $2
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxMac-${WXVER}.tar
rm -f -r contrib/src/mmedia contrib/samples/mmedia
cd ..
rm -f wxMac-${WXVER}.tar
$TAR cf $2/wxMac-${WXVER}.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $2/wxMac-${WXVER}.tar

### Doc sources
#cd $1
#cat $1/distrib/msw/docsrc.rsp > /tmp/docsrc_in.txt
#expandlines /tmp/docsrc_in.txt /tmp/docsrc.txt
#$TAR cf $2/wxWindows-${WXVER}-doc.tar -T /tmp/docsrc.txt
#
#echo Re-tarring docs in a subdirectory...
#cd $2
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-doc.tar
#cd ..
#rm -f wxWindows-${WXVER}-doc.tar
#$TAR cf $2/wxWindows-${WXVER}-doc.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $2/wxWindows-${WXVER}-doc.tar

### HTML docs
cd $1
cat $1/distrib/msw/wx_html.rsp > /tmp/html_in.txt
expandlines /tmp/html_in.txt /tmp/html.txt
$TAR cf $2/wxWindows-${WXVER}-HTML.tar -T /tmp/html.txt

echo Re-tarring HTML in a subdirectory...
cd $2
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxWindows-${WXVER}-HTML.tar
cd ..
rm -f wxWindows-${WXVER}-HTML.tar
$TAR cf $2/wxWindows-${WXVER}-HTML.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $2/wxWindows-${WXVER}-HTML.tar

### HTB docs
cd $1
cat $1/distrib/msw/wx_htb.rsp > /tmp/htb_in.txt
expandlines /tmp/htb_in.txt /tmp/htb.txt
$TAR cf $2/wxWindows-${WXVER}-HTB.tar -T /tmp/htb.txt

echo Re-tarring HTB in a subdirectory...
cd $2
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxWindows-${WXVER}-HTB.tar
cd ..
rm -f wxWindows-${WXVER}-HTB.tar
$TAR cf $2/wxWindows-${WXVER}-HTB.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $2/wxWindows-${WXVER}-HTB.tar

### PDF docs
cd $1
cat $1/distrib/msw/wx_pdf.rsp > /tmp/pdf_in.txt
expandlines /tmp/pdf_in.txt /tmp/pdf.txt
$TAR cf $2/wxWindows-${WXVER}-PDF.tar -T /tmp/pdf.txt

echo Re-tarring PDF in a subdirectory...
cd $2
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxWindows-${WXVER}-PDF.tar
cd ..
rm -f wxWindows-${WXVER}-PDF.tar
$TAR cf $2/wxWindows-${WXVER}-PDF.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $2/wxWindows-${WXVER}-PDF.tar

### Tex2RTF
#cd $1
#cat $1/distrib/msw/tex2rtf.rsp > /tmp/tex2rtf_in.txt
#expandlines /tmp/tex2rtf_in.txt /tmp/tex2rtf.txt
#$TAR cf $2/wxWindows-${WXVER}-tex2rtf.tar -T /tmp/tex2rtf.txt
#
#echo Re-tarring Tex2RTF in a subdirectory...
#cd $2
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-tex2rtf.tar
#cd ..
#rm -f wxWindows-${WXVER}-tex2rtf.tar
#$TAR cf $2/wxWindows-${WXVER}-tex2rtf.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $2/wxWindows-${WXVER}-tex2rtf.tar

### OGL
#cd $1
#cat $1/distrib/msw/ogl.rsp > /tmp/ogl_in.txt
#expandlines /tmp/ogl_in.txt /tmp/ogl.txt
#$TAR cf $2/wxWindows-${WXVER}-ogl.tar -T /tmp/ogl.txt
#
#echo Re-tarring OGL in a subdirectory...
#cd $2
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-ogl.tar
#cd ..
#rm -f wxWindows-${WXVER}-ogl.tar
#$TAR cf $2/wxWindows-${WXVER}-ogl.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $2/wxWindows-${WXVER}-ogl.tar

### JPEG
#cd $1
#cat $1/distrib/msw/jpeg.rsp > /tmp/jpeg_in.txt
#expandlines /tmp/jpeg_in.txt /tmp/jpeg.txt
#$TAR cf $2/wxWindows-${WXVER}-jpeg.tar -T /tmp/jpeg.txt
#
#echo Re-tarring jpeg in a subdirectory...
#cd $2
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-jpeg.tar
#cd ..
#rm -f wxWindows-${WXVER}-jpeg.tar
#$TAR cf $2/wxWindows-${WXVER}-jpeg.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $2/wxWindows-${WXVER}-jpeg.tar

### TIFF
#cd $1
#cat $1/distrib/msw/tiff.rsp > /tmp/tiff_in.txt
#expandlines /tmp/tiff_in.txt /tmp/tiff.txt
#$TAR cf $2/wxWindows-${WXVER}-tiff.tar -T /tmp/tiff.txt
#
#echo Re-tarring docs in a subdirectory...
#cd $2
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-tiff.tar
#cd ..
#rm -f wxWindows-${WXVER}-tiff.tar
#$TAR cf $2/wxWindows-${WXVER}-tiff.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $2/wxWindows-${WXVER}-tiff.tar

# Copy readme and other files
cd $1
cp $1/docs/readme.txt $2/readme-${WXVER}.txt
cp $1/docs/changes.txt $2/changes-${WXVER}.txt
cp $1/docs/mgl/readme.txt $2/readme-mgl-${WXVER}.txt
cp $1/docs/mgl/install.txt $2/install-mgl-${WXVER}.txt
cp $1/docs/x11/readme.txt $2/readme-x11-${WXVER}.txt
cp $1/docs/x11/readme-nanox.txt $2/readme-nanox-${WXVER}.txt
cp $1/docs/x11/install.txt $2/install-x11-${WXVER}.txt
cp $1/docs/motif/readme.txt $2/readme-motif-${WXVER}.txt
cp $1/docs/motif/install.txt $2/install-motif-${WXVER}.txt
cp $1/docs/msw/readme.txt $2/readme-msw-${WXVER}.txt
cp $1/docs/msw/install.txt $2/install-msw-${WXVER}.txt
cp $1/docs/gtk/readme.txt $2/readme-gtk-${WXVER}.txt
cp $1/docs/gtk/install.txt $2/install-gtk-${WXVER}.txt
cp $1/docs/mac/readme.txt $2/readme-mac-${WXVER}.txt
cp $1/docs/mac/install.txt $2/install-mac-${WXVER}.txt
cp $1/docs/os2/install.txt $2/install-os2-${WXVER}.txt

echo Done!