summaryrefslogblamecommitdiff
path: root/print/pips800/Makefile.pips
blob: b10bd025eb42467f55b023c5ea370ca10f72e982 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12











                                                                     
 






                                                                               
                   
      
                            
 



                                                      

                                 


                                          

                                    



                                        

                                            
                            


                                       
                                      
      
                           
                                    

                                      
                                               
                                     






                                              
                                                               





                                                                                         
                       

                    



                                                          









                                           

                                              
                              
                                    

                                          
                                        

                                        


                          

                                      
                      


                                             
                                                 

                                                       









                                                       
     


                                                      














                                                                              
                            
 
                            



















                                        
                            


                                 
                            


                                 





                                  
 
                                                                           
                     

                                                
                                         



                     
      

                        


                                       
                                        
      


                           
                                           
 
                  




                                         
                          
                         


                                                                      
                          
                                         
     
                                                      
      




                                                                               
      
       



                                      
      
 



                                                                
             
                        
                                                                        
      
                       
                                                                     


           
                        


                                                                  
                       


                                                                

                                                     


                                                                              

                                                                  


                                                                          
                        
                                                                          
                                                                  



                                                                                        
      
                      







                                                                  
                                                 

                                                                           
                                                         


                                                                  

                                                         
                                           
                                                                     
                                            
                                          
                        
                                                                             
      


                                                                   


                                         
 
              
                                                                        


                                                            









                                                               
           
                      







                                                                      

                                                           





                                                     

                                                           






                                                                  
                                                     


                                                        
                        


                                         
      






                                                            
                      








                                                             
                                                             

                                                                      


                                                              






                                                                     
                      
                                                              



                             
# makefile for use of:	PIPS
# Date created:		26 Aug 2004
# Whom:			Hajimu UMEMOTO <ume@FreeBSD.org>
#
# $FreeBSD$
#

PORTNAME=	pips${PRTYPE}
PORTVERSION?=	1.3.2
#PORTREVISION=	1
CATEGORIES?=	print
MASTER_SITES=	http://www.epkowa3.on.arena.ne.jp/pips/data/%SUBDIR%/

PIPS_MAJOR=	${PORTVERSION:C|^([0-9]+).([0-9]+).([0-9]+)$|\1|}
PIPS_MINOR=	${PORTVERSION:C|^([0-9]+).([0-9]+).([0-9]+)$|\2|}
#PIPS_PATCH=	${PORTVERSION:C|^([0-9]+).([0-9]+).([0-9]+)$|\3|}
PIPS_LEVEL!=	printf "%02d%02d" ${PIPS_MAJOR} ${PIPS_MINOR}
#PIPS_VERSION!=	printf "%02d%02d%02d" ${PIPS_MAJOR} ${PIPS_MINOR} ${PIPS_PATCH}

.if ${PIPS_LEVEL} < 0206
DIST_TYPE=	lpr
.endif
DIST_TYPE?=	lpr_and_caps

