summaryrefslogtreecommitdiff
path: root/print/ghostscript
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2005-12-09 20:30:16 +0000
committerwiz <wiz@pkgsrc.org>2005-12-09 20:30:16 +0000
commit3f16007cad7e3b636bc4afb5639274e8558d7fff (patch)
treec837e0b844bf28b83752eac770808a25d49d83ac /print/ghostscript
parent7da3aa08c27aff7a418f84089600bec882c64197 (diff)
downloadpkgsrc-3f16007cad7e3b636bc4afb5639274e8558d7fff.tar.gz
Add x11 option to the various ghostscript packages, and get rid
of the separate ghostscript*x11* packages.
Diffstat (limited to 'print/ghostscript')
-rw-r--r--print/ghostscript/Makefile306
-rw-r--r--print/ghostscript/PLIST327
-rw-r--r--print/ghostscript/distinfo82
-rw-r--r--print/ghostscript/files/devs.nox11186
-rw-r--r--print/ghostscript/files/devs.x1116
-rw-r--r--print/ghostscript/options.mk17
-rw-r--r--print/ghostscript/patches/patch-ab12
-rw-r--r--print/ghostscript/patches/patch-ac21
-rw-r--r--print/ghostscript/patches/patch-ad51
-rw-r--r--print/ghostscript/patches/patch-ae57
-rw-r--r--print/ghostscript/patches/patch-af26
-rw-r--r--print/ghostscript/patches/patch-ag25
-rw-r--r--print/ghostscript/patches/patch-ah229
-rw-r--r--print/ghostscript/patches/patch-ai23
-rw-r--r--print/ghostscript/patches/patch-aj24
-rw-r--r--print/ghostscript/patches/patch-ak384
-rw-r--r--print/ghostscript/patches/patch-al40
-rw-r--r--print/ghostscript/patches/patch-am13
-rw-r--r--print/ghostscript/patches/patch-an12
-rw-r--r--print/ghostscript/patches/patch-ao31
-rw-r--r--print/ghostscript/patches/patch-ap36
-rw-r--r--print/ghostscript/patches/patch-aq30
-rw-r--r--print/ghostscript/patches/patch-ar15
-rw-r--r--print/ghostscript/patches/patch-as13
-rw-r--r--print/ghostscript/patches/patch-at139
-rw-r--r--print/ghostscript/patches/patch-au22
-rw-r--r--print/ghostscript/patches/patch-av32
-rw-r--r--print/ghostscript/patches/patch-aw72
-rw-r--r--print/ghostscript/patches/patch-ay13
-rw-r--r--print/ghostscript/patches/patch-az32
-rw-r--r--print/ghostscript/patches/patch-ba42
-rw-r--r--print/ghostscript/patches/patch-bb10
-rw-r--r--print/ghostscript/patches/patch-bc18
-rw-r--r--print/ghostscript/patches/patch-bd31
-rw-r--r--print/ghostscript/patches/patch-be22
-rw-r--r--print/ghostscript/patches/patch-bug-workaround23
36 files changed, 2423 insertions, 9 deletions
diff --git a/print/ghostscript/Makefile b/print/ghostscript/Makefile
index 42def2114e9..73568cf84be 100644
--- a/print/ghostscript/Makefile
+++ b/print/ghostscript/Makefile
@@ -1,13 +1,301 @@
-# $NetBSD: Makefile,v 1.16 2005/11/27 17:07:29 adrianp Exp $
+# $NetBSD: Makefile,v 1.17 2005/12/09 20:30:16 wiz Exp $
-PKGNAME= ghostscript-${GS_VERS}
-PKGREVISION= 6
-COMMENT= Aladdin Postscript interpreter
+DISTNAME= ghostscript-${GS_VERS}
+PKGREVISION= 6
+GS_VERS= 6.01
+CATEGORIES= print
+MASTER_SITES+= ${MASTER_SITE_SOURCEFORGE:=ghostscript/} \
+ ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/aladdin/gs${GS_VERS:S/.//}/
+EXTRACT_SUFX= .tar.bz2
-GS_DISPLAY_DEVICE= x11.dev
-XLIBS= Xt SM ICE Xext X11
+MAINTAINER= tech-pkg@NetBSD.org
+COMMENT= Aladdin Postscript interpreter
+HOMEPAGE= http://www.cs.wisc.edu/~ghost/index.html
-.include "../../mk/x11.buildlink3.mk"
-.include "../../print/ghostscript-nox11/Makefile.common"
+DEPENDS+= ghostscript-fonts>=6.0:../../fonts/ghostscript-fonts
+DEPENDS+= watanabe-vfont-19930318:../../fonts/watanabe_vfont
-MAKEFRAGS+= ${FILESDIR}/devs.x11
+CONFLICTS+= ghostscript{,-nox11}-[0-9]*
+CONFLICTS+= ghostscript-afpl-[0-9]*
+CONFLICTS+= ghostscript-esp{,-nox11}-[0-9]*
+CONFLICTS+= ghostscript-gnu{,-nox11,-x11}-[0-9]*
+CONFLICTS+= hpijs-[0-9]*
+
+WRKSRC= ${WRKDIR}/gs${GS_VERS}
+USE_TOOLS+= gmake
+GNU_CONFIGURE= yes
+
+GS_SRCS= ${DISTNAME}${EXTRACT_SUFX}
+DISTFILES+= ${GS_SRCS}
+EXTRACT_ONLY= ${GS_SRCS}
+
+# Adobe's JPEG implementation in their PDF/PS documents is non-standard,
+# so we can't use an already installed libjpeg.so.
+#
+JPEG_SRCS= jpegsrc.v6b.tar.gz
+JPEG_WRKSRC= ${WRKDIR}/jpeg-6b
+SITES_${JPEG_SRCS}= ftp://ftp.uu.net/graphics/jpeg/ \
+ ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/3rdparty/
+DISTFILES+= ${JPEG_SRCS}
+EXTRACT_ONLY+= ${JPEG_SRCS}
+
+# VFlib & Japanese PDF patch
+PATCH_SITES= http://www.sat.t.u-tokyo.ac.jp/~hideyuki/Ghostscript/
+PATCHFILES= gs${GS_VERS}-jpdf-exp.patch.gz
+PATCH_DIST_STRIP= -p1
+
+# PostScript source to decode encrypted PDF files
+PDF_SEC= pdf_sec.ps
+SITES_${PDF_SEC}= http://www.ozemail.com.au/~geoffk/pdfencrypt/
+DISTFILES+= ${PDF_SEC}
+
+# Gimp-print/STP drivers for photo-quality inkjet output
+GIMPPRINT= gimp-print-4.2.0
+GIMPPRINT_SRCS= ${GIMPPRINT}.tar.gz
+GIMPPRINT_WRKSRC= ${WRKDIR}/${GIMPPRINT}
+SITES_${GIMPPRINT_SRCS}= ${MASTER_SITE_SOURCEFORGE:=gimp-print/}
+DISTFILES+= ${GIMPPRINT_SRCS}
+EXTRACT_ONLY+= ${GIMPPRINT_SRCS}
+GIMPPRINT_CONFIGURE_ARGS= ${CONFIGURE_ARGS} --without-gimp --with-ghost
+
+# Drivers from the HP Inkjet Project (IJS/HPIJS)
+HPIJS_DRV= hpijs-1.0.2
+HPIJS_SRCS= ${HPIJS_DRV}.tar.gz
+HPIJS_WRKSRC= ${WRKDIR}/${HPIJS_DRV}
+HPIJS_GSFILES= gdevijs.c gdevijs.h
+HPIJS_GSFILES+= ijs.c ijs.h ijs_client.c ijs_client.h ijs_exec_unix.c
+HPIJS_GSFILES+= unistd_.h
+SITES_${HPIJS_SRCS}= ${MASTER_SITE_SOURCEFORGE:=hpinkjet/}
+DISTFILES+= ${HPIJS_SRCS}
+EXTRACT_ONLY+= ${HPIJS_SRCS}
+HPIJS_CONFIGURE_ARGS= ${CONFIGURE_ARGS}
+
+# Additional driver for several HP deskjets
+HPDJ_DRV= hpdj-2.6
+SITES_${HPDJ_DRV}.tar.gz= ftp://ftp.sbs.de/pub/graphics/ghostscript/pcl3/
+DISTFILES+= ${HPDJ_DRV}.tar.gz
+EXTRACT_ONLY+= ${HPDJ_DRV}.tar.gz
+
+# I don't know the primary destribution sites of these drivers....
+DMPRT_DRV= dmprt-2.01
+SITES_${DMPRT_DRV}.tar.gz= ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/
+DISTFILES+= ${DMPRT_DRV}.tar.gz
+EXTRACT_ONLY+= ${DMPRT_DRV}.tar.gz
+
+BJ10V_DRV= gdev10v
+DISTFILES+= ${BJ10V_DRV}.tar.gz
+EXTRACT_ONLY+= ${BJ10V_DRV}.tar.gz
+
+# EPSON MJ-700V2C
+MJC_DRV= gdevmjc-0.8
+DISTFILES+= ${MJC_DRV}.tar.gz
+EXTRACT_ONLY+= ${MJC_DRV}.tar.gz
+
+# Alps MD5000 printer 600dpi monochrome mode
+MD5000_DRV= gdevalps-0.2
+DISTFILES+= ${MD5000_DRV}.tar.gz
+EXTRACT_ONLY+= ${MD5000_DRV}.tar.gz
+
+# Alps MD-2000/2010/4000/1300/1500/5000
+MD2000_DRV= gdevmd2k-0.2a
+SITES_${MD2000_DRV}.tar.gz= http://plaza26.mbn.or.jp/~higamasa/gdevmd2k/
+DISTFILES+= ${MD2000_DRV}.tar.gz
+EXTRACT_ONLY+= ${MD2000_DRV}.tar.gz
+
+# Canon LIPS II+, III, IV; EPSON ESC/Page; NEC NPDL drivers
+LIPS_DRV= gdevlips-2.3.6
+SITES_${LIPS_DRV}.tar.gz= http://www.bukka.p.chiba-u.ac.jp/~ohmori/gs/
+DISTFILES+= ${LIPS_DRV}.tar.gz
+EXTRACT_ONLY+= ${LIPS_DRV}.tar.gz
+
+# Ricoh RPDL
+RPDL_DRV= gdevrpdl
+SITES_${RPDL_DRV}.tar.gz= http://home.jp.FreeBSD.org/~mita/LOCAL_PORTS/
+DISTFILES+= ${RPDL_DRV}.tar.gz
+EXTRACT_ONLY+= ${RPDL_DRV}.tar.gz
+
+# Kyocera Prescribe
+PRESCR_DRV= gdevprsc-0.4
+SITES_${PRESCR_DRV}.tar.gz= ${MASTER_SITE_LOCAL}
+DISTFILES+= ${PRESCR_DRV}.tar.gz
+EXTRACT_ONLY+= ${PRESCR_DRV}.tar.gz
+
+# Samsung SmartGDI laser printers
+GDI_DRV= samsung-gdi-driver
+SITES_${GDI_DRV}.tar.gz= http://www.linuxprinting.org/download/printing/
+DISTFILES+= ${GDI_DRV}.tar.gz
+EXTRACT_ONLY+= ${GDI_DRV}.tar.gz
+
+DIST_SUBDIR= ghostscript
+MAKEFILE= src/unix-gcc.mak
+BUILD_TARGET= std
+
+MAKEFRAGS= ${FILESDIR}/devs.nox11
+
+.include "options.mk"
+.include "../../mk/bsd.prefs.mk"
+
+.if ${OPSYS} == "SunOS"
+GCC_REQD+= 2.95.3
+.elif ${MACHINE_ARCH} == "arm" || ${MACHINE_ARCH} == "arm32"
+GCC_REQD+= 3.0
+.endif
+
+.if defined(PAPERSIZE) && (${PAPERSIZE} == "A4" || ${PAPERSIZE} == "a4")
+CFLAGS+= -DA4
+.endif
+CFLAGS+= -DHAVE_MKSTEMP=1
+
+MAKE_FLAGS+= CFLAGS=${CFLAGS:M*:Q}
+MAKE_FLAGS+= LDFLAGS=${LDFLAGS:M*:Q}
+MAKE_FLAGS+= GS_DISPLAY_DEVICE=${GS_DISPLAY_DEVICE:Q}
+MAKE_FLAGS+= XINCLUDE= XLIBDIRS= XLIBS=${XLIBS:Q}
+
+.if ${OPSYS} == "SunOS"
+LDFLAGS+= -L${LOCALBASE}/bsd/lib ${COMPILER_RPATH_FLAG}${LOCALBASE}/bsd/lib
+.endif
+
+# Define whether this platform has floating point hardware:
+# FPU_TYPE=2 means floating point is faster than fixed point.
+# (This is the case on some RISCs with multiple instruction dispatch.)
+# FPU_TYPE=1 means floating point is at worst only slightly slower
+# than fixed point.
+# FPU_TYPE=0 means that floating point may be considerably slower.
+# FPU_TYPE=-1 means that floating point is always much slower than
+# fixed point.
+#
+FPU_TYPE?= 1
+MAKE_FLAGS+= FPU_TYPE=${FPU_TYPE:Q}
+
+PLIST_SUBST+= GS_VERS=${GS_VERS}vflib
+REPLACE_PERL= lib/fixmswrd.pl
+
+GSDATADIR= ${PREFIX}/share/ghostscript/${GS_VERS}vflib
+DOCDIR= ${PREFIX}/share/doc/ghostscript
+HTMLDIR= ${PREFIX}/share/doc/html/ghostscript
+LIBDIR= ${GSDATADIR}/lib
+
+GS_CONF_PREREQ= # empty
+
+.PHONY: contrib-drivers
+contrib-drivers:
+ cd ${WRKSRC}/src; ${PAX} -rf ${WRKDIR}/${HPDJ_DRV}/hpdj.tar
+ ${MV} ${WRKSRC}/src/gs-hpdj.1 ${WRKSRC}/man
+ cd ${WRKDIR}; ${CP} gdevdmpr.c gdevdmpr.mak ${WRKSRC}/src
+ cd ${WRKDIR}; ${CP} dviprlib.* ${WRKSRC}/src
+ cd ${WRKDIR}/${BJ10V_DRV}; ${CP} gdev10v.c gdev10v.mak ${WRKSRC}/src
+ cd ${WRKDIR}/${MJC_DRV}; ${CP} *.[ch] gdevmjc.mak ${WRKSRC}/src
+ cd ${WRKDIR}/${LIPS_DRV}; ${CP} * ${WRKSRC}/src
+ cd ${WRKDIR}/${RPDL_DRV}; ${CP} gdevrpdl.c gdevrpdl.mak ${WRKSRC}/src
+ cd ${WRKDIR}/${MD5000_DRV}; \
+ ${CP} gdevalps.c gdevalps.mak-5.50 ${WRKSRC}/src
+ cd ${WRKDIR}/${MD2000_DRV}; \
+ ${CP} gdevmd2k.c gdevmd2k.mak-5.8x ${WRKSRC}/src
+ cd ${WRKDIR}/${PRESCR_DRV}; \
+ ${CP} gdevprsc.c gdevprsc.mak ${WRKSRC}/src
+ cd ${WRKDIR}; ${CP} gdevgdi.c ${WRKSRC}/src
+
+post-extract: contrib-drivers
+ ${RM} -f ${WRKSRC}/jpeg
+ ${LN} -s ${JPEG_WRKSRC} ${WRKSRC}/jpeg
+ ${RM} -f ${WRKSRC}/lib/${PDF_SEC}
+ ${LN} -s ${_DISTDIR}/${PDF_SEC} ${WRKSRC}/lib/${PDF_SEC}
+
+post-patch:
+ if [ ! -f ${WRKDIR}/dmp_site.ps.bak ]; then \
+ ${MV} ${WRKDIR}/dmp_site.ps ${WRKDIR}/dmp_site.ps.bak; \
+ fi
+ ${SED} -e "s|epsimage\.src|${GSDATADIR}/lib/escp_24.src|g" \
+ ${WRKDIR}/dmp_site.ps.bak > ${WRKDIR}/dmp_site.ps
+
+GS_CONF_PREREQ+= hpijs-configure
+.PHONY: hpijs-configure
+hpijs-configure:
+ cd ${HPIJS_WRKSRC} && \
+ ${SETENV} CC="${CC}" CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" \
+ ${CONFIGURE_ENV} \
+ ${CONFIGURE_SCRIPT} ${HPIJS_CONFIGURE_ARGS} && \
+ ${CP} ${HPIJS_GSFILES} ${WRKSRC}/src && \
+ ${HEAD} -518 contrib.mak | ${TAIL} -20 \
+ >> ${WRKSRC}/src/contrib.mak
+
+GS_BUILD_PREREQ+= hpijs-build
+.PHONY: hpijs-build
+hpijs-build:
+ cd ${HPIJS_WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} all
+
+GS_INSTALL_PREREQ+= hpijs-install
+.PHONY: hpijs-install
+hpijs-install:
+ cd ${HPIJS_WRKSRC} && \
+ ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} install docdir=${HTMLDIR}/hpijs
+
+GS_CONF_PREREQ+= gimpprint-configure
+.PHONY: gimpprint-configure
+gimpprint-configure:
+ cd ${GIMPPRINT_WRKSRC} && \
+ ${SETENV} CC="${CC}" CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" \
+ ${GIMPPRINT_CONFIGURE_ENV} \
+ ${CONFIGURE_SCRIPT} ${GIMPPRINT_CONFIGURE_ARGS} && \
+ cd ${GIMPPRINT_WRKSRC}/src/ghost && \
+ ${SETENV} ${MAKE_ENV} SED=${SED} ${MAKE_PROGRAM} all-local && \
+ ( ${ECHO} '#ifndef GIMPPRINT_VERSION_FIX'; \
+ ${ECHO} '#define GIMPPRINT_VERSION_FIX'; \
+ ${EGREP} '#define (VERSION|RELEASE_DATE)' ../../config.h; \
+ ${ECHO} '#endif /* GIMPPRINT_VERSION_FIX */'; \
+ ) >> gdevstp-print.h; \
+ ${CP} *.c *.h ${WRKSRC}/src && \
+ ${CAT} contrib.mak.addon.old >> ${WRKSRC}/src/contrib.mak
+
+do-configure: ${GS_CONF_PREREQ}
+ #
+ # Append build rules for extra drivers to contrib.mak
+ #
+ ${CAT} ${WRKSRC}/src/contrib.mak-5.94.add \
+ ${WRKSRC}/src/gdevlips.mak \
+ ${WRKSRC}/src/gdev10v.mak \
+ ${WRKSRC}/src/gdevmjc.mak \
+ ${WRKSRC}/src/gdevrpdl.mak \
+ ${WRKSRC}/src/gdevdmpr.mak \
+ ${WRKSRC}/src/gdevalps.mak-5.50 \
+ ${WRKSRC}/src/gdevmd2k.mak-5.8x \
+ ${WRKSRC}/src/gdevprsc.mak \
+ >> ${WRKSRC}/src/contrib.mak
+ #
+ # Prepend device list to unix-gcc.mak
+ #
+ ( if [ -n "${GS_DISPLAY_DEVICE:Q}" ]; then \
+ ${ECHO} 'DEVICE_DEVS= $$(DD)${GS_DISPLAY_DEVICE}'; \
+ ${ECHO} ''; \
+ fi; \
+ ${CAT} ${MAKEFRAGS} ${WRKSRC}/src/unix-gcc.mak \
+ ) > ${WRKDIR}/unix-gcc.mak
+ ${MV} -f ${WRKDIR}/unix-gcc.mak ${WRKSRC}/src
+
+post-build: ${GS_BUILD_PREREQ}
+
+post-install: ${GS_INSTALL_PREREQ}
+
+post-install:
+ strip ${PREFIX}/bin/gs
+ ${INSTALL_DATA_DIR} ${DOCDIR}
+ ${INSTALL_DATA} ${GIMPPRINT_WRKSRC}/src/ghost/README \
+ ${DOCDIR}/README.stp
+ ${INSTALL_DATA} ${WRKDIR}/${LIPS_DRV}/Gdevlips.htm ${HTMLDIR}
+ ${INSTALL_DATA} ${WRKDIR}/${BJ10V_DRV}/gdev10v.jis ${DOCDIR}
+ ${INSTALL_DATA} ${WRKDIR}/gdevdmpr.sj ${DOCDIR}
+ ${INSTALL_DATA} ${WRKDIR}/dmp_init.ps ${LIBDIR}
+ ${INSTALL_DATA} ${WRKDIR}/dmp_site.ps ${LIBDIR}
+ ${INSTALL_DATA} ${WRKDIR}/escp_24.src ${LIBDIR}
+ ${INSTALL_DATA} ${WRKDIR}/testpage.ps ${LIBDIR}
+ ${INSTALL_DATA} ${WRKDIR}/${PRESCR_DRV}/gdevprsc.?? ${DOCDIR}
+ ${INSTALL_DATA_DIR} ${DOCDIR}/${MJC_DRV}
+ ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/README.mjc ${DOCDIR}/${MJC_DRV}
+ ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/README.noz ${DOCDIR}/${MJC_DRV}
+ ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/README.mje ${DOCDIR}/${MJC_DRV}
+ ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/cpem.doc ${DOCDIR}/${MJC_DRV}
+ ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/MJ700V2C.FAQ ${DOCDIR}/${MJC_DRV}
+
+.include "../../graphics/png/buildlink3.mk"
+.include "../../print/ja-vflib-lib/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/print/ghostscript/PLIST b/print/ghostscript/PLIST
new file mode 100644
index 00000000000..dbbed280ed9
--- /dev/null
+++ b/print/ghostscript/PLIST
@@ -0,0 +1,327 @@
+@comment $NetBSD: PLIST,v 1.1 2005/12/09 20:30:16 wiz Exp $
+bin/bdftops
+bin/dvipdf
+bin/eps2eps
+bin/fixmswrd.pl
+bin/font2c
+bin/gs
+bin/gsbj
+bin/gsdj
+bin/gsdj500
+bin/gslj
+bin/gslp
+bin/gsnd
+bin/hpijs
+bin/lprsetup.sh
+bin/pdf2dsc
+bin/pdf2ps
+bin/pf2afm
+bin/pfbtopfa
+bin/pj-gs.sh
+bin/printafm
+bin/ps2ascii
+bin/ps2epsi
+bin/ps2pdf
+bin/ps2pdf12
+bin/ps2pdf13
+bin/ps2pdfwr
+bin/ps2ps
+bin/pv.sh
+bin/sysvlp.sh
+bin/unix-lpr.sh
+bin/wftopfa
+man/man1/dvipdf.1
+man/man1/eps2eps.1
+man/man1/font2c.1
+man/man1/gs-hpdj.1
+man/man1/gs.1
+man/man1/gsbj.1
+man/man1/gsdj.1
+man/man1/gsdj500.1
+man/man1/gslj.1
+man/man1/gslp.1
+man/man1/gsnd.1
+man/man1/pdf2dsc.1
+man/man1/pdf2ps.1
+man/man1/pf2afm.1
+man/man1/pfbtopfa.1
+man/man1/printafm.1
+man/man1/ps2ascii.1
+man/man1/ps2epsi.1
+man/man1/ps2pdf.1
+man/man1/ps2pdf12.1
+man/man1/ps2pdf13.1
+man/man1/ps2pdfwr.1
+man/man1/ps2ps.1
+man/man1/wftopfa.1
+share/doc/ghostscript/README.stp
+share/doc/ghostscript/gdev10v.jis
+share/doc/ghostscript/gdevdmpr.sj
+share/doc/ghostscript/gdevmjc-0.8/MJ700V2C.FAQ
+share/doc/ghostscript/gdevmjc-0.8/README.mjc
+share/doc/ghostscript/gdevmjc-0.8/README.mje
+share/doc/ghostscript/gdevmjc-0.8/README.noz
+share/doc/ghostscript/gdevmjc-0.8/cpem.doc
+share/doc/ghostscript/gdevprsc.en
+share/doc/ghostscript/gdevprsc.ja
+share/doc/html/ghostscript/Bug-form.htm
+share/doc/html/ghostscript/C-style.htm
+share/doc/html/ghostscript/Commprod.htm
+share/doc/html/ghostscript/Copying.htm
+share/doc/html/ghostscript/Current.htm
+share/doc/html/ghostscript/DLL.htm
+share/doc/html/ghostscript/Devices.htm
+share/doc/html/ghostscript/Drivers.htm
+share/doc/html/ghostscript/Fonts.htm
+share/doc/html/ghostscript/Gdevlips.htm
+share/doc/html/ghostscript/Helpers.htm
+share/doc/html/ghostscript/Hershey.htm
+share/doc/html/ghostscript/History1.htm
+share/doc/html/ghostscript/History2.htm
+share/doc/html/ghostscript/History3.htm
+share/doc/html/ghostscript/History4.htm
+share/doc/html/ghostscript/History5.htm
+share/doc/html/ghostscript/History6.htm
+share/doc/html/ghostscript/Htmstyle.htm
+share/doc/html/ghostscript/Humor.htm
+share/doc/html/ghostscript/Install.htm
+share/doc/html/ghostscript/Language.htm
+share/doc/html/ghostscript/Lib.htm
+share/doc/html/ghostscript/Make.htm
+share/doc/html/ghostscript/New-user.htm
+share/doc/html/ghostscript/News.htm
+share/doc/html/ghostscript/PUBLIC
+share/doc/html/ghostscript/Ps2pdf.htm
+share/doc/html/ghostscript/Psfiles.htm
+share/doc/html/ghostscript/Public.htm
+share/doc/html/ghostscript/README
+share/doc/html/ghostscript/Readme.htm
+share/doc/html/ghostscript/Release.htm
+share/doc/html/ghostscript/Source.htm
+share/doc/html/ghostscript/Tester.htm
+share/doc/html/ghostscript/Unix-lpr.htm
+share/doc/html/ghostscript/Use.htm
+share/doc/html/ghostscript/Xfonts.htm
+share/doc/html/ghostscript/hpijs/append_db.sh
+share/doc/html/ghostscript/hpijs/gs_hpijs.png
+share/doc/html/ghostscript/hpijs/hpijs_readme.html
+share/doc/html/ghostscript/hpijs/printerdb_append
+share/doc/html/ghostscript/ps2epsi.txt
+share/examples/ghostscript/alphabet.ps
+share/examples/ghostscript/cheq.ps
+share/examples/ghostscript/chess.ps
+share/examples/ghostscript/colorcir.ps
+share/examples/ghostscript/doretree.ps
+share/examples/ghostscript/escher.ps
+share/examples/ghostscript/golfer.ps
+share/examples/ghostscript/grayalph.ps
+share/examples/ghostscript/ridt91.eps
+share/examples/ghostscript/snowflak.ps
+share/examples/ghostscript/tiger.ps
+share/examples/ghostscript/vasarely.ps
+share/examples/ghostscript/waterfal.ps
+share/ghostscript/${GS_VERS}/lib/Fontmap
+share/ghostscript/${GS_VERS}/lib/Fontmap.GS
+share/ghostscript/${GS_VERS}/lib/acctest.ps
+share/ghostscript/${GS_VERS}/lib/addxchar.ps
+share/ghostscript/${GS_VERS}/lib/align.ps
+share/ghostscript/${GS_VERS}/lib/bdftops.ps
+share/ghostscript/${GS_VERS}/lib/bjc610a0.upp
+share/ghostscript/${GS_VERS}/lib/bjc610a1.upp
+share/ghostscript/${GS_VERS}/lib/bjc610a2.upp
+share/ghostscript/${GS_VERS}/lib/bjc610a3.upp
+share/ghostscript/${GS_VERS}/lib/bjc610a4.upp
+share/ghostscript/${GS_VERS}/lib/bjc610a5.upp
+share/ghostscript/${GS_VERS}/lib/bjc610a6.upp
+share/ghostscript/${GS_VERS}/lib/bjc610a7.upp
+share/ghostscript/${GS_VERS}/lib/bjc610a8.upp
+share/ghostscript/${GS_VERS}/lib/bjc610b1.upp
+share/ghostscript/${GS_VERS}/lib/bjc610b2.upp
+share/ghostscript/${GS_VERS}/lib/bjc610b3.upp
+share/ghostscript/${GS_VERS}/lib/bjc610b4.upp
+share/ghostscript/${GS_VERS}/lib/bjc610b6.upp
+share/ghostscript/${GS_VERS}/lib/bjc610b7.upp
+share/ghostscript/${GS_VERS}/lib/bjc610b8.upp
+share/ghostscript/${GS_VERS}/lib/caption.ps
+share/ghostscript/${GS_VERS}/lib/cbjc600.ppd
+share/ghostscript/${GS_VERS}/lib/cbjc800.ppd
+share/ghostscript/${GS_VERS}/lib/cdj550.upp
+share/ghostscript/${GS_VERS}/lib/cdj690.upp
+share/ghostscript/${GS_VERS}/lib/cdj690ec.upp
+share/ghostscript/${GS_VERS}/lib/cid2code.ps
+share/ghostscript/${GS_VERS}/lib/decrypt.ps
+share/ghostscript/${GS_VERS}/lib/dmp_init.ps
+share/ghostscript/${GS_VERS}/lib/dmp_site.ps
+share/ghostscript/${GS_VERS}/lib/dnj750c.upp
+share/ghostscript/${GS_VERS}/lib/dnj750m.upp
+share/ghostscript/${GS_VERS}/lib/docie.ps
+share/ghostscript/${GS_VERS}/lib/errpage.ps
+share/ghostscript/${GS_VERS}/lib/escp_24.src
+share/ghostscript/${GS_VERS}/lib/font2c.ps
+share/ghostscript/${GS_VERS}/lib/font2pcl.ps
+share/ghostscript/${GS_VERS}/lib/gs_btokn.ps
+share/ghostscript/${GS_VERS}/lib/gs_ccfnt.ps
+share/ghostscript/${GS_VERS}/lib/gs_ce_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_cff.ps
+share/ghostscript/${GS_VERS}/lib/gs_cidfn.ps
+share/ghostscript/${GS_VERS}/lib/gs_cmap.ps
+share/ghostscript/${GS_VERS}/lib/gs_cmdl.ps
+share/ghostscript/${GS_VERS}/lib/gs_dbt_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_diskf.ps
+share/ghostscript/${GS_VERS}/lib/gs_dpnxt.ps
+share/ghostscript/${GS_VERS}/lib/gs_dps.ps
+share/ghostscript/${GS_VERS}/lib/gs_dps1.ps
+share/ghostscript/${GS_VERS}/lib/gs_dps2.ps
+share/ghostscript/${GS_VERS}/lib/gs_epsf.ps
+share/ghostscript/${GS_VERS}/lib/gs_fform.ps
+share/ghostscript/${GS_VERS}/lib/gs_fonts.ps
+share/ghostscript/${GS_VERS}/lib/gs_il1_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_il2_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_init.ps
+share/ghostscript/${GS_VERS}/lib/gs_kanji.ps
+share/ghostscript/${GS_VERS}/lib/gs_ksb_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_l.xbm
+share/ghostscript/${GS_VERS}/lib/gs_l.xpm
+share/ghostscript/${GS_VERS}/lib/gs_l2img.ps
+share/ghostscript/${GS_VERS}/lib/gs_l_m.xbm
+share/ghostscript/${GS_VERS}/lib/gs_lev2.ps
+share/ghostscript/${GS_VERS}/lib/gs_lgo_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_lgx_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_ll3.ps
+share/ghostscript/${GS_VERS}/lib/gs_m.xbm
+share/ghostscript/${GS_VERS}/lib/gs_m.xpm
+share/ghostscript/${GS_VERS}/lib/gs_m_m.xbm
+share/ghostscript/${GS_VERS}/lib/gs_mex_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_mgl_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_mro_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_pdf_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_pdfwr.ps
+share/ghostscript/${GS_VERS}/lib/gs_pfile.ps
+share/ghostscript/${GS_VERS}/lib/gs_rdlin.ps
+share/ghostscript/${GS_VERS}/lib/gs_res.ps
+share/ghostscript/${GS_VERS}/lib/gs_s.xbm
+share/ghostscript/${GS_VERS}/lib/gs_s.xpm
+share/ghostscript/${GS_VERS}/lib/gs_s_m.xbm
+share/ghostscript/${GS_VERS}/lib/gs_setpd.ps
+share/ghostscript/${GS_VERS}/lib/gs_statd.ps
+share/ghostscript/${GS_VERS}/lib/gs_std_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_sym_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_t.xbm
+share/ghostscript/${GS_VERS}/lib/gs_t.xpm
+share/ghostscript/${GS_VERS}/lib/gs_t_m.xbm
+share/ghostscript/${GS_VERS}/lib/gs_trap.ps
+share/ghostscript/${GS_VERS}/lib/gs_ttf.ps
+share/ghostscript/${GS_VERS}/lib/gs_typ32.ps
+share/ghostscript/${GS_VERS}/lib/gs_typ42.ps
+share/ghostscript/${GS_VERS}/lib/gs_type1.ps
+share/ghostscript/${GS_VERS}/lib/gs_wan_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_wl1_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_wl2_e.ps
+share/ghostscript/${GS_VERS}/lib/gs_wl5_e.ps
+share/ghostscript/${GS_VERS}/lib/gslp.ps
+share/ghostscript/${GS_VERS}/lib/gsnup.ps
+share/ghostscript/${GS_VERS}/lib/ht_ccsto.ps
+share/ghostscript/${GS_VERS}/lib/image-qa.ps
+share/ghostscript/${GS_VERS}/lib/impath.ps
+share/ghostscript/${GS_VERS}/lib/jispaper.ps
+share/ghostscript/${GS_VERS}/lib/landscap.ps
+share/ghostscript/${GS_VERS}/lib/level1.ps
+share/ghostscript/${GS_VERS}/lib/lines.ps
+share/ghostscript/${GS_VERS}/lib/markhint.ps
+share/ghostscript/${GS_VERS}/lib/markpath.ps
+share/ghostscript/${GS_VERS}/lib/necp2x.upp
+share/ghostscript/${GS_VERS}/lib/necp2x6.upp
+share/ghostscript/${GS_VERS}/lib/packfile.ps
+share/ghostscript/${GS_VERS}/lib/pcharstr.ps
+share/ghostscript/${GS_VERS}/lib/pdf2dsc.ps
+share/ghostscript/${GS_VERS}/lib/pdf_base.ps
+share/ghostscript/${GS_VERS}/lib/pdf_draw.ps
+share/ghostscript/${GS_VERS}/lib/pdf_font.ps
+share/ghostscript/${GS_VERS}/lib/pdf_main.ps
+share/ghostscript/${GS_VERS}/lib/pdf_ops.ps
+share/ghostscript/${GS_VERS}/lib/pdf_sec.ps
+share/ghostscript/${GS_VERS}/lib/pdfeof.ps
+share/ghostscript/${GS_VERS}/lib/pf2afm.ps
+share/ghostscript/${GS_VERS}/lib/pfbtopfa.ps
+share/ghostscript/${GS_VERS}/lib/ppath.ps
+share/ghostscript/${GS_VERS}/lib/prfont.ps
+share/ghostscript/${GS_VERS}/lib/printafm.ps
+share/ghostscript/${GS_VERS}/lib/ps2ai.ps
+share/ghostscript/${GS_VERS}/lib/ps2ascii.ps
+share/ghostscript/${GS_VERS}/lib/ps2epsi.ps
+share/ghostscript/${GS_VERS}/lib/quit.ps
+share/ghostscript/${GS_VERS}/lib/ras1.upp
+share/ghostscript/${GS_VERS}/lib/ras24.upp
+share/ghostscript/${GS_VERS}/lib/ras3.upp
+share/ghostscript/${GS_VERS}/lib/ras32.upp
+share/ghostscript/${GS_VERS}/lib/ras4.upp
+share/ghostscript/${GS_VERS}/lib/ras8m.upp
+share/ghostscript/${GS_VERS}/lib/rollconv.ps
+share/ghostscript/${GS_VERS}/lib/showchar.ps
+share/ghostscript/${GS_VERS}/lib/showpage.ps
+share/ghostscript/${GS_VERS}/lib/stc.upp
+share/ghostscript/${GS_VERS}/lib/stc1520h.upp
+share/ghostscript/${GS_VERS}/lib/stc2.upp
+share/ghostscript/${GS_VERS}/lib/stc200_h.upp
+share/ghostscript/${GS_VERS}/lib/stc2_h.upp
+share/ghostscript/${GS_VERS}/lib/stc2s_h.upp
+share/ghostscript/${GS_VERS}/lib/stc500p.upp
+share/ghostscript/${GS_VERS}/lib/stc500ph.upp
+share/ghostscript/${GS_VERS}/lib/stc600ih.upp
+share/ghostscript/${GS_VERS}/lib/stc600p.upp
+share/ghostscript/${GS_VERS}/lib/stc600pl.upp
+share/ghostscript/${GS_VERS}/lib/stc640p.upp
+share/ghostscript/${GS_VERS}/lib/stc800ih.upp
+share/ghostscript/${GS_VERS}/lib/stc800p.upp
+share/ghostscript/${GS_VERS}/lib/stc800pl.upp
+share/ghostscript/${GS_VERS}/lib/stc_h.upp
+share/ghostscript/${GS_VERS}/lib/stc_l.upp
+share/ghostscript/${GS_VERS}/lib/stcany.upp
+share/ghostscript/${GS_VERS}/lib/stcany_h.upp
+share/ghostscript/${GS_VERS}/lib/stcinfo.ps
+share/ghostscript/${GS_VERS}/lib/stcolor.ps
+share/ghostscript/${GS_VERS}/lib/stocht.ps
+share/ghostscript/${GS_VERS}/lib/testpage.ps
+share/ghostscript/${GS_VERS}/lib/traceimg.ps
+share/ghostscript/${GS_VERS}/lib/traceop.ps
+share/ghostscript/${GS_VERS}/lib/type1enc.ps
+share/ghostscript/${GS_VERS}/lib/type1ops.ps
+share/ghostscript/${GS_VERS}/lib/uninfo.ps
+share/ghostscript/${GS_VERS}/lib/unprot.ps
+share/ghostscript/${GS_VERS}/lib/viewcmyk.ps
+share/ghostscript/${GS_VERS}/lib/viewgif.ps
+share/ghostscript/${GS_VERS}/lib/viewjpeg.ps
+share/ghostscript/${GS_VERS}/lib/viewmiff.ps
+share/ghostscript/${GS_VERS}/lib/viewpbm.ps
+share/ghostscript/${GS_VERS}/lib/viewpcx.ps
+share/ghostscript/${GS_VERS}/lib/viewps2a.ps
+share/ghostscript/${GS_VERS}/lib/wftopfa.ps
+share/ghostscript/${GS_VERS}/lib/winmaps.ps
+share/ghostscript/${GS_VERS}/lib/wrfont.ps
+share/ghostscript/${GS_VERS}/lib/zeroline.ps
+share/ghostscript/${GS_VERS}/vflib/allkanji.ps
+share/ghostscript/${GS_VERS}/vflib/article9.ps
+share/ghostscript/${GS_VERS}/vflib/fmaptype.ps
+share/ghostscript/${GS_VERS}/vflib/hankaku.ps
+share/ghostscript/${GS_VERS}/vflib/jcidcmap.ps
+share/ghostscript/${GS_VERS}/vflib/jcidemu.ps
+share/ghostscript/${GS_VERS}/vflib/jcidinit.ps
+share/ghostscript/${GS_VERS}/vflib/jcidjp1.ps
+share/ghostscript/${GS_VERS}/vflib/kbase.ps
+share/ghostscript/${GS_VERS}/vflib/kcomp.ps
+share/ghostscript/${GS_VERS}/vflib/kconfig.ps
+share/ghostscript/${GS_VERS}/vflib/kfcid.ps
+share/ghostscript/${GS_VERS}/vflib/kfvflib.ps
+share/ghostscript/${GS_VERS}/vflib/kinit.ps
+share/ghostscript/${GS_VERS}/vflib/kmapping.ps
+share/ghostscript/${GS_VERS}/vflib/koutline.ps
+share/ghostscript/${GS_VERS}/vflib/metrics2.ps
+share/ghostscript/${GS_VERS}/vflib/vchars.ps
+@dirrm share/ghostscript/${GS_VERS}/vflib
+@dirrm share/ghostscript/${GS_VERS}/lib
+@dirrm share/ghostscript/${GS_VERS}
+@dirrm share/examples/ghostscript
+@dirrm share/doc/html/ghostscript/hpijs
+@dirrm share/doc/html/ghostscript
+@dirrm share/doc/ghostscript/gdevmjc-0.8
+@dirrm share/doc/ghostscript
diff --git a/print/ghostscript/distinfo b/print/ghostscript/distinfo
new file mode 100644
index 00000000000..493b252d9cc
--- /dev/null
+++ b/print/ghostscript/distinfo
@@ -0,0 +1,82 @@
+$NetBSD: distinfo,v 1.4 2005/12/09 20:30:16 wiz Exp $
+
+SHA1 (ghostscript/ghostscript-6.01.tar.bz2) = 405a8ab16453a8c3f846eae2aa4abbea6a093300
+RMD160 (ghostscript/ghostscript-6.01.tar.bz2) = cbf5a1774726ba0b165ab539cb7ef16f2596f210
+Size (ghostscript/ghostscript-6.01.tar.bz2) = 2974476 bytes
+SHA1 (ghostscript/jpegsrc.v6b.tar.gz) = 7079f0d6c42fad0cfba382cf6ad322add1ace8f9
+RMD160 (ghostscript/jpegsrc.v6b.tar.gz) = 18892206014fbb8cae2a44e281f4ed53feaf7882
+Size (ghostscript/jpegsrc.v6b.tar.gz) = 613261 bytes
+SHA1 (ghostscript/pdf_sec.ps) = e185f12cb8764ce2d7d32931c6dbd5e05df8722f
+RMD160 (ghostscript/pdf_sec.ps) = efb8e01a8fb6a99d8635d35360578c45a7c1c2e9
+Size (ghostscript/pdf_sec.ps) = 11158 bytes
+SHA1 (ghostscript/gimp-print-4.2.0.tar.gz) = 3460b23a1c36c7f5dcfacc8dce5d0ee5f051a086
+RMD160 (ghostscript/gimp-print-4.2.0.tar.gz) = edf856bd2ba15affe7f37b5217f59b6bfecb2c94
+Size (ghostscript/gimp-print-4.2.0.tar.gz) = 4501914 bytes
+SHA1 (ghostscript/hpijs-1.0.2.tar.gz) = 027cc3762737eb25c6c4dc303924de2b0945cd65
+RMD160 (ghostscript/hpijs-1.0.2.tar.gz) = 4fa5459f73f2f9abbda517e946eb1f7a8383d7ea
+Size (ghostscript/hpijs-1.0.2.tar.gz) = 284472 bytes
+SHA1 (ghostscript/hpdj-2.6.tar.gz) = 1767295652292ab00b6859cf6699939be44e49e7
+RMD160 (ghostscript/hpdj-2.6.tar.gz) = b10dcb691c917967414a827f08f9949219daffe1
+Size (ghostscript/hpdj-2.6.tar.gz) = 143944 bytes
+SHA1 (ghostscript/dmprt-2.01.tar.gz) = 179c7bf3d0fde128e1ad8c7142301efa7ccb8ab0
+RMD160 (ghostscript/dmprt-2.01.tar.gz) = 7e1e977853e4482b788d86fea09bf37bb6d2fb43
+Size (ghostscript/dmprt-2.01.tar.gz) = 44232 bytes
+SHA1 (ghostscript/gdev10v.tar.gz) = ae1d4c8f57c90986c9ef4de14679834fa957f416
+RMD160 (ghostscript/gdev10v.tar.gz) = 5efeac06bdaf8bad175d982fe7393833b839fdf8
+Size (ghostscript/gdev10v.tar.gz) = 6099 bytes
+SHA1 (ghostscript/gdevmjc-0.8.tar.gz) = 9978c08c4ea9e87c233fbda309b1612a031ed743
+RMD160 (ghostscript/gdevmjc-0.8.tar.gz) = d8a2f4235a08b64bcabc73fc3831d352cd377705
+Size (ghostscript/gdevmjc-0.8.tar.gz) = 102654 bytes
+SHA1 (ghostscript/gdevalps-0.2.tar.gz) = de0cc988498c8f5c76e142a72b5f3cd0c0a161e4
+RMD160 (ghostscript/gdevalps-0.2.tar.gz) = dc9db3d3441cc9c61711db7411b142f2ca6856bb
+Size (ghostscript/gdevalps-0.2.tar.gz) = 4448 bytes
+SHA1 (ghostscript/gdevmd2k-0.2a.tar.gz) = 75649faacb433c4b251c763fe2cb35ff889cad54
+RMD160 (ghostscript/gdevmd2k-0.2a.tar.gz) = 39693c080c7619be95a5708d9b25452d566467e3
+Size (ghostscript/gdevmd2k-0.2a.tar.gz) = 9955 bytes
+SHA1 (ghostscript/gdevlips-2.3.6.tar.gz) = 2aedfd54a55356d6241fe3cbc8ba1aece9b69f45
+RMD160 (ghostscript/gdevlips-2.3.6.tar.gz) = c19b615299be230f61570f456320bc55ecadf009
+Size (ghostscript/gdevlips-2.3.6.tar.gz) = 64940 bytes
+SHA1 (ghostscript/gdevrpdl.tar.gz) = 927f2f858821ab6a445bfc860d8f87ab40f6e2de
+RMD160 (ghostscript/gdevrpdl.tar.gz) = 455283b3bdc2b1fe5d83032f957450cab665c35c
+Size (ghostscript/gdevrpdl.tar.gz) = 1664 bytes
+SHA1 (ghostscript/gdevprsc-0.4.tar.gz) = 74f63fd055f2f1f097f6588d73ade5c8c2d3e31a
+RMD160 (ghostscript/gdevprsc-0.4.tar.gz) = 522964c3966b0d38d457b28d22884cd3aeb7e0d9
+Size (ghostscript/gdevprsc-0.4.tar.gz) = 12680 bytes
+SHA1 (ghostscript/samsung-gdi-driver.tar.gz) = d9e29d5e018a27832e5d4681221387d35f703083
+RMD160 (ghostscript/samsung-gdi-driver.tar.gz) = 7fea77767eca4b7554ffb163eec6b16f09a3cee4
+Size (ghostscript/samsung-gdi-driver.tar.gz) = 8909 bytes
+SHA1 (ghostscript/gs6.01-jpdf-exp.patch.gz) = 21f427a4c80871edab8c4d748b1fe1b7796cd876
+RMD160 (ghostscript/gs6.01-jpdf-exp.patch.gz) = 0a99facc1c9b0868dc7e72261d5cc353a64f4044
+Size (ghostscript/gs6.01-jpdf-exp.patch.gz) = 59034 bytes
+SHA1 (patch-bug-workaround) = 99f4e197b35a8f33b8a1219a38f6d9fc2c307eb6
+SHA1 (patch-bug-workaround) = 99f4e197b35a8f33b8a1219a38f6d9fc2c307eb6
+SHA1 (patch-ab) = 26cea522dbe2e2cc57a5fdc60130f309c76c6991
+SHA1 (patch-ac) = 576e0bc659d771f9d634921a0cc6752ab9739a92
+SHA1 (patch-ad) = 9b6e66132583a698ebef277caf343c6919f42f72
+SHA1 (patch-ae) = e4424e2dbab71290d7ec69ddec34268c50864a68
+SHA1 (patch-af) = 68476971f236ddbd053a4d44ae57dcdf2eb49f04
+SHA1 (patch-ag) = 28956425104e1e65f243026d7e7165b69a0903a4
+SHA1 (patch-ah) = c6b1b14b330f98a616437ec9cf04addee27c625e
+SHA1 (patch-ai) = 544e6dccdd475e3880814457591b4668960c3b8b
+SHA1 (patch-aj) = e230a46edc0879ca55055f38aca268fac0e78900
+SHA1 (patch-ak) = ef5b52c7e6679d5408bce420a5a76cbf73b2b5d3
+SHA1 (patch-al) = 4fdb0f6bc5ffcbd8cb25982efbd7577ac0a01ccc
+SHA1 (patch-am) = 444a5eee7cc33f800e83178b626fc48bb9d38715
+SHA1 (patch-an) = 8c9ded22014ef061180c7737fd9e4c258f799ee6
+SHA1 (patch-ao) = d37401b5883f1d4c1295ed577c6e252c3c3f8526
+SHA1 (patch-ap) = f742c454b1a058786be0239d84e5fc0b09dc538f
+SHA1 (patch-aq) = 5ff3c415eaae3398a2f39037e439955b95161942
+SHA1 (patch-ar) = 71d21692dfcbd95798743169d73f6b0611f4c007
+SHA1 (patch-as) = 9c1581562be288aba109a2c42db50e1923d60f02
+SHA1 (patch-at) = a627398bca6e9fbdc5f881d514de6b10d2c187dd
+SHA1 (patch-au) = 07c99b2988c34396901594ab635a209e08766303
+SHA1 (patch-av) = 87f3c9e01a4e2fa63c75c348b1a5ec2be07948a5
+SHA1 (patch-aw) = 9855cacc48db068f87aa37568b198e22e6c391a0
+SHA1 (patch-ay) = a39a1e27a2f8437103a93ac06e5f857ec5e32fa3
+SHA1 (patch-az) = 2bd5ddec9bf82aeca1fc2e928084cadc51bc88be
+SHA1 (patch-ba) = df97981a9582d542be77532d0dcd407e4000c8d7
+SHA1 (patch-bb) = c5cbc6db2948f7b3e81d7a23c6f5fa93e1053d84
+SHA1 (patch-bc) = 26ac5cb13ee57f9bdcf71fc07dfe033020ebb59c
+SHA1 (patch-bd) = 88a00f51b624c0758ef80ce2dd7a13963fce42f8
+SHA1 (patch-be) = 5af8fe2eb0d62a6a233df4f21742aaf8172cf1a8
+SHA1 (patch-bug-workaround) = 99f4e197b35a8f33b8a1219a38f6d9fc2c307eb6
diff --git a/print/ghostscript/files/devs.nox11 b/print/ghostscript/files/devs.nox11
new file mode 100644
index 00000000000..70ad65f1f06
--- /dev/null
+++ b/print/ghostscript/files/devs.nox11
@@ -0,0 +1,186 @@
+# $NetBSD: devs.nox11,v 1.1 2005/12/09 20:30:16 wiz Exp $
+#
+# non-X11 drivers for Ghostscript
+
+DEVICE_DEVS+= \
+ $(DD)ap3250.dev \
+ $(DD)appledmp.dev \
+ $(DD)bit.dev \
+ $(DD)bitcmyk.dev \
+ $(DD)bitrgb.dev \
+ $(DD)bj10e.dev \
+ $(DD)bj10v.dev \
+ $(DD)bj10vh.dev \
+ $(DD)bj200.dev \
+ $(DD)bjc600.dev \
+ $(DD)bjc800.dev \
+ $(DD)bjc880j.dev \
+ $(DD)bmp16.dev \
+ $(DD)bmp16m.dev \
+ $(DD)bmp256.dev \
+ $(DD)bmp32b.dev \
+ $(DD)bmpgray.dev \
+ $(DD)bmpmono.dev \
+ $(DD)bmpsep1.dev \
+ $(DD)bmpsep8.dev \
+ $(DD)ccr.dev \
+ $(DD)cdeskjet.dev \
+ $(DD)cdj1600.dev \
+ $(DD)cdj500.dev \
+ $(DD)cdj550.dev \
+ $(DD)cdj670.dev \
+ $(DD)cdj850.dev \
+ $(DD)cdj880.dev \
+ $(DD)cdj890.dev \
+ $(DD)cdjcolor.dev \
+ $(DD)cdjmono.dev \
+ $(DD)cgm24.dev \
+ $(DD)cgm8.dev \
+ $(DD)cgmmono.dev \
+ $(DD)cif.dev \
+ $(DD)cljet5.dev \
+ $(DD)coslw2p.dev \
+ $(DD)coslwxl.dev \
+ $(DD)cp50.dev \
+ $(DD)declj250.dev \
+ $(DD)deskjet.dev \
+ $(DD)dfaxhigh.dev \
+ $(DD)dfaxlow.dev \
+ $(DD)djet500.dev \
+ $(DD)djet500c.dev \
+ $(DD)dmprt.dev \
+ $(DD)dnj650c.dev \
+ $(DD)eps9high.dev \
+ $(DD)eps9mid.dev \
+ $(DD)epson.dev \
+ $(DD)epsonc.dev \
+ $(DD)epswrite.dev \
+ $(DD)escpage.dev \
+ $(DD)faxg3.dev \
+ $(DD)faxg32d.dev \
+ $(DD)faxg4.dev \
+ $(DD)fs600.dev \
+ $(DD)gdi.dev \
+ $(DD)hl7x0.dev \
+ $(DD)hpdj.dev \
+ $(DD)ijs.dev \
+ $(DD)ibmpro.dev \
+ $(DD)imagen.dev \
+ $(DD)inferno.dev \
+ $(DD)iwhi.dev \
+ $(DD)iwlo.dev \
+ $(DD)iwlq.dev \
+ $(DD)jetp3852.dev \
+ $(DD)jpeg.dev \
+ $(DD)jpeggray.dev \
+ $(DD)laserjet.dev \
+ $(DD)lbp8.dev \
+ $(DD)lips2p.dev \
+ $(DD)lips3.dev \
+ $(DD)lips4.dev \
+ $(DD)lips4v.dev \
+ $(DD)lj250.dev \
+ $(DD)lj3100sw.dev \
+ $(DD)lj4dith.dev \
+ $(DD)lj5gray.dev \
+ $(DD)lj5mono.dev \
+ $(DD)ljet2p.dev \
+ $(DD)ljet3.dev \
+ $(DD)ljet3d.dev \
+ $(DD)ljet4.dev \
+ $(DD)ljet4d.dev \
+ $(DD)ljetplus.dev \
+ $(DD)lp2000.dev \
+ $(DD)lp2563.dev \
+ $(DD)lp8000.dev \
+ $(DD)lq850.dev \
+ $(DD)lxm5700m.dev \
+ $(DD)m8510.dev \
+ $(DD)md1xMono.dev \
+ $(DD)md2k.dev \
+ $(DD)md50Mono.dev \
+ $(DD)md50Eco.dev \
+ $(DD)md5k.dev \
+ $(DD)mgr4.dev \
+ $(DD)mgr8.dev \
+ $(DD)mgrgray2.dev \
+ $(DD)mgrgray4.dev \
+ $(DD)mgrgray8.dev \
+ $(DD)mgrmono.dev \
+ $(DD)miff24.dev \
+ $(DD)mj500c.dev \
+ $(DD)mjc180.dev \
+ $(DD)mjc360.dev \
+ $(DD)mjc720.dev \
+ $(DD)necp6.dev \
+ $(DD)npdl.dev \
+ $(DD)oce9050.dev \
+ $(DD)oki182.dev \
+ $(DD)okiibm.dev \
+ $(DD)paintjet.dev \
+ $(DD)pbm.dev \
+ $(DD)pbmraw.dev \
+ $(DD)pcx16.dev \
+ $(DD)pcx24b.dev \
+ $(DD)pcx256.dev \
+ $(DD)pcxcmyk.dev \
+ $(DD)pcxgray.dev \
+ $(DD)pcxmono.dev \
+ $(DD)pdfwrite.dev \
+ $(DD)pgm.dev \
+ $(DD)pgmraw.dev \
+ $(DD)pgnm.dev \
+ $(DD)pgnmraw.dev \
+ $(DD)pj.dev \
+ $(DD)pjetxl.dev \
+ $(DD)pjxl.dev \
+ $(DD)pjxl300.dev \
+ $(DD)pkm.dev \
+ $(DD)pkmraw.dev \
+ $(DD)pksm.dev \
+ $(DD)pksmraw.dev \
+ $(DD)plan9bm.dev \
+ $(DD)png16.dev \
+ $(DD)png16m.dev \
+ $(DD)png256.dev \
+ $(DD)pnggray.dev \
+ $(DD)pngmono.dev \
+ $(DD)pnm.dev \
+ $(DD)pnmraw.dev \
+ $(DD)ppm.dev \
+ $(DD)ppmraw.dev \
+ $(DD)prescr.dev \
+ $(DD)prescr2.dev \
+ $(DD)prescrt.dev \
+ $(DD)psgray.dev \
+ $(DD)psmono.dev \
+ $(DD)psrgb.dev \
+ $(DD)pswrite.dev \
+ $(DD)pxlcolor.dev \
+ $(DD)pxlcolor.dev \
+ $(DD)pxlmono.dev \
+ $(DD)pxlmono.dev \
+ $(DD)r4081.dev \
+ $(DD)rpdlA3.dev \
+ $(DD)rpdlA4.dev \
+ $(DD)rpdlB4.dev \
+ $(DD)rpdlB5.dev \
+ $(DD)sgirgb.dev \
+ $(DD)sj48.dev \
+ $(DD)st800.dev \
+ $(DD)stcolor.dev \
+ $(DD)stp.dev \
+ $(DD)sunhmono.dev \
+ $(DD)t4693d2.dev \
+ $(DD)t4693d4.dev \
+ $(DD)t4693d8.dev \
+ $(DD)tek4696.dev \
+ $(DD)tiff12nc.dev \
+ $(DD)tiff24nc.dev \
+ $(DD)tiffcrle.dev \
+ $(DD)tiffg3.dev \
+ $(DD)tiffg32d.dev \
+ $(DD)tiffg4.dev \
+ $(DD)tifflzw.dev \
+ $(DD)tiffpack.dev \
+ $(DD)uniprint.dev
diff --git a/print/ghostscript/files/devs.x11 b/print/ghostscript/files/devs.x11
new file mode 100644
index 00000000000..ac4ada742f2
--- /dev/null
+++ b/print/ghostscript/files/devs.x11
@@ -0,0 +1,16 @@
+# $NetBSD: devs.x11,v 1.1 2005/12/09 20:30:16 wiz Exp $
+#
+# X11 drivers for Ghostscript
+
+DEVICE_DEVS+= \
+ $(DD)x11.dev \
+ $(DD)x11alpha.dev \
+ $(DD)x11cmyk.dev \
+ $(DD)x11cmyk2.dev \
+ $(DD)x11cmyk4.dev \
+ $(DD)x11cmyk8.dev \
+ $(DD)x11gray2.dev \
+ $(DD)x11gray4.dev \
+ $(DD)x11mono.dev \
+ $(DD)x11rg16x.dev \
+ $(DD)x11rg32x.dev
diff --git a/print/ghostscript/options.mk b/print/ghostscript/options.mk
new file mode 100644
index 00000000000..803cc73935a
--- /dev/null
+++ b/print/ghostscript/options.mk
@@ -0,0 +1,17 @@
+# $NetBSD: options.mk,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.ghostscript
+PKG_SUPPORTED_OPTIONS= x11
+PKG_SUGGESTED_OPTIONS= x11
+
+.include "../../mk/bsd.options.mk"
+
+.if !empty(PKG_OPTIONS:Mx11)
+XLIBS= Xt SM ICE Xext X11
+GS_DISPLAY_DEVICE= x11.dev
+MAKEFRAGS+= ${FILESDIR}/devs.x11
+.include "../../mk/x11.buildlink3.mk"
+.else
+XLIBS?= # empty
+GS_DISPLAY_DEVICE?= # empty
+.endif
diff --git a/print/ghostscript/patches/patch-ab b/print/ghostscript/patches/patch-ab
new file mode 100644
index 00000000000..038c289c7c0
--- /dev/null
+++ b/print/ghostscript/patches/patch-ab
@@ -0,0 +1,12 @@
+$NetBSD: patch-ab,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- lib/gs_init.ps.orig Mon May 1 20:24:46 2000
++++ lib/gs_init.ps Mon May 1 20:26:23 2000
+@@ -1704,3 +1704,7 @@
+ (END GC) VMDEBUG
+
+ % The interpreter will run the initial procedure (start).
++
++% unofficial patch:
++% make it possible to print from within acroread pdf viewer
++/Default currenthalftone /Halftone defineresource pop
diff --git a/print/ghostscript/patches/patch-ac b/print/ghostscript/patches/patch-ac
new file mode 100644
index 00000000000..cb26ff59e2b
--- /dev/null
+++ b/print/ghostscript/patches/patch-ac
@@ -0,0 +1,21 @@
+$NetBSD: patch-ac,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- lib/gs_statd.ps.orig Thu Mar 9 23:01:55 2000
++++ lib/gs_statd.ps Mon May 1 20:26:23 2000
+@@ -111,6 +111,8 @@
+ % /csheet {1224 1584 //.setpagesize exec} bind def % ANSI C 17x22
+ % /dsheet {1584 2448 //.setpagesize exec} bind def % ANSI D 22x34
+ % /esheet {2448 3168 //.setpagesize exec} bind def % ANSI E 34x44
++ /envyou4 {298 666 //.setpagesize exec} bind def % Japanese Envelope
++ /postcard {284 419 //.setpagesize exec} bind def % Japanese Postcard
+ %END SIZES
+ end
+ currentdict /.setpagesize .undef
+@@ -124,6 +126,7 @@
+ /a0 /a1 /a2 /a3 /a4 /a5 /a6 /a7 /a8 /a9 /a10
+ /b0 /b1 /b2 /b3 /b4 /b5 /b6 /archE /archD /archC /archB /archA
+ /flsa /flse /halfletter /11x17 /ledger
++ /jisb0 /jisb1 /jisb2 /jisb3 /jisb4 /jisb5 /jisb6 /envyou4 /postcard
+ } cvlit readonly def
+
+ %%%%%% The following items were suggested by a user as useful.
diff --git a/print/ghostscript/patches/patch-ad b/print/ghostscript/patches/patch-ad
new file mode 100644
index 00000000000..b95b01e3de1
--- /dev/null
+++ b/print/ghostscript/patches/patch-ad
@@ -0,0 +1,51 @@
+$NetBSD: patch-ad,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/contrib.mak-5.94.add.orig Sat Oct 16 16:20:06 1999
++++ src/contrib.mak-5.94.add Mon May 1 20:26:23 2000
+@@ -74,6 +74,10 @@
+ # -DHPDJ_MARGIN_FILE='"$(gsdatadir)/hpdj.mdf"'
+ #
+ ###############################################################################
++#
++# 20000430 Adapt makefile fragment to latest Ghostscript conventions.
++#
++###############################################################################
+
+ # Compilation options
+ hpdj_options=
+@@ -90,23 +94,23 @@
+ # Header file dependencies
+ $(hpdj_): $(GLSRC)pclcomp.h $(GLSRC)hpdj.h
+
+-$(GLOBJ)gdevhpdj.$(OBJ): $(GLSRC)gdevhpdj.c
+- $(GLCC) $(C_) $(O_)$@ $(hpdj_opts) $(GLSRC)gdevhpdj.c
++$(GLOBJ)gdevhpdj.$(OBJ): $(GLSRC)gdevhpdj.c $(PDEVH)
++ $(GLCC) $(GLO_)gdevhpdj.$(OBJ) $(hpdj_opts) $(C_) $(GLSRC)gdevhpdj.c
+
+-$(GLOBJ)hpdjdata.$(OBJ): $(GLSRC)hpdjdata.c
+- $(GLCC) $(C_) $(O_)$@ $(hpdj_opts) $(GLSRC)hpdjdata.c
++$(GLOBJ)hpdjdata.$(OBJ): $(GLSRC)hpdjdata.c $(PDEVH)
++ $(GLCC) $(GLO_)hpdjdata.$(OBJ) $(hpdj_opts) $(C_) $(GLSRC)hpdjdata.c
+
+-$(GLOBJ)hpdjparm.$(OBJ): $(GLSRC)hpdjparm.c
+- $(GLCC) $(C_) $(O_)$@ $(hpdj_opts) $(GLSRC)hpdjparm.c
++$(GLOBJ)hpdjparm.$(OBJ): $(GLSRC)hpdjparm.c $(PDEVH)
++ $(GLCC) $(GLO_)hpdjparm.$(OBJ) $(hpdj_opts) $(C_) $(GLSRC)hpdjparm.c
+
+-$(GLOBJ)hpdjprn.$(OBJ): $(GLSRC)hpdjprn.c
+- $(GLCC) $(C_) $(O_)$@ $(hpdj_opts) $(GLSRC)hpdjprn.c
++$(GLOBJ)hpdjprn.$(OBJ): $(GLSRC)hpdjprn.c $(PDEVH)
++ $(GLCC) $(GLO_)hpdjprn.$(OBJ) $(hpdj_opts) $(C_) $(GLSRC)hpdjprn.c
+
+-$(GLOBJ)pclcomp.$(OBJ): $(GLSRC)pclcomp.c
+- $(GLCC) $(C_) $(O_)$@ $(hpdj_opts) $(GLSRC)pclcomp.c
++$(GLOBJ)pclcomp.$(OBJ): $(GLSRC)pclcomp.c $(PDEVH)
++ $(GLCC) $(GLO_)pclcomp.$(OBJ) $(hpdj_opts) $(C_) $(GLSRC)pclcomp.c
+
+-$(GLOBJ)pagecount.$(OBJ): $(GLSRC)pagecount.c
+- $(GLCC) $(C_) $(O_)$@ $(hpdj_opts) $(GLSRC)pagecount.c
++$(GLOBJ)pagecount.$(OBJ): $(GLSRC)pagecount.c $(PDEVH)
++ $(GLCC) $(GLO_)pagecount.$(OBJ) $(hpdj_opts) $(C_) $(GLSRC)pagecount.c
+
+
+ $(DD)hpdj.dev: $(hpdj_) $(DD)page.dev
diff --git a/print/ghostscript/patches/patch-ae b/print/ghostscript/patches/patch-ae
new file mode 100644
index 00000000000..e2246f8d232
--- /dev/null
+++ b/print/ghostscript/patches/patch-ae
@@ -0,0 +1,57 @@
+$NetBSD: patch-ae,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/contrib.mak.orig Thu Mar 16 03:09:42 2000
++++ src/contrib.mak
+@@ -343,7 +343,7 @@
+ $(SETPDEV) $(DD)coslw2p $(coslw_)
+
+ $(DD)coslwxl.dev : $(coslw_) $(DD)page.dev
+- $(SETPDEV) ($DD)coslwxl $(coslw_)
++ $(SETPDEV) $(DD)coslwxl $(coslw_)
+
+ $(GLOBJ)gdevcslw.$(OBJ) : $(GLSRC)gdevcslw.c $(PDEVH)
+ $(GLCC) $(GLO_)gdevcslw.$(OBJ) $(C_) $(GLSRC)gdevcslw.c
+@@ -547,7 +547,7 @@
+ $(GLOBJ)gdev3852.$(OBJ) : $(GLSRC)gdev3852.c $(PDEVH) $(gdevpcl_h)
+ $(GLCC) $(GLO_)gdev3852.$(OBJ) $(C_) $(GLSRC)gdev3852.c
+
+-### ---------- The Canon LBP-8II and LIPS III printer devices ---------- ###
++### ----------------- The Canon LBP-8II printer device ----------------- ###
+ ### Note: these drivers were contributed by users. ###
+ ### For questions about these drivers, please contact ###
+ ### Lauri Paatero, lauri.paatero@paatero.pp.fi ###
+@@ -556,12 +556,15 @@
+ $(DD)lbp8.dev : $(lbp8_) $(DD)page.dev
+ $(SETPDEV) $(DD)lbp8 $(lbp8_)
+
+-$(DD)lips3.dev : $(lbp8_) $(DD)page.dev
+- $(SETPDEV) $(DD)lips3 $(lbp8_)
+-
+ $(GLOBJ)gdevlbp8.$(OBJ) : $(GLSRC)gdevlbp8.c $(PDEVH)
+ $(GLCC) $(GLO_)gdevlbp8.$(OBJ) $(C_) $(GLSRC)gdevlbp8.c
+
++# For the Canon LIPS printer devices, use the gdevlips drivers from
++# http://www.bukka.p.chiba-u.ac.jp/~ohmori/gs/
++#
++#$(DD)lips3.dev : $(lbp8_) $(DD)page.dev
++# $(SETPDEV) $(DD)lips3 $(lbp8_)
++
+ ### -------------- The Epson LP-8000 laser printer device -------------- ###
+ ### Note: this driver was contributed by a user: please contact Oleg ###
+ ### Oleg Fat'yanov <faty1@rlem.titech.ac.jp> if you have questions.###
+@@ -810,3 +813,15 @@
+
+ $(GLOBJ)gdevsunr.$(OBJ) : $(GLSRC)gdevsunr.c $(PDEVH)
+ $(GLCC) $(GLO_)gdevsunr.$(OBJ) $(C_) $(GLSRC)gdevsunr.c
++
++### ---------------- The Samsung SmartGDI laser printer devices --------- ###
++### Note : this driver is used by Samsung SmartGDI compatible printers. ###
++###
++
++GDIMONO=$(GLOBJ)gdevgdi.$(OBJ) $(HPPCL)
++
++$(GLOBJ)gdevgdi.$(OBJ): $(GLSRC)gdevgdi.c $(PDEVH) $(gdevpcl_h)
++ $(GLCC) $(GLO_)gdevgdi.$(OBJ) $(C_) $(GLSRC)gdevgdi.c
++
++$(DD)gdi.dev: $(GDIMONO) $(DD)page.dev
++ $(SETPDEV) $(DD)gdi $(GDIMONO)
diff --git a/print/ghostscript/patches/patch-af b/print/ghostscript/patches/patch-af
new file mode 100644
index 00000000000..c555db066a6
--- /dev/null
+++ b/print/ghostscript/patches/patch-af
@@ -0,0 +1,26 @@
+$NetBSD: patch-af,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdev10v.mak.orig Mon May 1 20:24:43 2000
++++ src/gdev10v.mak Mon May 1 20:26:23 2000
+@@ -1,12 +1,15 @@
+ ### ----------------- The Canon BubbleJet BJ10v device ----------------- ###
+
+-bj10v_=gdev10v.$(OBJ) gdevprn.$(OBJ)
+-bj10v.dev: $(bj10v_)
+- $(SHP)gssetdev bj10v $(bj10v_)
+-bj10vh.dev: $(bj10v_)
+- $(SHP)gssetdev bj10vh $(bj10v_)
++bj10v_=$(GLOBJ)gdev10v.$(OBJ) $(GLOBJ)gdevprn.$(OBJ)
++
++$(DD)bj10v.dev: $(bj10v_) $(DD)page.dev
++ $(SETPDEV) $(DD)bj10v $(bj10v_)
++
++$(DD)bj10vh.dev: $(bj10v_) $(DD)page.dev
++ $(SETPDEV) $(DD)bj10vh $(bj10v_)
+
+ # Uncomment the following line if you are using MS-DOS on PC9801 series.
+
+-gdev10v.$(OBJ): gdevbj10.c $(PDEVH)
++$(GLOBJ)gdev10v.$(OBJ): $(GLSRC)gdevbj10.c $(PDEVH)
++ $(GLCC) $(GLO_)gdev10v.$(OBJ) $(C_) $(GLSRC)gdev10v.c
+ # $(CCC) -DPC9801 gdev10v.c
diff --git a/print/ghostscript/patches/patch-ag b/print/ghostscript/patches/patch-ag
new file mode 100644
index 00000000000..2de9df8f821
--- /dev/null
+++ b/print/ghostscript/patches/patch-ag
@@ -0,0 +1,25 @@
+$NetBSD: patch-ag,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevalps.mak-5.50.orig Mon May 1 20:24:43 2000
++++ src/gdevalps.mak-5.50 Mon May 1 20:26:23 2000
+@@ -2,14 +2,14 @@
+
+ alps_=$(GLOBJ)gdevalps.$(OBJ)
+
+-md50Mono.dev: $(alps_) page.dev
+- $(SETPDEV) md50Mono $(alps_)
++$(DD)md50Mono.dev: $(alps_) $(DD)page.dev
++ $(SETPDEV) $(DD)md50Mono $(alps_)
+
+-md50Eco.dev: $(alps_) page.dev
+- $(SETPDEV) md50Eco $(alps_)
++$(DD)md50Eco.dev: $(alps_) $(DD)page.dev
++ $(SETPDEV) $(DD)md50Eco $(alps_)
+
+-md1xMono.dev: $(alps_) page.dev
+- $(SETPDEV) md1xMono $(alps_)
++$(DD)md1xMono.dev: $(alps_) $(DD)page.dev
++ $(SETPDEV) $(DD)md1xMono $(alps_)
+
+ $(GLOBJ)gdevalps.$(OBJ): $(GLSRC)gdevalps.c $(PDEVH)
+ $(GLCC) $(GLO_)gdevalps.$(OBJ) $(C_) $(GLSRC)gdevalps.c
diff --git a/print/ghostscript/patches/patch-ah b/print/ghostscript/patches/patch-ah
new file mode 100644
index 00000000000..f0374c36436
--- /dev/null
+++ b/print/ghostscript/patches/patch-ah
@@ -0,0 +1,229 @@
+$NetBSD: patch-ah,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevcd8.c.orig Thu Mar 9 03:40:40 2000
++++ src/gdevcd8.c
+@@ -31,7 +31,7 @@
+
+ /*
+ A printer driver for the HP670, HP690, HP850, HP855
+- HP870, HP890, HP1100 and HP1600 color printers.
++ HP870, HP880, HP890, HP1100 and HP1600 color printers.
+
+ To be used with the Ghostscript printing system.
+ Please report all problems to uliw@erdw.ethz.ch
+@@ -43,6 +43,16 @@
+ and hp1600 was added by Martin Gerbershagen.
+ */
+
++/* Merge code by Matthew J. Gelhaus to add support for the HP DeskJet
++ 880 series color printers. The code has the following copyright:
++
++ DeskJet 880C/882C/895C Ghostscript Driver
++ (c) Copyright 2000 Matthew J. Gelhaus
++ All rights reserved.
++
++ The code is publicly available at http://www.gelhaus.net/index.html.
++ */
++
+ /* Note: Depending on how you transfered the files,
+ you might need to remove some CR-codes used on intel-based machines:
+
+@@ -303,6 +313,107 @@
+ 166, 169, 174, 177, 182, 187, 194, 203, 215, 255}
+ };
+
++private const Gamma gammat880 =
++{
++ /* Lookup values for cyan */
++ {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
++ 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
++ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
++ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
++ 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
++ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
++ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
++ 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
++ 126, 127,
++ 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
++ 142, 143,
++ 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
++ 158, 159,
++ 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
++ 174, 175,
++ 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
++ 190, 191,
++ 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
++ 206, 207,
++ 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
++ 222, 223,
++ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
++ 238, 239,
++ 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253,
++ 254, 255},
++ /* Lookup values for magenta */
++ {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
++ 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
++ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
++ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
++ 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
++ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
++ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
++ 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
++ 126, 127,
++ 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
++ 142, 143,
++ 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
++ 158, 159,
++ 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
++ 174, 175,
++ 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
++ 190, 191,
++ 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
++ 206, 207,
++ 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
++ 222, 223,
++ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
++ 238, 239,
++ 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253,
++ 254, 255},
++ /* Lookup values for yellow */
++ {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
++ 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
++ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
++ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
++ 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
++ 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
++ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
++ 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
++ 126, 127,
++ 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
++ 142, 143,
++ 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
++ 158, 159,
++ 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
++ 174, 175,
++ 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
++ 190, 191,
++ 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
++ 206, 207,
++ 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
++ 222, 223,
++ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
++ 238, 239,
++ 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253,
++ 254, 255},
++ /* Lookup values for black */
++ {0, 0, 0, 1, 1, 1, 1, 1, 1, 3, 3, 3, 3, 3, 2, 4,
++ 3, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6, 6,
++ 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 9, 9, 8, 8, 8,
++ 9, 9, 9, 10, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 13,
++ 13, 12, 12, 12, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 15, 15,
++ 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 19, 19, 20, 20, 20, 20,
++ 20, 21, 21, 21, 21, 22, 22, 22, 22, 23, 22, 23, 23, 24, 24, 24,
++ 24, 25, 25, 26, 26, 26, 26, 27, 27, 28, 28, 28, 28, 29, 29, 30,
++ 30, 31, 31, 31, 32, 32, 33, 33, 34, 34, 35, 36, 36, 36, 37, 37,
++ 37, 38, 38, 40, 40, 40, 41, 41, 42, 43, 43, 43, 43, 44, 45, 45,
++ 46, 47, 47, 48, 49, 49, 50, 52, 52, 53, 54, 54, 56, 56, 57, 58,
++ 59, 60, 60, 61, 62, 63, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
++ 72, 73, 75, 75, 76, 77, 78, 80, 81, 82, 82, 83, 84, 85, 86, 88,
++ 89, 90, 91, 94, 95, 96, 98, 99, 100, 101, 103, 105, 106, 107, 110, 111,
++ 112, 115, 116, 118, 120, 121, 124, 126, 127, 131, 133, 134, 138, 140,
++ 141, 146,
++ 148, 151, 154, 156, 160, 163, 166, 169, 174, 177, 182, 187, 194, 203,
++ 215, 255}
++};
++
+ private const Gamma gammat890 =
+ {
+ /* Lookup values for cyan */
+@@ -408,6 +519,7 @@
+ {
+ &gammat850, /* CDJ670 */
+ &gammat850, /* CDJ850 */
++ &gammat880, /* CDJ880 */
+ &gammat890, /* CDJ890 */
+ &gammat850 /* CDJ1600 */
+ };
+@@ -464,7 +576,7 @@
+
+ /* Printer types */
+ typedef enum {
+- DJ670C, DJ850C, DJ890C, DJ1600C
++ DJ670C, DJ850C, DJ880C, DJ890C, DJ1600C
+ } cdj_printer_type_t;
+
+ /* No. of ink jets (used to minimise head movements) */
+@@ -586,7 +698,7 @@
+ int intensities; /* intensity values per pixel [2,4] */
+ int xscal; /* boolean to indicate x scaling by 2 */
+ int yscal; /* boolean to indicate y scaling by 2 */
+- int /*cdj_printer_type_t*/ ptype; /* printer type, one of DJ670C, DJ850C, DJ890C, DJ1600C */
++ int /*cdj_printer_type_t*/ ptype; /* printer type, one of DJ670C, DJ850C, DJ880C, DJ890C, DJ1600C */
+ int compression; /* compression level */
+ float mastergamma; /* Gammavalue applied to all colors */
+ float gammavalc; /* range to which gamma-correction is
+@@ -705,6 +817,10 @@
+ cdj850_terminate_page(P2(gx_device_printer * pdev, FILE * prn_stream));
+
+ private void
++ cdj880_start_raster_mode(P3(gx_device_printer * pdev,
++ int papersize, FILE * prn_stream));
++
++private void
+ cdj1600_start_raster_mode(P3(gx_device_printer * pdev,
+ int papersize, FILE * prn_stream));
+ private void
+@@ -727,6 +843,10 @@
+ cmyk_colour_procs(hp_colour_open, cdj850_get_params, cdj850_put_params,
+ NULL, gdev_cmyk_map_color_rgb, gdev_cmyk_map_cmyk_color);
+
++private const gx_device_procs cdj880_procs =
++cmyk_colour_procs(hp_colour_open, cdj850_get_params, cdj850_put_params,
++ NULL, gdev_cmyk_map_color_rgb, gdev_cmyk_map_cmyk_color);
++
+ private const gx_device_procs cdj890_procs =
+ cmyk_colour_procs(hp_colour_open, cdj850_get_params, cdj850_put_params,
+ NULL, gdev_cmyk_map_color_rgb, gdev_cmyk_map_cmyk_color);
+@@ -749,6 +869,13 @@
+ cdj850_start_raster_mode, cdj850_print_non_blank_lines,
+ cdj850_terminate_page);
+
++const gx_device_cdj850 gs_cdj880_device =
++cdj_850_device(cdj880_procs, "cdj880", 600, 600, 32, cdj850_print_page, 0,
++ PRESENTATION, PLAIN_PAPER, 2, DJ880C, 9,
++ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0,
++ cdj880_start_raster_mode, cdj850_print_non_blank_lines,
++ cdj1600_terminate_page);
++
+ const gx_device_cdj850 gs_cdj890_device =
+ cdj_850_device(cdj890_procs, "cdj890", 600, 600, 32, cdj850_print_page, 0,
+ PRESENTATION, PLAIN_PAPER, 4, DJ890C, 9,
+@@ -823,6 +950,7 @@
+ m = (gdev_pcl_paper_size(pdev) == PAPER_SIZE_A4 ? dj_a4 : dj_letter);
+ break;
+ case DJ850C:
++ case DJ880C:
+ case DJ890C:
+ if (cdj850->quality == DRAFT) {
+ gx_device_set_resolution(pdev, 300.0, 300.0);
+@@ -2722,6 +2850,20 @@
+ * }
+ * end of unused code */
+
++/************************ the routines for the cdj880 printer ****************/
++
++/* Configure the printer and start Raster mode */
++private void
++cdj880_start_raster_mode(gx_device_printer * pdev, int paper_size,
++ FILE * prn_stream)
++{
++ /* switch to PCL control language */
++ fputs("\033%-12345X@PJL enter language = PCL\n", prn_stream);
++
++ cdj850_start_raster_mode(pdev, paper_size, prn_stream);
++
++ return;
++}
+
+ /************************ the routines for the cdj1600 printer ***************/
+
diff --git a/print/ghostscript/patches/patch-ai b/print/ghostscript/patches/patch-ai
new file mode 100644
index 00000000000..9749fea816d
--- /dev/null
+++ b/print/ghostscript/patches/patch-ai
@@ -0,0 +1,23 @@
+$NetBSD: patch-ai,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevdmpr.mak.orig Mon May 1 20:24:43 2000
++++ src/gdevdmpr.mak Mon May 1 20:26:23 2000
+@@ -1,8 +1,12 @@
+ ### ---------------- Dot matrix printer device ---------------- ###
+-dmprt_=gdevdmpr.$(OBJ) dviprlib.$(OBJ) gdevprn.$(OBJ)
++dmprt_=$(GLOBJ)gdevdmpr.$(OBJ) $(GLOBJ)dviprlib.$(OBJ) $(GLOBJ)gdevprn.$(OBJ)
+
+-dmprt.dev: $(dmprt_)
+- $(SETDEV) dmprt $(dmprt_)
+- $(ADDMOD) dmprt -ps dmp_init
+-gdevdmpr.$(OBJ): gdevdmpr.c dviprlib.h $(PDEVH)
+-dviprlib.$(OBJ): dviprlib.c dviprlib.h
++$(DD)dmprt.dev: $(dmprt_)
++ $(SETDEV) $(DD)dmprt $(dmprt_)
++ $(ADDMOD) $(DD)dmprt -ps dmp_init
++
++$(GLOBJ)gdevdmpr.$(OBJ): $(GLSRC)gdevdmpr.c $(GLSRC)dviprlib.h $(PDEVH)
++ $(GLCC) $(GLO_)gdevdmpr.$(OBJ) $(C_) $(GLSRC)gdevdmpr.c
++
++$(GLOBJ)dviprlib.$(OBJ): $(GLSRC)dviprlib.c $(GLSRC)dviprlib.h
++ $(GLCC) $(GLO_)dviprlib.$(OBJ) $(C_) $(GLSRC)dviprlib.c
diff --git a/print/ghostscript/patches/patch-aj b/print/ghostscript/patches/patch-aj
new file mode 100644
index 00000000000..92e20fb2a03
--- /dev/null
+++ b/print/ghostscript/patches/patch-aj
@@ -0,0 +1,24 @@
+$NetBSD: patch-aj,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevlips.mak.orig Mon May 1 20:24:43 2000
++++ src/gdevlips.mak Mon May 1 20:26:23 2000
+@@ -37,10 +37,10 @@
+ $(GLOBJ)gdevespg.$(OBJ): $(GLSRC)gdevespg.c $(GLSRC)gdevlprn.h $(PDEVH)
+ $(GLCC) -DA4 $(GLO_)gdevespg.$(OBJ) $(C_) $(GLSRC)gdevespg.c
+
+-$(GLOBJ)escpage.dev: $(escpage_) $(DD)page.dev
++$(DD)escpage.dev: $(escpage_) $(DD)page.dev
+ $(SETPDEV) $(DD)escpage $(escpage_)
+
+-$(GLOBJ)lp2000.dev: $(escpage_) $(DD)page.dev
++$(DD)lp2000.dev: $(escpage_) $(DD)page.dev
+ $(SETPDEV) $(DD)lp2000 $(escpage_)
+
+ ### --- The NEC NPDL language printer device ------ ###
+@@ -49,5 +49,5 @@
+ $(GLOBJ)gdevnpdl.$(OBJ): $(GLSRC)gdevnpdl.c $(GLSRC)gdevlprn.h $(PDEVH)
+ $(GLCC) -DA4 $(GLO_)gdevnpdl.$(OBJ) $(C_) $(GLSRC)gdevnpdl.c
+
+-$(GLOBJ)npdl.dev: $(npdl_) $(DD)page.dev
++$(DD)npdl.dev: $(npdl_) $(DD)page.dev
+ $(SETPDEV) $(DD)npdl $(npdl_)
diff --git a/print/ghostscript/patches/patch-ak b/print/ghostscript/patches/patch-ak
new file mode 100644
index 00000000000..3b8e5b7cdf2
--- /dev/null
+++ b/print/ghostscript/patches/patch-ak
@@ -0,0 +1,384 @@
+$NetBSD: patch-ak,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevmjc.c.orig Mon May 1 20:24:43 2000
++++ src/gdevmjc.c Mon May 1 20:31:17 2000
+@@ -16,6 +16,46 @@
+ things, the copyright notice and this notice must be preserved on all
+ copies. */
+
++/***************************************************************************
++This file includes the changes from the gdevmjc.c-0.8 patch for ghostscript
++5.50 by kurosawa with mj_put_params() fix by Inagaki Kentaro.
++
++NO WARRANTY
++
++From root Fri Nov 22 01:20:20 1996
++Received: from theta.iis.u-tokyo.ac.jp by daikon.fujita3.iis.u-tokyo.ac.jp (AIX 3.2/UCB 5.64/3.4W2)
++ id AA18127; Fri, 22 Nov 1996 01:20:20 +0900
++Received: from contura.sail.t.u-tokyo.ac.jp by theta.iis.u-tokyo.ac.jp (8.7.5+2.6Wbeta6/3.4W4) with ESMTP id BAA07053; Fri, 22 Nov 1996 01:20:12 +0900 (JST)
++Received: (from kurosawa@localhost) by contura.sail.t.u-tokyo.ac.jp (8.7.6/3.4Wbeta6/Sail961016) id BAA11954; Fri, 22 Nov 1996 01:19:56 +0900 (JST)
++Date: Fri, 22 Nov 1996 01:19:56 +0900 (JST)
++Message-Id: <199611211619.BAA11954@contura.sail.t.u-tokyo.ac.jp>
++To: mita@iis.u-tokyo.ac.jp
++Subject: mjc-patch
++From: kurosawa@sail.t.u-tokyo.ac.jp (KUROSAWA Takahiro)
++X-Mailer: mnews [version 1.19PL2] 1996-01/26(Fri)
++
++$B9uBt$G$9(B.
++
++$B$h$&$d$/$G$-$^$7$?(B, $B$?$V$s(B. $B$?$@$G$5$(F,$,2u$l$.$_$@$H8@$o$l$F$$$k$N$K(B
++$B$5$i$K$A$g$C$H:#F|(B($B:rF|$+(B)$B$O$D$+$l$F$F(B, $BF,$,AjEvJQ$@$C$?$_$?$$$G$9(B.
++$B:rF|J,$N%a!<%k$OL5;k$7$A$c$C$F$/$@$5$$(B.
++
++# $B$5$C$-=P$7$?!V%(%i!<$,$G$k$h!A!W%a!<%k$N860x$G$9$1$I!$C1$K%U%)%s%H$r%$(B
++# $B%s%9%H!<%k$7$F$J$+$C$?$s$G$9(B. $B$4$a$s$J$5$$(B....
++
++$B!V=PNO%U%!%$%k$K=P$J$$!W$N7o$G$9$1$I(B, $B$A$g$C$H$7$?%1%"%l%9%_%9$H$$$&$+(B,
++$B9uBt$,$h$/(B gs $B$NFbIt9=B$$rM}2r$7$F$J$$$N$,860x$G$7$?(B. $B<B$O$"$N>u67$G$O(B
++/tmp $B$K%U%!%$%k$,$G$-$F$$$?$N$G$9(B.
++
++$B$3$l$G?'$H$+%9%1!<%k$N<:GT$,$J$1$l$P$$$$$N$G$9$,(B, $B$"$^$j$=$&$&$^$/$O$$(B
++$B$+$J$$$H$*$b$$$^$9(B. $B%9%1!<%k$NJ}$OLdBj$J$$$+$b$7$l$^$;$s$,(B, $B?'?t$r8:$i(B
++$B$7$?$i$I$&$J$k$+$A$g$C$H?4G[$G$9(B.
++
++$B$F$J$o$1$G(B, $B$*$?$a$7$/$@$5$$(B. $B%*%j%8%J%k$+$i$N%Q%C%A$G$9(B.
++# $B%*%j%8%J%k$+$i$N%Q%C%A$K$7$?$O$:$G$9$1$I(B, $B:#F|$N>u67$@$H$A$g$C$H<+?.(B
++# $B$r;}$F$J$$(B(^^;)
++***************************************************************************/
++
+ /* gdevmjc.c */
+ /* Many parts of this file are copied from gdevcdj.c and gdevescp.c */
+
+@@ -43,7 +83,8 @@
+ #include <limits.h>
+ #include "gdevprn.h"
+ #include "gdevpcl.h"
+-#include "gsprops.h"
++#include "gsparam.h"
++#include "gsstate.h"
+
+ #include "mjmtx2.c"
+ #include "mjbksep.c"
+@@ -150,7 +191,9 @@
+
+ /* Undefined macros expected to be defined in gdevpcl.h */
+ #define PAPER_SIZE_A3_NOBI 28
++#ifndef PAPER_SIZE_A2
+ #define PAPER_SIZE_A2 29
++#endif
+ #define PAPER_SIZE_B4 30
+ #define PAPER_SIZE_B5 31
+
+@@ -190,14 +233,12 @@
+ private dev_proc_print_page(mjc720_print_page);
+ private dev_proc_print_page(mj500c_print_page);
+
+-private dev_proc_get_props(mj_get_props);
+-private dev_proc_put_props(mj_put_props);
++private dev_proc_get_params(mj_get_params);
++private dev_proc_put_params(mj_put_params);
+
+ private void expand_line(P4(word*, int, int, int));
+-private int put_prop_float(P5(gs_prop_item *, float *, float, float, int));
+-private int put_prop_int(P5(gs_prop_item *, int *, int, int, int));
+-
+-private void set_bpp(P2(gx_device *, int));
++private int mj_put_param_int(P6(gs_param_list *, gs_param_name, int *, int, int, int));
++private void mj_set_bpp(P2(gx_device *, int));
+
+ private uint gdev_prn_rasterwidth(P2(const gx_device_printer *, int ));
+
+@@ -224,7 +265,7 @@
+ #define mj ((gx_device_mj *) pdev)
+
+ #define prn_hp_colour_device(procs, dev_name, x_dpi, y_dpi, bpp, print_page)\
+- prn_device_body(gx_device_printer, procs, dev_name,\
++ prn_device_body(gx_device_mj, procs, dev_name,\
+ WIDTH_10THS, HEIGHT_10THS, x_dpi, y_dpi, 0, 0, 0, 0, 0,\
+ bpp, 0, 0, 0, 0, print_page)
+
+@@ -235,9 +276,9 @@
+ }
+
+
+-#define mj_colour_procs(proc_colour_open, proc_get_props, proc_put_props) {\
++#define mj_colour_procs(proc_colour_open, proc_get_params, proc_put_params) {\
+ proc_colour_open,\
+- gdev_pcl_get_initial_matrix,\
++ gx_default_get_initial_matrix,\
+ gx_default_sync_output,\
+ gdev_prn_output_page,\
+ gdev_prn_close,\
+@@ -249,15 +290,15 @@
+ NULL, /* copy_color */\
+ NULL, /* draw_line */\
+ gx_default_get_bits,\
+- proc_get_props,\
+- proc_put_props\
++ proc_get_params,\
++ proc_put_params\
+ }
+
+ private int mjc_open(P1(gx_device *));
+ private int mj_colour_open(P1(gx_device *));
+
+ private gx_device_procs mj_procs =
+-mj_colour_procs(mjc_open, mj_get_props, mj_put_props);
++mj_colour_procs(mjc_open, mj_get_params, mj_put_params);
+
+ gx_device_mj far_data gs_mjc180_device =
+ mj_device(mj_procs, "mjc180", 180, 180, BITSPERPIXEL,
+@@ -306,14 +347,14 @@
+ static const float mj_b4[4] = { MJ700V2C_MARGINS_B4 };
+ static const float mj_b5[4] = { MJ700V2C_MARGINS_B5 };
+ static const float mj_letter[4] = { MJ700V2C_MARGINS_LETTER };
+- const float _ds *m;
++ const float *m;
+ int psize;
+
+ int paper_size;
+
+ /* Set up colour params if put_props has not already done so */
+ if (pdev->color_info.num_components == 0)
+- set_bpp(pdev, pdev->color_info.depth);
++ mj_set_bpp(pdev, pdev->color_info.depth);
+
+ paper_size = gdev_mjc_paper_size(pdev);
+ if (paper_size == PAPER_SIZE_A2 ) {
+@@ -332,10 +373,7 @@
+ m = mj_letter;
+ }
+
+- pdev->l_margin = m[0];
+- pdev->b_margin = m[1];
+- pdev->r_margin = m[2];
+- pdev->t_margin = m[3];
++ gx_device_set_margins(pdev, m, true);
+
+ switch (mj->colorcomp) {
+ case 1:
+@@ -360,80 +398,74 @@
+ * and control over the bits-per-pixel used in output rendering */
+ /* Added properties for DeskJet 5xxC */
+
+-private const gs_prop_item props_mj[] = {
+- /* Read-write properties. */
+- prop_def("Density", prt_int),
+- prop_def("Cyan", prt_int),
+- prop_def("Magenta", prt_int),
+- prop_def("Yellow", prt_int),
+- prop_def("Black", prt_int),
+- prop_def("Dither", prt_int),
+- prop_def("ColorComponent", prt_int),
+- prop_def("Direction", prt_int),
+- prop_def("MicroWeave", prt_int),
+- prop_def("DotSize", prt_int),
+-};
+-
+ private int
+-mj_get_props(gx_device *pdev, gs_prop_item *plist)
+-{ int start = gdev_prn_get_props(pdev, plist);
+- if ( plist != 0 ) {
+- register gs_prop_item *pi = plist + start;
+- memcpy(pi, props_mj, sizeof(props_mj));
+- pi[0].value.i = mj->density;
+- pi[1].value.i = mj->cyan;
+- pi[2].value.i = mj->magenta;
+- pi[3].value.i = mj->yellow;
+- pi[4].value.i = mj->black;
+- pi[5].value.i = mj->dither;
+- pi[6].value.i = mj->colorcomp;
+- pi[7].value.i = mj->direction;
+- pi[8].value.i = mj->microweave;
+- pi[9].value.i = mj->dotsize;
+- }
+- return start + sizeof(props_mj) / sizeof(gs_prop_item);
++mj_get_params(gx_device *pdev, gs_param_list *plist)
++{ int code = gdev_prn_get_params(pdev, plist);
++ if ( code < 0 ||
++ (code = param_write_int(plist, "Density", &mj->density)) < 0 ||
++ (code = param_write_int(plist, "Cyan", &mj->cyan)) < 0 ||
++ (code = param_write_int(plist, "Magenta", &mj->magenta)) < 0 ||
++ (code = param_write_int(plist, "Yellow", &mj->yellow)) < 0 ||
++ (code = param_write_int(plist, "Black", &mj->black)) < 0 ||
++ (code = param_write_int(plist, "Dither", &mj->dither)) < 0 ||
++ (code = param_write_int(plist, "ColorComponent", &mj->colorcomp)) < 0 ||
++ (code = param_write_int(plist, "Direction", &mj->direction)) < 0 ||
++ (code = param_write_int(plist, "MicroWeave", &mj->microweave)) < 0 ||
++ (code = param_write_int(plist, "DotSize", &mj->dotsize)) < 0
++ )
++ return code;
++ return code;
+ }
+
+ /* Put properties. */
+ private int
+-mj_put_props(gx_device *pdev, gs_prop_item *plist, int count)
++mj_put_params(gx_device *pdev, gs_param_list *plist)
+ {
+- static const argn = 10;
+-/* gs_prop_item *known[argn]; */
+- gs_prop_item *known[10];
+ int old_bpp = mj->color_info.depth;
+ int bpp = 0;
+ int code = 0;
+-
+- props_extract(plist, count, props_mj, argn, known, 0);
+- code = gdev_prn_put_props(pdev, plist, count);
+- if ( code < 0 ) return code;
+-
+- code = put_prop_int(known[0], &mj->density, 0, INT_MAX, code);
+- code = put_prop_int(known[1], &mj->cyan, 0, INT_MAX, code);
+- code = put_prop_int(known[2], &mj->magenta, 0, INT_MAX, code);
+- code = put_prop_int(known[3], &mj->yellow, 0, INT_MAX, code);
+- code = put_prop_int(known[4], &mj->black, 0, INT_MAX, code);
+- code = put_prop_int(known[5], &mj->dither, 0, 1, code);
+- code = put_prop_int(known[6], &mj->colorcomp, 1, 4, code);
+- code = put_prop_int(known[7], &mj->direction, 1, 2, code);
+- code = put_prop_int(known[8], &mj->microweave, 0, 1, code);
+- code = put_prop_int(known[9], &mj->dotsize, 0, 1, code);
+-
++ int density = mj->density;
++ int cyan = mj->cyan;
++ int magenta = mj->magenta;
++ int yellow = mj->yellow;
++ int black = mj->black;
++ int dither = mj->dither;
++ int colorcomp = mj->colorcomp;
++ int direction = mj->direction;
++ int microweave = mj->microweave;
++ int dotsize = mj->dotsize;
++ code = mj_put_param_int(plist, "Density", &density, 0, INT_MAX, code);
++ code = mj_put_param_int(plist, "Cyan", &cyan, 0, INT_MAX, code);
++ code = mj_put_param_int(plist, "Magenta", &magenta, 0, INT_MAX, code);
++ code = mj_put_param_int(plist, "Yellow", &yellow, 0, INT_MAX, code);
++ code = mj_put_param_int(plist, "Black", &black, 0, INT_MAX, code);
++ code = mj_put_param_int(plist, "Dither", &dither, 0, 1, code);
++ code = mj_put_param_int(plist, "ColorComponent", &colorcomp, 1, 4, code);
++ code = mj_put_param_int(plist, "Direction", &direction, 1, 2, code);
++ code = mj_put_param_int(plist, "MicroWeave", &microweave, 0, 1, code);
++ code = mj_put_param_int(plist, "DotSize", &dotsize, 0, 1, code);
++ code = mj_put_param_int(plist, "BitsPerPixel", &bpp, 1, 32, code);
+ if ( code < 0 )
+- return_error(code);
+-
+- if (bpp != 0) {
+- set_bpp(pdev, bpp);
+-
+- /* Close the device; gs_putdeviceprops will reopen it. */
++ return code;
++ mj->density = density;
++ mj->cyan = cyan;
++ mj->magenta = magenta;
++ mj->yellow = yellow;
++ mj->black = black;
++ mj->dither = dither;
++ mj->colorcomp = colorcomp;
++ mj->direction = direction;
++ mj->microweave = microweave;
++ mj->dotsize = dotsize;
++ if ( bpp != 0 ) {
++ mj_set_bpp(pdev, bpp);
++ gdev_prn_put_params(pdev, plist);
+ if ( bpp != old_bpp && pdev->is_open )
+- { int ccode = gs_closedevice(pdev);
+- if ( ccode < 0 ) return ccode;
+- }
++ return gs_closedevice(pdev);
++ return 0;
+ }
+-
+- return code;
++ else
++ return gdev_prn_put_params(pdev, plist);
+ }
+
+ /* ------ Internal routines ------ */
+@@ -1163,7 +1195,8 @@
+
+ /* Send each scan line in turn */
+ {
+- long int lend = pdev->height - (pdev->t_margin + pdev->b_margin) * y_dpi;
++ long int lend = pdev->height -
++ (dev_t_margin_points(pdev) + dev_b_margin_points(pdev));
+ int cErr, mErr, yErr, kErr;
+ int this_pass, i;
+ long int lnum;
+@@ -1685,39 +1718,25 @@
+ }
+
+ private int
+-put_prop_int(gs_prop_item *pi, int *property, int minval, int maxval, int code)
+-{
+- if ( pi == 0 )
+- return (code);
+-
+- if ( pi->value.i < minval || pi->value.i > maxval )
+- { pi->status = pv_rangecheck;
+- return (gs_error_rangecheck);
+- }
+- else
+- { *property = pi->value.i;
+- return (code ? code : 1);
+- }
+-}
+-
+-private int
+-put_prop_float(gs_prop_item *pi, float *property, float minval, float maxval, int code)
+-{
+- if ( pi == 0 )
+- return (code);
+-
+- if ( pi->value.f < minval || pi->value.f > maxval )
+- { pi->status = pv_rangecheck;
+- return (gs_error_rangecheck);
+- }
+- else
+- { *property = pi->value.f;
+- return (code ? code : 1);
+- }
++mj_put_param_int(gs_param_list *plist, gs_param_name pname, int *pvalue,
++ int minval, int maxval, int ecode)
++{ int code, value;
++ switch ( code = param_read_int(plist, pname, &value) )
++ {
++ default:
++ return code;
++ case 1:
++ return ecode;
++ case 0:
++ if ( value < minval || value > maxval )
++ param_signal_error(plist, pname, gs_error_rangecheck);
++ *pvalue = value;
++ return (ecode < 0 ? ecode : 1);
++ }
+ }
+
+ private void
+-set_bpp(gx_device *pdev, int bits_per_pixel)
++mj_set_bpp(gx_device *pdev, int bits_per_pixel)
+ { gx_device_color_info *ci = &pdev->color_info;
+ /* Only valid bits-per-pixel are 1, 3, 8, 16, 24, 32 */
+ int bpp = bits_per_pixel < 3 ? 1 : bits_per_pixel < 8 ? 3 :
+@@ -1725,9 +1744,9 @@
+ ci->num_components = ((bpp == 1) || (bpp == 8) ? 1 : 3);
+ ci->depth = ((bpp > 1) && (bpp < 8) ? 8 : bpp);
+ ci->max_gray = (bpp >= 8 ? 255 : 1);
+- ci->max_rgb = (bpp >= 8 ? 255 : bpp > 1 ? 1 : 0);
+- ci->dither_gray = (bpp >= 8 ? 5 : 2);
+- ci->dither_rgb = (bpp >= 8 ? 5 : bpp > 1 ? 2 : 0);
++ ci->max_color = (bpp >= 8 ? 255 : bpp > 1 ? 1 : 0);
++ ci->dither_grays = (bpp >= 8 ? 5 : 2);
++ ci->dither_colors = (bpp >= 8 ? 5 : bpp > 1 ? 2 : 0);
+ }
+
+ /* This returns either the number of pixels in a scan line, or the number
+@@ -1736,7 +1755,7 @@
+ gdev_prn_rasterwidth(const gx_device_printer *pdev, int pixelcount)
+ {
+ word raster_width =
+- pdev->width - pdev->x_pixels_per_inch * (pdev->l_margin + pdev->r_margin);
++ pdev->width - (pdev->HWMargins[0] + pdev->HWMargins[2]);
+ return (pixelcount ?
+ (uint)raster_width :
+ (uint)((raster_width * pdev->color_info.depth + 7) >> 3));
diff --git a/print/ghostscript/patches/patch-al b/print/ghostscript/patches/patch-al
new file mode 100644
index 00000000000..1053b7cc9cc
--- /dev/null
+++ b/print/ghostscript/patches/patch-al
@@ -0,0 +1,40 @@
+$NetBSD: patch-al,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevmjc.mak.orig Mon May 1 20:24:43 2000
++++ src/gdevmjc.mak Mon May 1 20:34:56 2000
+@@ -8,21 +8,22 @@
+ # Append this file to Makefile
+ #
+ ##
+-MJCSRC = gdevmjc.c mjmtx2.c mjbksep.c mjhtocmy.c mjvtbl.c \
+- mjgrnsp.c mjgrnsp2.c mjespdtc.c mjespdtm.c mjespdty.c mjbarrie.c
++MJCSRC= $(GLSRC)gdevmjc.c $(GLSRC)mjmtx2.c $(GLSRC)mjbksep.c\
++ $(GLSRC)mjhtocmy.c $(GLSRC)mjvtbl.c $(GLSRC)mjgrnsp.c $(GLSRC)mjgrnsp2.c\
++ $(GLSRC)mjespdtc.c $(GLSRC)mjespdtm.c $(GLSRC)mjespdty.c $(GLSRC)mjbarrie.c
+
+-mj700v2c_=gdevmjc.$(OBJ) $(HPPCL)
++mj700v2c_=$(GLOBJ)gdevmjc.$(OBJ) $(HPPCL)
+
+ # To make A4 paper the default, change the second line below this to
+-gdevmjc.$(OBJ): $(MJCSRC) $(PDEVH) $(gdevpcl_h)
+- $(CCC) -DA4 gdevmjc.c
++$(GLOBJ)gdevmjc.$(OBJ): $(MJCSRC) $(PDEVH) $(gdevpcl_h)
++ $(GLCC) -DA4 $(GLO_)gdevmjc.$(OBJ) $(C_) $(GLSRC)gdevmjc.c
+
+-mjc180.dev: $(mj700v2c_)
+- $(SHP)gssetdev mjc180 $(mj700v2c_)
+-mjc360.dev: $(mj700v2c_)
+- $(SHP)gssetdev mjc360 $(mj700v2c_)
+-mjc720.dev: $(mj700v2c_)
+- $(SHP)gssetdev mjc720 $(mj700v2c_)
+-mj500c.dev: $(mj700v2c_)
+- $(SHP)gssetdev mj500c $(mj700v2c_)
++$(DD)mjc180.dev: $(mj700v2c_)
++ $(SETPDEV) $(DD)mjc180 $(mj700v2c_)
++$(DD)mjc360.dev: $(mj700v2c_)
++ $(SETPDEV) $(DD)mjc360 $(mj700v2c_)
++$(DD)mjc720.dev: $(mj700v2c_)
++ $(SETPDEV) $(DD)mjc720 $(mj700v2c_)
++$(DD)mj500c.dev: $(mj700v2c_)
++ $(SETPDEV) $(DD)mj500c $(mj700v2c_)
+
diff --git a/print/ghostscript/patches/patch-am b/print/ghostscript/patches/patch-am
new file mode 100644
index 00000000000..ed1b6bae01a
--- /dev/null
+++ b/print/ghostscript/patches/patch-am
@@ -0,0 +1,13 @@
+$NetBSD: patch-am,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevmsxf.c.orig Mon May 1 20:24:46 2000
++++ src/gdevmsxf.c Mon May 1 20:26:23 2000
+@@ -337,7 +337,7 @@
+
+ /* Render a character. */
+ int
+-win_render_char(gx_xfont * xf, gx_xglyph xg, int wmode gx_device * dev,
++win_render_char(gx_xfont * xf, gx_xglyph xg, int wmode, gx_device * dev,
+ int xo, int yo, gx_color_index color, int required)
+ {
+ char chr = (char)xg;
diff --git a/print/ghostscript/patches/patch-an b/print/ghostscript/patches/patch-an
new file mode 100644
index 00000000000..91ee5607096
--- /dev/null
+++ b/print/ghostscript/patches/patch-an
@@ -0,0 +1,12 @@
+$NetBSD: patch-an,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevps.c.orig Fri Mar 10 02:45:50 2000
++++ src/gdevps.c Mon May 1 20:26:23 2000
+@@ -600,6 +600,7 @@
+ {"/a3", 842, 1190},
+ {"/a4", 595, 842},
+ {"/b5", 501, 709},
++ {"/jisb5", 516, 729},
+ {"/ledger", 1224, 792},
+ {"/legal", 612, 1008},
+ {"/letter", 612, 792},
diff --git a/print/ghostscript/patches/patch-ao b/print/ghostscript/patches/patch-ao
new file mode 100644
index 00000000000..362909680a0
--- /dev/null
+++ b/print/ghostscript/patches/patch-ao
@@ -0,0 +1,31 @@
+$NetBSD: patch-ao,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevrpdl.mak.orig Mon May 1 20:36:35 2000
++++ src/gdevrpdl.mak Mon May 1 22:00:17 2000
+@@ -1,15 +1,17 @@
+ ### ---------- RICOH RPDL IV(600dpi) printer devices ---------- ###
+-rpdl_=gdevrpdl.$(OBJ)
++rpdl_=$(GLOBJ)gdevrpdl.$(OBJ)
++$(GLOBJ)gdevrpdl.$(OBJ): $(GLSRC)gdevrpdl.c $(PDEVH)
++ $(GLCC) $(GLO_)gdevrpdl.$(OBJ) $(C_) $(GLSRC)gdevrpdl.c
+
+-rpdlA3.dev: $(rpdl_) page.dev
+- $(SETPDEV) rpdlA3 $(rpdl_)
++$(DD)rpdlA3.dev: $(rpdl_) $(DD)page.dev
++ $(SETPDEV) $(DD)rpdlA3 $(rpdl_)
+
+-rpdlA4.dev: $(rpdl_) page.dev
+- $(SETPDEV) rpdlA4 $(rpdl_)
++$(DD)rpdlA4.dev: $(rpdl_) $(DD)page.dev
++ $(SETPDEV) $(DD)rpdlA4 $(rpdl_)
+
+-rpdlB4.dev: $(rpdl_) page.dev
+- $(SETPDEV) rpdlB4 $(rpdl_)
++$(DD)rpdlB4.dev: $(rpdl_) $(DD)page.dev
++ $(SETPDEV) $(DD)rpdlB4 $(rpdl_)
+
+-rpdlB5.dev: $(rpdl_) page.dev
+- $(SETPDEV) rpdlB5 $(rpdl_)
++$(DD)rpdlB5.dev: $(rpdl_) $(DD)page.dev
++ $(SETPDEV) $(DD)rpdlB5 $(rpdl_)
+
diff --git a/print/ghostscript/patches/patch-ap b/print/ghostscript/patches/patch-ap
new file mode 100644
index 00000000000..43703594d52
--- /dev/null
+++ b/print/ghostscript/patches/patch-ap
@@ -0,0 +1,36 @@
+$NetBSD: patch-ap,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/genarch.c.orig Thu Mar 9 03:40:41 2000
++++ src/genarch.c Mon May 1 20:26:24 2000
+@@ -194,6 +194,10 @@
+ clock_t t = 0;
+ clock_t t_eps;
+
++#if 0
++ /* This doesn't work on multi-user environments nor on
++ * small-cache (< 1KB) machines.
++ */
+ /*
+ * Increase the number of repetitions until the time is
+ * long enough to exceed the likely uncertainty.
+@@ -220,7 +224,12 @@
+ if (nreps == 0)
+ nreps = 1, t <<= 1;
+ }
++#else
++ bsize = 512;
++#endif
+ define_int(f, "ARCH_CACHE1_SIZE", bsize >> 1);
++#if 0
++ /* Same as above. */
+ /*
+ * Do the same thing a second time for the secondary cache.
+ */
+@@ -238,6 +247,7 @@
+ if (nreps == 0)
+ nreps = 1, t <<= 1;
+ }
++#endif
+ define_int(f, "ARCH_CACHE2_SIZE", bsize >> 1);
+ }
+
diff --git a/print/ghostscript/patches/patch-aq b/print/ghostscript/patches/patch-aq
new file mode 100644
index 00000000000..87c31dd70fb
--- /dev/null
+++ b/print/ghostscript/patches/patch-aq
@@ -0,0 +1,30 @@
+$NetBSD: patch-aq,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gp_unifs.c.orig Thu Mar 9 03:40:41 2000
++++ src/gp_unifs.c Mon May 1 20:26:24 2000
+@@ -36,8 +36,12 @@
+ # define MAXPATHLEN 1024
+ #endif
+
++#ifdef HAVE_MKSTEMP
++#include <stdlib.h>
++#else
+ /* Library routines not declared in a standard header */
+ extern char *mktemp(P1(char *));
++#endif
+
+ /* ------ File naming and accessing ------ */
+
+@@ -69,8 +73,12 @@
+ if (*fname != 0 && fname[strlen(fname) - 1] == 'X')
+ strcat(fname, "-");
+ strcat(fname, "XXXXXX");
++#ifdef HAVE_MKSTEMP
++ return fdopen(mkstemp(fname), mode);
++#else
+ mktemp(fname);
+ return fopen(fname, mode);
++#endif
+ }
+
+ /* Open a file with the given name, as a stream of uninterpreted bytes. */
diff --git a/print/ghostscript/patches/patch-ar b/print/ghostscript/patches/patch-ar
new file mode 100644
index 00000000000..d136a9ba0e5
--- /dev/null
+++ b/print/ghostscript/patches/patch-ar
@@ -0,0 +1,15 @@
+$NetBSD: patch-ar,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/pagecount.c.orig Sun Nov 15 06:33:04 1998
++++ src/pagecount.c Mon May 1 20:26:24 2000
+@@ -33,10 +33,6 @@
+
+ /*****************************************************************************/
+
+-#ifndef _XOPEN_SOURCE
+-#define _XOPEN_SOURCE 500
+-#endif
+-
+ /* Standard headers */
+ #include <errno.h>
+ #include <stdio.h>
diff --git a/print/ghostscript/patches/patch-as b/print/ghostscript/patches/patch-as
new file mode 100644
index 00000000000..f6da5b21f0e
--- /dev/null
+++ b/print/ghostscript/patches/patch-as
@@ -0,0 +1,13 @@
+$NetBSD: patch-as,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/unix-end.mak.orig Thu Mar 9 03:40:44 2000
++++ src/unix-end.mak Mon May 1 20:26:24 2000
+@@ -36,7 +36,7 @@
+ @if test ! -d $(PSOBJDIR)/$(PGRELDIR); then mkdir $(PSOBJDIR)/$(PGRELDIR); fi
+
+ PGDEFS=GENOPT='-DPROFILE' CFLAGS='$(CFLAGS_PROFILE) $(GCFLAGS) $(XCFLAGS)'\
+- LDFLAGS='$(XLDFLAGS) -pg' XLIBS='Xt SM ICE Xext X11' CC_LEAF='$(CC_LEAF_PG)'\
++ LDFLAGS='$(XLDFLAGS) -pg' XLIBS='$(XLIBS)' CC_LEAF='$(CC_LEAF_PG)'\
+ BINDIR=$(BINDIR)/$(PGRELDIR)\
+ GLGENDIR=$(GLGENDIR)/$(PGRELDIR) GLOBJDIR=$(GLOBJDIR)/$(PGRELDIR)\
+ PSGENDIR=$(PSGENDIR)/$(PGRELDIR) PSOBJDIR=$(PSOBJDIR)/$(PGRELDIR)
diff --git a/print/ghostscript/patches/patch-at b/print/ghostscript/patches/patch-at
new file mode 100644
index 00000000000..0201afa26c9
--- /dev/null
+++ b/print/ghostscript/patches/patch-at
@@ -0,0 +1,139 @@
+$NetBSD: patch-at,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/unix-gcc.mak.orig Thu Dec 20 00:32:55 2001
++++ src/unix-gcc.mak
+@@ -30,12 +30,12 @@
+
+ BINDIR=./bin
+ GLSRCDIR=./src
+-GLGENDIR=./obj
+-GLOBJDIR=./obj
++GLGENDIR=./object
++GLOBJDIR=./object
+ PSSRCDIR=./src
+ PSLIBDIR=./lib
+-PSGENDIR=./obj
+-PSOBJDIR=./obj
++PSGENDIR=./object
++PSOBJDIR=./object
+
+ # Do not edit the next group of lines.
+
+@@ -58,7 +58,7 @@
+ INSTALL_PROGRAM = $(INSTALL) -m 755
+ INSTALL_DATA = $(INSTALL) -m 644
+
+-prefix = /usr/local
++prefix = ${PREFIX}
+ exec_prefix = $(prefix)
+ bindir = $(exec_prefix)/bin
+ scriptdir = $(bindir)
+@@ -69,8 +69,8 @@
+ gsdir = $(datadir)/ghostscript
+ gsdatadir = $(gsdir)/$(GS_DOT_VERSION)
+
+-docdir=$(gsdatadir)/doc
+-exdir=$(gsdatadir)/examples
++docdir=$(datadir)/doc/html/ghostscript
++exdir=$(datadir)/examples/ghostscript
+ vfdir=$(gsdatadir)/vflib
+ GS_DOCDIR=$(docdir)
+
+@@ -156,7 +156,7 @@
+ # what its name is.
+ # See gs.mak and Make.htm for more information.
+
+-SHARE_LIBPNG=0
++SHARE_LIBPNG=1
+ LIBPNG_NAME=png
+
+ # Define the directory where the zlib sources are stored.
+@@ -168,7 +168,7 @@
+ # what its name is (usually libz, but sometimes libgz).
+ # See gs.mak and Make.htm for more information.
+
+-SHARE_ZLIB=0
++SHARE_ZLIB=1
+ #ZLIB_NAME=gz
+ ZLIB_NAME=z
+
+@@ -244,8 +244,11 @@
+ # include pthreads in libc and don't require any additional library.
+ # All reasonable platforms require -lm, but Rhapsody and perhaps one or
+ # two others fold libm into libc and don't require any additional library.
++#
++# If async device drivers won't be built, then -lpthread (or local equivalent)
++# can be removed from STDLIBS.
+
+-STDLIBS=-lpthread -lm
++STDLIBS=-lm
+
+ # Define the include switch(es) for the X11 header files.
+ # This can be null if handled in some other way (e.g., the files are
+@@ -281,7 +284,7 @@
+ #VFLIBS=VFlib
+ VFINCLUDE=
+ VFLIBDIRS=
+-VFLIBS=VFlib2 ttf
++VFLIBS=VFlib2 ttf intl
+
+ # Define whether this platform has floating point hardware:
+ # FPU_TYPE=2 means floating point is faster than fixed point.
+@@ -339,7 +342,7 @@
+ # Choose the device(s) to include. See devs.mak for details,
+ # devs.mak and contrib.mak for the list of available devices.
+
+-DEVICE_DEVS=$(DD)x11.dev $(DD)x11alpha.dev $(DD)x11cmyk.dev $(DD)x11gray2.dev $(DD)x11gray4.dev $(DD)x11mono.dev
++#DEVICE_DEVS=$(DD)x11.dev $(DD)x11alpha.dev $(DD)x11cmyk.dev $(DD)x11gray2.dev $(DD)x11gray4.dev $(DD)x11mono.dev
+
+ #DEVICE_DEVS1=
+ #DEVICE_DEVS2=
+@@ -357,27 +360,27 @@
+ #DEVICE_DEVS14=
+ #DEVICE_DEVS15=
+
+-DEVICE_DEVS1=$(DD)bmpmono.dev $(DD)bmpgray.dev $(DD)bmpsep1.dev $(DD)bmpsep8.dev $(DD)bmp16.dev $(DD)bmp256.dev $(DD)bmp16m.dev $(DD)bmp32b.dev
+-DEVICE_DEVS2=$(DD)bmpamono.dev $(DD)bmpasep1.dev $(DD)bmpasep8.dev $(DD)bmpa16.dev $(DD)bmpa256.dev $(DD)bmpa16m.dev $(DD)bmpa32b.dev
+-DEVICE_DEVS3=$(DD)deskjet.dev $(DD)djet500.dev $(DD)laserjet.dev $(DD)ljetplus.dev $(DD)ljet2p.dev $(DD)ljet3.dev $(DD)ljet3d.dev $(DD)ljet4.dev $(DD)ljet4d.dev $(DD)lj5mono.dev $(DD)lj5gray.dev
+-DEVICE_DEVS4=$(DD)cdeskjet.dev $(DD)cdjcolor.dev $(DD)cdjmono.dev $(DD)cdj550.dev $(DD)pj.dev $(DD)pjxl.dev $(DD)pjxl300.dev
+-DEVICE_DEVS5=$(DD)uniprint.dev
+-DEVICE_DEVS6=$(DD)bj10e.dev $(DD)bj200.dev $(DD)bjc600.dev $(DD)bjc800.dev
+-DEVICE_DEVS7=$(DD)faxg3.dev $(DD)faxg32d.dev $(DD)faxg4.dev
+-DEVICE_DEVS8=$(DD)pcxmono.dev $(DD)pcxgray.dev $(DD)pcx16.dev $(DD)pcx256.dev $(DD)pcx24b.dev $(DD)pcxcmyk.dev
+-DEVICE_DEVS9=$(DD)pbm.dev $(DD)pbmraw.dev $(DD)pgm.dev $(DD)pgmraw.dev $(DD)pgnm.dev $(DD)pgnmraw.dev $(DD)pnm.dev $(DD)pnmraw.dev $(DD)ppm.dev $(DD)ppmraw.dev $(DD)pkm.dev $(DD)pkmraw.dev $(DD)pksm.dev $(DD)pksmraw.dev
+-DEVICE_DEVS10=$(DD)tiffcrle.dev $(DD)tiffg3.dev $(DD)tiffg32d.dev $(DD)tiffg4.dev $(DD)tifflzw.dev $(DD)tiffpack.dev
+-DEVICE_DEVS11=$(DD)tiff12nc.dev $(DD)tiff24nc.dev
+-DEVICE_DEVS12=$(DD)psmono.dev $(DD)psgray.dev $(DD)psrgb.dev $(DD)bit.dev $(DD)bitrgb.dev $(DD)bitcmyk.dev
+-DEVICE_DEVS13=$(DD)pngmono.dev $(DD)pnggray.dev $(DD)png16.dev $(DD)png256.dev $(DD)png16m.dev
+-DEVICE_DEVS14=$(DD)jpeg.dev $(DD)jpeggray.dev
+-DEVICE_DEVS15=$(DD)pdfwrite.dev $(DD)pswrite.dev $(DD)epswrite.dev $(DD)pxlmono.dev $(DD)pxlcolor.dev
+-
+-DEVICE_DEVS16=
+-DEVICE_DEVS17=
+-DEVICE_DEVS18=
+-DEVICE_DEVS19=
+-DEVICE_DEVS20=$(DD)cljet5.dev $(DD)cljet5c.dev
++#DEVICE_DEVS1=$(DD)bmpmono.dev $(DD)bmpgray.dev $(DD)bmpsep1.dev $(DD)bmpsep8.dev $(DD)bmp16.dev $(DD)bmp256.dev $(DD)bmp16m.dev $(DD)bmp32b.dev
++#DEVICE_DEVS2=$(DD)bmpamono.dev $(DD)bmpasep1.dev $(DD)bmpasep8.dev $(DD)bmpa16.dev $(DD)bmpa256.dev $(DD)bmpa16m.dev $(DD)bmpa32b.dev
++#DEVICE_DEVS3=$(DD)deskjet.dev $(DD)djet500.dev $(DD)laserjet.dev $(DD)ljetplus.dev $(DD)ljet2p.dev $(DD)ljet3.dev $(DD)ljet3d.dev $(DD)ljet4.dev $(DD)ljet4d.dev $(DD)lj5mono.dev $(DD)lj5gray.dev
++#DEVICE_DEVS4=$(DD)cdeskjet.dev $(DD)cdjcolor.dev $(DD)cdjmono.dev $(DD)cdj550.dev $(DD)pj.dev $(DD)pjxl.dev $(DD)pjxl300.dev
++#DEVICE_DEVS5=$(DD)uniprint.dev
++#DEVICE_DEVS6=$(DD)bj10e.dev $(DD)bj200.dev $(DD)bjc600.dev $(DD)bjc800.dev
++#DEVICE_DEVS7=$(DD)faxg3.dev $(DD)faxg32d.dev $(DD)faxg4.dev
++#DEVICE_DEVS8=$(DD)pcxmono.dev $(DD)pcxgray.dev $(DD)pcx16.dev $(DD)pcx256.dev $(DD)pcx24b.dev $(DD)pcxcmyk.dev
++#DEVICE_DEVS9=$(DD)pbm.dev $(DD)pbmraw.dev $(DD)pgm.dev $(DD)pgmraw.dev $(DD)pgnm.dev $(DD)pgnmraw.dev $(DD)pnm.dev $(DD)pnmraw.dev $(DD)ppm.dev $(DD)ppmraw.dev $(DD)pkm.dev $(DD)pkmraw.dev $(DD)pksm.dev $(DD)pksmraw.dev
++#DEVICE_DEVS10=$(DD)tiffcrle.dev $(DD)tiffg3.dev $(DD)tiffg32d.dev $(DD)tiffg4.dev $(DD)tifflzw.dev $(DD)tiffpack.dev
++#DEVICE_DEVS11=$(DD)tiff12nc.dev $(DD)tiff24nc.dev
++#DEVICE_DEVS12=$(DD)psmono.dev $(DD)psgray.dev $(DD)psrgb.dev $(DD)bit.dev $(DD)bitrgb.dev $(DD)bitcmyk.dev
++#DEVICE_DEVS13=$(DD)pngmono.dev $(DD)pnggray.dev $(DD)png16.dev $(DD)png256.dev $(DD)png16m.dev
++#DEVICE_DEVS14=$(DD)jpeg.dev $(DD)jpeggray.dev
++#DEVICE_DEVS15=$(DD)pdfwrite.dev $(DD)pswrite.dev $(DD)epswrite.dev $(DD)pxlmono.dev $(DD)pxlcolor.dev
++
++#DEVICE_DEVS16=
++#DEVICE_DEVS17=
++#DEVICE_DEVS18=
++#DEVICE_DEVS19=
++#DEVICE_DEVS20=$(DD)cljet5.dev $(DD)cljet5c.dev
+
+ # ---------------------------- End of options --------------------------- #
+
diff --git a/print/ghostscript/patches/patch-au b/print/ghostscript/patches/patch-au
new file mode 100644
index 00000000000..8c05610d29f
--- /dev/null
+++ b/print/ghostscript/patches/patch-au
@@ -0,0 +1,22 @@
+$NetBSD: patch-au,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/unixinst.mak.orig Mon May 1 20:24:46 2000
++++ src/unixinst.mak Mon May 1 20:26:24 2000
+@@ -59,7 +59,7 @@
+
+ MAN1_PAGES=gs gslp gsnd dvipdf eps2eps font2c pdf2dsc pdf2ps \
+ pf2afm pfbtopfa printafm ps2ascii ps2epsi \
+- ps2pdf ps2pdfwr ps2ps wftopfa
++ ps2pdf ps2pdfwr ps2ps wftopfa gs-hpdj
+ MAN1_PS2PDF_LINKS=ps2pdf12 ps2pdf13
+ MAN1_GSLP_LINKS=gsbj gsdj gsdj500 gslj
+ # There's no point in providing a complete dependency list: we include
+@@ -133,7 +133,7 @@
+ ridt91.eps ;\
+ do $(INSTALL_DATA) $(PSEXDIR)/$$f $(exdir) ;\
+ done
+- -mkdir $(gsdatadir)/vflib
++ -mkdir $(vfdir)
+ for f in \
+ allkanji.ps article9.ps fmaptype.ps hankaku.ps jcidcmap.ps jcidemu.ps \
+ jcidinit.ps jcidjp1.ps kbase.ps kcomp.ps kconfig.ps kfcid.ps \
diff --git a/print/ghostscript/patches/patch-av b/print/ghostscript/patches/patch-av
new file mode 100644
index 00000000000..149f2fab635
--- /dev/null
+++ b/print/ghostscript/patches/patch-av
@@ -0,0 +1,32 @@
+$NetBSD: patch-av,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/zmedia2.c.orig Thu Mar 9 03:40:45 2000
++++ src/zmedia2.c Mon May 1 20:26:24 2000
+@@ -427,11 +427,27 @@
+
+ rx = ry, ry = temp;
+ }
++#if 0
++ /* Adapt hpdj's changes to zmedia2.c to apply to the latest
++ Ghostscript source. */
+ /* Adjust the medium size if flexible. */
+ if (medium->p.x < MIN_MEDIA_SIZE && mx > rx)
+ mx = rx;
+ if (medium->p.y < MIN_MEDIA_SIZE && my > ry)
+ my = ry;
++#else
++ /* If 'medium' is flexible, adjust 'mx' and 'my' towards 'rx' and 'ry',
++ respectively. Note that 'mx' and 'my' have just acquired the largest
++ permissible value, medium->q. */
++ if (medium->p.x < mx) /* non-empty width range */
++ if (rx < medium->p.x) mx = medium->p.x; /* minimum */
++ else if (mx > rx) mx = rx; /* fits */
++ /* else use medium->q.x, i.e., the maximum */
++ if (medium->p.y < my) /* non-empty height range */
++ if (ry < medium->p.y) my = medium->p.y; /* minimum */
++ else if (my > ry) my = ry; /* fits */
++ /* else use medium->q.y, i.e., the maximum */
++#endif
+
+ /* Translate to align the centers. */
+ gs_make_translation(mx / 2, my / 2, pmat);
diff --git a/print/ghostscript/patches/patch-aw b/print/ghostscript/patches/patch-aw
new file mode 100644
index 00000000000..f1a17ce4cfc
--- /dev/null
+++ b/print/ghostscript/patches/patch-aw
@@ -0,0 +1,72 @@
+$NetBSD: patch-aw,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevlbp8.c.orig Thu Mar 9 03:40:41 2000
++++ src/gdevlbp8.c
+@@ -22,6 +22,8 @@
+
+ /*
+ Modifications:
++ 3.10.00 Johnny Lam
++ Removed LIPS III code, as it's obsoleted by gdevlips driver.
+ 2.2.97 Lauri Paatero
+ Changed CSI command into ESC [. DCS commands may still need to be changed
+ (to ESC P).
+@@ -49,7 +51,6 @@
+
+ /* The device descriptors */
+ private dev_proc_print_page(lbp8_print_page);
+-private dev_proc_print_page(lips3_print_page);
+
+ gx_device_printer far_data gs_lbp8_device =
+ prn_device(prn_std_procs, "lbp8",
+@@ -58,14 +59,6 @@
+ 0.16, 0.2, 0.32, 0.21, /* margins: left, bottom, right, top */
+ 1, lbp8_print_page);
+
+-gx_device_printer far_data gs_lips3_device =
+- prn_device(prn_std_procs, "lips3",
+- 82, /* width_10ths, 8.3" */
+- 117, /* height_10ths, 11.7" */
+- X_DPI, Y_DPI,
+- 0.16, 0.27, 0.23, 0.27, /* margins */
+- 1, lips3_print_page);
+-
+ /* ------ Internal routines ------ */
+
+ #define ESC 0x1b
+@@ -84,23 +77,6 @@
+
+ static const char *lbp8_end = NULL;
+
+-static const char lips3_init[] = {
+- ESC, '<', /* soft reset */
+- DCS, '0', 'J', ST, /* JOB END */
+- DCS, '3', '1', ';', '3', '0', '0', ';', '2', 'J', ST, /* 300dpi, LIPS3 JOB START */
+- ESC, '<', /* soft reset */
+- DCS, '2', 'y', 'P', 'r', 'i', 'n', 't', 'i', 'n', 'g', '(', 'g', 's', ')', ST, /* Printing (gs) display */
+- ESC, '[', '?', '1', 'l', /* auto cr-lf disable */
+- ESC, '[', '?', '2', 'h', /* auto ff disable */
+- ESC, '[', '1', '1', 'h', /* set mode */
+- ESC, '[', '7', ' ', 'I', /* select unit size (300dpi)*/
+- ESC, '[', 'f' /* move to home position */
+-};
+-
+-static const char lips3_end[] = {
+- DCS, '0', 'J', ST /* JOB END */
+-};
+-
+ /* Send the page to the printer. */
+ private int
+ can_print_page(gx_device_printer *pdev, FILE *prn_stream,
+@@ -203,11 +179,4 @@
+ lbp8_print_page(gx_device_printer *pdev, FILE *prn_stream)
+ { return can_print_page(pdev, prn_stream, lbp8_init, sizeof(lbp8_init),
+ lbp8_end, sizeof(lbp8_end));
+-}
+-
+-/* Print a LIPS III page. */
+-private int
+-lips3_print_page(gx_device_printer *pdev, FILE *prn_stream)
+-{ return can_print_page(pdev, prn_stream, lips3_init, sizeof(lips3_init),
+- lips3_end, sizeof(lips3_end));
+ }
diff --git a/print/ghostscript/patches/patch-ay b/print/ghostscript/patches/patch-ay
new file mode 100644
index 00000000000..ebf74c47c61
--- /dev/null
+++ b/print/ghostscript/patches/patch-ay
@@ -0,0 +1,13 @@
+$NetBSD: patch-ay,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/gdevgdi.c.orig Thu Feb 8 23:51:11 2001
++++ src/gdevgdi.c
+@@ -126,7 +126,7 @@
+ private int
+ gdi_open(gx_device *pdev)
+ { /* Change the margins if necessary. */
+- const float _ds *m = 0;
++ const float *m = 0;
+ bool move_origin = true;
+
+ static const float m_a4[4] = { GDI_MARGINS_A4 };
diff --git a/print/ghostscript/patches/patch-az b/print/ghostscript/patches/patch-az
new file mode 100644
index 00000000000..73aee83fb9b
--- /dev/null
+++ b/print/ghostscript/patches/patch-az
@@ -0,0 +1,32 @@
+$NetBSD: patch-az,v 1.1 2005/12/09 20:30:16 wiz Exp $
+--- ../gimp-print-4.2.0/src/ghost/Makefile.in.orig Thu Oct 24 18:17:52 2002
++++ ../gimp-print-4.2.0/src/ghost/Makefile.in Thu Oct 24 18:18:25 2002
+@@ -316,22 +316,22 @@
+ all-local: $(ALL_LOCAL_DEPS)
+
+ $(srcdir)/gdevstp-print.h: $(top_srcdir)/include/gimp-print/gimp-print.h
+- sed $(GHCODE) $< > $(srcdir)/$@
++ ${SED} $(GHCODE) $< > $(srcdir)/$@
+
+ $(srcdir)/gdevstp-print-internal.h: $(top_srcdir)/src/main/gimp-print-internal.h
+- sed $(GHCODE) $< > $(srcdir)/$@
++ ${SED} $(GHCODE) $< > $(srcdir)/$@
+
+ $(srcdir)/gdevstp-print-intl-internal.h: $(top_srcdir)/include/gimp-print/gimp-print-intl-internal.h
+- sed $(GHCODE) $< > $(srcdir)/$@
++ ${SED} $(GHCODE) $< > $(srcdir)/$@
+
+ gdevstp-%.h: $(srcdir)/../main/%.h Makefile
+- cd $(srcdir) ; sed $(GHCODE) $< > $@
++ cd $(srcdir) ; ${SED} $(GHCODE) $< > $@
+
+ gdevstp-printers.c: ../main/print-printers.c
+- sed $(GHCODE) $< > $@
++ ${SED} $(GHCODE) $< > $@
+
+ gdevstp-%: $(srcdir)/../main/print-% Makefile
+- cd $(srcdir) ; sed $(GHCODE) $< > $@
++ cd $(srcdir) ; ${SED} $(GHCODE) $< > $@
+
+ ../main/print-printers.c: ../printdef/printdef $(srcdir)/../main/printers.xml
+ ../printdef/printdef < $(srcdir)/../main/printers.xml > $(top_builddir)/src/main/print-printers.c
diff --git a/print/ghostscript/patches/patch-ba b/print/ghostscript/patches/patch-ba
new file mode 100644
index 00000000000..665af86e118
--- /dev/null
+++ b/print/ghostscript/patches/patch-ba
@@ -0,0 +1,42 @@
+$NetBSD: patch-ba,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- lib/pj-gs.sh.orig 2000-03-09 08:40:40.000000000 +0000
++++ lib/pj-gs.sh
+@@ -241,6 +241,7 @@ do
+ then
+ /usr/lib/lprcat $Nofilter $Nolabel $file PCL1 $user $dev
+ else
++ TEMPFILE=`mktemp -t pjXXXXXX` || exit 1
+ type=`file $file | sed 's/^[^:]*..//'`
+ case "$type" in
+ postscript*)
+@@ -251,22 +252,22 @@ do
+ #
+ # gs -q -sDEVICE=paintjet -r180 -sOutputFile=- -dDISKFONTS -dNOPAUSE - < $file 2>/tmp/sh$$
+
+- gs -q -sDEVICE=paintjet -r180 -sOutputFile=/tmp/pj$$ -dDISKFONTS -dNOPAUSE - < $file 1>2
+- cat /tmp/pj$$
+- rm /tmp/pj$$
++ gs -q -sDEVICE=paintjet -r180 -sOutputFile=$TEMPFILE -dDISKFONTS -dNOPAUSE - < $file 1>2
++ cat $TEMPFILE
++ rm $TEMPFILE
+ needff=
+ ;;
+- *) cat "$file" 2>/tmp/sh$$
++ *) cat "$file" 2>$TEMPFILE
+ needff=1
+ ;;
+ esac
+
+- if [ -s /tmp/sh$$ ]
++ if [ -s $TEMPFILE ]
+ then
+ # cat /tmp/sh$$ # output any errors
+- cat /tmp/sh$$ 1>2 # output any errors
++ cat $TEMPFILE 1>2 # output any errors
+ fi
+- rm -f /tmp/sh$$
++ rm -f $TEMPFILE
+ if [ $needff ]; then echo "\014\r\c"; fi
+ fi
+
diff --git a/print/ghostscript/patches/patch-bb b/print/ghostscript/patches/patch-bb
new file mode 100644
index 00000000000..91446ac0e9a
--- /dev/null
+++ b/print/ghostscript/patches/patch-bb
@@ -0,0 +1,10 @@
+$NetBSD: patch-bb,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- lib/ps2epsi.orig 2000-03-09 08:40:40.000000000 +0000
++++ lib/ps2epsi
+@@ -3,3 +3,4 @@
+
+-tmpfile=/tmp/ps2epsi$$
++tmpfile=`mktemp -t ps2epsi.XXXXXX || exit 1`
++trap "rm -rf $tmpfile" 0 1 2 3 7 13 15
+
diff --git a/print/ghostscript/patches/patch-bc b/print/ghostscript/patches/patch-bc
new file mode 100644
index 00000000000..0b7218bcb34
--- /dev/null
+++ b/print/ghostscript/patches/patch-bc
@@ -0,0 +1,18 @@
+$NetBSD: patch-bc,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- lib/pv.sh.orig 2000-03-09 08:40:40.000000000 +0000
++++ lib/pv.sh
+@@ -29,9 +29,10 @@ TEMPDIR=.
+ PAGE=$1
+ shift
+ FILE=$1
++TEMPFILE=`mktemp -t ${FILE}XXXXXX` || exit 1
+ shift
+-trap "rm -rf $TEMPDIR/$FILE.$$.pv" 0 1 2 15
++trap "rm -rf $TEMPFILE" 0 1 2 15
+ #dvips -D$RESOLUTION -p $PAGE -n 1 $FILE $* -o $FILE.$$.pv
+-dvips -p $PAGE -n 1 $FILE $* -o $FILE.$$.pv
+-gs $FILE.$$.pv
++dvips -p $PAGE -n 1 $FILE $* -o $TEMPFILE
++gs $TEMPFILE
+ exit 0
diff --git a/print/ghostscript/patches/patch-bd b/print/ghostscript/patches/patch-bd
new file mode 100644
index 00000000000..18124fe2f15
--- /dev/null
+++ b/print/ghostscript/patches/patch-bd
@@ -0,0 +1,31 @@
+$NetBSD: patch-bd,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- lib/sysvlp.sh.orig 2000-03-09 08:40:40.000000000 +0000
++++ lib/sysvlp.sh
+@@ -27,20 +27,23 @@ files="$*"
+ # Brother HL-4: switch to HP laserjet II+ emulation
+ # echo "\033\015H\c"
+
++TEMPDIR=`mktemp -td sysvlp.XXXXXX` || exit 1
++
+ i=1
+ while [ $i -le $copies ]
+ do
+ for file in $files
+ do
+ $GSHOME/gs \
+- -sOUTPUTFILE=/tmp/psp$$.%02d \
++ -sOUTPUTFILE=$TEMPDIR/psp$$.%02d \
+ -sDEVICE=$DEVICE \
+ $EHANDLER $file \
+ < /dev/null >> /usr/tmp/ps_log 2>&1
+
+- cat /tmp/psp$$.* 2>> /usr/tmp/ps_log
+- rm -f /tmp/psp$$.*
++ cat $TEMPDIR/psp$$.* 2>> /usr/tmp/ps_log
++ rm -f $TEMPDIR/psp$$.*
+ done
+ i=`expr $i + 1`
+ done
++rmdir $TEMPDIR
+ exit 0
diff --git a/print/ghostscript/patches/patch-be b/print/ghostscript/patches/patch-be
new file mode 100644
index 00000000000..7bcf2bc3e57
--- /dev/null
+++ b/print/ghostscript/patches/patch-be
@@ -0,0 +1,22 @@
+$NetBSD: patch-be,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+--- src/dviprlib.c.orig 2005-12-06 21:32:25.000000000 +0000
++++ src/dviprlib.c
+@@ -1433,7 +1433,7 @@ char *dviprt_stringsname[] = { CFG_STRIN
+ char *dviprt_prtcodename[] = { CFG_PRTCODE_NAME, NULL };
+ char *dviprt_encodename[] = { CFG_ENCODE_NAME, NULL };
+
+-private FILE *dviprt_messagestream = stderr;
++private FILE *dviprt_messagestream;
+
+ /*--- library functions ---*/
+ int
+@@ -1585,6 +1585,8 @@ dviprt_initlibrary(dviprt_print *pprint,
+ {
+ dviprt_encoder *pencode;
+ uint pins = pprt->integer[CFG_PINS]*8;
++
++ dviprt_messagestream = stderr;
+
+ pprint->printer = pprt;
+ height += (pins-1);
diff --git a/print/ghostscript/patches/patch-bug-workaround b/print/ghostscript/patches/patch-bug-workaround
new file mode 100644
index 00000000000..4bdcc4dc02e
--- /dev/null
+++ b/print/ghostscript/patches/patch-bug-workaround
@@ -0,0 +1,23 @@
+$NetBSD: patch-bug-workaround,v 1.1 2005/12/09 20:30:16 wiz Exp $
+
+I haven't found out the cause of the trouble of
+
+ Unrecoverable error: invalidaccess in put
+
+... and this is only a workaround.
+Please fix the problem and remove this patch.
+
+--- lib/gs_dps.ps.bak Thu Mar 9 17:40:39 2000
++++ lib/gs_dps.ps Tue Mar 28 12:13:16 2000
+@@ -53,7 +53,10 @@
+ } {
+ dup type /dicttype eq {
+ % Save a copy of this dictionary in global VM.
+- dup maxlength dict .copydict readonly
++ dup maxlength dict
++ % same as .copydict, but uses .forceput
++ dup 3 -1 roll { .forceput dup } forall pop
++ readonly
+ } {
+ pop pop
+ } ifelse