aboutsummaryrefslogtreecommitdiff
path: root/print/cups-filters/Makefile
blob: 945881c02a3968e177d6fdedb253267a3c7c0aa4 (plain) (blame)
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
PORTNAME=	cups-filters
PORTVERSION=	1.28.16
PORTREVISION=	1
CATEGORIES=	print
MASTER_SITES=	https://www.openprinting.org/download/cups-filters/

MAINTAINER=	tijl@FreeBSD.org
COMMENT=	Additional backends, filters and other software for CUPS
WWW=		https://wiki.linuxfoundation.org/openprinting/cups-filters

LICENSE=	BSD4CLAUSE GPLv2 GPLv2+ GPLv3 GPLv3+ LGPL20 LGPL21+ MIT
LICENSE_COMB=	multi

BUILD_DEPENDS=	${LOCALBASE}/share/fonts/dejavu/DejaVuSans.ttf:x11-fonts/dejavu
LIB_DEPENDS=	liblcms2.so:graphics/lcms2 \
		libqpdf.so:print/qpdf \
		libcupsimage.so:print/cups \
		libfreetype.so:print/freetype2 \
		libfontconfig.so:x11-fonts/fontconfig

USES=		compiler:c++11-lib cpe gmake gnome iconv libtool localbase \
		pkgconfig shebangfix tar:xz
USE_GNOME=	glib20
USE_LDCONFIG=	yes
USE_RC_SUBR=	cups_browsed

CONFLICTS=	foomatic-filters # bin/foomatic-rip

CPE_VENDOR=	linuxfoundation
SHEBANG_FILES=	filter/braille/drivers/generic/brftoembosser.in \
		filter/braille/drivers/index/imageubrltoindexv3.in \
		filter/braille/drivers/index/imageubrltoindexv4.in \
		filter/braille/drivers/index/textbrftoindexv3.in \
		filter/braille/filters/brftopagedbrf.in \
		filter/braille/filters/imagetobrf.in \
		filter/braille/filters/liblouis1.defs.gen.in \
		filter/braille/filters/musicxmltobrf.in \
		filter/braille/filters/texttobrf.in \
		filter/braille/filters/vectortobrf.in \
		filter/braille/filters/vectortopdf.in

GNU_CONFIGURE=	yes
CONFIGURE_ARGS=	--with-shell=/bin/sh \
		--with-pdftops-path=${LOCALBASE}/bin/pdftops \
		--with-test-font-path=${LOCALBASE}/share/fonts/dejavu/DejaVuSans.ttf
INSTALL_TARGET=	install-strip

OPTIONS_DEFINE=			BRAILLE COLORD DOCS
OPTIONS_GROUP=			FILTERS CUPS_BROWSED
OPTIONS_GROUP_FILTERS=		GHOSTSCRIPT IMAGES MUPDF POPPLER
OPTIONS_GROUP_CUPS_BROWSED=	AVAHI LDAP
OPTIONS_SINGLE=			PDFTOPS
OPTIONS_SINGLE_PDFTOPS=		PSGHOSTSCRIPT PSHYBRID PSMUPDF PSPOPPLER
OPTIONS_DEFAULT=		COLORD GHOSTSCRIPT IMAGES POPPLER AVAHI LDAP \
				PSHYBRID
OPTIONS_SUB=			yes

BRAILLE_CONFIGURE_ENABLE=	braille
BRAILLE_DESC=			Braille embosser support
BRAILLE_USES=			magick:run
BRAILLE_BUILD_DEPENDS=		bash:shells/bash
BRAILLE_LIB_DEPENDS=		liblouis.so:devel/liblouis \
#				liblouisutdml.so:devel/liblouisutdml
BRAILLE_RUN_DEPENDS=		pdftotext:graphics/poppler-utils \
				bash:shells/bash

COLORD_CONFIGURE_ENABLE=	dbus
COLORD_DESC=			Get ICC color profiles from colord (via D-Bus)
COLORD_LIB_DEPENDS=		libdbus-1.so:devel/dbus
COLORD_RUN_DEPENDS=		colord>0:graphics/colord

