aboutsummaryrefslogblamecommitdiff
path: root/print/hplip/Makefile
blob: 21a4cfbc9efa7c353ef6dd031bee5cc2ad25d3f8 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                        
           

                     
                      
                     
                  
 
                                

                                                                            
                                                   

                                                          


                                                          
                                                                 

                                                                              
 
                                    


                           
                         
                         

                   
                                               

                                                     






                                                                      

                                                             

                                                  
 
                   
 

                           
                                
 























                                              
                                           






                                                          
 
                              
 
                            
 
                       
                                                                                         
                                                                                             






                                           

      
                        

                                                                                          

                      
                                           
                               

      
                         
                   
                                                        
                                              



                                                         



                                               

                           










                                                                                    
                          

                                             

           

                                                             
                                     
                                     

                                                                                              




                                                                                                 
                                                                                                 









                                                               



                                                                                   
                                   






                                           
                                                                                
                                     
      
 
             
                       
                                                                                                         
      





                                                                               


                             
# Created by: amistry@am-productions.biz
# $FreeBSD$

PORTNAME=	hplip
PORTVERSION=	3.13.6
CATEGORIES=	print
MASTER_SITES=	SF

MAINTAINER=	makc@FreeBSD.org
COMMENT=	Drivers and utilities for HP Printers and All-in-One devices

LIB_DEPENDS=	jpeg.11:${PORTSDIR}/graphics/jpeg \
		cupsdriver.1:${PORTSDIR}/print/cups-base \
		cups.2:${PORTSDIR}/print/cups-client \
		cupsimage.2:${PORTSDIR}/print/cups-image \
		dbus-1.3:${PORTSDIR}/devel/dbus
RUN_DEPENDS=	espgs:${PORTSDIR}/print/cups-pstoraster \
		foomatic-rip:${PORTSDIR}/print/foomatic-filters \
		${PYTHON_SITELIBDIR}/dbus/_dbus.py:${PORTSDIR}/devel/py-dbus \
		xdg-open:${PORTSDIR}/devel/xdg-utils

CONFLICTS_INSTALL=	hpijs-[0-9]*

USE_GHOSTSCRIPT_RUN=	yes
USE_PYTHON=	2.5+
USE_GNOME=	pygobject
USES=		pkgconfig

GNU_CONFIGURE=	yes
CONFIGURE_ARGS=	--enable-foomatic-ppd-install \
		--enable-foomatic-rip-hplip-install \
		--enable-hpijs-install \
		--with-cupsbackenddir=${PREFIX}/libexec/cups/backend \
		--with-cupsfilterdir=${PREFIX}/libexec/cups/filter \
		--with-icondir=${DESKTOPDIR} \
		--with-systraydir=${PREFIX}/etc/xdg/autostart \
		--with-hpppddir=${PREFIX}/share/ppd/HP \
		--with-mimedir=${PREFIX}/etc/cups \
		--with-docdir=${DOCSDIR} \
		--with-drvdir=${PREFIX}/libexec/cups/driver \
		--enable-libusb01_build
CPPFLAGS+=	-I${LOCALBASE}/include
LDFLAGS+=	-L${LOCALBASE}/lib ${PTHREAD_LIBS}

USE_LDCONFIG=	yes

SUB_FILES=	pkg-message
USE_DOS2UNIX=	yes
DOS2UNIX_REGEX=.+\.(c|cpp|h|py)$

FILES4FIX=	Makefile.in \
		base/codes.py \
		base/g.py \
		base/pkit.py \
		base/status.py \
		base/utils.py \
		check.py \
		fax/backend/hpfax.py \
		hplip.list.in \
		installer/core_install.py \
		installer/dcheck.py \
		installer/distros.dat \
		io/hpmud/hp-mkuri.c \
		prnt/cups.py \
		prnt/hpcups/HPCupsFilter.cpp \
		prnt/hpcups/Utils.cpp \
		prnt/hpijs/globals.cpp \
		prnt/hpijs/hpcupsfax.cpp \
		prnt/hpijs/hpijs.cpp \
		setup.py \
		ui/devmgr4.py \
		ui/setupform.py \
		ui4/devmgr5.py

OPTIONS_DEFINE=	QT FAX SNMP SCAN XSANE DOCS
OPTIONS_DEFAULT=	QT

QT_DESC=	Graphical User Interface (Qt4)
FAX_DESC=	PC Send Fax support
SNMP_DESC=	Network/JetDirect support
SCAN_DESC=	Scanning support
XSANE_DESC=	Install XSane for scanning (requires SCAN)

.include <bsd.port.options.mk>

USB_INCLUDE=	/usr/include

.if ${PORT_OPTIONS:MQT}
RUN_DEPENDS+=	${PYTHON_SITELIBDIR}/PyQt4/QtGui.so:${PORTSDIR}/x11-toolkits/py-qt4-gui \
		${PYTHON_SITELIBDIR}/dbus/mainloop/qt.so:${PORTSDIR}/devel/py-qt4-dbussupport
CONFIGURE_ARGS+=	--enable-qt4 \
			--enable-gui-build
