wxWidgets/distrib/msw/tardist
2003-01-14 09:59:31 +00:00

487 lines
15 KiB
Bash

#!/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
}
doinit()
{
cd $WXSRC
echo Removing backup files...
rm *~ */*~ */*/*~ */*/*/*~ */*/*/*/*~
rm -f $WXDEST/wx*-${WXVER}*.tar.gz
# Copy setup files
cp $WXSRC/include/wx/os2/SETUP0.H $WXSRC/include/wx/os2/setup.h
cp $WXSRC/include/wx/msw/setup0.h $WXSRC/include/wx/msw/setup.h
cp $WXSRC/include/wx/univ/setup0.h $WXSRC/include/wx/univ/setup.h
# Copy readme and other files
cp $WXSRC/docs/readme.txt $WXDEST/readme-${WXVER}.txt
cp $WXSRC/docs/changes.txt $WXDEST/changes-${WXVER}.txt
cp $WXSRC/docs/mgl/readme.txt $WXDEST/readme-mgl-${WXVER}.txt
cp $WXSRC/docs/mgl/install.txt $WXDEST/install-mgl-${WXVER}.txt
cp $WXSRC/docs/x11/readme.txt $WXDEST/readme-x11-${WXVER}.txt
cp $WXSRC/docs/x11/readme-nanox.txt $WXDEST/readme-nanox-${WXVER}.txt
cp $WXSRC/docs/x11/install.txt $WXDEST/install-x11-${WXVER}.txt
cp $WXSRC/docs/motif/readme.txt $WXDEST/readme-motif-${WXVER}.txt
cp $WXSRC/docs/motif/install.txt $WXDEST/install-motif-${WXVER}.txt
cp $WXSRC/docs/msw/readme.txt $WXDEST/readme-msw-${WXVER}.txt
cp $WXSRC/docs/msw/install.txt $WXDEST/install-msw-${WXVER}.txt
cp $WXSRC/docs/gtk/readme.txt $WXDEST/readme-gtk-${WXVER}.txt
cp $WXSRC/docs/gtk/install.txt $WXDEST/install-gtk-${WXVER}.txt
cp $WXSRC/docs/mac/readme.txt $WXDEST/readme-mac-${WXVER}.txt
cp $WXSRC/docs/mac/install.txt $WXDEST/install-mac-${WXVER}.txt
cp $WXSRC/docs/os2/install.txt $WXDEST/install-os2-${WXVER}.txt
# Make .mo files
cd $WXSRC/locale
make allmo
}
dospinwxgtk()
{
echo Tarring wxGTK...
cd $WXSRC
cat $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/stc.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/tex2rtf.rsp $WXSRC/distrib/msw/dialoged.rsp $WXSRC/distrib/msw/gtk.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxgtk_in.txt
expandlines /tmp/wxgtk_in.txt /tmp/wxgtk.txt
$TAR cf $WXDEST/wxGTK-${WXVER}.tar -T /tmp/wxgtk.txt
echo Re-tarring wxGTK in a subdirectory...
cd $WXDEST
mkdir wxGTK-${WXVER}
cd wxGTK-${WXVER}
$TAR xf ../wxGTK-${WXVER}.tar
cd ..
rm -f wxGTK-${WXVER}.tar
$TAR cf $WXDEST/wxGTK-${WXVER}.tar wxGTK-${WXVER}/*
rm -f -r wxGTK-${WXVER}
gzip $WXDEST/wxGTK-${WXVER}.tar
}
dospinwxmotif()
{
echo Tarring wxMotif...
cd $WXSRC
cat $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/motif.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/stc.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxmotif_in.txt
expandlines /tmp/wxmotif_in.txt /tmp/wxmotif.txt
$TAR cf $WXDEST/wxMotif-${WXVER}.tar -T /tmp/wxmotif.txt
echo Re-tarring wxMotif in a subdirectory...
cd $WXDEST
mkdir wxMotif-${WXVER}
cd wxMotif-${WXVER}
$TAR xf ../wxMotif-${WXVER}.tar
cd ..
rm -f wxMotif-${WXVER}.tar
$TAR cf $WXDEST/wxMotif-${WXVER}.tar wxMotif-${WXVER}/*
rm -f -r wxMotif-${WXVER}
gzip $WXDEST/wxMotif-${WXVER}.tar
}
dospinwxx11()
{
echo Tarring wxX11...
### wxX11: combined wxMotif and wxX11 distributions
cd $WXSRC
cat $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/motif.rsp $WXSRC/distrib/msw/x11.rsp $WXSRC/distrib/msw/univ.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/stc.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/dialoged.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxx11_in.txt
expandlines /tmp/wxx11_in.txt /tmp/wxx11.txt
$TAR cf $WXDEST/wxX11-${WXVER}.tar -T /tmp/wxx11.txt
echo Re-tarring wxX11 in a subdirectory...
cd $WXDEST
mkdir wxX11-${WXVER}
cd wxX11-${WXVER}
$TAR xf ../wxX11-${WXVER}.tar
cd ..
rm -f wxX11-${WXVER}.tar
$TAR cf $WXDEST/wxX11-${WXVER}.tar wxX11-${WXVER}/*
rm -f -r wxX11-${WXVER}
gzip $WXDEST/wxX11-${WXVER}.tar
}
### wxMSW
# cd $WXSRC
# cat $WXSRC/distrib/msw/msw.rsp $WXSRC/distrib/msw/vc.rsp $WXSRC/distrib/msw/bc.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxmsw_in.txt
# expandlines /tmp/wxmsw_in.txt /tmp/wxmsw.txt
# $TAR cf $WXDEST/wxMSW-${WXVER}.tar -T /tmp/wxmsw.txt
# gzip $WXDEST/wxMSW-${WXVER}.tar
dospinwxmac()
{
echo Tarring wxMac...
### wxMac
cp $WXSRC/include/wx/mac/setup0.h $WXSRC/include/wx/setup.h
cd $WXSRC
cat $WXSRC/distrib/msw/mac.rsp $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/cw_mac.rsp $WXSRC/distrib/msw/tex2rtf.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/dialoged.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/stc.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxmac_in.txt
expandlines /tmp/wxmac_in.txt /tmp/wxmac.txt
$TAR cf $WXDEST/wxMac-${WXVER}.tar -T /tmp/wxmac.txt
rm -f $WXSRC/include/wx/setup.h
echo Re-tarring wxMac in a subdirectory...
cd $WXDEST
mkdir wxMac-${WXVER}
cd wxMac-${WXVER}
# If we have the full set of Mac CW project files,
# get them
if [ -f $WXDEST/extra/wxWindows-${WXVER}-CW-Mac.zip ]; then
unzip -o $WXDEST/extra/wxWindows-${WXVER}-CW-Mac.zip
else
echo "Warning - did not find $WXDEST/deliver/extra/wxWindows-${WXVER}-CW-Mac.zip"
fi
$TAR xf ../wxMac-${WXVER}.tar
rm -f -r contrib/src/mmedia contrib/samples/mmedia
cd ..
rm -f wxMac-${WXVER}.tar
$TAR cf $WXDEST/wxMac-${WXVER}.tar wxMac-${WXVER}/*
rm -f -r wxMac-${WXVER}
gzip $WXDEST/wxMac-${WXVER}.tar
}
### wxUniv: universal-specific files
#cd $WXSRC
#cat $WXSRC/distrib/msw/univ.rsp > /tmp/wxuniv_in.txt
#expandlines /tmp/wxuniv_in.txt /tmp/wxuniv.txt
#$TAR cf $WXDEST/wxWindows-${WXVER}-Univ.tar -T /tmp/wxuniv.txt
#
#echo Re-tarring wxUniversal in a subdirectory...
#cd $WXDEST
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-Univ.tar
#cd ..
#rm -f wxWindows-${WXVER}-Univ.tar
#$TAR cf $WXDEST/wxWindows-${WXVER}-Univ.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $WXDEST/wxWindows-${WXVER}-Univ.tar
dospinwxall()
{
echo Tarring wxAll...
### wxAll: all distributions in one giant archive
cd $WXSRC
cat $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/msw.rsp $WXSRC/distrib/msw/vc.rsp $WXSRC/distrib/msw/cw.rsp $WXSRC/distrib/msw/cw_mac.rsp $WXSRC/distrib/msw/gtk.rsp $WXSRC/distrib/msw/x11.rsp $WXSRC/distrib/msw/motif.rsp $WXSRC/distrib/msw/mac.rsp $WXSRC/distrib/msw/os2.rsp $WXSRC/distrib/msw/x11.rsp $WXSRC/distrib/msw/univ.rsp $WXSRC/distrib/msw/mgl.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/utilmake.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/mmedia.rsp $WXSRC/distrib/msw/tex2rtf.rsp $WXSRC/distrib/msw/stc.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/dialoged.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp $WXSRC/distrib/msw/docsrc.rsp | uniq > /tmp/wxall_in.txt
expandlines /tmp/wxall_in.txt /tmp/wxall.txt
$TAR cf $WXDEST/wxAll-${WXVER}.tar -T /tmp/wxall.txt
echo Re-tarring wxAll in a subdirectory...
cd $WXDEST
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
# If we have the full set of VC++ project files,
# get them
if [ -f $WXDEST/extra/wxWindows-${WXVER}-VC.zip ]; then
unzip -o $WXDEST/extra/wxWindows-${WXVER}-VC.zip
else
echo "Warning - did not find $WXDEST/deliver/extra/wxWindows-${WXVER}-VC.zip"
fi
# If we have the full set of Mac CW project files,
# get them
if [ -f $WXDEST/extra/wxWindows-${WXVER}-CW-Mac.zip ]; then
unzip -o $WXDEST/extra/wxWindows-${WXVER}-CW-Mac.zip
else
echo "Warning - did not find $WXDEST/deliver/extra/wxWindows-${WXVER}-CW-Mac.zip"
fi
$TAR xf ../wxAll-${WXVER}.tar
# Translate all .dsp and .dsw files to DOS format
unix2dos --unix2dos `cat $WXSRC/distrib/msw/vc.rsp`
# Copy OS/2 specific configure files
cp $WXSRC/distrib/os2/os2-specific.zip docs/os2
# Copy the OS/2 files which probably haven't been copied yet
mkdir include/wx/os2
mkdir src/os2
cp $WXSRC/include/wx/os2/*.H include/wx/os2
cp $WXSRC/src/os2/*.CPP $WXSRC/src/os2/*.I src/os2
# Make all OS/2 files lower case
$WXSRC/distrib/msw/namedown include/wx/os2/*.H
$WXSRC/distrib/msw/namedown src/os2/*.CPP src/os2/*.I
cd ..
rm -f wxAll-${WXVER}.tar
$TAR cf $WXDEST/wxAll-${WXVER}.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $WXDEST/wxAll-${WXVER}.tar
}
dospinwxdocs()
{
echo Tarring wxDocs...
### Doc sources
#cd $WXSRC
#cat $WXSRC/distrib/msw/docsrc.rsp > /tmp/docsrc_in.txt
#expandlines /tmp/docsrc_in.txt /tmp/docsrc.txt
#$TAR cf $WXDEST/wxWindows-${WXVER}-doc.tar -T /tmp/docsrc.txt
#
#echo Re-tarring docs in a subdirectory...
#cd $WXDEST
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-doc.tar
#cd ..
#rm -f wxWindows-${WXVER}-doc.tar
#$TAR cf $WXDEST/wxWindows-${WXVER}-doc.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $WXDEST/wxWindows-${WXVER}-doc.tar
### HTML docs
cd $WXSRC
cat $WXSRC/distrib/msw/wx_html.rsp > /tmp/html_in.txt
expandlines /tmp/html_in.txt /tmp/html.txt
$TAR cf $WXDEST/wxWindows-${WXVER}-HTML.tar -T /tmp/html.txt
echo Re-tarring HTML in a subdirectory...
cd $WXDEST
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxWindows-${WXVER}-HTML.tar
cd ..
rm -f wxWindows-${WXVER}-HTML.tar
$TAR cf $WXDEST/wxWindows-${WXVER}-HTML.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $WXDEST/wxWindows-${WXVER}-HTML.tar
### HTB docs
cd $WXSRC
cat $WXSRC/distrib/msw/wx_htb.rsp > /tmp/htb_in.txt
expandlines /tmp/htb_in.txt /tmp/htb.txt
$TAR cf $WXDEST/wxWindows-${WXVER}-HTB.tar -T /tmp/htb.txt
echo Re-tarring HTB in a subdirectory...
cd $WXDEST
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxWindows-${WXVER}-HTB.tar
cd ..
rm -f wxWindows-${WXVER}-HTB.tar
$TAR cf $WXDEST/wxWindows-${WXVER}-HTB.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $WXDEST/wxWindows-${WXVER}-HTB.tar
### PDF docs
cd $WXSRC
cat $WXSRC/distrib/msw/wx_pdf.rsp > /tmp/pdf_in.txt
expandlines /tmp/pdf_in.txt /tmp/pdf.txt
$TAR cf $WXDEST/wxWindows-${WXVER}-PDF.tar -T /tmp/pdf.txt
echo Re-tarring PDF in a subdirectory...
cd $WXDEST
mkdir wxWindows-${WXVER}
cd wxWindows-${WXVER}
$TAR xf ../wxWindows-${WXVER}-PDF.tar
cd ..
rm -f wxWindows-${WXVER}-PDF.tar
$TAR cf $WXDEST/wxWindows-${WXVER}-PDF.tar wxWindows-${WXVER}/*
rm -f -r wxWindows-${WXVER}
gzip $WXDEST/wxWindows-${WXVER}-PDF.tar
}
### Tex2RTF
#cd $WXSRC
#cat $WXSRC/distrib/msw/tex2rtf.rsp > /tmp/tex2rtf_in.txt
#expandlines /tmp/tex2rtf_in.txt /tmp/tex2rtf.txt
#$TAR cf $WXDEST/wxWindows-${WXVER}-tex2rtf.tar -T /tmp/tex2rtf.txt
#
#echo Re-tarring Tex2RTF in a subdirectory...
#cd $WXDEST
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-tex2rtf.tar
#cd ..
#rm -f wxWindows-${WXVER}-tex2rtf.tar
#$TAR cf $WXDEST/wxWindows-${WXVER}-tex2rtf.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $WXDEST/wxWindows-${WXVER}-tex2rtf.tar
### OGL
#cd $WXSRC
#cat $WXSRC/distrib/msw/ogl.rsp > /tmp/ogl_in.txt
#expandlines /tmp/ogl_in.txt /tmp/ogl.txt
#$TAR cf $WXDEST/wxWindows-${WXVER}-ogl.tar -T /tmp/ogl.txt
#
#echo Re-tarring OGL in a subdirectory...
#cd $WXDEST
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-ogl.tar
#cd ..
#rm -f wxWindows-${WXVER}-ogl.tar
#$TAR cf $WXDEST/wxWindows-${WXVER}-ogl.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $WXDEST/wxWindows-${WXVER}-ogl.tar
### JPEG
#cd $WXSRC
#cat $WXSRC/distrib/msw/jpeg.rsp > /tmp/jpeg_in.txt
#expandlines /tmp/jpeg_in.txt /tmp/jpeg.txt
#$TAR cf $WXDEST/wxWindows-${WXVER}-jpeg.tar -T /tmp/jpeg.txt
#
#echo Re-tarring jpeg in a subdirectory...
#cd $WXDEST
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-jpeg.tar
#cd ..
#rm -f wxWindows-${WXVER}-jpeg.tar
#$TAR cf $WXDEST/wxWindows-${WXVER}-jpeg.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $WXDEST/wxWindows-${WXVER}-jpeg.tar
### TIFF
#cd $WXSRC
#cat $WXSRC/distrib/msw/tiff.rsp > /tmp/tiff_in.txt
#expandlines /tmp/tiff_in.txt /tmp/tiff.txt
#$TAR cf $WXDEST/wxWindows-${WXVER}-tiff.tar -T /tmp/tiff.txt
#
#echo Re-tarring docs in a subdirectory...
#cd $WXDEST
#mkdir wxWindows-${WXVER}
#cd wxWindows-${WXVER}
#$TAR xf ../wxWindows-${WXVER}-tiff.tar
#cd ..
#rm -f wxWindows-${WXVER}-tiff.tar
#$TAR cf $WXDEST/wxWindows-${WXVER}-tiff.tar wxWindows-${WXVER}/*
#rm -f -r wxWindows-${WXVER}
#gzip $WXDEST/wxWindows-${WXVER}-tiff.tar
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
PROGNAME=$0
WXSRC=$1
WXDEST=$2
WXVER=$3
SPINWXALL=0
SPINWXX11=0
SPINWXGTK=0
SPINWXMOTIF=0
SPINWXMAC=0
SPINWXDOCS=0
SPINEVERYTHING=0
usage()
{
echo Usage: $PROGNAME "src-dir dest-dir version-number [ options ]"
echo Options:
echo " --help Display this help message"
echo " --wxall Spin wxAll"
echo " --wxgtk Spin wxGTK"
echo " --wxmotif Spin wxMotif"
echo " --wxmac Spin wxMac"
echo " --wxx11 Spin wxX11"
echo " --wxdocs Spin docs"
echo " --all Spin EVERYTHING"
exit 1
}
# Process command line options.
shift 3
for i in "$@"; do
case "$i" in
--wxall) SPINWXALL=1 ;;
--wxx11) SPINWXX11=1 ;;
--wxgtk) SPINWXGTK=1 ;;
--wxmotif) SPINWXMOTIF=1 ;;
--wxmac) SPINWXMAC=1 ;;
--wxdocs) SPINWXDOCS=1 ;;
--all) SPINEVERYTHING=1 ;;
*)
usage
exit
;;
esac
done
echo About to archive wxWindows:
echo From $WXSRC
echo To $WXDEST
echo Version $WXVER
echo CTRL-C if this is not correct.
read dummy
doinit
if [ "$SPINWXX11" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
dospinwxx11
fi
if [ "$SPINWXGTK" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
dospinwxgtk
fi
if [ "$SPINWXMAC" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
dospinwxmac
fi
if [ "$SPINWXMOTIF" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
dospinwxmotif
fi
if [ "$SPINWXDOCS" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
dospinwxdocs
fi
if [ "$SPINWXALL" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
dospinwxall
fi