1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
8 SDESC[standard]= Common UNIX Printing System
9 HOMEPAGE= https://www.cups.org/
13 SITES[main]= GITHUB/apple:cups:v2.3.1
14 DISTFILE[1]= generated:main
16 SPKGS[standard]= complete
21 OPTIONS_AVAILABLE= none
22 OPTIONS_STANDARD= none
24 BUILDRUN_DEPENDS= gnutls:single:standard
25 libpaper:single:standard
30 USERGROUP_SPKG= primary
32 USES= cpe gmake iconv pkgconfig
34 LICENSE= APACHE20:primary
35 LICENSE_TERMS= primary:{{WRKDIR}}/TERMS
36 LICENSE_FILE= APACHE20:{{WRKSRC}}/LICENSE.txt
37 LICENSE_AWK= TERMS:"^$$"
38 LICENSE_SOURCE= TERMS:{{WRKSRC}}/cups/cups.h
42 FPC_EQUIVALENT= print/cups
45 CONFIGURE_ARGS= --enable-libpaper
54 --with-cups-group=cups
55 --with-dbusdir="{{PREFIX}}/etc/dbus-1"
56 --with-icondir="{{PREFIX}}/share/icons"
57 --with-menudir="{{PREFIX}}/share/applications"
58 --with-printcap="{{PREFIX}}/etc/printcap"
61 --with-pam-module="unix"
62 CONFIGURE_ENV= ac_cv_path_JAVA=
70 RC_SUBR= cupsd:primary
72 VAR_OPSYS[freebsd]= CONFIGURE_ARGS=--with-system-groups=wheel
73 VAR_OPSYS[sunos]= CONFIGURE_ARGS=LSB_BUILD=y
75 VAR_OPSYS[dragonfly]= CONFIGURE_ARGS=--with-system-groups=wheel
78 ${REINPLACE_CMD} -e '/SILENT/d' ${WRKSRC}/Makedefs.in
79 ${REINPLACE_CMD} 's/usblp/ulpt/g' ${WRKSRC}/backend/usb-libusb.c
80 ${REINPLACE_CMD} -e 's|/usr/local/etc/pam.d|${LOCALBASE}/etc/pam.d|' \
81 -e 's/-fstack-protector//' ${WRKSRC}/configure
82 ${FIND} ${WRKSRC}/doc ${WRKSRC}/templates -type f -exec ${SED} -i'' \
83 's|http://www.cups.org|https://www.cups.org|g' {} +
84 ${REINPLACE_CMD} '/stripopt=/s/-x//' ${WRKSRC}/install-sh
85 ${GREP} -l '/etc/cups/' ${WRKSRC}/man/*.[1-7] | ${XARGS} \
86 ${REINPLACE_CMD} 's|/etc/cups|${LOCALBASE}/etc/cups|g'
87 ${REINPLACE_CMD} -e 's|\.default|.sample|'\
88 -e 's|-g .(.*_GROUP)||g' \
89 ${WRKSRC}/cgi-bin/admin.c\
90 ${WRKSRC}/conf/Makefile \
91 ${WRKSRC}/notifier/Makefile \
92 ${WRKSRC}/scheduler/Makefile
95 ${LN} -sf lpr ${STAGEDIR}${PREFIX}/bin/lpr-cups
96 @${MKDIR} ${STAGEDIR}${PREFIX}/etc/pam.d \
97 ${STAGEDIR}${PREFIX}/etc/devd \
98 ${STAGEDIR}${STD_EXAMPLESDIR}
99 ${INSTALL_DATA} ${FILESDIR}/cups.conf.sample \
100 ${STAGEDIR}${PREFIX}/etc/devd
101 ${INSTALL_DATA} ${FILESDIR}/cups ${STAGEDIR}${PREFIX}/etc/pam.d
102 ${MV} ${STAGEDIR}${PREFIX}/share/cups/examples/* \
103 ${STAGEDIR}${STD_EXAMPLESDIR}
104 ${RMDIR} ${STAGEDIR}${PREFIX}/share/cups/examples
105 ${RM} ${STAGEDIR}${PREFIX}/etc/cups/*.conf
108 ${REINPLACE_CMD} -e '/-o .. ippeveprinter.o/ s/$$/ -lsocket/' \
109 ${WRKSRC}/tools/Makefile
111 -e '/-o lpd/ s/$$/ -lsocket/' \
112 -e '/-o ipp/ s/$$/ -lsocket/' \
113 -e '/-o .* socket\.o/ s/socket\.o/socket.o -lsocket/' \
115 ${WRKSRC}/backend/Makefile
117 -e '/-o cups-lpd/ s/$$/ -lsocket/' \
118 ${WRKSRC}/scheduler/Makefile
120 [FILE:228:descriptions/desc.primary]
121 CUPS is the standards-based, open source printing system developed by
122 Apple Inc. for macOS and other UNIX-like operating systems. CUPS uses
123 the Internet Printing Protocol (IPP) to support printing to local and
128 c4fb4cb0f56d811166c64eab27661336a9b7cc64a128638e0efb1cbfed5b5d00 8141287 apple-cups-2.3.1.tar.gz
131 [FILE:13559:manifests/plist.primary]
132 @sample etc/cups/cups-files.conf.sample
133 @sample etc/cups/cupsd.conf.sample
134 @sample etc/cups/snmp.conf.sample
135 @sample etc/devd/cups.conf.sample
136 %%ONLY-DARWIN%%libexec/cups/backend/snmp
137 %%ONLY-DRAGONFLY%%libexec/cups/backend/snmp
138 %%ONLY-DRAGONFLY%%share/cups/usb/org.cups.usb-quirks
139 %%ONLY-FREEBSD%%libexec/cups/backend/snmp
140 %%ONLY-FREEBSD%%share/cups/usb/org.cups.usb-quirks
141 %%ONLY-LINUX%%libexec/cups/backend/snmp
160 etc/dbus-1/system.d/cups.conf
183 libexec/cups/backend/
191 libexec/cups/cgi-bin/
197 libexec/cups/command/
213 libexec/cups/monitor/
216 libexec/cups/notifier/
232 share/applications/cups.desktop
233 share/cups/drv/sample.drv
235 cancel-current-job.test
237 create-job-format.test
238 create-job-sheets.test
239 create-job-timeout.test
241 create-printer-subscription.test
242 cups-create-local-printer.test
248 get-completed-jobs.test
250 get-job-attributes.test
251 get-job-attributes2.test
252 get-job-template-attributes.test
254 get-notifications.test
257 get-ppds-drv-only.test
258 get-ppds-language.test
259 get-ppds-make-and-model.test
261 get-ppds-product.test
262 get-ppds-psversion.test
264 get-printer-attributes-suite.test
265 get-printer-attributes.test
266 get-printer-description-attributes.test
267 get-printers-printer-id.test
269 get-subscriptions.test
271 identify-printer-display.test
272 identify-printer-multiple.test
273 identify-printer.test
284 print-job-and-wait.test
285 print-job-deflate.test
288 print-job-letter.test
289 print-job-manual.test
290 print-job-media-col.test
291 print-job-password.test
311 share/cups/templates/
323 class-jobs-header.tmpl
344 list-available-printers.tmpl
357 printer-cancel-jobs.tmpl
358 printer-configured.tmpl
362 printer-jobs-header.tmpl
363 printer-modified.tmpl
372 set-printer-options-header.tmpl
373 set-printer-options-trailer.tmpl
377 share/cups/templates/de/
389 class-jobs-header.tmpl
410 list-available-printers.tmpl
423 printer-cancel-jobs.tmpl
424 printer-configured.tmpl
428 printer-jobs-header.tmpl
429 printer-modified.tmpl
438 set-printer-options-header.tmpl
439 set-printer-options-trailer.tmpl
443 share/cups/templates/es/
455 class-jobs-header.tmpl
476 list-available-printers.tmpl
489 printer-cancel-jobs.tmpl
490 printer-configured.tmpl
494 printer-jobs-header.tmpl
495 printer-modified.tmpl
504 set-printer-options-header.tmpl
505 set-printer-options-trailer.tmpl
509 share/cups/templates/fr/
521 class-jobs-header.tmpl
542 list-available-printers.tmpl
555 printer-cancel-jobs.tmpl
556 printer-configured.tmpl
560 printer-jobs-header.tmpl
561 printer-modified.tmpl
570 set-printer-options-header.tmpl
571 set-printer-options-trailer.tmpl
575 share/cups/templates/ja/
587 class-jobs-header.tmpl
608 list-available-printers.tmpl
621 printer-cancel-jobs.tmpl
622 printer-configured.tmpl
626 printer-jobs-header.tmpl
627 printer-modified.tmpl
636 set-printer-options-header.tmpl
637 set-printer-options-trailer.tmpl
641 share/cups/templates/pt_BR/
653 class-jobs-header.tmpl
674 list-available-printers.tmpl
687 printer-cancel-jobs.tmpl
688 printer-configured.tmpl
692 printer-jobs-header.tmpl
693 printer-modified.tmpl
702 set-printer-options-header.tmpl
703 set-printer-options-trailer.tmpl
707 share/cups/templates/ru/
719 class-jobs-header.tmpl
740 list-available-printers.tmpl
753 printer-cancel-jobs.tmpl
754 printer-configured.tmpl
758 printer-jobs-header.tmpl
759 printer-modified.tmpl
768 set-printer-options-header.tmpl
769 set-printer-options-trailer.tmpl
773 share/icons/hicolor/128x128/apps/cups.png
774 share/icons/hicolor/16x16/apps/cups.png
775 share/icons/hicolor/32x32/apps/cups.png
776 share/icons/hicolor/64x64/apps/cups.png
777 share/locale/ca/cups_ca.po
778 share/locale/cs/cups_cs.po
779 share/locale/de/cups_de.po
780 share/locale/en/cups_en.po
781 share/locale/es/cups_es.po
782 share/locale/fr/cups_fr.po
783 share/locale/it/cups_it.po
784 share/locale/ja/cups_ja.po
785 share/locale/pt_BR/cups_pt_BR.po
786 share/locale/ru/cups_ru.po
787 share/locale/zh_CN/cups_zh_CN.po
819 subscriptions.conf.5.gz
846 @dir libexec/cups/driver
847 @dir share/cups/banners
849 @dir share/cups/model
850 @dir share/cups/profiles
851 @dir(,cups,) etc/cups/ppd
852 @dir(,cups,1770) /var/spool/cups/tmp
853 @dir(,cups,700) etc/cups/ssl
854 @dir(,cups,775) /var/cache/cups/rss
855 @dir(cups,,511) /var/run/cups/certs
856 @postexec chmod 710 /var/spool/cups && chgrp cups /var/spool/cups
857 @postexec chmod 770 /var/cache/cups && chgrp cups /var/cache/cups
860 [FILE:1837:manifests/plist.docs]
867 share/doc/cups/de/index.html
868 share/doc/cups/es/index.html
885 man-classes.conf.html
888 man-cups-files.conf.html
893 man-cupsd-helper.html
901 man-ippeveprinter.html
922 man-printers.conf.html
923 man-subscriptions.conf.html
928 postscript-driver.html
942 share/doc/cups/images/
944 cups-block-diagram.png
945 cups-command-chain.png
947 cups-postscript-chain.png
948 cups-raster-chain.png
952 raster-organization.png
960 share/doc/cups/ja/index.html
961 share/doc/cups/pt_BR/index.html
962 share/doc/cups/ru/index.html
965 [FILE:193:manifests/plist.examples]
980 [FILE:1240:patches/patch-backend_socket.c]
981 --- backend/socket.c.orig 2019-12-13 14:44:10 UTC
983 @@ -292,7 +292,6 @@ main(int argc, /* I - Number of comm
986 fprintf(stderr, "DEBUG: Connecting to %s:%d\n", hostname, port);
987 - _cupsLangPrintFilter(stderr, "INFO", _("Connecting to printer."));
991 @@ -372,7 +371,6 @@ main(int argc, /* I - Number of comm
994 fputs("STATE: -connecting-to-device\n", stderr);
995 - _cupsLangPrintFilter(stderr, "INFO", _("Connected to printer."));
997 fprintf(stderr, "DEBUG: Connected to %s:%d...\n",
998 httpAddrString(&(addr->addr), addrname, sizeof(addrname)),
999 @@ -403,7 +401,7 @@ main(int argc, /* I - Number of comm
1002 if (print_fd != 0 && tbytes >= 0)
1003 - _cupsLangPrintFilter(stderr, "INFO", _("Print file sent."));
1004 + fputs("DEBUG: Print file sent.\n", stderr);
1007 fputs("STATE: +cups-waiting-for-job-completed\n", stderr);
1008 @@ -414,7 +412,7 @@ main(int argc, /* I - Number of comm
1009 * Shutdown the socket and wait for the other end to finish...
1012 - _cupsLangPrintFilter(stderr, "INFO", _("Waiting for printer to finish."));
1013 + fputs("DEBUG: Waiting for printer to finish.\n", stderr);
1015 shutdown(device_fd, 1);
1019 [FILE:362:patches/patch-backend_usb-libusb.c]
1020 --- backend/usb-libusb.c.orig 2019-12-13 14:44:10 UTC
1021 +++ backend/usb-libusb.c
1022 @@ -1436,7 +1436,7 @@ open_device(usb_printer_t *printer, /* I
1023 * works without the module attached.
1026 - errcode = libusb_kernel_driver_active(printer->handle, printer->iface);
1029 printer->usblp_attached = 0;
1030 else if (errcode == 1)
1033 [FILE:582:patches/patch-conf_mime.convs.in]
1034 Lower PostScript-to-PostScript cost such that PostScript files are sent to
1035 PostScript printers directly without intermediate conversion to PDF, see
1036 http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdf_as_standard_print_job_format
1038 --- conf/mime.convs.in.orig 2019-12-13 14:44:10 UTC
1039 +++ conf/mime.convs.in
1041 # PostScript filters
1044 -application/postscript application/vnd.cups-postscript 66 pstops
1045 +application/postscript application/vnd.cups-postscript 65 pstops
1047 ########################################################################
1051 [FILE:3454:patches/patch-configure]
1052 --- configure.orig 2019-12-13 14:44:10 UTC
1054 @@ -5691,7 +5691,7 @@ fi
1057 case $host_os_name in
1059 + darwin* | *bsd* | dragonfly* | solaris*)
1063 @@ -5775,7 +5775,6 @@ fi
1069 DBUS_NOTIFIERLIBS=""
1071 @@ -6358,7 +6357,7 @@ _ACEOF
1073 if test "$localedir" = "\${datarootdir}/locale"; then
1074 case "$host_os_name" in
1075 - linux* | gnu* | *bsd* | darwin*)
1076 + linux* | gnu* | *bsd* | dragonfly*| darwin* | solaris*)
1077 CUPS_LOCALEDIR="$datarootdir/locale"
1080 @@ -6412,11 +6411,15 @@ _ACEOF
1082 # Server executables...
1083 case "$host_os_name" in
1085 + *bsd* | dragonfly* | darwin* | solaris*)
1086 # *BSD and Darwin (macOS)
1088 CUPS_SERVERBIN="$exec_prefix/libexec/cups"
1091 + INSTALL_SYSV="install-sysv"
1092 + CUPS_SERVERBIN="$exec_prefix/libexec/cups"
1096 INSTALL_SYSV="install-sysv"
1097 @@ -6473,7 +6476,7 @@ fi
1099 if test "$mandir" = "\${prefix}/man" -a "$prefix" = "/"; then
1100 case "$host_os_name" in
1101 - darwin* | linux* | gnu* | *bsd*)
1102 + darwin* | linux* | gnu* | *bsd* | dragonfly* | solaris*)
1103 # Darwin, macOS, Linux, GNU HURD, and *BSD
1104 mandir="/usr/share/man"
1106 @@ -6511,7 +6514,7 @@ if test x$enable_shared != xno; then
1108 DSOFLAGS="$DSOFLAGS -Wl,-h\`basename \$@\` -G"
1110 - linux* | gnu* | *bsd*)
1111 + linux* | gnu* | *bsd* | dragonfly*)
1112 LIBCUPS="lib$cupsbase.so.2"
1113 if test "x$cupsimagebase" != x; then
1114 LIBCUPSIMAGE="lib$cupsimagebase.so.2"
1115 @@ -6585,12 +6588,11 @@ if test "$DSO" != ":"; then
1116 EXPORT_LDFLAGS="-R$libdir"
1120 + *bsd* | dragonfly*)
1122 if test $exec_prefix != /usr; then
1123 DSOFLAGS="-Wl,-R$libdir $DSOFLAGS"
1124 LDFLAGS="$LDFLAGS -Wl,-R$libdir"
1125 - EXPORT_LDFLAGS="-Wl,-R$libdir"
1129 @@ -6806,13 +6808,13 @@ if test -n "$GCC"; then
1130 OPTIM="-fPIC $OPTIM"
1133 - # The -fstack-protector option is available with some versions of
1134 + # The option is available with some versions of
1135 # GCC and adds "stack canaries" which detect when the return address
1136 # has been overwritten, preventing many types of exploit attacks.
1137 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler supports -fstack-protector" >&5
1138 -$as_echo_n "checking whether compiler supports -fstack-protector... " >&6; }
1139 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether compiler supports " >&5
1140 +$as_echo_n "checking whether compiler supports ... " >&6; }
1142 - CFLAGS="$CFLAGS -fstack-protector"
1144 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1145 /* end confdefs.h. */
1147 @@ -6829,7 +6831,7 @@ if ac_fn_c_try_link "$LINENO"; then :
1148 # Can't use stack-protector with LSB binaries...
1149 OPTIM="$OPTIM -fno-stack-protector"
1151 - OPTIM="$OPTIM -fstack-protector"
1154 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
1155 $as_echo "yes" >&6; }
1156 @@ -8562,13 +8564,7 @@ fi
1160 - # Find the PAM configuration directory, if any...
1161 - for dir in /private/etc/pam.d /etc/pam.d; do
1162 - if test -d $dir; then
1167 + PAMDIR=/raven/etc/pam.d
1173 [FILE:487:patches/patch-cups_getifaddrs-internal.h]
1174 --- cups/getifaddrs-internal.h.orig 2019-12-13 14:44:10 UTC
1175 +++ cups/getifaddrs-internal.h
1177 # define CUPS_SOCAST
1178 # endif /* _WIN32 */
1180 +# if defined(__DragonFly__) || defined(__FreeBSD__)
1181 +# include <netinet/in.h>
1184 +# if !defined(_WIN32) && !defined(HAVE_GETIFADDRS)
1185 +# include <cups/versioning.h>
1188 # if defined(__APPLE__) && !defined(_SOCKLEN_T)
1190 * macOS 10.2.x does not define socklen_t, and in fact uses an int instead of
1193 [FILE:775:patches/patch-scheduler_auth.c]
1194 --- scheduler/auth.c.orig 2019-12-13 14:44:10 UTC
1195 +++ scheduler/auth.c
1196 @@ -441,7 +441,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I
1198 peersize = sizeof(peercred);
1201 +# if defined(__APPLE__) || defined(__FreeBSD__)
1202 if (getsockopt(httpGetFd(con->http), 0, LOCAL_PEERCRED, &peercred, &peersize))
1204 if (getsockopt(httpGetFd(con->http), SOL_SOCKET, SO_PEERCRED, &peercred, &peersize))
1205 @@ -839,7 +839,7 @@ cupsdAuthorize(cupsd_client_t *con) /* I
1207 peersize = sizeof(peercred);
1210 +# if defined(__APPLE__) || defined(__FreeBSD__)
1211 if (getsockopt(httpGetFd(con->http), 0, LOCAL_PEERCRED, &peercred, &peersize))
1213 if (getsockopt(httpGetFd(con->http), SOL_SOCKET, SO_PEERCRED, &peercred,
1216 [FILE:468:patches/patch-scheduler_client.c]
1217 --- scheduler/client.c.orig 2019-12-13 14:44:10 UTC
1218 +++ scheduler/client.c
1219 @@ -3519,8 +3519,8 @@ pipe_command(cupsd_client_t *con, /* I -
1220 * Then execute the command...
1223 - if (cupsdStartProcess(command, argv, envp, infile, fds[1], CGIPipes[1],
1224 - -1, -1, root, DefaultProfile, NULL, &pid) < 0)
1225 + if (!cupsdStartProcess(command, argv, envp, infile, fds[1], CGIPipes[1],
1226 + -1, -1, root, DefaultProfile, NULL, &pid))
1229 * Error - can't fork!
1232 [FILE:683:patches/patch-scheduler_cups-driverd.cxx]
1233 --- scheduler/cups-driverd.cxx.orig 2019-12-13 14:44:10 UTC
1234 +++ scheduler/cups-driverd.cxx
1235 @@ -909,7 +909,7 @@ get_file(const char *name, /* I - Name
1239 -#elif defined(__linux)
1240 +#elif defined(__linux) || defined(__FreeBSD__) || defined(__DragonFly__)
1241 if (!strncmp(name, "lsb/usr/", 8))
1244 @@ -1089,7 +1089,7 @@ list_ppds(int request_id, /* I -
1245 load_ppds("/System/Library/Printers/PPDs/Contents/Resources/en.lproj",
1246 "System/Library/Printers/PPDs/Contents/Resources/en.lproj", 0);
1248 -#elif defined(__linux)
1249 +#elif defined(__linux) || defined(__FreeBSD__) || defined(__DragonFly__)
1251 * Load PPDs from LSB-defined locations...
1255 [FILE:462:patches/patch-scheduler_subscriptions.c]
1256 --- scheduler/subscriptions.c.orig 2019-12-13 14:44:10 UTC
1257 +++ scheduler/subscriptions.c
1258 @@ -1527,8 +1527,8 @@ cupsd_start_notifier(
1259 * Create the notifier process...
1262 - if (cupsdStartProcess(command, argv, envp, fds[0], -1, NotifierPipes[1],
1263 - -1, -1, 0, DefaultProfile, NULL, &pid) < 0)
1264 + if (!cupsdStartProcess(command, argv, envp, fds[0], -1, NotifierPipes[1],
1265 + -1, -1, 0, DefaultProfile, NULL, &pid))
1268 * Error - can't fork!
1271 [FILE:118:files/cups]
1272 # $FreeBSD: head/print/cups/files/cups 410825 2016-03-11 11:53:42Z tijl $
1275 account include system
1278 [FILE:318:files/cups.conf.sample]
1279 # Allow members of group cups to access generic USB printer devices
1282 match "system" "USB";
1283 match "subsystem" "INTERFACE";
1284 match "type" "ATTACH";
1285 match "intclass" "0x07";
1286 match "intsubclass" "0x01";
1287 match "intprotocol" "(0x01|0x02|0x03)";
1288 action "chgrp cups /dev/$cdev; chmod g+rw /dev/$cdev";
1292 [FILE:435:files/cupsd.in]
1296 # REQUIRE: DAEMON dbus
1299 # Add the following to /etc/rc.conf[.local] to enable this service
1301 # cupsd_enable="YES"
1307 rcvar="cupsd_enable"
1309 start_precmd="${name}_prestart"
1311 command="%%PREFIX%%/sbin/cupsd"
1312 extra_commands="reload"
1316 if [ -n "$TZ" ]; then
1321 load_rc_config ${name}
1323 : ${cupsd_enable=NO}