PLIST_SUB+=	GUI=""
.else
CONFIGURE_ARGS+=	--disable-qt4 \
			--disable-gui-build
PLIST_SUB+=	GUI="@comment "
.endif

.if ${PORT_OPTIONS:MFAX}
RUN_DEPENDS+=	${PYTHON_SITELIBDIR}/reportlab/__init__.py:${PORTSDIR}/print/py-reportlab2
CONFIGURE_ARGS+=	--enable-fax-build
PLIST_SUB+=	FAX=""
.else
CONFIGURE_ARGS+=	--disable-fax-build
PLIST_SUB+=	FAX="@comment "
.endif

.if ${PORT_OPTIONS:MSNMP}
USE_OPENSSL=	yes
LIB_DEPENDS+=	netsnmp.30:${PORTSDIR}/net-mgmt/net-snmp
CONFIGURE_ARGS+=	--enable-network-build
. if ${ARCH} == i386
# http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/144833
CONFIGURE_ENV+=	LIBS="-lssp_nonshared"
. endif
.else
CONFIGURE_ARGS+=	--disable-network-build
.endif

.if ${PORT_OPTIONS:MSCAN}
. if ${PORT_OPTIONS:MXSANE}
RUN_DEPENDS+=	xsane:${PORTSDIR}/graphics/xsane
. endif
LIB_DEPENDS+=	sane.1:${PORTSDIR}/graphics/sane-backends
RUN_DEPENDS+=	${PYTHON_SITELIBDIR}/PIL/_imaging.so:${PORTSDIR}/graphics/py-imaging
CONFIGURE_ARGS+=	--enable-scan-build
PLIST_SUB+=	SCAN=""
.else
CONFIGURE_ARGS+=	--disable-scan-build
PLIST_SUB+=	SCAN="@comment "
.endif

.if !${PORT_OPTIONS:MDOCS}
CONFIGURE_ARGS+=	--enable-doc-build=no
.endif

post-patch:
	${REINPLACE_CMD} -e 's,-lpthread,${PTHREAD_LIBS},g' \
		-e 's|-ldld||g; s|-ldl||g' \
		${WRKSRC}/configure \
		${WRKSRC}/Makefile.in
	${REINPLACE_CMD} -e '/[[:space:]]install-dist_rulesDATA/ s,install-dist_rulesDATA,,' \
		-e '/[[:space:]]install-hplip_confDATA/ s,install-hplip_confDATA,,' \
		-e '/[[:space:]]install-dist_hplip_LogDATA/ s,install-dist_hplip_LogDATA,,' \
		-e '/[[:space:]]install-dist_cronDATA/ s,install-dist_cronDATA,,' \
		-e '/[[:space:]]install-dist_halpreDATA/ s,install-dist_halpreDATA,,' \
		-e '/[[:space:]]install-dist_hplip_stateDATA/ s,install-dist_hplip_stateDATA,,' \
		-e '/[[:space:]]install-dist_hplip_tmpDATA/ s,install-dist_hplip_tmpDATA,,' \
		-e '/[[:space:]]install-dist_rulessystemDATA/ s,install-dist_rulessystemDATA,,' \
		${WRKSRC}/Makefile.in
	${REINPLACE_CMD} -e 's,/etc/hp,${PREFIX}&,g' \
		-e 's,/etc/cups,${LOCALBASE}&,g' \
		-e 's,/etc/init.d,${LOCALBASE}/etc/rc.d,g' \
		-e 's,/etc/sane.d,${LOCALBASE}&,g' \
		-e 's,/usr/share,${LOCALBASE}/share,g' \
		-e 's,/usr/include,${LOCALBASE}/include,g' \
		${FILES4FIX:S,^,${WRKSRC}/,}
	${REINPLACE_CMD} -e 's,%USB_INCLUDE%,${USB_INCLUDE},' \
		${WRKSRC}/installer/core_install.py
	cd ${WRKSRC} && \
		${REINPLACE_CMD} -e "s,^#!/usr/bin/python,#!/usr/bin/env python," \
			base/magic.py \
			config_usb_printer.py \
			doctor.py \
			logcapture.py \
			makeuri.py \
			setup.py \
			ui/upgradeform.py \
			uninstall.py \
			upgrade.py
.if !${PORT_OPTIONS:MDOCS}
	${REINPLACE_CMD} -e '/[[:space:]]install-docDATA/ s|install-docDATA||' \
		${WRKSRC}/Makefile.in
.endif

post-install:
.if ${PORT_OPTIONS:MQT}
	${INSTALL_DATA} ${WRKSRC}/hplip-systray.desktop ${PREFIX}/etc/xdg/autostart/hplip-systray.desktop
.endif
	${MKDIR} ${PREFIX}/etc/hp
	${INSTALL_DATA} ${WRKSRC}/hplip.conf ${PREFIX}/etc/hp/hplip.conf.sample
	if [ ! -f ${PREFIX}/etc/hp/hplip.conf ]; then \
		${INSTALL_DATA} ${PREFIX}/etc/hp/hplip.conf.sample \
			${PREFIX}/etc/hp/hplip.conf; \
	fi
	@${CAT} ${PKGMESSAGE}

.include <bsd.port.mk>