PRTTYPE_PREFIX=	${PRTYPE:C|^([^0-9]+)[0-9]+.*$|\1|}
.if ${PRTTYPE_PREFIX} == -sc
MASTER_SITE_SUBDIR=	${PRTYPE:C|^-(sc[0-9]+)s$|\1|}
.elif ${PRTYPE} == 730
MASTER_SITE_SUBDIR=	${PRTYPE}
.elif ${PRTYPE} == "750_2000"
MASTER_SITE_SUBDIR=	pm750c_2000clpr
.elif ${PRTYPE} == 780 || ${PRTYPE} == 880
MASTER_SITE_SUBDIR=	${PRTYPE}_20
.elif ${PRTYPE} == 970
MASTER_SITE_SUBDIR=	PM${PRTYPE}C
.elif ${PRTYPE} == 3500
MASTER_SITE_SUBDIR=	pm${PRTYPE}c
.elif ${PRTYPE} == 4000
MASTER_SITE_SUBDIR=	pm${PRTYPE}pxlpr
.elif ${PRTYPE} == g700 || ${PRTYPE} == g800
MASTER_SITE_SUBDIR=	pm${PRTYPE}lpr
.elif ${PRTTYPE_PREFIX} == v
.if ${DIST_TYPE} == cups
MASTER_SITE_SUBDIR=	px${PRTYPE}cups
.else
MASTER_SITE_SUBDIR=	px${PRTYPE}lpr
.endif
.elif ${PIPS_LEVEL} == 0201
MASTER_SITE_SUBDIR=	${PRTYPE}_21
.elif ${DIST_TYPE} == cups
MASTER_SITE_SUBDIR=	${PRTYPE}Ccups
.elif ${PIPS_MAJOR} >= 2 && ${DIST_TYPE} == lpr
MASTER_SITE_SUBDIR=	${PRTYPE}Clpr
.else
MASTER_SITE_SUBDIR=	pm${PRTYPE}clpr
.endif

MAINTAINER=	ume@FreeBSD.org

LIB_DEPENDS=	png.5:${PORTSDIR}/graphics/png
RUN_DEPENDS=	pstops:${PORTSDIR}/print/psutils-${PAPERSIZE} \
		${LOCALBASE}/lib/pluginwrapper/pips.so:${PORTSDIR}/www/linuxpluginwrapper

USE_REINPLACE=	yes
USE_GMAKE=	yes
USE_GNOME=	glib12 gtk12
USE_GETTEXT=	yes
USE_GHOSTSCRIPT_RUN=yes

ONLY_FOR_ARCHS= i386
.if ${DIST_TYPE} == cups
PKGNAMESUFFIX=	-cups
.endif
DISTNAME=	${PORTNAME}${PKGNAMESUFFIX}-${PORTVERSION}
MD5_FILE=	${.CURDIR}/distinfo
DESCR=		${.CURDIR}/pkg-descr

GNU_CONFIGURE=	yes
CONFIGURE_ARGS=	--libdir=${PREFIX}/lib/pips

PLIST_SUB=	PRTYPE=${PRTYPE} \
		PRT_MODEL=${PRT_MODEL} \
		LIB_README=${LIB_README} \
		MODEL_FILE=${MODEL_FILE} \
		CUPSOPT_FILE=${CUPSOPT_FILE} \
		PIPS=${PIPS} \
		CUPS=${CUPS} \
		EKPNAVI=${EKPNAVI} \
		EKPNAVI_MO=${EKPNAVI_MO} \
		EKPSTM_MO=${EKPSTM_MO} \
		DTRFILTER=${DTRFILTER} \
		GSCONFIG=${GSCONFIG} \
		PAPER_LIST=${PAPER_LIST}

.include <bsd.port.pre.mk>

CPPFLAGS=	-I${LOCALBASE}/include
LDFLAGS=	-L${LOCALBASE}/lib
.if ${PIPS_MAJOR} >= 2
CONFLICTS=	pips*-2.*
USE_RC_SUBR=	yes
EXTRA_PATCHES=	${FILESDIR}/extra-patch-2.6.2
.if ${PIPS_LEVEL} != 0201 && ${DIST_TYPE} != cups
EXTRA_PATCHES+=	${FILESDIR}/extra-patch-2.6.2-dtrfilter
.endif
.if ${DIST_TYPE} == lpr
EXTRA_PATCHES+=	${FILESDIR}/extra-patch-2.6.2-ekpstm \
		${FILESDIR}/extra-patch-2.6.2-ekpnavi \
		${FILESDIR}/extra-patch-2.6.2-src \
		${FILESDIR}/extra-patch-2.6.2-src-lpr
.elif ${DIST_TYPE} == cups
EXTRA_PATCHES+=	${FILESDIR}/extra-patch-2.6.2-ekpstm \
		${FILESDIR}/extra-patch-2.6.2-src-cups
