aboutsummaryrefslogtreecommitdiffstats
path: root/print/ghostscript8/Makefile
diff options
context:
space:
mode:
authorandreas <andreas@FreeBSD.org>2001-01-17 06:57:24 +0800
committerandreas <andreas@FreeBSD.org>2001-01-17 06:57:24 +0800
commitc1e70783314f026ca355cbcb4c5363fe3b1d6c00 (patch)
tree35eb97431241bcff444468ffccea0ee4163aa432 /print/ghostscript8/Makefile
parent2cc2905730c04605e348ebc552d1caa9d8d77fbf (diff)
downloadfreebsd-ports-gnome-c1e70783314f026ca355cbcb4c5363fe3b1d6c00.tar.gz
freebsd-ports-gnome-c1e70783314f026ca355cbcb4c5363fe3b1d6c00.tar.zst
freebsd-ports-gnome-c1e70783314f026ca355cbcb4c5363fe3b1d6c00.zip
update to ghostscript v 6.50
- removed port revision, because of new version - added PCL3 driver (hpdj successor) from Martin Lottermoser *both* driver, HPDJ and PCL3, are now compiled in reason: PCL3 is still flagged as BETA and author didn't get much response Although Martin says, its definitively not ALPHA, its safer to have the old drivers around, if things fail for some reason. Martin confirmed, that its possible to have both in one gs binary !!! - disable configure script temporarily, since dialog needs a driver update but I don't want to hold back that port any longer. - enabled as many gs driver as possible - reorganized MASTER_SITES - added mirrors - add a note, that russion mirror isn't up to date, so don't add it - optimized downloading from 6 different sources by special ordering - reorganized Makefile completely - put only ${GS_SOURCES} into EXTRACT_ONLY variable unpacking other 3rd party src's is handled in post-extract target - directory creating, patching, unpacking and install actions are now handeled within the proper make target. This makes port maintenance much easier, i.e.: if you enter make extract, then only extraction of things happen, but makefiles are still not patched. Before this cleanup, things were not so structured and not easy to maintain. Maybe we get a configure script later, to choose between different 3rd party driver options, then this "sorting" and documenting will support the migration process... - silence port by hiding actions with "@" - insert many informational echoes. This makes port maintenance and troubleshooting easier - put more unique comments in front of the different 3rd party modules - document things better - use as many environment variables as necessary, so that "numerical" changes only have to happen on some places and not withing make targets - use gs version number also in docu directory - properly install runtime, info and doc files from 3rd party drivers - put not needed stuff into "NOPORTDOCS" section - keep old font names to avoid fetching unnecessary things - updated patches as necessary - added new patch from Nartin Lottermoser - removed 2 patches that have been incorporated into gs 6.50 - added needed manual pages - updated pkg-plist - finally tested port and package building as well as port removal new port passes all disciplines ;-)
Diffstat (limited to 'print/ghostscript8/Makefile')
-rw-r--r--print/ghostscript8/Makefile193
1 files changed, 157 insertions, 36 deletions
diff --git a/print/ghostscript8/Makefile b/print/ghostscript8/Makefile
index 12fe4c37b896..33a5566f338e 100644
--- a/print/ghostscript8/Makefile
+++ b/print/ghostscript8/Makefile
@@ -6,18 +6,29 @@
#
PORTNAME= ghostscript
-PORTVERSION= 6.01
-PORTREVISION= 1
+PORTVERSION= 6.50
CATEGORIES= print
-MASTER_SITES= ftp://ftp.cs.wisc.edu/ghost/aladdin/gs601/ \
- ftp://ftp.cs.wisc.edu/ghost/aladdin/fonts/ \
- http://www.ozemail.com.au/~geoffk/pdfencrypt/ \
- http://www.proaxis.com/~mgelhaus/linux/software/hp880c/1.31/ \
- http://home.t-online.de/home/Martin.Lottermoser/pcl3dist/ \
- http://www.harsch.net/Download/
+MASTER_SITES= ftp://ftp.fh-koblenz.de/pub/Ghostscript/aladdin/gs650/ \
+ ftp://ftp.fh-koblenz.de/pub/Ghostscript/aladdin/fonts/ \
+ http://www.gelhaus.net/hp880c/1.4beta/ \
+ http://home.t-online.de/home/Martin.Lottermoser/pcl3dist/ \
+ http://www.harsch.net/Download/ \
+ http://www.ozemail.com.au/~geoffk/pdfencrypt/ \
+ http://download.sourceforge.net/ghostscript/ \
+ ftp://ftp.cs.wisc.edu/ghost/aladdin/fonts/ \
+ ftp://ftp.mirror.ac.uk/sites/ftp.cs.wisc.edu/ghost/aladdin/gs650/ \
+ ftp://ftp.mirror.ac.uk/sites/ftp.cs.wisc.edu/ghost/aladdin/fonts/ \
+ ftp://ftp.medasys-digital-systems.fr/pub/unix/ghostscript/aladdin/gs650/ \
+ ftp://ftp.medasys-digital-systems.fr/pub/unix/ghostscript/aladdin/fonts/ \
+ ftp://munnari.oz.au/ghost/aladdin/gs650/ \
+ ftp://munnari.oz.au/ghost/aladdin/fonts/ \
+ ftp://sunsite.cnlab-switch.ch/mirror/ghost/aladdin/gs650/ \
+ ftp://sunsite.cnlab-switch.ch/mirror/ghost/aladdin/fonts/
+# note: russian mirror isn't up to date
DISTFILES= ${GS_SOURCES} ${GS_FONTS_STD} ${GS_FONTS_OTHER} \
- ${DECRYPT_PDF} ${HP8XX_DRV} ${HPDJ_SRC} ${HP970_DRV}
-EXTRACT_ONLY= ${GS_SOURCES} ${HPDJ_SRC}
+ ${DECRYPT_PDF} ${HP8XX_DRV} ${HPDJ_DRV} ${PCL3_SRC} \
+ ${HP970_DRV}
+EXTRACT_ONLY= ${GS_SOURCES}
MAINTAINER= andreas@FreeBSD.org
@@ -25,6 +36,7 @@ BUILD_DEPENDS= ${NONEXISTENT}:${PORTSDIR}/graphics/jpeg:extract
LIB_DEPENDS= png.4:${PORTSDIR}/graphics/png
WRKSRC= ${WRKDIR}/gs${PORTVERSION}
+ALL_TARGET= all pcl3opts
USE_XLIB= yes
USE_GMAKE= yes
MAKEFILE= src/unix-gcc.mak
@@ -32,10 +44,10 @@ PLIST_SUB= GS_VERSION=${PORTVERSION}
# Note: the order that the manpages are listed here matters because
# some of them are symbolic links
MAN1= gs.1 dvipdf.1 font2c.1 eps2eps.1 gsbj.1 gsdj.1 gsdj500.1 \
- gslj.1 gslp.1 gsnd.1 pdf2dsc.1 pdf2ps.1 pf2afm.1 \
+ gslj.1 gslp.1 gsnd.1 pdf2dsc.1 pdfopt.1 pdf2ps.1 pf2afm.1 \
pfbtopfa.1 printafm.1 ps2ascii.1 ps2epsi.1 ps2pdf12.1 \
ps2pdf13.1 ps2pdf.1 ps2pdfwr.1 ps2ps.1 wftopfa.1 \
- gs-hpdj.1
+ gs-hpdj.1 gs-pcl3.1 pcl3opts.1
GS_SOURCES= ghostscript-${PORTVERSION}.tar.gz
# Note: the following two are real files that have symlinks with
@@ -47,15 +59,27 @@ GS_FONTS_OTHER= ghostscript-fonts-other-6.0.tar.gz
# Additional Drivers:
-# http://www.proaxis.com/~mgelhaus/linux/software/hp880c/hp880c.html
+# Ghostscript Driver for HP DeskJet 812C/815C/832C/880C/882C/895C
+# http://www.gelhaus.net/hp880c/
+# driver names: cdj880
HP8XX_DRV= gdevcd8.tar.gz
# HPDJ, additional driver for HP PCL3 Printers, by Martin Lottermoser
-# http://home.t-online.de/home/Martin.Lottermoser/pcl3.html
+# ftp://ftp.sbs.de/pub/graphics/ghostscript/pcl3/pcl3.html
HPDJ_NAME= hpdj
HPDJ_VERS= 2.6
HPDJ_DIR= ${HPDJ_NAME}-${HPDJ_VERS}
HPDJ_SRC= ${HPDJ_NAME}-${HPDJ_VERS}.tar.gz
+HPDJ_MAN1= gs-hpdj.1
+
+# PCL3 (hpdj successor in BETA state)
+# additional driver for HP PCL3 Printers, by Martin Lottermoser
+# http://home.t-online.de/home/Martin.Lottermoser/pcl3.html
+PCL3_NAME= pcl3
+PCL3_VERS= 3.0.2
+PCL3_DIR= ${PCL3_NAME}-${PCL3_VERS}
+PCL3_SRC= ${PCL3_NAME}-${PCL3_VERS}.tar.gz
+PCL3_MAN1= gs-pcl3.1 pcl3opts.1
# additional driver for HP DeskJet 970, supports duplex printing
HP970_DRV= gdevdj9.c.gz
@@ -79,55 +103,152 @@ pre-fetch:
.endif
post-extract:
+ @${ECHO} ">>> in post-extract ..."
@${LN} -s ${WRKDIRPREFIX}${.CURDIR}/../../graphics/jpeg/work/jpeg-6b \
${WRKSRC}/jpeg
+# ** 3rd party driver **
+# Note: don't forget to add those devices in scripts/configure and
+# configure.batch, which update unix-gcc.mak to build gs with these
+# new devices !
+#
+# for HP8XX driver
+ @${ECHO} ">>> extracting ${HP8XX_DRV} ..."
@${TAR} -C ${WRKSRC}/src -xzf ${DISTDIR}/${HP8XX_DRV}
- @${TAR} -C ${WRKSRC}/src -xzf ${DISTDIR}/${HPDJ_SRC}
-# additional HPDJ driver
+# for HPDJ driver
+ @${ECHO} ">>> extracting ${HPDJ_SRC} ..."
+ @${TAR} -C ${WRKDIR} -xzf ${DISTDIR}/${HPDJ_SRC}
@${TAR} -C ${WRKSRC}/src -xf ${WRKDIR}/${HPDJ_DIR}/${HPDJ_NAME}.tar
- @${CAT} ${WRKSRC}/src/contrib.mak-5.94.add >> ${WRKSRC}/src/contrib.mak
- @${PATCH} -d ${WRKSRC}/src --forward --quiet -E \
- < ${WRKSRC}/src/zmedia2.c-5.50.diff
+# for PCL3 driver
+ @${ECHO} ">>> extracting ${PCL3_SRC} ..."
+ @${TAR} -C ${WRKSRC} -xzf ${DISTDIR}/${PCL3_SRC}
+ @${LN} -s ${PCL3_DIR} ${WRKSRC}/pcl3
+ @${TAR} -C ${WRKSRC}/${PCL3_DIR} -xf \
+ ${WRKSRC}/${PCL3_DIR}/${PCL3_NAME}.tar
+# for HP DeskJet 970 driver
+ @${ECHO} ">>> extracting ${HP970_DRV} ..."
@${CP} ${DISTDIR}/${HP970_DRV} ${WRKSRC}/src
@${GUNZIP_CMD} ${WRKSRC}/src/${HP970_DRV}
- @${CAT} ${FILESDIR}/dj970.contrib.mak >> ${WRKSRC}/src/contrib.mak
+
+# here we apply unofficial patches from 3rd party drivers
+post-patch:
+# from PCL3 driver
+ @${ECHO} ">>> in post-patch ..."
+ @${ECHO} ">>> applying patches from PCL3 ..."
+ @${PATCH} -d ${WRKSRC}/src --forward --quiet -E \
+ < ${WRKSRC}/${PCL3_DIR}/src/zmedia2.c-6.01.diff
+
+# here we apply the modifications necessary to build the 3rd party drivers
+# advantage: you see unmodified makefiles after a pure make extract
+pre-configure:
+ @${ECHO} ">>> in pre-configure ..."
+# for HPDJ driver
+ @${ECHO} ">>> adding HPDJ driver to contrib.mak ..."
+ @${CAT} ${WRKSRC}/src/contrib.mak-5.94.add \
+ >> ${WRKSRC}/src/contrib.mak
+# for PCL3 driver
+ @${ECHO} ">>> adding PCL3 driver to contrib.mak ..."
+ @${CAT} ${WRKSRC}/${PCL3_DIR}/src/contrib.mak-6.01.add \
+ >> ${WRKSRC}/src/contrib.mak
+# for HP DeskJet 970 driver
+ @${ECHO} ">>> adding DJ970 driver to contrib.mak ..."
+ @${CAT} ${FILESDIR}/dj970.contrib.mak \
+ >> ${WRKSRC}/src/contrib.mak
do-configure:
+ @${ECHO} ">>> in do-configure ..."
.if defined(BATCH)
- @${SETENV} WRKSRC=${WRKSRC} ${SH} ${SCRIPTDIR}/configure.batch
+ @${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/configure.batch
.else
- @${SETENV} WRKSRC=${WRKSRC} ${SH} ${SCRIPTDIR}/configure
+ # XXX diable dialog based configure, needs some rework later...
+ #@${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/configure
+ @${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/configure.batch
.endif
pre-build:
+ @${ECHO} ">>> in pre-build ..."
+ @${ECHO} ">>> creating directories for compilation ..."
@${MKDIR} ${WRKSRC}/obj
@${MKDIR} ${WRKSRC}/bin
pre-install:
+ @${ECHO} ">>> in pre-install ..."
+ @${ECHO} ">>> creating destdir ..."
@${MKDIR} ${PREFIX}/share/ghostscript
- ${TAR} -C ${PREFIX}/share/ghostscript -xzf ${DISTDIR}/${GS_FONTS_STD}
- ${TAR} -C ${PREFIX}/share/ghostscript -xzf ${DISTDIR}/${GS_FONTS_OTHER}
+ @${ECHO} ">>> extracting gs fonts..."
+ @${TAR} -C ${PREFIX}/share/ghostscript -xzf ${DISTDIR}/${GS_FONTS_STD}
+ @${TAR} -C ${PREFIX}/share/ghostscript -xzf ${DISTDIR}/${GS_FONTS_OTHER}
post-install:
+ @${ECHO} ">>> in post-install ..."
+ @${ECHO} ">>> stripping gs ..."
@strip ${PREFIX}/bin/gs
- ${INSTALL_SCRIPT} ${WRKSRC}/lib/unix-lpr.sh ${PREFIX}/bin
- ${INSTALL_SCRIPT} ${WRKSRC}/lib/lprsetup.sh ${PREFIX}/bin
- @${MKDIR} ${PREFIX}/libexec/lpr
- ${INSTALL_SCRIPT} ${WRKSRC}/src/if-hpdj ${PREFIX}/libexec/lpr
- ${INSTALL_MAN} ${WRKSRC}/src/gs-hpdj.1 ${PREFIX}/man/man1
+ @${ECHO} ">>> installing additional scripts ..."
+ @${INSTALL_SCRIPT} ${WRKSRC}/lib/unix-lpr.sh ${PREFIX}/bin
+ @${INSTALL_SCRIPT} ${WRKSRC}/lib/lprsetup.sh ${PREFIX}/bin
+# for HPDJ driver
+ @${ECHO} ">>> installing HPDJ manpages ..."
+.for i in ${HPDJ_MAN1}
+ @${INSTALL_MAN} ${WRKSRC}/src/${i} ${PREFIX}/man/man1
+.endfor
+ @${ECHO} ">>> creating HPDJ destdir ..."
+ @${MKDIR} ${PREFIX}/share/ghostscript/${PORTVERSION}/hpdj
+ @${ECHO} ">>> installing files in HPDJ destdir ..."
+.for i in README.hpdj example.mdf margins-A4.ps margins-A4Rotated.ps \
+ margins-Letter.ps margins-LetterRotated.ps
+ @${INSTALL_DATA} ${WRKSRC}/src/${i} \
+ ${PREFIX}/share/ghostscript/${PORTVERSION}/hpdj
+.endfor
+# for PCL3 driver
+ @${ECHO} ">>> installing PCL3 manpages ..."
+.for i in ${PCL3_MAN1}
+ @${INSTALL_MAN} ${WRKSRC}/${PCL3_DIR}/doc/${i} ${PREFIX}/man/man1
+.endfor
+# other pcl3 stuff, which might be interesting for runtime
+ @${ECHO} ">>> creating PCL3 destdir ..."
+ @${MKDIR} ${PREFIX}/share/ghostscript/${PORTVERSION}/pcl3
+ @${ECHO} ">>> installing files in PCL3 destdir ..."
+.for i in BETA BUGS README lib/example.mcf lib/if-pcl3 ps/calign.ps \
+ ps/dumppdd.ps ps/levels-test.ps ps/margins-A4.ps \
+ ps/margins-A4Rotated.ps ps/margins-Env10Rotated.ps \
+ ps/margins-EnvDLRotated.ps ps/margins-Letter.ps \
+ ps/margins-LetterRotated.ps
+ @${INSTALL_DATA} ${WRKSRC}/${PCL3_DIR}/${i} \
+ ${PREFIX}/share/ghostscript/${PORTVERSION}/pcl3
+.endfor
+# contributed UPP driver
+ @${ECHO} ">>> installing contributed UPP profiles ..."
.for i in ${CONTRIB_UPP}
- ${INSTALL_DATA} ${FILESDIR}/${i} \
+ @${INSTALL_DATA} ${FILESDIR}/${i} \
${PREFIX}/share/ghostscript/${PORTVERSION}/lib
.endfor
- ${INSTALL_DATA} ${DISTDIR}/pdf_sec.ps \
+# for reading encrypted PDFs
+ @${ECHO} ">>> installing support for encrypted PDF files ..."
+ @${INSTALL_DATA} ${DISTDIR}/${DECRYPT_PDF} \
${PREFIX}/share/ghostscript/${PORTVERSION}/lib
+#
+# now NOPORTDOCS dependend stuff
+#
.if !defined(NOPORTDOCS)
- @${MKDIR} ${PREFIX}/share/ghostscript/hpdj
-.for i in LGPL.txt NEWS README.hpdj example.mdf hpdj.html margins-A4.ps \
- margins-A4Rotated.ps margins-Letter.ps margins-LetterRotated.ps
- ${INSTALL_DATA} ${WRKSRC}/src/${i} ${PREFIX}/share/ghostscript/hpdj
-
+ @${ECHO} ">>> installing PORTDOC stuff ..."
+# install hpdj docu, not necessary for runtime
+# note: old hpdj driver has its files in ${WRKSRC}/src
+ @${ECHO} ">>> creating HPDJ docu destdir ..."
+ @${MKDIR} ${PREFIX}/share/doc/ghostscript/${PORTVERSION}/hpdj
+ @${ECHO} ">>> installing files in HPDJ docu destdir ..."
+.for i in LGPL.txt NEWS hpdj.html
+ @${INSTALL_DATA} ${WRKSRC}/src/${i} \
+ ${PREFIX}/share/doc/ghostscript/${PORTVERSION}/hpdj
+.endfor
+# install pcl3 docu, not necessary for runtime
+# note: new pcl3 driver has a subdir of its own
+ @${ECHO} ">>> creating HPDJ docu destdir ..."
+ @${MKDIR} ${PREFIX}/share/doc/ghostscript/${PORTVERSION}/pcl3
+ @${ECHO} ">>> installing files in HPDJ docu destdir ..."
+.for i in LGPL NEWS doc/gs-pcl3.html doc/how-to-report.txt doc/pcl3opts.html
+ @${INSTALL_DATA} ${WRKSRC}/${PCL3_DIR}/${i} \
+ ${PREFIX}/share/doc/ghostscript/${PORTVERSION}/pcl3
.endfor
.endif
+ @${ECHO} "> post-installation tasks completed."
.include <bsd.port.mk>