Date: Sat, 13 Jul 2002 17:24:24 +0900 From: KATO Tsuguru <tkato@prontomail.com> To: Alan E <alane@geeksrus.net> Cc: Kirk Strauser <kirk@strauser.com>, FreeBSD Bugs <freebsd-gnats-submit@freebsd.org>, FreeBSD Ports List <ports@freebsd.org> Subject: Re: ports/40488: CUPS now relies on a special version of Ghostscript for printing on non-PS printers Message-ID: <20020713172424.0fc11b52.tkato@prontomail.com> In-Reply-To: <20020713005323.GA1174@wwweasel.geeksrus.net> References: <20020713095105.64bb1ae6.dai_fugo@geocities.co.jp> <20020713005323.GA1174@wwweasel.geeksrus.net>
next in thread | previous in thread | raw e-mail | index | archive | help
> I do not think that is necessary. I prefer to add the driver to the > existing ghostscript-gnu. Everybody's got ghostscript-gnu installed, > anyway. I think it's less hassle this way. Since there is no valid method to control *_DEPENDS, it shouldn't be so easy to add third-party drivers which require external libraries to current ghostscript-gnu port without drastic restructure. Setting aside that issue, CUPS rasterizer is not necessary for every FreeBSD user. Ghostscript users who has no printer don't need CUPS rasterizer. CUPS users who has no non-PS printer also don't need CUPS rasterizer. Moreover, there is no actually usable CUPS driver package for non-PS printers except Gimp-Print at present. I guess it's pretty reasonable to separating CUPS rasterizer from existing ghostscript-gnu package. Here is an experimental implimentation of CUPS rasterizer port. I would like you to utilize it if my opinion is acceptable. # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # cups-pstoraster # cups-pstoraster/Makefile # cups-pstoraster/distinfo # cups-pstoraster/files # cups-pstoraster/files/patch-lib:gs_res.ps # cups-pstoraster/files/patch-src:genarch.c # cups-pstoraster/pkg-comment # cups-pstoraster/pkg-descr # cups-pstoraster/pkg-plist # echo c - cups-pstoraster mkdir -p cups-pstoraster > /dev/null 2>&1 echo x - cups-pstoraster/Makefile sed 's/^X//' >cups-pstoraster/Makefile << 'END-of-cups-pstoraster/Makefile' X# New ports collection makefile for: cups-pstoraster X# Date created: Jul 13 2002 X# Whom: ports@FreeBSD.org X# X# $FreeBSD$ X# X XPORTNAME= pstoraster XPORTVERSION= 7.05.3 XCATEGORIES= print XMASTER_SITES= ${MASTER_SITE_SOURCEFORGE} \ X ftp://ftp.easysw.com/pub/ghostscript/ XMASTER_SITE_SUBDIR= espgs XPKGNAMEPREFIX= cups- XDISTNAME= espgs-${PORTVERSION}-source X XMAINTAINER= ports@FreeBSD.org X XLIB_DEPENDS= cups.2:${PORTSDIR}/print/cups XRUN_DEPENDS= ${LOCALBASE}/share/ghostscript/fonts/fonts.scale:${PORTSDIR}/print/ghostscript-gnu X XWRKSRC= ${WRKDIR}/espgs-${PORTVERSION} X XUSE_BZIP2= yes XUSE_GMAKE= yes XGNU_CONFIGURE= yes XCONFIGURE_TARGET= --build=${ARCH}-portbld-freebsd${OSREL} XCONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \ X LDFLAGS="-L${LOCALBASE}/lib" XCONFIGURE_ARGS= --without-x --without-ijs --without-gimp-print \ X --with-drivers=cups --with-gs=espgs \ X --with-fontpath=${LOCALBASE}/share/ghostscript/fonts \ X --enable-compiled-inits X Xpost-patch: X @${MV} ${WRKSRC}/lib/gs_res.ps ${WRKSRC}/lib/gs_res.ps.pre_sed X @${SED} -e 's|%%DATADIR%%|${LOCALBASE}/share/ghostscript|g' \ X ${WRKSRC}/lib/gs_res.ps.pre_sed > ${WRKSRC}/lib/gs_res.ps X Xpre-build: X @${MKDIR} ${WRKSRC}/bin X @${MKDIR} ${WRKSRC}/obj X Xdo-install: X ${INSTALL_PROGRAM} ${WRKSRC}/bin/espgs ${PREFIX}/bin X ${INSTALL_DATA} ${WRKSRC}/pstoraster/pstoraster.convs \ X ${PREFIX}/etc/cups X ${INSTALL_DATA} ${WRKSRC}/pstoraster/pstoraster \ X ${PREFIX}/libexec/cups/filter X X.include <bsd.port.mk> END-of-cups-pstoraster/Makefile echo x - cups-pstoraster/distinfo sed 's/^X//' >cups-pstoraster/distinfo << 'END-of-cups-pstoraster/distinfo' XMD5 (espgs-7.05.3-source.tar.bz2) = e21697ae9c4aa82d16e48f202ba6f69c END-of-cups-pstoraster/distinfo echo c - cups-pstoraster/files mkdir -p cups-pstoraster/files > /dev/null 2>&1 echo x - cups-pstoraster/files/patch-lib:gs_res.ps sed 's/^X//' >cups-pstoraster/files/patch-lib:gs_res.ps << 'END-of-cups-pstoraster/files/patch-lib:gs_res.ps' X--- lib/gs_res.ps.orig Mon Jul 16 01:09:41 2001 X+++ lib/gs_res.ps Fri Feb 8 07:12:09 2002 X@@ -248,8 +248,8 @@ X /pssystemparams 10 dict readonly def X } if X pssystemparams begin X- /FontResourceDir (/Resource/Font/) readonly .forcedef % pssys'params is r-o X- /GenericResourceDir (/Resource/) readonly .forcedef % pssys'params is r-o X+ /FontResourceDir (%%DATADIR%%/Resource/Font/) readonly .forcedef % pssys'params is r-o X+ /GenericResourceDir (%%DATADIR%%/Resource/) readonly .forcedef % pssys'params is r-o X /GenericResourcePathSep (/) readonly .forcedef % pssys'params is r-o X end X end END-of-cups-pstoraster/files/patch-lib:gs_res.ps echo x - cups-pstoraster/files/patch-src:genarch.c sed 's/^X//' >cups-pstoraster/files/patch-src:genarch.c << 'END-of-cups-pstoraster/files/patch-src:genarch.c' X--- src/genarch.c.orig Tue Jun 5 15:38:57 2001 X+++ src/genarch.c Wed Jun 20 04:17:42 2001 X@@ -41,6 +41,7 @@ X fprintf(f, "\n\t /* ---------------- %s ---------------- */\n\n", str); X } X X+#ifndef __FreeBSD__ X private clock_t X time_clear(char *buf, int bsize, int nreps) X { X@@ -51,6 +52,7 @@ X memset(buf, 0, bsize); X return clock() - t; X } X+#endif /* __FreeBSD__ */ X X private void X define(FILE *f, const char *str) X@@ -181,6 +183,7 @@ X fprintf(f, "((unsigned long)~0L + (unsigned long)0)\n"); X #undef PRINT_MAX X X+#ifndef __FreeBSD__ X section(f, "Cache sizes"); X X /* X@@ -241,6 +244,7 @@ X } X define_int(f, "ARCH_CACHE2_SIZE", bsize >> 1); X } X+#endif /* __FreeBSD__ */ X X section(f, "Miscellaneous"); X END-of-cups-pstoraster/files/patch-src:genarch.c echo x - cups-pstoraster/pkg-comment sed 's/^X//' >cups-pstoraster/pkg-comment << 'END-of-cups-pstoraster/pkg-comment' XGNU Postscript interprinter for using with CUPS END-of-cups-pstoraster/pkg-comment echo x - cups-pstoraster/pkg-descr sed 's/^X//' >cups-pstoraster/pkg-descr << 'END-of-cups-pstoraster/pkg-descr' XGhostscript is the well-known PostScript interpreter which is available for Xall common and most esoteric platforms and supports many different printers Xand some displays. X XVersions entitled "GNU Ghostscript" are distributed with the GNU General XPublic License, which allows free use, and free copying and redistribution Xunder certain conditions (including, in some cases, commercial distribution). X XThis distribution is based on GNU Ghostscript and provides the "driver" for XCUPS that supports non-PostScript printer drivers within CUPS. X XWWW: http://www.cups.org/ghostscript.html END-of-cups-pstoraster/pkg-descr echo x - cups-pstoraster/pkg-plist sed 's/^X//' >cups-pstoraster/pkg-plist << 'END-of-cups-pstoraster/pkg-plist' Xbin/espgs Xetc/cups/pstoraster.convs Xlibexec/cups/filter/pstoraster END-of-cups-pstoraster/pkg-plist exit To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020713172424.0fc11b52.tkato>