# Filters

FILTERS_DESC=			Filters

GHOSTSCRIPT_CONFIGURE_ENABLE=	ghostscript
GHOSTSCRIPT_DESC=		PS-to-PDF and PS/PDF-to-raster using Ghostscript
GHOSTSCRIPT_USES=		ghostscript

IMAGES_CONFIGURE_ENABLE=	exif imagefilters
IMAGES_CONFIGURE_WITH=		jpeg png tiff
IMAGES_DESC=			Accept JPEG, PNG, and TIFF files as input
IMAGES_LIB_DEPENDS=		libexif.so:graphics/libexif \
				libpng.so:graphics/png \
				libtiff.so:graphics/tiff
IMAGES_USES=			jpeg

MUPDF_BUILD_DEPENDS=		mutool:graphics/mupdf
MUPDF_RUN_DEPENDS=		mutool:graphics/mupdf
MUPDF_CONFIGURE_ENABLE=		mutool
MUPDF_DESC=			PDF-to-raster using MuPDF

POPPLER_CONFIGURE_ENABLE=	poppler
POPPLER_DESC=			PDF-to-raster using Poppler
POPPLER_LIB_DEPENDS=		libpoppler-cpp.so:graphics/poppler

# cups-browsed(8) options

CUPS_BROWSED_DESC=		cups-browsed(8) options

AVAHI_CONFIGURE_ENABLE=		avahi
AVAHI_CONFIGURE_OFF=		--with-browseremoteprotocols=cups
AVAHI_CONFIGURE_ON=		--with-browseremoteprotocols="dnssd cups"
AVAHI_DESC=			Discover Zeroconf/Bonjour network printers
AVAHI_LIB_DEPENDS=		libavahi-client.so:net/avahi-app
AVAHI_SUB_LIST=			AVAHI_DAEMON=avahi_daemon
AVAHI_SUB_LIST_OFF=		AVAHI_DAEMON=

LDAP_CONFIGURE_ENABLE=		ldap
LDAP_DESC=			Get printer locations from an LDAP server
LDAP_USE=			OPENLDAP=yes

# Default PDF-to-PostScript renderer

PDFTOPS_DESC=			Default PDF-to-PostScript renderer

PSGHOSTSCRIPT_CONFIGURE_ON=	--with-pdftops=gs
PSGHOSTSCRIPT_DESC=		Ghostscript gs(1)
PSGHOSTSCRIPT_IMPLIES=		GHOSTSCRIPT

PSHYBRID_BUILD_DEPENDS=		pdftops:graphics/poppler-utils
PSHYBRID_RUN_DEPENDS=		pdftops:graphics/poppler-utils
PSHYBRID_CONFIGURE_ON=		--with-pdftops=hybrid
PSHYBRID_DESC=			Ghostscript or Poppler depending on printer
PSHYBRID_IMPLIES=		GHOSTSCRIPT

PSMUPDF_CONFIGURE_ON=		--with-pdftops=mupdf
PSMUPDF_DESC=			MuPDF mutool(1)
PSMUPDF_IMPLIES=		MUPDF

PSPOPPLER_BUILD_DEPENDS=	pdftops:graphics/poppler-utils
PSPOPPLER_RUN_DEPENDS=		pdftops:graphics/poppler-utils
PSPOPPLER_CONFIGURE_ON=		--with-pdftops=pdftops
PSPOPPLER_DESC=			Poppler pdftops(1)

post-patch:
	@${REINPLACE_CMD} -e 's|/usr/share|${PREFIX}/share|' \
		-e 's|/etc|${PREFIX}&|' \
		-e 's|README.gz|README|' \
		${WRKSRC}/utils/cups-browsed.8 \
		${WRKSRC}/utils/cups-browsed.conf.5 \
		${WRKSRC}/utils/driverless.1

post-install:
	@${MV} ${STAGEDIR}${PREFIX}/etc/cups/cups-browsed.conf \
		${STAGEDIR}${PREFIX}/etc/cups/cups-browsed.conf.sample

.include <bsd.port.mk>