#!/bin/sh
GSVERSION=7.07
HPIJSVERSION=1.7.1
EPLASERVERSION=3.1.6
GSFONTSVERSION=8.11
PDIR=`pwd`
PKGDIR=`pwd`/pkg

DOCDIR=usr/share/doc
MANDIR=usr/share/man

rm -rf $PKGDIR
for i in doc examples lib ; do
  mkdir -p $PKGDIR/usr/share/ghostscript/$GSVERSION/$i
done
mkdir -p $PKGDIR/usr/bin

cd espgs-7.07.1

install -s -m 755 ./bin/gs $PKGDIR/usr/bin/gs

for f in \
  gsbj gsdj gsdj500 gslj gslp gsnd \
  bdftops dvipdf eps2eps font2c \
  pdf2dsc pdf2ps pdfopt pf2afm pfbtopfa printafm \
  ps2ascii ps2epsi ps2pdf ps2pdf12 ps2pdf13 ps2pdf14 ps2pdfwr ps2ps wftopfa \
  fixmswrd.pl lprsetup.sh pj-gs.sh pv.sh sysvlp.sh unix-lpr.sh ; do 
     if ( test -f ./lib/$f ); then install -m 755 ./lib/$f $PKGDIR/usr/bin; fi;
done

for f in \
  Fontmap Fontmap.GS \
  CIDFnmap CIDFnmap.Ore CIDFnmap.ARP CIDFnmap.Bae CIDFnmap.Koc \
  CIDFnmap.Sol CIDFnmap.Win \
  CIDFnmap.CJK \
  CIDFnmap.b5 CIDFnmap.gb CIDFnmap.ksx CIDFnmap.sj \
  ht_ccsto.ps \
  acctest.ps addxchar.ps align.ps bdftops.ps \
  caption.ps cid2code.ps decrypt.ps docie.ps \
  errpage.ps font2c.ps font2pcl.ps gslp.ps gsnup.ps image-qa.ps impath.ps \
  jispaper.ps landscap.ps level1.ps lines.ps markhint.ps markpath.ps \
  packfile.ps pcharstr.ps pf2afm.ps pfbtopfa.ps ppath.ps prfont.ps printafm.ps \
  ps2ai.ps ps2ascii.ps ps2epsi.ps quit.ps rollconv.ps \
  showchar.ps showpage.ps stcinfo.ps stcolor.ps stocht.ps \
  traceimg.ps traceop.ps type1enc.ps type1ops.ps uninfo.ps unprot.ps \
  viewcmyk.ps viewgif.ps viewjpeg.ps viewmiff.ps \
  viewpcx.ps viewpbm.ps viewps2a.ps \
  winmaps.ps wftopfa.ps wrfont.ps zeroline.ps \
  pdf2dsc.ps pdfopt.ps \
  dmp_init.ps dmp_site.ps gdevmjc.ps escp_24.src ; do 
    if ( test -f ./lib/$f ); then install -m 644 ./lib/$f $PKGDIR/usr/share/ghostscript/7.07/lib/; fi
done

for f in ./lib/gs_*.ps ./lib/pdf*.ps;\
  do ./src/instcopy -c -m 644 $f $PKGDIR/usr/share/ghostscript/7.07/lib ;\
done

