55 lines
1.4 KiB
Bash
Executable file
55 lines
1.4 KiB
Bash
Executable file
#!/bin/sh -e
|
|
tar='tar --owner=0 --group=0 --mode=ug+w,a+rX'
|
|
name=empire
|
|
version=4.2.13 # FIXME automate
|
|
srvdir=$name-$version
|
|
clidir=$name-client-$version
|
|
txtdir=$name-info-text-$version
|
|
htmdir=$name-info-html-$version
|
|
|
|
# arrange cleanup
|
|
trap 'rm -rf dist' 0
|
|
|
|
# all files in CVS...
|
|
mkdir dist dist/srv dist/cli
|
|
for i in `find . -name CVS -print`
|
|
do
|
|
d=`echo $i | sed 's#/CVS$##'`
|
|
[ "$d" = "." ] || mkdir dist/srv/$d
|
|
f=`awk -F/ '$1 == "" { print "'$d/'" $2 }' $i/Entries`
|
|
[ "$f" ] || continue
|
|
ln $f "dist/srv/$d"
|
|
[ "$d" = "./src/client" ] && ln $f dist/cli
|
|
done
|
|
# except for these
|
|
find dist -name .cvsignore | xargs -r rm -f
|
|
|
|
# generated make include files (hard to create with stupid makes)
|
|
for i in `find info -name MakeSrcs`
|
|
do ln $i dist/srv/$i
|
|
done
|
|
for i in `find src -name Makedepend`
|
|
do echo '# Empty' >dist/srv/$i
|
|
done
|
|
|
|
# formatted info files and generated info souces
|
|
mkdir dist/srv/info.nr
|
|
ln info.nr/* dist/srv/info.nr
|
|
ln info/Subjects/*.t dist/srv/info/Subjects
|
|
mkdir dist/txt dist/htm
|
|
ln info.nr/* dist/txt
|
|
ln info.html/* dist/htm
|
|
|
|
# modifications for standalone client
|
|
mv dist/cli/Makefile.standalone dist/cli/Makefile
|
|
ln src/client/ipglob.c dist/cli
|
|
|
|
# bake tarballs
|
|
mv dist/srv dist/$srvdir
|
|
$tar -czf $srvdir.tar.gz -C dist $srvdir
|
|
mv dist/cli dist/$clidir
|
|
$tar -czf $clidir.tar.gz -C dist $clidir
|
|
mv dist/txt dist/$txtdir
|
|
$tar -czf $txtdir.tar.gz -C dist $txtdir
|
|
mv dist/htm dist/$htmdir
|
|
$tar -czf $htmdir.tar.gz -C dist $htmdir
|