LIB_DEPENDS+=	cups.2:${PORTSDIR}/print/cups-base \
		iconv.3:${PORTSDIR}/converters/libiconv
.else
EXTRA_PATCHES+=	${FILESDIR}/extra-patch-2.6.2-common \
		${FILESDIR}/extra-patch-2.6.2-src \
		${FILESDIR}/extra-patch-2.6.2-src-cups
BUILD_DEPEND+=	${LOCALBASE}/bin/autoconf253:${PORTSDIR}/devel/autoconf253
LIB_DEPENDS+=	cups.2:${PORTSDIR}/print/cups-base \
		iconv.3:${PORTSDIR}/converters/libiconv
.endif
.if ${OSVERSION} < 500000
LIB_DEPENDS+=	gnugetopt.1:${PORTSDIR}/devel/libgnugetopt \
		lthread.2:${PORTSDIR}/devel/linuxthreads
CPPFLAGS+=	-I${LOCALBASE}/include/pthread/linuxthreads
LDFLAGS+=	-lgnugetopt -llthread
.else
LDFLAGS+=	${PTHREAD_LIBS}
.endif
CPPFLAGS+=	${PTHREAD_CFLAGS}
.endif
CONFIGURE_ENV+=	CFLAGS="${CFLAGS}" CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}"
MAKE_ENV+=	SED="${SED}"

