1 # $NetBSD: Makefile.common,v 1.2 2000/05/24 10:30:24 agc Exp $
3 DISTNAME= ghostscript-${GS_VERS}
6 MASTER_SITES+= http://download.sourceforge.net/ghostscript/ \
7 ftp://ftp.cs.wisc.edu/ghost/aladdin/gs601/
10 MAINTAINER= jlam@netbsd.org
11 HOMEPAGE= http://www.cs.wisc.edu/~ghost/index.html
13 DEPENDS+= ghostscript-fonts-6.0:../../print/ghostscript-fonts
14 DEPENDS+= ja-vflib-lib-2.*:../../japanese/vflib-lib
15 DEPENDS+= watanabe-vfont-19930318:../../fonts/watanabe_vfont
16 DEPENDS+= png>=1.0.6:../../graphics/png
18 # Adobe's JPEG implementation in their PDF/PS documents is non-standard,
19 # so we can't use an already installed libjpeg.so.
21 BUILD_DEPENDS+= ${BUILD_ROOT}/graphics/jpeg/${WRKDIR:T}/jpeg-6b:../../graphics/jpeg:extract
23 GS_SOURCES= ${DISTNAME}${EXTRACT_SUFX}
24 DISTFILES+= ${GS_SOURCES}
26 # VFlib & Japanese PDF patch
27 PATCH_SITES= http://www.sat.t.u-tokyo.ac.jp/~hideyuki/Ghostscript/
28 PATCHFILES= gs${GS_VERS}-jpdf-exp.patch.gz
31 # PostScript source to decode encrypted PDF files
32 MASTER_SITES+= http://www.ozemail.com.au/~geoffk/pdfencrypt/
34 DISTFILES+= ${PDF_SEC}
36 # Additional driver for several HP deskjets
37 MASTER_SITES+= ftp://ftp.sbs.de/pub/graphics/ghostscript/pcl3/
39 DISTFILES+= ${HPDJ_DRV}.tar.gz
40 EXTRACT_LIST+= ${HPDJ_DRV}.tar.gz
42 # I don't know the primary destribution sites of these drivers....
43 MASTER_SITES+= ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/
45 DISTFILES+= ${DMPRT_DRV}.tar.gz
46 EXTRACT_LIST+= ${DMPRT_DRV}.tar.gz
49 DISTFILES+= ${BJ10V_DRV}.tar.gz
50 EXTRACT_LIST+= ${BJ10V_DRV}.tar.gz
52 # This driver doesn't compile ... missing header "gsprops.h".
54 DISTFILES+= ${MJC_DRV}.tar.gz
55 EXTRACT_LIST+= ${MJC_DRV}.tar.gz
57 # Alps MD5000 printer 600dpi monochrome mode
58 MD5000_DRV= gdevalps-0.2
59 DISTFILES+= ${MD5000_DRV}.tar.gz
60 EXTRACT_LIST+= ${MD5000_DRV}.tar.gz
62 # Alps MD-2000/2010/4000/1300/1500/5000
63 MASTER_SITES+= http://plaza26.mbn.or.jp/~higamasa/gdevmd2k/
64 MD2000_DRV= gdevmd2k-0.2a
65 DISTFILES+= ${MD2000_DRV}.tar.gz
66 EXTRACT_LIST+= ${MD2000_DRV}.tar.gz
68 # Canon LIPS II+, III, IV; EPSON ESC/Page; NEC NPDL drivers
69 MASTER_SITES+= http://www.bukka.p.chiba-u.ac.jp/~ohmori/gs/
70 LIPS_DRV= gdevlips-2.3.6
71 DISTFILES+= ${LIPS_DRV}.tar.gz
72 EXTRACT_LIST+= ${LIPS_DRV}.tar.gz
75 MASTER_SITES+= http://home.jp.FreeBSD.org/~mita/LOCAL_PORTS/
77 DISTFILES+= ${RPDL_DRV}.tar.gz
78 EXTRACT_LIST+= ${RPDL_DRV}.tar.gz
81 MASTER_SITES+= ${MASTER_SITE_LOCAL}
82 PRESCR_DRV= gdevprsc-0.2.1
83 DISTFILES+= ${PRESCR_DRV}.tar.gz
84 EXTRACT_LIST+= ${PRESCR_DRV}.tar.gz
86 FILESDIR= ${.CURDIR}/../../print/ghostscript-nox11/files
87 PATCHDIR= ${.CURDIR}/../../print/ghostscript-nox11/patches
88 SCRIPTDIR= ${.CURDIR}/../../print/ghostscript-nox11/scripts
89 PLIST_SRC= ${.CURDIR}/../../print/ghostscript-nox11/pkg/PLIST
91 EXTRACT_ONLY= ${GS_SOURCES}
92 DIST_SUBDIR= ghostscript
93 WRKSRC= ${WRKDIR}/gs${GS_VERS}
94 MAKEFILE= src/unix-gcc.mak
97 .include "../../mk/bsd.prefs.mk"
99 # arm32 compiler has an optimizer problem
100 .if ${OPSYS} == "NetBSD" && ${MACHINE_ARCH} == "arm32"
104 .if defined(PAPERSIZE) && (${PAPERSIZE} == "A4" || ${PAPERSIZE} == "a4")
108 CFLAGS+= -I${LOCALBASE}/include # png.h, VF.h
109 CFLAGS+= -DHAVE_MKSTEMP=1
111 .if ${OPSYS} == "SunOS"
112 LDFLAGS+= -L${LOCALBASE}/bsd/lib -Wl,-R${LOCALBASE}/bsd/lib
115 MAKE_ENV+= XLDFLAGS="${LDFLAGS}"
117 # Ghostscript builds in ./obj, which confuses make, so explicitly set
118 # MAKEOBJDIR so as not to descend into ./obj.
120 MAKE_ENV+= MAKEOBJDIR="."
122 # Define whether this platform has floating point hardware:
123 # FPU_TYPE=2 means floating point is faster than fixed point.
124 # (This is the case on some RISCs with multiple instruction dispatch.)
125 # FPU_TYPE=1 means floating point is at worst only slightly slower
127 # FPU_TYPE=0 means that floating point may be considerably slower.
128 # FPU_TYPE=-1 means that floating point is always much slower than
132 MAKE_ENV+= FPU_TYPE=${FPU_TYPE}
135 MAKEFRAGS= ${FILESDIR}/devs.x11
137 MAKEFRAGS+= ${FILESDIR}/devs.nox11
139 PERL_PATH= ${LOCALBASE}/bin/perl
140 GSINST_DIR= ${PREFIX}/share/ghostscript/${GS_VERS}vflib
141 DOC_DIR= ${PREFIX}/share/doc/ghostscript
142 LIB_DIR= ${GSINST_DIR}/lib
145 .for FILE in ${EXTRACT_LIST}
146 cd ${WRKDIR}; ${PAX} -zrf ${_DISTDIR}/${FILE}
148 cd ${WRKSRC}/src; ${PAX} -rf ${WRKDIR}/${HPDJ_DRV}/hpdj.tar
149 ${MV} ${WRKSRC}/src/gs-hpdj.1 ${WRKSRC}/man
150 cd ${WRKDIR}; ${CP} gdevdmpr.c gdevdmpr.mak ${WRKSRC}/src
151 cd ${WRKDIR}; ${CP} dviprlib.* ${WRKSRC}/src
152 cd ${WRKDIR}/${BJ10V_DRV}; ${CP} gdev10v.c gdev10v.mak ${WRKSRC}/src
153 cd ${WRKDIR}/${MJC_DRV}; ${CP} *.[ch] gdevmjc.mak ${WRKSRC}/src
154 cd ${WRKDIR}/${LIPS_DRV}; ${CP} * ${WRKSRC}/src
155 cd ${WRKDIR}/${RPDL_DRV}; ${CP} gdevrpdl.c gdevrpdl.mak ${WRKSRC}/src
156 cd ${WRKDIR}/${MD5000_DRV}; \
157 ${CP} gdevalps.c gdevalps.mak-5.50 ${WRKSRC}/src
158 cd ${WRKDIR}/${MD2000_DRV}; \
159 ${CP} gdevmd2k.c gdevmd2k.mak-5.8x ${WRKSRC}/src
160 cd ${WRKDIR}/${PRESCR_DRV}; \
161 ${CP} gdevprsc.c gdevprsc.mak ${WRKSRC}/src
163 ${RM} -f ${WRKSRC}/jpeg
164 ${LN} -s ${BUILD_ROOT}/graphics/jpeg/${WRKDIR:T}/jpeg-6b \
166 ${RM} -f ${WRKSRC}/lib/${PDF_SEC}
167 ${LN} -s ${_DISTDIR}/${PDF_SEC} ${WRKSRC}/lib/${PDF_SEC}
168 ${MV} ${WRKSRC}/lib/fixmswrd.pl ${WRKSRC}/lib/fixmswrd.pl.in
171 if [ ! -f ${WRKDIR}/dmp_site.ps.bak ]; then \
172 ${MV} ${WRKDIR}/dmp_site.ps ${WRKDIR}/dmp_site.ps.bak; \
174 ${SED} -e "s,epsimage\.src,${GSINST_DIR}/lib/escp_24.src,g" \
175 < ${WRKDIR}/dmp_site.ps.bak > ${WRKDIR}/dmp_site.ps
179 # Append build rules for extra drivers to contrib.mak
181 ${CAT} ${WRKSRC}/src/contrib.mak-5.94.add \
182 ${WRKSRC}/src/gdevlips.mak \
183 ${WRKSRC}/src/gdev10v.mak \
184 ${WRKSRC}/src/gdevmjc.mak \
185 ${WRKSRC}/src/gdevrpdl.mak \
186 ${WRKSRC}/src/gdevdmpr.mak \
187 ${WRKSRC}/src/gdevalps.mak-5.50 \
188 ${WRKSRC}/src/gdevmd2k.mak-5.8x \
189 ${WRKSRC}/src/gdevprsc.mak \
190 >> ${WRKSRC}/src/contrib.mak
192 # Prepend device list to unix-gcc.mak
194 ${CAT} ${MAKEFRAGS} \
195 ${WRKSRC}/src/unix-gcc.mak \
196 > ${WRKDIR}/unix-gcc.mak
197 ${MV} -f ${WRKDIR}/unix-gcc.mak ${WRKSRC}/src
199 ${SED} -e "s,@PERL@,${PERL_PATH},g" \
200 < ${WRKSRC}/lib/fixmswrd.pl.in > ${WRKSRC}/lib/fixmswrd.pl
203 strip ${PREFIX}/bin/gs
204 ${INSTALL_DATA} ${WRKDIR}/${LIPS_DRV}/Gdevlips.htm ${DOC_DIR}
205 ${INSTALL_DATA} ${WRKDIR}/${BJ10V_DRV}/gdev10v.jis ${DOC_DIR}
206 ${INSTALL_DATA} ${WRKDIR}/gdevdmpr.sj ${DOC_DIR}
207 ${INSTALL_DATA} ${WRKDIR}/dmp_init.ps ${LIB_DIR}
208 ${INSTALL_DATA} ${WRKDIR}/dmp_site.ps ${LIB_DIR}
209 ${INSTALL_DATA} ${WRKDIR}/escp_24.src ${LIB_DIR}
210 ${INSTALL_DATA} ${WRKDIR}/testpage.ps ${LIB_DIR}
211 ${INSTALL_DATA} ${WRKDIR}/${PRESCR_DRV}/gdevprsc.?? ${DOC_DIR}
212 ${INSTALL_DATA_DIR} ${DOC_DIR}/${MJC_DRV}
213 ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/README.mjc ${DOC_DIR}/${MJC_DRV}
214 ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/README.noz ${DOC_DIR}/${MJC_DRV}
215 ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/README.mje ${DOC_DIR}/${MJC_DRV}
216 ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/cpem.doc ${DOC_DIR}/${MJC_DRV}
217 ${INSTALL_DATA} ${WRKDIR}/${MJC_DRV}/MJ700V2C.FAQ ${DOC_DIR}/${MJC_DRV}
220 @cd ../../graphics/jpeg && ${MAKE} clean
222 .include "../../mk/bsd.pkg.mk"