for f in ./lib/*.ppd ./lib/*.rpd ./lib/*.upp ./lib/*.xbm ./lib/*.xpm; do
  install -c -m 644 $f $PKGDIR/usr/share/ghostscript/7.07/lib 
done

mkdir -p $PKGDIR/usr/share/ghostscript/7.07/doc
for f in PUBLIC README index.html gs.css API.htm Bug-form.htm Bug-info.htm C-style.htm \
  CJK.htm CJKTTCID.htm Changes.htm Commprod.htm Copying.htm Current.htm DLL.htm Develop.htm \
  Devices.htm Drivers.htm Fonts.htm Helpers.htm Hershey.htm History1.htm History2.htm \
  History3.htm History4.htm History5.htm History6.htm History7.htm Htmstyle.htm Humor.htm \
  Install.htm Issues.htm Language.htm Lib.htm Maintain.htm Make.htm New-user.htm News.htm \
  Projects.htm Ps-style.htm Ps2epsi.htm Ps2pdf.htm Psfiles.htm Public.htm Readme.htm \
  Release.htm Source.htm Tester.htm Unix-lpr.htm Use.htm Xfonts.htm ; do 
    if ( test -f ./lib/../doc/$f ); then install -c -m 644 ./lib/../doc/$f $PKGDIR/usr/share/ghostscript/7.07/doc; fi;
done

mkdir -p $PKGDIR/usr/share/man/man1

man1dir=$PKGDIR/usr/share/man/man1 ;
for f in man/*.1 ; do
  install -m 644 $f $man1dir ;
  if ( test -f $man1dir/ps2ps.1 ) ;
    then for f in eps2eps ;
      do ( cd $man1dir; rm -f $f.1 ;ln -s ps2ps.1 $f.1 ) ;
      done ;
    fi ;
    if ( test -f $man1dir/ps2pdf.1 ) ;
      then for f in ps2pdf12 ps2pdf13 ;
        do ( cd $man1dir; rm -f $f.1 ;  ln -s ps2pdf.1 $f.1 ) ;
      done ;
    fi ;
    if ( test -f $man1dir/ps2ps.1 ) ;
      then for f in gsbj gsdj gsdj500 gslj ;
        do ( cd $man1dir; rm -f $f.1 ; ln -s gslp.1 $f.1 ) ;
      done ;
    fi ;
done ;

mkdir -p $PKGDIR/usr/share/ghostscript/7.07/examples

for f in alphabet.ps colorcir.ps doretree.ps escher.ps golfer.ps \
  grayalph.ps snowflak.ps tiger.ps vasarely.ps waterfal.ps \
  ridt91.eps ; do install -c -m 644 examples/$f $PKGDIR/usr/share/ghostscript/7.07/examples 
done
mkdir -p $PKGDIR/usr/share/ghostscript/7.07/examples/cjk
for f in  all_ac1.ps all_ag1.ps all_aj1.ps all_aj2.ps all_ak1.ps \
  gscjk_ac.ps gscjk_ag.ps gscjk_aj.ps gscjk_ak.ps \
  iso2022.ps; do 
  install -c -m 644 ./examples/cjk/$f $PKGDIR/usr/share/ghostscript/7.07/examples/cjk 
done
mkdir -p $PKGDIR/usr/lib/cups/filter
install -m 755  pstoraster/pstoraster $PKGDIR/usr/lib/cups/filter
install -m 755  pstoraster/pstopxl $PKGDIR/usr/lib/cups/filter

mkdir -p $PKGDIR/usr/etc/cups
install --m 644 pstoraster/pstoraster.convs $PKGDIR/usr/etc/cups
mkdir -p $PKGDIR/usr/share/cups/model
install -m 644 pstoraster/pxlcolor.ppd $PKGDIR/usr/etc/cups/model
install -m 644 pstoraster/pxlmono.ppd $PKGDIR/usr/etc/cups/model

cd ..

cd $PKGDIR/usr/share/ghostscript
tar zxf $PKGDIR/../ghostscript-fonts-std-${GSFONTSVERSION}.tar.gz
#tar zxf $PKGDIR/../gnu-gs-fonts-std-6.0.tar.gz
tar zxf $PKGDIR/../gnu-gs-fonts-other-6.0.tar.gz
mkdir Resource
cd Resource
#tar zxf $PKGDIR/../adobe-cmaps-200109.tar.gz
#tar zxf $PKGDIR/../acro4-cmaps-1999.tar.gz
tar zxf $PKGDIR/../adobe-cmaps-200204.tar.gz
tar zxf $PKGDIR/../acro5-cmaps-2001.tar.gz
cd $PKGDIR
tar zxf ../amspsfnt.tar.gz
tar zxf ../cmpsfont.tar.gz
cp ../ps2eps $PKGDIR/usr/bin/.

cd $PKGDIR
mkdir -p ${DOCDIR}/espgs-$GSVERSION/espgs-$GSVERSION
cp -p $PDIR/espgs-7.07.1/LICENSE ${DOCDIR}/espgs-$GSVERSION/espgs-$GSVERSION/.
# cd ${DOCDIR}/espgs-7.07.1/espgs-$GSVERSION
# ln -s ../../../../share/ghostscript/$GSVERSION/doc .
cd $PKGDIR
mkdir -p ${DOCDIR}/espgs-$GSVERSION/eplaser-$EPLASERVERSION
cp -p $PDIR/espgs-7.07.1/eplaser-$EPLASERVERSION/COPYING ${DOCDIR}/espgs-$GSVERSION/eplaser-$EPLASERVERSION/.
cp -p $PDIR/espgs-7.07.1/eplaser-$EPLASERVERSION/readme-* ${DOCDIR}/espgs-$GSVERSION/eplaser-$EPLASERVERSION/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdev10v
cp -p $PDIR/espgs-7.07.1/gdev10v/gdev10v.euc ${DOCDIR}/espgs-$GSVERSION/gdev10v/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdevalps-0.2
cp -p $PDIR/espgs-7.07.1/gdevalps-0.2/gdevalps.txt ${DOCDIR}/espgs-$GSVERSION/gdevalps-0.2/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdevfmlbp-120
cp -p $PDIR/espgs-7.07.1/gdevfmlbp-120/gdevfmlbp.euc ${DOCDIR}/espgs-$GSVERSION/gdevfmlbp-120/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdevj100/
cp -p $PDIR/espgs-7.07.1/gdevj100/gdevj100.euc ${DOCDIR}/espgs-$GSVERSION/gdevj100/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdevlbp3
cp -p $PDIR/espgs-7.07.1/gdevlbp3/readme.euc ${DOCDIR}/espgs-$GSVERSION/gdevlbp3/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdevlips-2.4.0
cp -p $PDIR/espgs-7.07.1/gdevlips-2.4.0/*.htm ${DOCDIR}/espgs-$GSVERSION/gdevlips-2.4.0/.
cp -p $PDIR/espgs-7.07.1/gdevlips-2.4.0/C* ${DOCDIR}/espgs-$GSVERSION/gdevlips-2.4.0/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdevmag
cp -p $PDIR/espgs-7.07.1/gdevmag/gdevmag.txt ${DOCDIR}/espgs-$GSVERSION/gdevmag/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdevmd2k-0.2a
cp -p $PDIR/espgs-7.07.1/gdevmd2k-0.2a/README.jis ${DOCDIR}/espgs-$GSVERSION/gdevmd2k-0.2a/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdevmjc-0.8no2
cp -p $PDIR/espgs-7.07.1/gdevmjc-0.8no2/gdevmjc.txt ${DOCDIR}/espgs-$GSVERSION/gdevmjc-0.8no2/.
# mv $PDIR/espgs-7.07.1/gdevmjc-0.8no2/OLD-DOC ${DOCDIR}/espgs-$GSVERSION/gdevmjc-0.8no2/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gdevp201
cp -p $PDIR/espgs-7.07.1/gdevp201/gdevp201.euc ${DOCDIR}/espgs-$GSVERSION/gdevp201/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/gs-hp2200
for i in AUTHORS COPYING INSTALL ; do
  cp -p $PDIR/espgs-7.07.1/__tm/$i ${DOCDIR}/espgs-$GSVERSION/gs-hp2200/.
done

mkdir -p ${DOCDIR}/espgs-$GSVERSION/lexmarkgs
for i in ChangeLog INSTALL README.lexmark README.lexmark.me letter2050.txt letter3200.txt lexmarkprotocol.txt ; do
  cp -p $PDIR/espgs-7.07.1/lexmarkgs/$i ${DOCDIR}/espgs-$GSVERSION/lexmarkgs/.
done

mkdir -p ${DOCDIR}/espgs-$GSVERSION/lxm3200-0.4.1
cp -p $PDIR/espgs-7.07.1/lxm3200-0.4.1-gs5.50-src/L* ${DOCDIR}/espgs-$GSVERSION/lxm3200-0.4.1/.
cp -p $PDIR/espgs-7.07.1/lxm3200-0.4.1-gs5.50-src/R* ${DOCDIR}/espgs-$GSVERSION/lxm3200-0.4.1/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/ml6
cp -p $PDIR/espgs-7.07.1/_tm/README ${DOCDIR}/espgs-$GSVERSION/ml6/.

mkdir -p ${DOCDIR}/espgs-$GSVERSION/pcl3-3.3
for i in BUGS LGPL NEWS README README-cover  ; do
  cp -p $PDIR/espgs-7.07.1/pcl3-3.3/$i ${DOCDIR}/espgs-$GSVERSION/pcl3-3.3/.
done

for i in ${DOCDIR}/espgs-$GSVERSION/* ; do
    ( cd $i ; gzip -f * )
done


cd $PKGDIR
cat >> usr/share/ghostscript/$GSVERSION/lib/CIDFnmap <<EOF

/Kochi-Mincho      (/usr/share/fonts/TrueType/FS-Mincho-gs.ttf) ;
/Kochi-Gothic      (/usr/share/fonts/TrueType/FS-Gothic-gs.ttf) ;

/Ryumin-Light      /Kochi-Mincho ;
/GothicBBB-Medium  /Kochi-Gothic ;
/Adobe-Japan1      /Kochi-Mincho ;
/Adobe-Japan2      /Kochi-Mincho ;

/FutoMinA101-Bold  /Ryumin-Light ;
/FutoGoB101-Bold   /GothicBBB-Medium ;
/GothicMB101-hea   /GothicBBB-Medium ;
/ShinGo-Bold       /GothicBBB-Medium ;

EOF

touch usr/share/ghostscript/7.07/lib/dmp_init.ps


cd $PDIR
cd hpijs-$HPIJSVERSION
make install DESTDIR=$PKGDIR
mkdir -p $PKGDIR/${DOCDIR}/hpijs-$HPIJSVERSION
cp -p *.png *.html $PKGDIR/${DOCDIR}/hpijs-$HPIJSVERSION/.

for i in 1 2 3 4 5 6 7 8 ; do
  if [ -d $PKGDIR/${MANDIR}/man$i ]; then
     ( cd $PKGDIR/${MANDIR}/man$i ;
       for j in *.$i ; do
         if [ -h $j ] ; then
           LN_TARGET=`ls -l $j | awk '{print $11}'`
           rm $j
           ln -sf $LN_TARGET.gz $j.gz
         else
           gzip $j
         fi
       done
     )
  fi
done

cd $PKGDIR
cd $DOCDIR
tar zxvf $PDIR/cmpskit_doc.tar.gz

cd $PKGDIR
chown -R root:root usr

tar zcf ../gsfonts-${GSFONTSVERSION}-noarch-P1.tgz usr/share/ghostscript/fonts
rm -rf usr/share/ghostscript/fonts
/sbin/makepkg espgs-${GSVERSION}-i386-P1.tgz <<EOF
y
y
EOF
mv ../gsfonts-${GSFONTSVERSION}-noarch-P1.tgz .

mkdir _pdir_
cd _pdir_
tar zxf ../gsfonts-${GSFONTSVERSION}-noarch-P1.tgz
rm ../gsfonts-${GSFONTSVERSION}-noarch-P1.tgz
mkdir -p usr/X11R6/lib/X11/fonts/ghostscript
cd usr/X11R6/lib/X11/fonts/ghostscript
ln -s ../../../../../share/ghostscript/fonts/*.pfb .
rm -f `cat ../../../../../share/ghostscript/fonts/fonts.dir |grep condensed|awk '{print $1}'`
cat ../../../../../share/ghostscript/fonts/fonts.dir |grep -v condensed > fonts.dir
cat ../../../../../share/ghostscript/fonts/fonts.scale |grep -v condensed > fonts.scale
cd ../../../../../..
/sbin/makepkg ../gsfonts-${GSFONTSVERSION}-noarch-P1.tgz <<EOF
y
y
EOF
cat <<EOF >> install/doinst.sh
#%% begin initialize gsfonts-${GSFONTSVERSION}
/usr/X11R6/bin/fc-cache /usr/X11R6/lib/X11/fonts/ghostscript
#%% end
EOF
tar zcf ../gsfonts-${GSFONTSVERSION}-noarch-P1.tgz usr install
cd ..
rm -rf _pdir_
