Index: head/print/hplip-plugin/Makefile =================================================================== --- head/print/hplip-plugin/Makefile +++ head/print/hplip-plugin/Makefile @@ -2,8 +2,7 @@ # $FreeBSD$ PORTNAME= hplip-plugin -PORTVERSION= 3.16.2 -PORTREVISION= 3 +PORTVERSION= 3.16.8 CATEGORIES= print MASTER_SITES= http://hplipopensource.com/hplip-web/plugin/ DISTNAME= hplip-${DISTVERSION}-plugin @@ -14,8 +13,8 @@ LICENSE= HPLIP_PLUGIN LICENSE_NAME= HPLIP Driver Plug-in License -LICENSE_PERMS= none LICENSE_FILE= ${WRKSRC}/license.txt +LICENSE_PERMS= none RUN_DEPENDS= hp-plugin:print/hplip Index: head/print/hplip-plugin/distinfo =================================================================== --- head/print/hplip-plugin/distinfo +++ head/print/hplip-plugin/distinfo @@ -1,2 +1,3 @@ -SHA256 (hplip-3.16.2-plugin.run) = 47202db87a7092bc8dbeab0843ab1cd4923a835a20401c538978a3360a372326 -SIZE (hplip-3.16.2-plugin.run) = 2084269 +TIMESTAMP = 1473246184 +SHA256 (hplip-3.16.8-plugin.run) = dd0b67fc1958bcf30c7ec7cb013d36d8071db6f78cc531e2169d139ba29117eb +SIZE (hplip-3.16.8-plugin.run) = 2087862 Index: head/print/hplip/Makefile =================================================================== --- head/print/hplip/Makefile +++ head/print/hplip/Makefile @@ -2,14 +2,17 @@ # $FreeBSD$ PORTNAME= hplip -PORTVERSION= 3.16.2 -PORTREVISION= 2 +PORTVERSION= 3.16.8 CATEGORIES= print MASTER_SITES= SF MAINTAINER= makc@FreeBSD.org COMMENT= Drivers and utilities for HP Printers and All-in-One devices +LICENSE= GPLv2 MIT BSD3CLAUSE +LICENSE_COMB= multi +LICENSE_FILES= ${WRKSRC}/COPYING + LIB_DEPENDS= libcupsimage.so:print/cups \ libdbus-1.so:devel/dbus RUN_DEPENDS= ${LOCALBASE}/libexec/cups/filter/gstoraster:print/cups-filters \ @@ -71,7 +74,7 @@ FAX_CONFIGURE_ENABLE= fax-build SNMP_DESC= Network/JetDirect support -SNMP_USE= OPENSSL=yes +SNMP_USES= ssl SNMP_LIB_DEPENDS= libnetsnmp.so:net-mgmt/net-snmp SNMP_CONFIGURE_ENABLE= network-build @@ -124,5 +127,11 @@ post-install: ${MV} ${STAGEDIR}${PREFIX}/etc/hp/hplip.conf \ ${STAGEDIR}${PREFIX}/etc/hp/hplip.conf.sample + ${MKDIR} ${STAGEDIR}${DATADIR}/ui4/plugins + ${MKDIR} ${STAGEDIR}/var/lib/hp + ${MKDIR} ${STAGEDIR}/var/lib +post-install-SCAN-on: + ${MKDIR} ${STAGEDIR}${PREFIX}/etc/sane.d/dll.d + ${MV} ${STAGEDIR}${PREFIX}/etc/sane.d/dll.conf ${STAGEDIR}${PREFIX}/etc/sane.d/dll.d/hpaio .include Index: head/print/hplip/distinfo =================================================================== --- head/print/hplip/distinfo +++ head/print/hplip/distinfo @@ -1,2 +1,3 @@ -SHA256 (hplip-3.16.2.tar.gz) = f2c845a9d48a8ba2b74ccae21e29829abc929dc6c74e2b5b19df01ea577ed4d9 -SIZE (hplip-3.16.2.tar.gz) = 22285808 +TIMESTAMP = 1473246182 +SHA256 (hplip-3.16.8.tar.gz) = a9da67ae51c17487a8d725eb9c0bf9c6f0416e1fffa7db6cdff5302b1c556ceb +SIZE (hplip-3.16.8.tar.gz) = 22942175 Index: head/print/hplip/files/patch-installer__dcheck.py =================================================================== --- head/print/hplip/files/patch-installer__dcheck.py +++ head/print/hplip/files/patch-installer__dcheck.py @@ -1,24 +0,0 @@ ---- installer/dcheck.py.orig 2013-02-21 18:40:18.368768559 -0800 -+++ installer/dcheck.py 2013-02-21 18:43:03.116783408 -0800 -@@ -46,7 +46,11 @@ - def update_ld_output(): - # For library checks - global ld_output -- status, ld_output = utils.run('%s -p' % os.path.join(utils.which('ldconfig'), 'ldconfig'), log_output=False) -+ if sys.platform.startswith('freebsd'): -+ ld_cmd = '%s -r' -+ else: # linux -+ ld_cmd = '%s -p' -+ status, ld_output = utils.run(ld_cmd % os.path.join(utils.which('ldconfig'), 'ldconfig'), log_output=False) - - if status != 0: - log.debug("ldconfig failed.") -@@ -360,6 +364,8 @@ - except ImportError: - return '-' - else: -+ if sys.platform.startswith('freebsd'): -+ return '-' - # LIBC = ctypes.CDLL(ctypes.util.find_library('c'), use_errno=True) - LIBC = ctypes.CDLL(ctypes.util.find_library('c'),ctypes.DEFAULT_MODE,None, True) - LIBC.gnu_get_libc_version.restype = ctypes.c_char_p Index: head/print/hplip/files/patch-installer_dcheck.py =================================================================== --- head/print/hplip/files/patch-installer_dcheck.py +++ head/print/hplip/files/patch-installer_dcheck.py @@ -0,0 +1,24 @@ +--- installer/dcheck.py.orig 2016-08-26 10:05:26 UTC ++++ installer/dcheck.py +@@ -48,7 +48,11 @@ mod_output = '' + def update_ld_output(): + # For library checks + global ld_output +- status, ld_output = utils.run('%s -p' % os.path.join(utils.which('ldconfig'), 'ldconfig'), log_output=False) ++ if sys.platform.startswith('freebsd'): ++ ld_cmd = '%s -r' ++ else: # linux ++ ld_cmd = '%s -p' ++ status, ld_output = utils.run(ld_cmd % os.path.join(utils.which('ldconfig'), 'ldconfig'), log_output=False) + + if status != 0: + log.debug("ldconfig failed.") +@@ -378,6 +382,8 @@ def get_libpthread_version(): + except ImportError: + return '-' + else: ++ if sys.platform.startswith('freebsd'): ++ return '-' + # LIBC = ctypes.CDLL(ctypes.util.find_library('c'), use_errno=True) + LIBC = ctypes.CDLL(ctypes.util.find_library('c'),ctypes.DEFAULT_MODE,None, True) + LIBC.gnu_get_libc_version.restype = ctypes.c_char_p Index: head/print/hplip/files/patch-io-hpmud-musb.c =================================================================== --- head/print/hplip/files/patch-io-hpmud-musb.c +++ head/print/hplip/files/patch-io-hpmud-musb.c @@ -1,31 +0,0 @@ ---- io/hpmud/musb.c.orig 2016-02-08 09:42:51 UTC -+++ io/hpmud/musb.c -@@ -139,10 +139,16 @@ static int get_string_descriptor(libusb_ - 0x409, - tbuf, sizeof(tbuf), LIBUSB_CONTROL_REQ_TIMEOUT); - -- if (ret==0) -+ if (ret==0 -+#ifdef __FreeBSD__ -+ || ret == -EIO -+#endif -+ ) - { -- /* This retry is necessary for lj1000 and lj1005. des 12/12/07 */ -- BUG("get_string_descriptor zero result, retrying..."); -+ /* This retry is necessary for lj1000 and lj1005. des 12/12/07 -+ Also HP Photosmart 42xx seems to suffer transient errors with serial id */ -+ BUG("get_string_descriptor error result %d, retrying in 2 secs...", ret); -+ sleep(2); - continue; - } - break; -@@ -385,7 +391,7 @@ static int detach(libusb_device_handle * - { - int ret ; - /* If any kernel module has claimed this interface, detach it. */ -- ret = libusb_kernel_driver_active (hd, interface); -+ ret = 0; - DBG("Active kernel driver on interface=%d ret=%d\n", interface, ret); - if (ret == 1) - { Index: head/print/hplip/files/patch-io_hpmud_musb.c =================================================================== --- head/print/hplip/files/patch-io_hpmud_musb.c +++ head/print/hplip/files/patch-io_hpmud_musb.c @@ -0,0 +1,31 @@ +--- io/hpmud/musb.c.orig 2016-08-26 10:05:31 UTC ++++ io/hpmud/musb.c +@@ -139,10 +139,16 @@ static int get_string_descriptor(libusb_ + 0x409, + tbuf, sizeof(tbuf), LIBUSB_CONTROL_REQ_TIMEOUT); + +- if (ret==0) ++ if (ret==0 ++#ifdef __FreeBSD__ ++ || ret == -EIO ++#endif ++ ) + { +- /* This retry is necessary for lj1000 and lj1005. des 12/12/07 */ +- BUG("get_string_descriptor zero result, retrying..."); ++ /* This retry is necessary for lj1000 and lj1005. des 12/12/07 ++ Also HP Photosmart 42xx seems to suffer transient errors with serial id */ ++ BUG("get_string_descriptor error result %d, retrying in 2 secs...", ret); ++ sleep(2); + continue; + } + break; +@@ -385,7 +391,7 @@ static int detach(libusb_device_handle * + { + int ret ; + /* If any kernel module has claimed this interface, detach it. */ +- ret = libusb_kernel_driver_active (hd, interface); ++ ret = 0; + DBG("Active kernel driver on interface=%d ret=%d\n", interface, ret); + if (ret == 1) + { Index: head/print/hplip/files/patch-prnt__hpcups__ErnieFilter.cpp =================================================================== --- head/print/hplip/files/patch-prnt__hpcups__ErnieFilter.cpp +++ head/print/hplip/files/patch-prnt__hpcups__ErnieFilter.cpp @@ -1,12 +0,0 @@ ---- ./prnt/hpcups/ErnieFilter.cpp.orig 2010-02-25 02:04:09.000000000 +0300 -+++ ./prnt/hpcups/ErnieFilter.cpp 2010-04-18 10:49:13.471529924 +0400 -@@ -50,7 +50,8 @@ - #include "ErnieFilter.h" - - --#if defined(__APPLE__) || defined(__linux) || defined(__GLIBC__) || defined(__NetBSD__) -+#if defined(__APPLE__) || defined(__linux) || defined(__GLIBC__) \ -+ || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__DragonFly__) - #include - #endif - Index: head/print/hplip/files/patch-prnt_hpcups_ErnieFilter.cpp =================================================================== --- head/print/hplip/files/patch-prnt_hpcups_ErnieFilter.cpp +++ head/print/hplip/files/patch-prnt_hpcups_ErnieFilter.cpp @@ -0,0 +1,12 @@ +--- prnt/hpcups/ErnieFilter.cpp.orig 2016-08-26 10:03:22 UTC ++++ prnt/hpcups/ErnieFilter.cpp +@@ -50,7 +50,8 @@ + #include "ErnieFilter.h" + + +-#if defined(__APPLE__) || defined(__linux) || defined(__GLIBC__) || defined(__NetBSD__) ++#if defined(__APPLE__) || defined(__linux) || defined(__GLIBC__) \ ++ || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__DragonFly__) + #include + #endif + Index: head/print/hplip/files/patch-protocol-discovery-mdns.c =================================================================== --- head/print/hplip/files/patch-protocol-discovery-mdns.c +++ head/print/hplip/files/patch-protocol-discovery-mdns.c @@ -1,27 +0,0 @@ ---- protocol/discovery/mdns.c.orig 2016-02-08 09:43:19 UTC -+++ protocol/discovery/mdns.c -@@ -24,7 +24,11 @@ - Author: Sanjay Kumar - \*****************************************************************************/ - --//#include -+#include -+#include -+#include -+#include -+#include - #include - #include - #include -@@ -89,6 +93,11 @@ static int mdns_open_socket(int *psocket - BUG("unable to setsockopt: %m\n"); - goto bugout; - } -+ if (setsockopt(udp_socket, SOL_SOCKET, SO_REUSEPORT, &yes, sizeof(yes)) == -1) -+ { -+ BUG("unable to setsockopt: %m\n"); -+ goto bugout; -+ } - - /* Bind the socket to port and IP equal to INADDR_ANY. */ - bzero(&recv_addr, sizeof(recv_addr)); Index: head/print/hplip/files/patch-protocol_discovery_mdns.c =================================================================== --- head/print/hplip/files/patch-protocol_discovery_mdns.c +++ head/print/hplip/files/patch-protocol_discovery_mdns.c @@ -0,0 +1,27 @@ +--- protocol/discovery/mdns.c.orig 2016-08-26 10:04:47 UTC ++++ protocol/discovery/mdns.c +@@ -24,7 +24,11 @@ + Author: Sanjay Kumar + \*****************************************************************************/ + +-//#include ++#include ++#include ++#include ++#include ++#include + #include + #include + #include +@@ -89,6 +93,11 @@ static int mdns_open_socket(int *psocket + BUG("unable to setsockopt: %m\n"); + goto bugout; + } ++ if (setsockopt(udp_socket, SOL_SOCKET, SO_REUSEPORT, &yes, sizeof(yes)) == -1) ++ { ++ BUG("unable to setsockopt: %m\n"); ++ goto bugout; ++ } + + /* Bind the socket to port and IP equal to INADDR_ANY. */ + bzero(&recv_addr, sizeof(recv_addr)); Index: head/print/hplip/pkg-plist =================================================================== --- head/print/hplip/pkg-plist +++ head/print/hplip/pkg-plist @@ -35,7 +35,7 @@ bin/hp-upgrade bin/hp-wificonfig @sample etc/hp/hplip.conf.sample -@comment etc/sane.d/dll.conf +%%SCAN%%etc/sane.d/dll.d/hpaio %%X11%%etc/xdg/autostart/hplip-systray.desktop %%SNMP%%lib/libhpdiscovery.so %%SNMP%%lib/libhpdiscovery.so.0 @@ -713,6 +713,7 @@ share/ppd/HP/hp-color_laserjet_mfp_m680-ps.ppd.gz share/ppd/HP/hp-color_laserjet_pro_m252-ps.ppd.gz share/ppd/HP/hp-color_laserjet_pro_mfp_m277-ps.ppd.gz +share/ppd/HP/hp-color_laserjet_pro_mfp_m377-ps.ppd.gz share/ppd/HP/hp-color_laserjet_pro_mfp_m476-ps.ppd.gz share/ppd/HP/hp-color_laserjet_pro_mfp_m477-ps.ppd.gz share/ppd/HP/hp-color_laserjet_pro_mfp_m477d-ps.ppd.gz @@ -873,6 +874,8 @@ share/ppd/HP/hp-laserjet_pro_m201_m202-ps.ppd.gz share/ppd/HP/hp-laserjet_pro_m402_m403-ps.ppd.gz share/ppd/HP/hp-laserjet_pro_m402_m403d-ps.ppd.gz +share/ppd/HP/hp-laserjet_pro_m501dn-ps.ppd.gz +share/ppd/HP/hp-laserjet_pro_m501n-ps.ppd.gz share/ppd/HP/hp-laserjet_pro_m701-ps.ppd.gz share/ppd/HP/hp-laserjet_pro_m706-ps.ppd.gz share/ppd/HP/hp-laserjet_pro_mfp_m225_m226-ps.ppd.gz @@ -889,8 +892,18 @@ share/ppd/HP/hp-officejet_pro_476_576_series-ps.ppd.gz share/ppd/HP/hp-officejet_pro_551_series-ps.ppd.gz share/ppd/HP/hp-officejet_pro_8000_enterprise_a811a-ps.ppd.gz +share/ppd/HP/hp-officejet_pro_8210-ps.ppd.gz +share/ppd/HP/hp-officejet_pro_8730-ps.ppd.gz +share/ppd/HP/hp-officejet_pro_8740-ps.ppd.gz +share/ppd/HP/hp-pagewide_color_556-ps.ppd.gz +share/ppd/HP/hp-pagewide_color_flow_mfp_586-ps.ppd.gz +share/ppd/HP/hp-pagewide_color_mfp_586-ps.ppd.gz +share/ppd/HP/hp-pagewide_mfp_p57750-ps.ppd.gz +share/ppd/HP/hp-pagewide_p55250-ps.ppd.gz +share/ppd/HP/hp-pagewide_pro_452_printer-ps.ppd.gz +share/ppd/HP/hp-pagewide_pro_477_mfp-ps.ppd.gz +share/ppd/HP/hp-pagewide_pro_552_printer-ps.ppd.gz +share/ppd/HP/hp-pagewide_pro_577_mfp-ps.ppd.gz %%X11%%@dir %%DATADIR%%/ui4/plugins @dir /var/lib/hp @dir /var/lib -%%SCAN%%@exec if ! grep ^hpaio %%LOCALBASE%%/etc/sane.d/dll.conf >/dev/null 2>/dev/null ; then echo hpaio >> %%LOCALBASE%%/etc/sane.d/dll.conf; fi -%%SCAN%%@unexec sed -i "" -e '/^hpaio$/d' %%LOCALBASE%%/etc/sane.d/dll.conf