.if ${PRTTYPE_PREFIX} == -sc
LIB_FILE=	lib${PRTYPE:S/^-//}.so
MODEL_FILE=	ekpm${PRTYPE:S/^-//}.ppd
PRT_MODEL=	${PRTYPE:U:S/^-//}
.else
.if ${PRTYPE} == 790
LIB_FILE=	libpm${PRTYPE}pt.so
MODEL_FILE=	ekpm${PRTYPE}pt.ppd
PRT_MODEL=	PM${PRTYPE}PT
.elif ${PRTYPE} == "780cs"
LIB_FILE=	libpm${PRTYPE}.so
MODEL_FILE=	ekpm${PRTYPE}.ppd
PRT_MODEL=	PM${PRTYPE:U}
.elif ${PRTYPE} == "820ug"
LIB_FILE=	libpm820cug.so
MODEL_FILE=	ekpm${PRTYPE}cug.ppd
PRT_MODEL=	PM820CUG
.elif ${PRTYPE} == 4000
LIB_FILE=	libpm${PRTYPE}px.so
MODEL_FILE=	ekpm${PRTYPE}px.ppd
PRT_MODEL=	PM${PRTYPE}PX
.elif ${PRTTYPE_PREFIX} == g
LIB_FILE=	libpm${PRTYPE}.so
MODEL_FILE=	ekpm${PRTYPE}.ppd
PRT_MODEL=	PM${PRTYPE:U}
.elif ${PRTTYPE_PREFIX} == v
LIB_FILE=	libpx${PRTYPE}.so
MODEL_FILE=	ekpx${PRTYPE}.ppd
PRT_MODEL=	PX${PRTYPE:U}
.else
LIB_FILE=	libpm${PRTYPE}c.so
MODEL_FILE=	ekpm${PRTYPE}c.ppd
PRT_MODEL=	PM${PRTYPE}C
.endif
.endif

.if ${PIPS_LEVEL} == 0201 || (${PIPS_LEVEL} >= 0205 && ${DIST_TYPE} == lpr)
EKPNAVI_VER=	1.1.2
.endif
.if defined(EKPNAVI_VER) || ${DIST_TYPE} == cups
.if ${PRTYPE} == 970 || ${PRTYPE} == v700
EKPSTM_VER=	1.1.2
.else
EKPSTM_VER=	1.0.2
.endif
.endif

.if ${DIST_TYPE} == cups
.if ${PRTYPE} == v700
CUPSOPT_FILE=	cupsopt_px${PRTYPE}.csv
.else
CUPSOPT_FILE=	cupsopt_pm${PRTYPE}c.csv
.endif
.else
CUPSOPT_FILE=	cupsopt.csv
.endif
LIB_README=	${LIB_FILE:S/.so$//}.readme

PAPERSIZE?=	a4

.if ${PIPS_MAJOR} == 1
FILTER_SRC=	filter.org
PLIST=		${MASTERDIR}/pkg-plist132
.else
FILTER_SRC=	filter.tmp
.if ${PIPS_LEVEL} == 0201
INCLIST=	PIPS EKPNAVI EKPNAVI_MO EKPSTM_MO GSCONFIG
.elif ${DIST_TYPE} == lpr
INCLIST=	PIPS EKPNAVI EKPNAVI_MO EKPSTM_MO DTRFILTER PAPER_LIST
.elif ${DIST_TYPE} == cups
INCLIST=	CUPS EKPSTM_MO PAPER_LIST
.else
INCLIST=	PIPS CUPS EKPNAVI DTRFILTER PAPER_LIST
.endif
.for _P in PIPS CUPS EKPNAVI EKPNAVI_MO EKPSTM_MO DTRFILTER GSCONFIG PAPER_LIST
.if ${INCLIST:M${_P}} == ${_P}
${_P}=""
.else
${_P}="@comment "
.endif
.endfor
RC_SCRIPTS_SUB=	PREFIX=${PREFIX} \
		RC_SUBR=${RC_SUBR} \
		PRT_MODEL=${PRT_MODEL}
WITH_EKPD?=	yes
.endif

PKGMESSAGE=	${WRKDIR}/pkg-message

DOCS=		COPYING COPYING.KOWA COPYING.KOWA.ja COPYING.LIB

post-extract:
.if defined(EKPNAVI_VER)
	cd ${WRKSRC}/ekpnavi && ${TAR} xzf ekpnavi-${EKPNAVI_VER}.tar.gz
.endif
.if defined(EKPSTM_VER)
	cd ${WRKSRC}/ekpstm && ${TAR} xzf ekpstm-${EKPSTM_VER}.tar.gz
.endif

post-patch:
.if defined(EKPNAVI_VER)
	cd ${WRKSRC}/ekpnavi/ekpnavi-${EKPNAVI_VER} && \
		patch -p < ${FILESDIR}/ekpnavi-${EKPNAVI_VER}.diff
.endif
.if defined(EKPSTM_VER)
	cd ${WRKSRC}/ekpstm/ekpstm-${EKPSTM_VER} && \
		patch -p < ${FILESDIR}/ekpstm-${EKPSTM_VER}.diff
.endif
	${REINPLACE_CMD} -e '/^SUBDIRS =/s/setup//' \
		-e 's,setup redhat,redhat,' \
		-e '/inst-post.sh/s/^/#/' \
		${WRKSRC}/Makefile.in
	${REINPLACE_CMD} -e 's,^prefix=/usr$$,,' -e 's,^sysconfdir=/etc$$,,' \
		-e 's,/usr/local/EPKowa,${PREFIX}/libexec/pips,' \
		-e 's,_nl_domain_bindings,libintl&,' \
		${WRKSRC}/configure
	${REINPLACE_CMD} -e 's,^pkgdatadir.*$$,pkgdatadir = ${DOCSDIR},' \
		${WRKSRC}/doc/Makefile.in
.if ${DIST_TYPE} != cups
	${REINPLACE_CMD} -e 's,^EKPSTM.*$$,EKPSTM=${PREFIX}/bin/ekpstm,' \
		-e 's,/usr/local/EPKowa,${PREFIX}/libexec/pips,' \
		-e 's,/usr/bin/pips,${PREFIX}/bin/pips,' \
		-e 's,:/usr/local/bin$$,:${PREFIX}/bin,' \
		-e 's,^GSCONF=%gsconfig_name%$$,GSCONF=${PREFIX}/bin/%gsconfig_name%,' \
		${WRKSRC}/src/${FILTER_SRC}
.endif
.if ${PIPS_MAJOR} == 1
	${REINPLACE_CMD} -e 's,^PREFIX.*$$,PREFIX=${PREFIX},' \
		-e 's,^ETCDIR.*$$,ETCDIR=${PREFIX}/etc,' \
		-e 's,/dev/lp0,/dev/lpt0,' \
		-e 's,/usr/local/EPKowa,${PREFIX}/libexec/pips,' \
		-e 's,/usr/bin/pips,${PREFIX}/bin/pips,' \
		-e 's,:/usr/local/bin$$,:${PREFIX}/bin,' \
		${WRKSRC}/setup/inst-post.sh
.endif
.if ${PIPS_LEVEL} >= 0205 && ${DIST_TYPE} != cups
	${REINPLACE_CMD} -e 's,dtrfilter_LDADD = -ldl,dtrfilter_LDADD =,' \
		${WRKSRC}/dtrfilter/Makefile.in
	${REINPLACE_CMD} -e 's,/etc/pipsrc,${PREFIX}&,' \
		-e 's,/usr/local/EPKowa,${PREFIX}/libexec/pips,' \
		${WRKSRC}/layout_script/gsconfig
.endif
.if ${PIPS_MAJOR} >= 2
	${REINPLACE_CMD} -e 's,/etc/ekpdrc,${PREFIX}&,' \
		${WRKSRC}/ekpd/cbtd_setup.c
	${REINPLACE_CMD} -e 's;/dev/\(usb/\)\{0,1\}lp0;/dev/ulpt0;' \
		-e 's,^SUBDIRS = rc$$,#&,' \
		${WRKSRC}/ekpd/Makefile.in
.if ${DIST_TYPE} != cups
	${REINPLACE_CMD} -e 's,/etc/ekpdrc,${PREFIX}&,' ${WRKSRC}/src/setup.c
.endif
.if ${PIPS_LEVEL} >= 0206 || ${DIST_TYPE} == lpr
	${REINPLACE_CMD} -e 's,@CUPS_LIBS@,& -lintl,' \
		-e 's,^INCLUDES =  @GTK_CFLAGS@ $$,&$$(INCLTDL),' \
		${WRKSRC}/src/Makefile.in
.endif
.endif

pre-configure:
.if ${PIPS_LEVEL} >= 0206 && ${DIST_TYPE} != lpr && ${DIST_TYPE} != cups
	cd ${WRKSRC}/libltdl && ${LOCALBASE}/bin/autoconf253
.endif

post-configure:
.if defined(EKPNAVI_VER)
	cd ${WRKSRC}/ekpnavi/ekpnavi-${EKPNAVI_VER} && \
		${CONFIGURE_ENV} ./configure --prefix=${PREFIX}
.endif
.if defined(EKPSTM_VER)
	cd ${WRKSRC}/ekpstm/ekpstm-${EKPSTM_VER} && \
		${CONFIGURE_ENV} ./configure --prefix=${PREFIX}
.endif

post-build:
.if ${PIPS_MAJOR} == 1
	${SED}	-e 's,$$GSCONF | $$PIPS -ui C,TMP=/tmp/pips.$$$$;\
trap "rm -rf $$TMP; exit" 0 2 3 4 6 7 8 10 11 12 13 15;\
psselect -r > $$TMP;\
$${GSCONF} < $$TMP | $${PIPS} -ui C,' \
		-e 's,$${GSCONF} | $${PIPS} -ui C,TMP=/tmp/pips.$$$$;\
trap "rm -rf $$TMP; exit" 0 2 3 4 6 7 8 10 11 12 13 15;\
psselect -r > $$TMP;\
$${GSCONF} < $$TMP | $${PIPS} -ui C,' \
		${WRKSRC}/src/filter${PRTYPE} \
			> ${WRKSRC}/src/filter${PRTYPE}.rev
.endif
	${SED}	-e 's,%%PRTYPE%%,${PRTYPE},g' \
		-e 's,%%PRT_MODEL%%,${PRT_MODEL},g' \
		-e 's,%%VERSION%%,${PORTVERSION},'g \
		-e 's,%%PREFIX%%,${PREFIX},g' \
		-e 's,%%WITH_EKPD%%,${WITH_EKPD},g' \
		${FILESDIR}/setup > ${WRKDIR}/setup.freebsd
.if ${PIPS_MAJOR} >= 2
	${REINPLACE_CMD} -e 's,.rev$$,,' ${WRKDIR}/setup.freebsd
	@${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
		${FILESDIR}/ekpd.sh > ${WRKDIR}/ekpd.sh
	@${SED} ${RC_SCRIPTS_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
		${FILESDIR}/pips.sh > ${WRKDIR}/pips.sh
.endif
	${SED}	-e 's,%%LIB_FILE%%,${LIB_FILE},g' \
		-e 's,%%PRT_MODEL%%,${PRT_MODEL},g' \
		${MASTERDIR}/pkg-message > ${PKGMESSAGE}

post-install:
.if ${DIST_TYPE} != cups
	${RM} -f ${PREFIX}/etc/pipsrc
	${TOUCH} ${PREFIX}/etc/pipsrc
	${CHMOD} 666 ${PREFIX}/etc/pipsrc
.endif
	${INSTALL_SCRIPT} ${WRKDIR}/setup.freebsd \
		${PREFIX}/libexec/pips/${PRT_MODEL}/setup
	${MKDIR} ${PREFIX}/libexec/pips/${PRT_MODEL}/scripts
	${INSTALL_DATA} ${FILESDIR}/en.lc \
		${PREFIX}/libexec/pips/${PRT_MODEL}/scripts
	${INSTALL_DATA} ${FILESDIR}/ja.lc \
		${PREFIX}/libexec/pips/${PRT_MODEL}/scripts
.if ${PIPS_MAJOR} == 1
	${INSTALL_SCRIPT} ${WRKSRC}/src/filter${PRTYPE}.rev \
		${PREFIX}/libexec/pips/${PRT_MODEL}
.endif
.if !defined(NOPORTDOCS)
.for f in ${DOCS}
	${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
.endfor
.endif
	@${ECHO_CMD} "lib/pips/${LIB_FILE}" >>${TMPPLIST}
.if ${PRTYPE} == 970 || ${PRTYPE} == 980 || ${PRTYPE} == 4000
	@${ECHO_CMD} "lib/pips/${LIB_FILE:S/.so/R1.so/}" >>${TMPPLIST}
	@${ECHO_CMD} "lib/pips/${LIB_FILE:S/.so/R2.so/}" >>${TMPPLIST}
	${INSTALL_SCRIPT} ${WRKDIR}/pips.sh ${PREFIX}/etc/rc.d
	@${ECHO_CMD} "etc/rc.d/pips.sh" >>${TMPPLIST}
	${PREFIX}/etc/rc.d/pips.sh start
.endif
	@${ECHO_CMD} "@dirrm lib/pips" >>${TMPPLIST}
.for f in ${PATCH_PRN}
	@${ECHO_CMD} "libexec/pips/${PRT_MODEL}/${f}" >>${TMPPLIST}
.endfor
	@${ECHO_CMD} "@dirrm libexec/pips/${PRT_MODEL}" >>${TMPPLIST}
	@${ECHO_CMD} "@dirrm libexec/pips" >>${TMPPLIST}
.if ${PIPS_MAJOR} >= 2
	${INSTALL_SCRIPT} ${WRKDIR}/ekpd.sh ${PREFIX}/etc/rc.d
.endif
	@${CAT} ${PKGMESSAGE}

.include <bsd.port.post.mk>