diff options
author | andreas <andreas@FreeBSD.org> | 2001-01-17 06:57:24 +0800 |
---|---|---|
committer | andreas <andreas@FreeBSD.org> | 2001-01-17 06:57:24 +0800 |
commit | c1e70783314f026ca355cbcb4c5363fe3b1d6c00 (patch) | |
tree | 35eb97431241bcff444468ffccea0ee4163aa432 /print/ghostscript8/Makefile | |
parent | 2cc2905730c04605e348ebc552d1caa9d8d77fbf (diff) | |
download | freebsd-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/Makefile | 193 |
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> |