Date: Wednesday, December 9, 2020 @ 15:47:00 Author: andyrtr Revision: 403208
archrelease: copy trunk to extra-x86_64 Added: hplip/repos/extra-x86_64/0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch (from rev 403207, hplip/trunk/0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch) hplip/repos/extra-x86_64/0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch (from rev 403207, hplip/trunk/0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch) hplip/repos/extra-x86_64/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch (from rev 403207, hplip/trunk/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch) hplip/repos/extra-x86_64/PKGBUILD (from rev 403207, hplip/trunk/PKGBUILD) hplip/repos/extra-x86_64/disable_upgrade.patch (from rev 403207, hplip/trunk/disable_upgrade.patch) hplip/repos/extra-x86_64/hplip-configure-python.patch (from rev 403207, hplip/trunk/hplip-configure-python.patch) hplip/repos/extra-x86_64/hplip-thread-isalive-removed.patch (from rev 403207, hplip/trunk/hplip-thread-isalive-removed.patch) hplip/repos/extra-x86_64/python3.diff (from rev 403207, hplip/trunk/python3.diff) hplip/repos/extra-x86_64/reproducible-gzip.patch (from rev 403207, hplip/trunk/reproducible-gzip.patch) Deleted: hplip/repos/extra-x86_64/0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch hplip/repos/extra-x86_64/0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch hplip/repos/extra-x86_64/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch hplip/repos/extra-x86_64/PKGBUILD hplip/repos/extra-x86_64/disable_upgrade.patch hplip/repos/extra-x86_64/hplip-configure-python.patch hplip/repos/extra-x86_64/python3.diff hplip/repos/extra-x86_64/reproducible-gzip.patch -----------------------------------------------------------------+ 0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch | 100 +-- 0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch | 58 - 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch | 226 +++---- PKGBUILD | 222 +++---- disable_upgrade.patch | 28 hplip-configure-python.patch | 104 +-- hplip-thread-isalive-removed.patch | 93 +++ python3.diff | 294 +++++----- reproducible-gzip.patch | 76 +- 9 files changed, 649 insertions(+), 552 deletions(-) Deleted: 0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch =================================================================== --- 0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch 2020-12-09 15:46:45 UTC (rev 403207) +++ 0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -1,50 +0,0 @@ -From b3a7fa4d4a573cfe0073ae50197f679af7e3a0ac Mon Sep 17 00:00:00 2001 -From: Till Kamppeter <till.kamppe...@canonical.com> -Date: Sat, 24 Sep 2016 10:37:20 +0200 -Subject: Add 'include <cups/ppd.h>' in various places as CUPS 2.2 moved some - definitions to ppd.h - ---- - configure.in | 2 +- - prnt/hpcups/HPCupsFilter.h | 2 ++ - prnt/hpijs/hpcupsfax.cpp | 1 + - 3 files changed, 4 insertions(+), 1 deletion(-) - -diff --git a/configure.in b/configure.in -index d3a1ddb..eabe14a 100755 ---- a/configure.in -+++ b/configure.in -@@ -554,7 +554,7 @@ fi - - if test "$hpijs_only_build" = "no" && test "$hpcups_only_build" = "no"; then - AC_CHECK_LIB([cups], [cupsDoFileRequest], [LIBS="$LIBS"], [AC_MSG_ERROR([cannot find libcups support], 9)]) -- AC_CHECK_HEADERS(cups/cups.h, ,[AC_MSG_ERROR([cannot find cups-devel support], 3)]) -+ AC_CHECK_HEADERS(cups/cups.h cups/ppd.h, ,[AC_MSG_ERROR([cannot find cups-devel support], 3)]) - if test "$libusb01_build" = "yes"; then - AC_CHECK_LIB([usb], [usb_init], [LIBS="$LIBS"], [AC_MSG_ERROR([cannot find libusb support], 2)]) - AC_CHECK_HEADERS(usb.h, ,[AC_MSG_ERROR([cannot find libusb-devel support], 11)]) -diff --git a/prnt/hpcups/HPCupsFilter.h b/prnt/hpcups/HPCupsFilter.h -index ff5548e..c517989 100644 ---- a/prnt/hpcups/HPCupsFilter.h -+++ b/prnt/hpcups/HPCupsFilter.h -@@ -38,6 +38,8 @@ - - #include "dbuscomm.h" - -+#include <cups/ppd.h> -+ - #define DBITMAPFILEHEADER 14 - #define DBITMAPINFOHEADER 40 - -diff --git a/prnt/hpijs/hpcupsfax.cpp b/prnt/hpijs/hpcupsfax.cpp -index 8514775..994e50f 100644 ---- a/prnt/hpijs/hpcupsfax.cpp -+++ b/prnt/hpijs/hpcupsfax.cpp -@@ -43,6 +43,7 @@ - #include <arpa/inet.h> - #include <math.h> - #include <cups/cups.h> -+#include <cups/ppd.h> - #include <cups/raster.h> - #include <string> - #ifdef FALSE Copied: hplip/repos/extra-x86_64/0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch (from rev 403207, hplip/trunk/0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch) =================================================================== --- 0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch (rev 0) +++ 0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -0,0 +1,50 @@ +From b3a7fa4d4a573cfe0073ae50197f679af7e3a0ac Mon Sep 17 00:00:00 2001 +From: Till Kamppeter <till.kamppe...@canonical.com> +Date: Sat, 24 Sep 2016 10:37:20 +0200 +Subject: Add 'include <cups/ppd.h>' in various places as CUPS 2.2 moved some + definitions to ppd.h + +--- + configure.in | 2 +- + prnt/hpcups/HPCupsFilter.h | 2 ++ + prnt/hpijs/hpcupsfax.cpp | 1 + + 3 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/configure.in b/configure.in +index d3a1ddb..eabe14a 100755 +--- a/configure.in ++++ b/configure.in +@@ -554,7 +554,7 @@ fi + + if test "$hpijs_only_build" = "no" && test "$hpcups_only_build" = "no"; then + AC_CHECK_LIB([cups], [cupsDoFileRequest], [LIBS="$LIBS"], [AC_MSG_ERROR([cannot find libcups support], 9)]) +- AC_CHECK_HEADERS(cups/cups.h, ,[AC_MSG_ERROR([cannot find cups-devel support], 3)]) ++ AC_CHECK_HEADERS(cups/cups.h cups/ppd.h, ,[AC_MSG_ERROR([cannot find cups-devel support], 3)]) + if test "$libusb01_build" = "yes"; then + AC_CHECK_LIB([usb], [usb_init], [LIBS="$LIBS"], [AC_MSG_ERROR([cannot find libusb support], 2)]) + AC_CHECK_HEADERS(usb.h, ,[AC_MSG_ERROR([cannot find libusb-devel support], 11)]) +diff --git a/prnt/hpcups/HPCupsFilter.h b/prnt/hpcups/HPCupsFilter.h +index ff5548e..c517989 100644 +--- a/prnt/hpcups/HPCupsFilter.h ++++ b/prnt/hpcups/HPCupsFilter.h +@@ -38,6 +38,8 @@ + + #include "dbuscomm.h" + ++#include <cups/ppd.h> ++ + #define DBITMAPFILEHEADER 14 + #define DBITMAPINFOHEADER 40 + +diff --git a/prnt/hpijs/hpcupsfax.cpp b/prnt/hpijs/hpcupsfax.cpp +index 8514775..994e50f 100644 +--- a/prnt/hpijs/hpcupsfax.cpp ++++ b/prnt/hpijs/hpcupsfax.cpp +@@ -43,6 +43,7 @@ + #include <arpa/inet.h> + #include <math.h> + #include <cups/cups.h> ++#include <cups/ppd.h> + #include <cups/raster.h> + #include <string> + #ifdef FALSE Deleted: 0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch =================================================================== --- 0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch 2020-12-09 15:46:45 UTC (rev 403207) +++ 0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -1,29 +0,0 @@ -From 04b5a1ddac1dd90c5a392f23aaf7df42eae32918 Mon Sep 17 00:00:00 2001 -From: Gaurav Sood <gaurav-s...@invalid-email.launchpad.net> -Date: Thu, 4 May 2017 18:32:08 +0200 -Subject: Fix handling of unicode filenames in sixext.py - -LP: #1480152 -Closes: #861731 ---- - base/sixext.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/base/sixext.py b/base/sixext.py -index 0bf4fc4f4..311bf72c6 100644 ---- a/base/sixext.py -+++ b/base/sixext.py -@@ -110,11 +110,11 @@ if PY3: - - - def to_string_utf8(s): -- return s.decode("utf-8") -+ return s.decode("utf-8", 'ignore') - - - def to_string_latin(s): -- return s.decode("latin-1") -+ return s.decode("latin-1", 'ignore') - - - def to_unicode(s, enc=None): Copied: hplip/repos/extra-x86_64/0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch (from rev 403207, hplip/trunk/0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch) =================================================================== --- 0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch (rev 0) +++ 0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -0,0 +1,29 @@ +From 04b5a1ddac1dd90c5a392f23aaf7df42eae32918 Mon Sep 17 00:00:00 2001 +From: Gaurav Sood <gaurav-s...@invalid-email.launchpad.net> +Date: Thu, 4 May 2017 18:32:08 +0200 +Subject: Fix handling of unicode filenames in sixext.py + +LP: #1480152 +Closes: #861731 +--- + base/sixext.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/base/sixext.py b/base/sixext.py +index 0bf4fc4f4..311bf72c6 100644 +--- a/base/sixext.py ++++ b/base/sixext.py +@@ -110,11 +110,11 @@ if PY3: + + + def to_string_utf8(s): +- return s.decode("utf-8") ++ return s.decode("utf-8", 'ignore') + + + def to_string_latin(s): +- return s.decode("latin-1") ++ return s.decode("latin-1", 'ignore') + + + def to_unicode(s, enc=None): Deleted: 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch =================================================================== --- 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch 2020-12-09 15:46:45 UTC (rev 403207) +++ 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -1,113 +0,0 @@ -From fa9c0cf1a5db9bf8880b4796d5e3e0da46534e3d Mon Sep 17 00:00:00 2001 -From: Didier Raboud <o...@debian.org> -Date: Tue, 21 Aug 2018 18:18:10 +0200 -Subject: Remove all ImageProcessor functionality, which is closed-source - ---- - Makefile.am | 14 ++------------ - prnt/hpcups/HPCupsFilter.cpp | 21 --------------------- - 2 files changed, 2 insertions(+), 33 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index 1b097c4f9..8d5d78c9f 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -166,7 +166,7 @@ if !HPLIP_CLASS_DRIVER - dist_hplip_SCRIPTS = hpssd.py __init__.py hpdio.py - endif #HPLIP_CLASS_DRIVER - --dist_noinst_DATA += prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template prnt/hpcups/libImageProcessor-x86_64.so prnt/hpcups/libImageProcessor-x86_32.so -+dist_noinst_DATA += prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template - dist_noinst_SCRIPTS += dat2drv.py install.py hplip-install init-suse-firewall init-iptables-firewall class_rpm_build.sh hplipclassdriver.spec createPPD.sh Makefile_dat2drv hpijs-drv - - if !HPLIP_CLASS_DRIVER -@@ -594,7 +594,7 @@ hpcups_SOURCES = prnt/hpcups/HPCupsFilter.cpp prnt/hpcups/HPCupsFilter.h prnt/hp - prnt/hpcups/ImageProcessor.h - - hpcups_CXXFLAGS = $(APDK_ENDIAN_FLAG) $(DBUS_CFLAGS) --hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lImageProcessor -lcups -lcupsimage -lz $(DBUS_LIBS) -+hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lcups -lcupsimage -lz $(DBUS_LIBS) - #else - #hpcupsdir = $(cupsfilterdir) - #hpcups_PROGRAMS = hpcups -@@ -686,16 +686,6 @@ endif #HPLIP_CLASS_DRIVER - - install-data-hook: - if HPLIP_BUILD -- if [ \( "$(UNAME)" = "x86_64" -a -d "$(libdir)/" \) ]; then \ -- cp prnt/hpcups/libImageProcessor-x86_64.so $(libdir)/ ; \ -- chmod 775 $(libdir)/libImageProcessor-x86_64.so ; \ -- ln -sf $(libdir)/libImageProcessor-x86_64.so $(libdir)/libImageProcessor.so ; \ -- fi; \ -- if [ \( \( "$(UNAME)" = "i686" -o "$(UNAME)" = "i386" \) -a -d "$(libdir)/" \) ]; then \ -- cp prnt/hpcups/libImageProcessor-x86_32.so $(libdir)/ ; \ -- chmod 775 $(libdir)/libImageProcessor-x86_32.so ; \ -- ln -sf $(libdir)/libImageProcessor-x86_32.so $(libdir)/libImageProcessor.so ; \ -- fi - if !HPLIP_CLASS_DRIVER - # If scanner build, add hpaio entry to sane dll.conf. - if [ "$(scan_build)" = "yes" ]; then \ -diff --git a/prnt/hpcups/HPCupsFilter.cpp b/prnt/hpcups/HPCupsFilter.cpp -index 5b282d83f..0bacfafac 100644 ---- a/prnt/hpcups/HPCupsFilter.cpp -+++ b/prnt/hpcups/HPCupsFilter.cpp -@@ -31,7 +31,6 @@ - \*****************************************************************************/ - - #include "HPCupsFilter.h" --#include "ImageProcessor.h" - - #include <signal.h> - #include <sys/wait.h> -@@ -637,16 +636,10 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) - - - sprintf(hpPreProcessedRasterFile, "%s/hp_%s_cups_SwapedPagesXXXXXX",CUPS_TMP_DIR, m_JA.user_name); -- image_processor_t* imageProcessor = imageProcessorCreate(); - - while (cupsRasterReadHeader2(cups_raster, &cups_header)) - { - -- IMAGE_PROCESSOR_ERROR result = imageProcessorStartPage(imageProcessor, &cups_header); -- if (result != IPE_SUCCESS){ -- dbglog("DEBUG: imageProcessorStartPage failed result = %d\n", result); -- } -- - current_page_number++; - - if (current_page_number == 1) { -@@ -745,12 +738,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) - color_raster = rgbRaster; - black_raster = kRaster; - -- result = imageProcessorProcessLine(imageProcessor, m_pPrinterBuffer, cups_header.cupsBytesPerLine); -- if (result != IPE_SUCCESS){ -- dbglog("DEBUG: imageProcessorProcessLine failed result = %d\n", result); -- } -- -- - if ((y == 0) && !is_ljmono) { - //For ljmono, make sure that first line is not a blankRaster line.Otherwise printer - //may not skip blank lines before actual data -@@ -780,12 +767,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) - } - } // for() loop end - -- result = imageProcessorEndPage(imageProcessor); -- if (result != IPE_SUCCESS){ -- dbglog("DEBUG: imageProcessorEndPage failed result = %d\n", result); -- } -- -- - m_Job.NewPage(); - if (err != NO_ERROR) { - break; -@@ -800,8 +781,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) - rgbRaster = NULL; - } - -- imageProcessorDestroy(imageProcessor); -- - unlink(hpPreProcessedRasterFile); - return ret_status; - } Copied: hplip/repos/extra-x86_64/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch (from rev 403207, hplip/trunk/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch) =================================================================== --- 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch (rev 0) +++ 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -0,0 +1,113 @@ +From fa9c0cf1a5db9bf8880b4796d5e3e0da46534e3d Mon Sep 17 00:00:00 2001 +From: Didier Raboud <o...@debian.org> +Date: Tue, 21 Aug 2018 18:18:10 +0200 +Subject: Remove all ImageProcessor functionality, which is closed-source + +--- + Makefile.am | 14 ++------------ + prnt/hpcups/HPCupsFilter.cpp | 21 --------------------- + 2 files changed, 2 insertions(+), 33 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 1b097c4f9..8d5d78c9f 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -166,7 +166,7 @@ if !HPLIP_CLASS_DRIVER + dist_hplip_SCRIPTS = hpssd.py __init__.py hpdio.py + endif #HPLIP_CLASS_DRIVER + +-dist_noinst_DATA += prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template prnt/hpcups/libImageProcessor-x86_64.so prnt/hpcups/libImageProcessor-x86_32.so ++dist_noinst_DATA += prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template + dist_noinst_SCRIPTS += dat2drv.py install.py hplip-install init-suse-firewall init-iptables-firewall class_rpm_build.sh hplipclassdriver.spec createPPD.sh Makefile_dat2drv hpijs-drv + + if !HPLIP_CLASS_DRIVER +@@ -594,7 +594,7 @@ hpcups_SOURCES = prnt/hpcups/HPCupsFilter.cpp prnt/hpcups/HPCupsFilter.h prnt/hp + prnt/hpcups/ImageProcessor.h + + hpcups_CXXFLAGS = $(APDK_ENDIAN_FLAG) $(DBUS_CFLAGS) +-hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lImageProcessor -lcups -lcupsimage -lz $(DBUS_LIBS) ++hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lcups -lcupsimage -lz $(DBUS_LIBS) + #else + #hpcupsdir = $(cupsfilterdir) + #hpcups_PROGRAMS = hpcups +@@ -686,16 +686,6 @@ endif #HPLIP_CLASS_DRIVER + + install-data-hook: + if HPLIP_BUILD +- if [ \( "$(UNAME)" = "x86_64" -a -d "$(libdir)/" \) ]; then \ +- cp prnt/hpcups/libImageProcessor-x86_64.so $(libdir)/ ; \ +- chmod 775 $(libdir)/libImageProcessor-x86_64.so ; \ +- ln -sf $(libdir)/libImageProcessor-x86_64.so $(libdir)/libImageProcessor.so ; \ +- fi; \ +- if [ \( \( "$(UNAME)" = "i686" -o "$(UNAME)" = "i386" \) -a -d "$(libdir)/" \) ]; then \ +- cp prnt/hpcups/libImageProcessor-x86_32.so $(libdir)/ ; \ +- chmod 775 $(libdir)/libImageProcessor-x86_32.so ; \ +- ln -sf $(libdir)/libImageProcessor-x86_32.so $(libdir)/libImageProcessor.so ; \ +- fi + if !HPLIP_CLASS_DRIVER + # If scanner build, add hpaio entry to sane dll.conf. + if [ "$(scan_build)" = "yes" ]; then \ +diff --git a/prnt/hpcups/HPCupsFilter.cpp b/prnt/hpcups/HPCupsFilter.cpp +index 5b282d83f..0bacfafac 100644 +--- a/prnt/hpcups/HPCupsFilter.cpp ++++ b/prnt/hpcups/HPCupsFilter.cpp +@@ -31,7 +31,6 @@ + \*****************************************************************************/ + + #include "HPCupsFilter.h" +-#include "ImageProcessor.h" + + #include <signal.h> + #include <sys/wait.h> +@@ -637,16 +636,10 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) + + + sprintf(hpPreProcessedRasterFile, "%s/hp_%s_cups_SwapedPagesXXXXXX",CUPS_TMP_DIR, m_JA.user_name); +- image_processor_t* imageProcessor = imageProcessorCreate(); + + while (cupsRasterReadHeader2(cups_raster, &cups_header)) + { + +- IMAGE_PROCESSOR_ERROR result = imageProcessorStartPage(imageProcessor, &cups_header); +- if (result != IPE_SUCCESS){ +- dbglog("DEBUG: imageProcessorStartPage failed result = %d\n", result); +- } +- + current_page_number++; + + if (current_page_number == 1) { +@@ -745,12 +738,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) + color_raster = rgbRaster; + black_raster = kRaster; + +- result = imageProcessorProcessLine(imageProcessor, m_pPrinterBuffer, cups_header.cupsBytesPerLine); +- if (result != IPE_SUCCESS){ +- dbglog("DEBUG: imageProcessorProcessLine failed result = %d\n", result); +- } +- +- + if ((y == 0) && !is_ljmono) { + //For ljmono, make sure that first line is not a blankRaster line.Otherwise printer + //may not skip blank lines before actual data +@@ -780,12 +767,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) + } + } // for() loop end + +- result = imageProcessorEndPage(imageProcessor); +- if (result != IPE_SUCCESS){ +- dbglog("DEBUG: imageProcessorEndPage failed result = %d\n", result); +- } +- +- + m_Job.NewPage(); + if (err != NO_ERROR) { + break; +@@ -800,8 +781,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) + rgbRaster = NULL; + } + +- imageProcessorDestroy(imageProcessor); +- + unlink(hpPreProcessedRasterFile); + return ret_status; + } Deleted: PKGBUILD =================================================================== --- PKGBUILD 2020-12-09 15:46:45 UTC (rev 403207) +++ PKGBUILD 2020-12-09 15:47:00 UTC (rev 403208) @@ -1,109 +0,0 @@ -# Maintainer: Andreas Radke <andy...@archlinux.org> -# Maintainer: Tom Gundersen <t...@jklm.no> -# Contributor : Rémy Oudompheng <r...@archlinux.org> -# Contributor: Morgan LEFIEUX <com...@archlinuxfr.org> - -pkgname=hplip -pkgver=3.20.11 -pkgrel=1 -epoch=1 -pkgdesc="Drivers for HP DeskJet, OfficeJet, Photosmart, Business Inkjet and some LaserJet" -arch=('x86_64') -url="https://hplipopensource.com" -license=('GPL2' 'custom') -depends=('python-dbus' 'python-distro' 'ghostscript' 'net-snmp' 'foomatic-db-engine' 'python-gobject' 'libxcrypt') -makedepends=('python-pyqt5' 'sane' 'rpcbind' 'cups' 'libusb') -optdepends=('cups: for printing support' - 'sane: for scanner support' - 'xsane: sane scanner frontend' - 'python-pillow: for commandline scanning support' - 'python-reportlab: for pdf output in hp-scan' - 'rpcbind: for network support' - 'python-pyqt5: for running GUI and hp-toolbox' - 'libusb: for advanced usb support' - 'wget: for network support') -# 'hplip-plugin: binary blobs for specific devices (AUR) or run hp-setup to download the plugin' -backup=('etc/hp/hplip.conf' 'etc/sane.d/dll.d/hpaio') -source=(https://downloads.sourceforge.net/${pkgname}/$pkgname-$pkgver.tar.gz{,.asc} - disable_upgrade.patch - 0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch - 0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch - 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch - #https://launchpadlibrarian.net/480406888/hplip-configure-python.patch # no more available - # use the one from Fedora - hplip-configure-python.patch - python3.diff - reproducible-gzip.patch) -sha512sums=('f583fb4140a29c5e21956c3e51fe3620baa65d33b40447af419d7fc61473a1148a1873216a84e89be785b155ee8e9aebd5e3eb19d2ded82b8415b1a35de1b55d' - 'SKIP' - 'ee0bd240568a7dbb4dc6ef64dba28ea84c4bedf7d688d054960c686666f8f0bc4562961c40845107ef0c936e60d3e676bffb2a1ba708039690bb0520cda3a525' - '22aeb5b851f78bc6bc62e0bc3da99fecaf42d7604af41e2f3343f8d3666541f7b06b7d1a7d0ddf24f1731ac7b12dfe582375a98e3b94dfa323d6ce954549ca67' - '763949a0bc460dcc9faefc86f2a91cf342781bfce696ed0c3826758572dd03ac266bbeb7b6a4f9376ac298d7d3c9c4def42d94921a8e1d1695e39396e36d95ff' - '8710e039626878270b8b7bc1569566274d935c84652d758e25ce8fe01c0f44d911148620bb494489e1238201c01f3ba255c19f7dc5c2ff0d45a5f2a79190286b' - '089c102357ea5fd55d81ae76aaff62713f780fd84500c3b92ecd6b2bb11ccdc3a162978548e9a5f9e98a8354a5be3997e416c52daa18eda4621ed79a29d6fea8' - '5885b223f96706bc09a147b5c141d620846c9058563e986983ca2ab90922cabe891a651d90d5004d45549b3874c40f8a1570a8a79e067d66f1826681111c7e82' - '7bad907228b7c2f3c43128f087a2f8e03778760b7a26179ff441c1f60127e2fca08c94dff76baea2469d3a253a8f46b285d0af0f62a6d8738926caf7a10f670b') -validpgpkeys=('4ABA2F66DBD5A95894910E0673D770CDA59047B9') # HPLIP (HP Linux Imaging and Printing) <hp...@hp.com> - -prepare() { - cd "$pkgname"-$pkgver - - # disable insecure update - https://bugs.archlinux.org/task/38083 - patch -Np0 -i "${srcdir}"/disable_upgrade.patch - - # add missing 'include <cups/ppd.h>' at various places - patch -Np1 -i "${srcdir}"/0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch - # fix some handling unicode file names FS#58412 - patch -Np1 -i "${srcdir}"/0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch - # remove binary blob libImageProcessor and all linking - FS#59681 - patch -Np1 -i "${srcdir}"/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch - # Workaround patch for missing Python3 transition of the old - # (pre-USB-storage) photo memory card support (pcardext) - Debian patch - patch -Np1 -i "${srcdir}"/python3.diff - - # https://bugs.launchpad.net/hplip/+bug/1879445 - # broken scanning - https://bugs.archlinux.org/task/66704 - patch -Np1 -i ../hplip-configure-python.patch - - # make gzip creation reproducible by removing the timestamp - patch -Np1 -i ../reproducible-gzip.patch - - export AUTOMAKE='automake --foreign' - autoreconf --force --install -} - -build() { - cd "$pkgname"-$pkgver -# export CFLAGS+=" $(python3-config --includes)" # Fix build with python 3.8 - ./configure --prefix=/usr \ - --enable-qt5 \ - --disable-qt4 \ - --enable-hpcups-install \ - --enable-cups-drv-install \ - --enable-pp-build #--help -sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool - make -} - -package() { - cd "$pkgname"-$pkgver - make -j1 rulesdir=/usr/lib/udev/rules.d DESTDIR="$pkgdir/" install - - # remove config provided by sane and autostart of hp-daemon - rm -rf "$pkgdir"/etc/{sane.d,xdg} - install -dm755 "${pkgdir}"/etc/sane.d/dll.d - echo hpaio > "${pkgdir}"/etc/sane.d/dll.d/hpaio - - # remove HAL .fdi file because HAL is no longer used - rm -vrf "$pkgdir"/usr/share/hal - - # remove rc script - rm -vrf "$pkgdir"/etc/init.d - - # add mixed license file - install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 COPYING - - # Compile Python bytecode: - python -m compileall -d /usr/share "$pkgdir/usr/share" - python -O -m compileall -d /usr/share "$pkgdir/usr/share" -} Copied: hplip/repos/extra-x86_64/PKGBUILD (from rev 403207, hplip/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2020-12-09 15:47:00 UTC (rev 403208) @@ -0,0 +1,113 @@ +# Maintainer: Andreas Radke <andy...@archlinux.org> +# Maintainer: Tom Gundersen <t...@jklm.no> +# Contributor : Rémy Oudompheng <r...@archlinux.org> +# Contributor: Morgan LEFIEUX <com...@archlinuxfr.org> + +pkgname=hplip +pkgver=3.20.11 +pkgrel=2 +epoch=1 +pkgdesc="Drivers for HP DeskJet, OfficeJet, Photosmart, Business Inkjet and some LaserJet" +arch=('x86_64') +url="https://hplipopensource.com" +license=('GPL2' 'custom') +depends=('python-dbus' 'python-distro' 'ghostscript' 'net-snmp' 'foomatic-db-engine' 'python-gobject' 'libxcrypt') +makedepends=('python-pyqt5' 'sane' 'rpcbind' 'cups' 'libusb') +optdepends=('cups: for printing support' + 'sane: for scanner support' + 'xsane: sane scanner frontend' + 'python-pillow: for commandline scanning support' + 'python-reportlab: for pdf output in hp-scan' + 'rpcbind: for network support' + 'python-pyqt5: for running GUI and hp-toolbox' + 'libusb: for advanced usb support' + 'wget: for network support') +# 'hplip-plugin: binary blobs for specific devices (AUR) or run hp-setup to download the plugin' +backup=('etc/hp/hplip.conf' 'etc/sane.d/dll.d/hpaio') +source=(https://downloads.sourceforge.net/${pkgname}/$pkgname-$pkgver.tar.gz{,.asc} + disable_upgrade.patch + 0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch + 0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch + 0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch + #https://launchpadlibrarian.net/480406888/hplip-configure-python.patch # no more available + # use the one from Fedora + hplip-configure-python.patch + python3.diff + hplip-thread-isalive-removed.patch + reproducible-gzip.patch) +sha512sums=('f583fb4140a29c5e21956c3e51fe3620baa65d33b40447af419d7fc61473a1148a1873216a84e89be785b155ee8e9aebd5e3eb19d2ded82b8415b1a35de1b55d' + 'SKIP' + 'ee0bd240568a7dbb4dc6ef64dba28ea84c4bedf7d688d054960c686666f8f0bc4562961c40845107ef0c936e60d3e676bffb2a1ba708039690bb0520cda3a525' + '22aeb5b851f78bc6bc62e0bc3da99fecaf42d7604af41e2f3343f8d3666541f7b06b7d1a7d0ddf24f1731ac7b12dfe582375a98e3b94dfa323d6ce954549ca67' + '763949a0bc460dcc9faefc86f2a91cf342781bfce696ed0c3826758572dd03ac266bbeb7b6a4f9376ac298d7d3c9c4def42d94921a8e1d1695e39396e36d95ff' + '8710e039626878270b8b7bc1569566274d935c84652d758e25ce8fe01c0f44d911148620bb494489e1238201c01f3ba255c19f7dc5c2ff0d45a5f2a79190286b' + '089c102357ea5fd55d81ae76aaff62713f780fd84500c3b92ecd6b2bb11ccdc3a162978548e9a5f9e98a8354a5be3997e416c52daa18eda4621ed79a29d6fea8' + '5885b223f96706bc09a147b5c141d620846c9058563e986983ca2ab90922cabe891a651d90d5004d45549b3874c40f8a1570a8a79e067d66f1826681111c7e82' + '6cf68bbc5c2b1a03ca8528e834e9867d33b982a9fa073d28c9faa514d5057d9b71de6fb494597d3b496ee56b68a179b2e11ba14cec4d01c4fc7dec72a4a2ff0b' + '7bad907228b7c2f3c43128f087a2f8e03778760b7a26179ff441c1f60127e2fca08c94dff76baea2469d3a253a8f46b285d0af0f62a6d8738926caf7a10f670b') +validpgpkeys=('4ABA2F66DBD5A95894910E0673D770CDA59047B9') # HPLIP (HP Linux Imaging and Printing) <hp...@hp.com> + +prepare() { + cd "$pkgname"-$pkgver + + # disable insecure update - https://bugs.archlinux.org/task/38083 + patch -Np0 -i "${srcdir}"/disable_upgrade.patch + + # add missing 'include <cups/ppd.h>' at various places + patch -Np1 -i "${srcdir}"/0022-Add-include-cups-ppd.h-in-various-places-as-CUPS-2.2.patch + # fix some handling unicode file names FS#58412 + patch -Np1 -i "${srcdir}"/0023-Fix-handling-of-unicode-filenames-in-sixext.py.patch + # remove binary blob libImageProcessor and all linking - FS#59681 + patch -Np1 -i "${srcdir}"/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch + # Workaround patch for missing Python3 transition of the old + # (pre-USB-storage) photo memory card support (pcardext) - Debian patch + patch -Np1 -i "${srcdir}"/python3.diff + # python 3.9 emoved a deprecated method of threading + # https://bugs.archlinux.org/task/68910 / hplip-thread-isalive-removed.patch + patch -Np1 -i "${srcdir}"/hplip-thread-isalive-removed.patch + + # https://bugs.launchpad.net/hplip/+bug/1879445 + # broken scanning - https://bugs.archlinux.org/task/66704 + patch -Np1 -i ../hplip-configure-python.patch + + # make gzip creation reproducible by removing the timestamp + patch -Np1 -i ../reproducible-gzip.patch + + export AUTOMAKE='automake --foreign' + autoreconf --force --install +} + +build() { + cd "$pkgname"-$pkgver + ./configure --prefix=/usr \ + --enable-qt5 \ + --disable-qt4 \ + --enable-hpcups-install \ + --enable-cups-drv-install \ + --enable-pp-build #--help + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool + make +} + +package() { + cd "$pkgname"-$pkgver + make -j1 rulesdir=/usr/lib/udev/rules.d DESTDIR="$pkgdir/" install + + # remove config provided by sane and autostart of hp-daemon + rm -rf "$pkgdir"/etc/{sane.d,xdg} + install -dm755 "${pkgdir}"/etc/sane.d/dll.d + echo hpaio > "${pkgdir}"/etc/sane.d/dll.d/hpaio + + # remove HAL .fdi file because HAL is no longer used + rm -vrf "$pkgdir"/usr/share/hal + + # remove rc script + rm -vrf "$pkgdir"/etc/init.d + + # add mixed license file + install -Dt "${pkgdir}"/usr/share/licenses/${pkgname} -m644 COPYING + + # Compile Python bytecode: + python -m compileall -d /usr/share "$pkgdir/usr/share" + python -O -m compileall -d /usr/share "$pkgdir/usr/share" +} Deleted: disable_upgrade.patch =================================================================== --- disable_upgrade.patch 2020-12-09 15:46:45 UTC (rev 403207) +++ disable_upgrade.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -1,14 +0,0 @@ ---- upgrade.py.orig 2013-10-31 12:46:54.000000000 +0100 -+++ upgrade.py 2013-12-04 14:58:03.000000000 +0100 -@@ -134,6 +134,11 @@ except getopt.GetoptError, e: - if os.getenv("HPLIP_DEBUG"): - log.set_level('debug') - -+ -+log.error("HPLIP upgrade is disabled by Archlinux for security reasons, see https://bugs.archlinux.org/task/38083 - if you like to upgrade HPLIP, use the Archlinux software package manager pacman.") -+clean_exit(1) -+ -+ - for o, a in opts: - if o in ('-h', '--help'): - usage() Copied: hplip/repos/extra-x86_64/disable_upgrade.patch (from rev 403207, hplip/trunk/disable_upgrade.patch) =================================================================== --- disable_upgrade.patch (rev 0) +++ disable_upgrade.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -0,0 +1,14 @@ +--- upgrade.py.orig 2013-10-31 12:46:54.000000000 +0100 ++++ upgrade.py 2013-12-04 14:58:03.000000000 +0100 +@@ -134,6 +134,11 @@ except getopt.GetoptError, e: + if os.getenv("HPLIP_DEBUG"): + log.set_level('debug') + ++ ++log.error("HPLIP upgrade is disabled by Archlinux for security reasons, see https://bugs.archlinux.org/task/38083 - if you like to upgrade HPLIP, use the Archlinux software package manager pacman.") ++clean_exit(1) ++ ++ + for o, a in opts: + if o in ('-h', '--help'): + usage() Deleted: hplip-configure-python.patch =================================================================== --- hplip-configure-python.patch 2020-12-09 15:46:45 UTC (rev 403207) +++ hplip-configure-python.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -1,52 +0,0 @@ -diff -up hplip-3.20.9/configure.in.configure-python hplip-3.20.9/configure.in ---- hplip-3.20.9/configure.in.configure-python 2020-09-23 07:24:27.000000000 +0200 -+++ hplip-3.20.9/configure.in 2020-10-02 07:27:09.082331431 +0200 -@@ -604,17 +604,29 @@ if test "$class_driver" = "no" && test " - fi - fi - --SAVE_CPPFLAGS="$CPPFLAGS" --CFLAGS=`python-config --includes` --if [ $? -eq 0 ] --then -- echo $FLAGS --else --CFLAGS=`python3-config --includes` -- if [ $? -eq 0 ] -- then -- echo $FLAGS -- fi -+AC_PATH_PROG(python3_config_path, python3-config, [AC_MSG_ERROR([python3-config not installed], 6)]) -+ -+PYTHON_INCLUDES=`$python3_config_path --includes` -+if test "X$PYTHON_INCLUDES" = "X" ; then -+ AC_MSG_ERROR([Cannot get Python includes via python3-config], 6) -+fi -+ -+PYTHON_LIBS=`$python3_config_path --libs` -+if test "X$PYTHON_LIBS" = "X" ; then -+ AC_MSG_ERROR([Cannot get Python libs via python3-config], 6) -+fi -+ -+SAVE_CFLAGS=$CFLAGS -+SAVE_LIBS=$LIBS -+ -+CFLAGS="$CFLAGS $PYTHON_INCLUDES" -+LIBS="$LIBS $PYTHON_LIBS" -+ -+AC_TRY_LINK(,[ ], AC_MSG_RESULT(yes); python_includes="ok", AC_MSG_ERROR([no: PYTHON DISABLED], 6)) -+ -+if test "X$python_includes" != "Xok" ; then -+ CFLAGS="$SAVE_CFLAGS" -+ LIBS="$SAVE_LIBS" - fi - - #CFLAGS=`(python-config --includes)` -@@ -631,7 +643,6 @@ if test "$class_driver" = "no" && test " - AS_IF([test "x$FOUND_HEADER" != "xyes"], - [AC_MSG_ERROR([cannot find python-devel support], 6)]) - fi --CFLAGS="$save_CFLAGS" - - if test "$hpijs_only_build" = "no" && test "$scan_build" = "yes" && test "$hpcups_only_build" = "no"; then - AC_CHECK_LIB([sane], [sane_open], [LIBS="$LIBS"], [AC_MSG_ERROR([cannot find sane-backends-devel support (or --disable-scan-build)], 12)]) Copied: hplip/repos/extra-x86_64/hplip-configure-python.patch (from rev 403207, hplip/trunk/hplip-configure-python.patch) =================================================================== --- hplip-configure-python.patch (rev 0) +++ hplip-configure-python.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -0,0 +1,52 @@ +diff -up hplip-3.20.9/configure.in.configure-python hplip-3.20.9/configure.in +--- hplip-3.20.9/configure.in.configure-python 2020-09-23 07:24:27.000000000 +0200 ++++ hplip-3.20.9/configure.in 2020-10-02 07:27:09.082331431 +0200 +@@ -604,17 +604,29 @@ if test "$class_driver" = "no" && test " + fi + fi + +-SAVE_CPPFLAGS="$CPPFLAGS" +-CFLAGS=`python-config --includes` +-if [ $? -eq 0 ] +-then +- echo $FLAGS +-else +-CFLAGS=`python3-config --includes` +- if [ $? -eq 0 ] +- then +- echo $FLAGS +- fi ++AC_PATH_PROG(python3_config_path, python3-config, [AC_MSG_ERROR([python3-config not installed], 6)]) ++ ++PYTHON_INCLUDES=`$python3_config_path --includes` ++if test "X$PYTHON_INCLUDES" = "X" ; then ++ AC_MSG_ERROR([Cannot get Python includes via python3-config], 6) ++fi ++ ++PYTHON_LIBS=`$python3_config_path --libs` ++if test "X$PYTHON_LIBS" = "X" ; then ++ AC_MSG_ERROR([Cannot get Python libs via python3-config], 6) ++fi ++ ++SAVE_CFLAGS=$CFLAGS ++SAVE_LIBS=$LIBS ++ ++CFLAGS="$CFLAGS $PYTHON_INCLUDES" ++LIBS="$LIBS $PYTHON_LIBS" ++ ++AC_TRY_LINK(,[ ], AC_MSG_RESULT(yes); python_includes="ok", AC_MSG_ERROR([no: PYTHON DISABLED], 6)) ++ ++if test "X$python_includes" != "Xok" ; then ++ CFLAGS="$SAVE_CFLAGS" ++ LIBS="$SAVE_LIBS" + fi + + #CFLAGS=`(python-config --includes)` +@@ -631,7 +643,6 @@ if test "$class_driver" = "no" && test " + AS_IF([test "x$FOUND_HEADER" != "xyes"], + [AC_MSG_ERROR([cannot find python-devel support], 6)]) + fi +-CFLAGS="$save_CFLAGS" + + if test "$hpijs_only_build" = "no" && test "$scan_build" = "yes" && test "$hpcups_only_build" = "no"; then + AC_CHECK_LIB([sane], [sane_open], [LIBS="$LIBS"], [AC_MSG_ERROR([cannot find sane-backends-devel support (or --disable-scan-build)], 12)]) Copied: hplip/repos/extra-x86_64/hplip-thread-isalive-removed.patch (from rev 403207, hplip/trunk/hplip-thread-isalive-removed.patch) =================================================================== --- hplip-thread-isalive-removed.patch (rev 0) +++ hplip-thread-isalive-removed.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -0,0 +1,93 @@ +diff --git a/copier/copier.py b/copier/copier.py +index a595baa..7794f48 100644 +--- a/copier/copier.py ++++ b/copier/copier.py +@@ -73,13 +73,13 @@ class PMLCopyDevice(device.Device): + + def isCopyActive(self): + if self.copy_thread is not None: +- return self.copy_thread.isAlive() ++ return self.copy_thread.is_alive() + else: + return False + + def waitForCopyThread(self): + if self.copy_thread is not None and \ +- self.copy_thread.isAlive(): ++ self.copy_thread.is_alive(): + + self.copy_thread.join() + +diff --git a/fax/fax.py b/fax/fax.py +index 3d69226..0878a64 100644 +--- a/fax/fax.py ++++ b/fax/fax.py +@@ -478,13 +478,13 @@ class FaxDevice(device.Device): + + def isSendFaxActive(self): + if self.send_fax_thread is not None: +- return self.send_fax_thread.isAlive() ++ return self.send_fax_thread.is_alive() + else: + return False + + def waitForSendFaxThread(self): + if self.send_fax_thread is not None and \ +- self.send_fax_thread.isAlive(): ++ self.send_fax_thread.is_alive(): + + try: + self.send_fax_thread.join() +diff --git a/fax/pmlfax.py b/fax/pmlfax.py +index b68ff6a..b1020d0 100644 +--- a/fax/pmlfax.py ++++ b/fax/pmlfax.py +@@ -179,13 +179,13 @@ class PMLFaxDevice(FaxDevice): + + def isUploadLogActive(self): + if self.upload_log_thread is not None: +- return self.upload_log_thread.isAlive() ++ return self.upload_log_thread.is_alive() + else: + return False + + def waitForUploadLogThread(self): + if self.upload_log_thread is not None and \ +- self.upload_log_thread.isAlive(): ++ self.upload_log_thread.is_alive(): + + self.upload_log_thread.join() + +diff --git a/scan/sane.py b/scan/sane.py +index b6c4acd..e8f8db8 100755 +--- a/scan/sane.py ++++ b/scan/sane.py +@@ -378,14 +378,14 @@ class ScanDevice: + + def isScanActive(self): + if self.scan_thread is not None: +- return self.scan_thread.isAlive() and self.scan_thread.scan_active ++ return self.scan_thread.is_alive() and self.scan_thread.scan_active + else: + return False + + + def waitForScanDone(self): + if self.scan_thread is not None and \ +- self.scan_thread.isAlive() and \ ++ self.scan_thread.is_alive() and \ + self.scan_thread.scan_active: + + try: +@@ -398,9 +398,9 @@ class ScanDevice: + #time.sleep(0.5) + if self.scan_thread is not None: + while True: +- #print self.scan_thread.isAlive() ++ #print self.scan_thread.is_alive() + #print self.scan_thread.scan_active +- if self.scan_thread.isAlive() and \ ++ if self.scan_thread.is_alive() and \ + self.scan_thread.scan_active: + return + Deleted: python3.diff =================================================================== --- python3.diff 2020-12-09 15:46:45 UTC (rev 403207) +++ python3.diff 2020-12-09 15:47:00 UTC (rev 403208) @@ -1,147 +0,0 @@ -From: Till Kamppeter <till.kamppe...@gmail.com> -Date: Fri, 22 Jul 2016 09:33:04 +0200 -Subject: Workaround patch for missing Python3 transition of the old - (pre-USB-storage) photo memory card support (pcardext) as this part builds - in Python3 environments but with pointer-related warnings which are fatal - errors for Ubuntu's build servers. The patch silences the warnings but the - memory card support is dropped in Python3 environments. This patch is - supplied by the HPLIP upstream developers and will be replaced by a more - proper solution in the next upstream release of HPLIP (see LP: #1275353) - ---- - pcard/pcardext/pcardext.c | 59 +++++++++++++++++++++++++++++++++++++---------- - pcard/photocard.py | 2 +- - unload.py | 5 ++++ - 3 files changed, 53 insertions(+), 13 deletions(-) - -diff --git a/pcard/pcardext/pcardext.c b/pcard/pcardext/pcardext.c -index c1a8273..37d979b 100644 ---- a/pcard/pcardext/pcardext.c -+++ b/pcard/pcardext/pcardext.c -@@ -20,7 +20,7 @@ pcardext - Python extension for HP photocard services - Requires: - Python 2.2+ - --Author: Don Welch -+Author: Don Welch - - \*****************************************************************************/ - -@@ -38,9 +38,37 @@ typedef int Py_ssize_t; - - int verbose=0; - -+#if PY_MAJOR_VERSION >= 3 -+ #define MOD_ERROR_VAL NULL -+ #define MOD_SUCCESS_VAL(val) val -+ #define MOD_INIT(name) PyMODINIT_FUNC PyInit_##name(void) -+ #define PyInt_AS_LONG PyLong_AS_LONG -+ #define MOD_DEF(ob, name, doc, methods) \ -+ static struct PyModuleDef moduledef = { \ -+ PyModuleDef_HEAD_INIT, name, doc, -1, methods, }; \ -+ ob = PyModule_Create(&moduledef); -+ -+ -+ #define PY_String_Bytes PyBytes_FromStringAndSize -+ #define PY_AsString_Bytes PyBytes_AsStringAndSize -+ -+#else -+ #define MOD_ERROR_VAL -+ #define MOD_SUCCESS_VAL(val) -+ #define MOD_INIT(name) void init##name(void) -+ #define MOD_DEF(ob, name, doc, methods) \ -+ ob = Py_InitModule3(name, methods, doc); -+ -+ #define PY_String_Bytes PyString_FromStringAndSize -+ #define PY_AsString_Bytes PyString_AsStringAndSize -+ -+#endif -+ - PyObject * readsectorFunc = NULL; - PyObject * writesectorFunc = NULL; - -+ -+ - int ReadSector(int sector, int nsector, void *buf, int size) - { - PyObject * result; -@@ -56,9 +84,13 @@ int ReadSector(int sector, int nsector, void *buf, int size) - if( result ) - { - Py_ssize_t len = 0; -- PyString_AsStringAndSize( result, &result_str, &len ); -+ -+ //PyString_AsStringAndSize( result, &result_str, &len ); -+ //PyBytes_AsStringAndSize( result, &result_str, &len ); -+ PY_AsString_Bytes( result, &result_str, &len ); - -- if( len < nsector*FAT_HARDSECT ) -+ -+ if( len < nsector*FAT_HARDSECT ) - { - goto abort; - } -@@ -205,7 +237,9 @@ PyObject * pcardext_read( PyObject * self, PyObject * args ) - - if( FatReadFileExt( name, offset, len, buffer ) == len ) - { -- return PyString_FromStringAndSize( (char *)buffer, len ); -+ // return PyString_FromStringAndSize( (char *)buffer, len ); -+ return PY_String_Bytes( (char *)buffer, len ); -+ // return PyBytes_FromStringAndSize( (char *)buffer, len ); - } - else - { -@@ -233,14 +267,15 @@ static PyMethodDef pcardext_methods[] = - - static char pcardext_documentation[] = "Python extension for HP photocard services"; - --void initpcardext( void ) --{ -- PyObject * mod = Py_InitModule4( "pcardext", pcardext_methods, -- pcardext_documentation, (PyObject*)NULL, -- PYTHON_API_VERSION ); -- -- if (mod == NULL) -- return; -+MOD_INIT(pcardext) { -+ -+ PyObject* mod ; -+ MOD_DEF(mod, "pcardext", pcardext_documentation, pcardext_methods); -+ if (mod == NULL) -+ return MOD_ERROR_VAL; -+ -+ return MOD_SUCCESS_VAL(mod); -+ - } - - -diff --git a/pcard/photocard.py b/pcard/photocard.py -index 913dc4e..2c73158 100644 ---- a/pcard/photocard.py -+++ b/pcard/photocard.py -@@ -30,7 +30,7 @@ from base.codes import * - from base import device, utils, exif - - try: -- from . import pcardext -+ import pcardext - except ImportError: - if not os.getenv("HPLIP_BUILD"): - log.error("PCARDEXT could not be loaded. Please check HPLIP installation.") -diff --git a/unload.py b/unload.py -index 3fdd5a3..ce8b069 100755 ---- a/unload.py -+++ b/unload.py -@@ -44,6 +44,11 @@ except ImportError: - - # Local - from base.g import * -+from base.sixext import PY3 -+if PY3: -+ log.error("This functionality is not spported in python3 environment.") -+ sys.exit(1) -+ - from base import device, utils, tui, module - from prnt import cups - Copied: hplip/repos/extra-x86_64/python3.diff (from rev 403207, hplip/trunk/python3.diff) =================================================================== --- python3.diff (rev 0) +++ python3.diff 2020-12-09 15:47:00 UTC (rev 403208) @@ -0,0 +1,147 @@ +From: Till Kamppeter <till.kamppe...@gmail.com> +Date: Fri, 22 Jul 2016 09:33:04 +0200 +Subject: Workaround patch for missing Python3 transition of the old + (pre-USB-storage) photo memory card support (pcardext) as this part builds + in Python3 environments but with pointer-related warnings which are fatal + errors for Ubuntu's build servers. The patch silences the warnings but the + memory card support is dropped in Python3 environments. This patch is + supplied by the HPLIP upstream developers and will be replaced by a more + proper solution in the next upstream release of HPLIP (see LP: #1275353) + +--- + pcard/pcardext/pcardext.c | 59 +++++++++++++++++++++++++++++++++++++---------- + pcard/photocard.py | 2 +- + unload.py | 5 ++++ + 3 files changed, 53 insertions(+), 13 deletions(-) + +diff --git a/pcard/pcardext/pcardext.c b/pcard/pcardext/pcardext.c +index c1a8273..37d979b 100644 +--- a/pcard/pcardext/pcardext.c ++++ b/pcard/pcardext/pcardext.c +@@ -20,7 +20,7 @@ pcardext - Python extension for HP photocard services + Requires: + Python 2.2+ + +-Author: Don Welch ++Author: Don Welch + + \*****************************************************************************/ + +@@ -38,9 +38,37 @@ typedef int Py_ssize_t; + + int verbose=0; + ++#if PY_MAJOR_VERSION >= 3 ++ #define MOD_ERROR_VAL NULL ++ #define MOD_SUCCESS_VAL(val) val ++ #define MOD_INIT(name) PyMODINIT_FUNC PyInit_##name(void) ++ #define PyInt_AS_LONG PyLong_AS_LONG ++ #define MOD_DEF(ob, name, doc, methods) \ ++ static struct PyModuleDef moduledef = { \ ++ PyModuleDef_HEAD_INIT, name, doc, -1, methods, }; \ ++ ob = PyModule_Create(&moduledef); ++ ++ ++ #define PY_String_Bytes PyBytes_FromStringAndSize ++ #define PY_AsString_Bytes PyBytes_AsStringAndSize ++ ++#else ++ #define MOD_ERROR_VAL ++ #define MOD_SUCCESS_VAL(val) ++ #define MOD_INIT(name) void init##name(void) ++ #define MOD_DEF(ob, name, doc, methods) \ ++ ob = Py_InitModule3(name, methods, doc); ++ ++ #define PY_String_Bytes PyString_FromStringAndSize ++ #define PY_AsString_Bytes PyString_AsStringAndSize ++ ++#endif ++ + PyObject * readsectorFunc = NULL; + PyObject * writesectorFunc = NULL; + ++ ++ + int ReadSector(int sector, int nsector, void *buf, int size) + { + PyObject * result; +@@ -56,9 +84,13 @@ int ReadSector(int sector, int nsector, void *buf, int size) + if( result ) + { + Py_ssize_t len = 0; +- PyString_AsStringAndSize( result, &result_str, &len ); ++ ++ //PyString_AsStringAndSize( result, &result_str, &len ); ++ //PyBytes_AsStringAndSize( result, &result_str, &len ); ++ PY_AsString_Bytes( result, &result_str, &len ); + +- if( len < nsector*FAT_HARDSECT ) ++ ++ if( len < nsector*FAT_HARDSECT ) + { + goto abort; + } +@@ -205,7 +237,9 @@ PyObject * pcardext_read( PyObject * self, PyObject * args ) + + if( FatReadFileExt( name, offset, len, buffer ) == len ) + { +- return PyString_FromStringAndSize( (char *)buffer, len ); ++ // return PyString_FromStringAndSize( (char *)buffer, len ); ++ return PY_String_Bytes( (char *)buffer, len ); ++ // return PyBytes_FromStringAndSize( (char *)buffer, len ); + } + else + { +@@ -233,14 +267,15 @@ static PyMethodDef pcardext_methods[] = + + static char pcardext_documentation[] = "Python extension for HP photocard services"; + +-void initpcardext( void ) +-{ +- PyObject * mod = Py_InitModule4( "pcardext", pcardext_methods, +- pcardext_documentation, (PyObject*)NULL, +- PYTHON_API_VERSION ); +- +- if (mod == NULL) +- return; ++MOD_INIT(pcardext) { ++ ++ PyObject* mod ; ++ MOD_DEF(mod, "pcardext", pcardext_documentation, pcardext_methods); ++ if (mod == NULL) ++ return MOD_ERROR_VAL; ++ ++ return MOD_SUCCESS_VAL(mod); ++ + } + + +diff --git a/pcard/photocard.py b/pcard/photocard.py +index 913dc4e..2c73158 100644 +--- a/pcard/photocard.py ++++ b/pcard/photocard.py +@@ -30,7 +30,7 @@ from base.codes import * + from base import device, utils, exif + + try: +- from . import pcardext ++ import pcardext + except ImportError: + if not os.getenv("HPLIP_BUILD"): + log.error("PCARDEXT could not be loaded. Please check HPLIP installation.") +diff --git a/unload.py b/unload.py +index 3fdd5a3..ce8b069 100755 +--- a/unload.py ++++ b/unload.py +@@ -44,6 +44,11 @@ except ImportError: + + # Local + from base.g import * ++from base.sixext import PY3 ++if PY3: ++ log.error("This functionality is not spported in python3 environment.") ++ sys.exit(1) ++ + from base import device, utils, tui, module + from prnt import cups + Deleted: reproducible-gzip.patch =================================================================== --- reproducible-gzip.patch 2020-12-09 15:46:45 UTC (rev 403207) +++ reproducible-gzip.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -1,38 +0,0 @@ ---- hplip-3.20.5/createPPD.sh 2020-05-11 15:34:06.000000000 +0200 -+++ hplip-3.20.5.old/createPPD.sh 2020-05-27 12:02:44.089477299 +0200 -@@ -54,15 +54,15 @@ - else - cp prnt/ps/hp-postscript*.ppd ppd/classppd/ps - for i in ppd/classppd/ps/*.ppd; do -- gzip -c "$i" > "$i.gz" -+ gzip -nc "$i" > "$i.gz" - done - fi - #cp prnt/ps/hp-postscript*.ppd.gz ppd/classppd/ps - for i in ppd/classppd/hpcups/*.ppd; do -- gzip -c "$i" > "$i.gz" -+ gzip -nc "$i" > "$i.gz" - done - #for i in ppd/classppd/ps/*.ppd; do -- # gzip -c "$i" > "$i.gz" -+ # gzip -nc "$i" > "$i.gz" - #done - - cat > class_cups_drv.inc <<EOF -@@ -81,14 +81,14 @@ - install -d ppd/hpcups - ppdc -d ppd/hpcups prnt/drv/hpcups.drv - for i in ppd/hpcups/*.ppd; do -- gzip -c "$i" > "$i.gz" -+ gzip -nc "$i" > "$i.gz" - done - - install -d ppd/hpijs - ppdc -d ppd/hpijs prnt/drv/hpijs.drv - echo "gzip ppd files..." - for i in ppd/hpijs/*.ppd; do -- gzip -c "$i" > "$i.gz" -+ gzip -nc "$i" > "$i.gz" - done - echo "building foomatic_drv.inc..." - ./hpijs-drv > foomatic_drv.inc $shadow Copied: hplip/repos/extra-x86_64/reproducible-gzip.patch (from rev 403207, hplip/trunk/reproducible-gzip.patch) =================================================================== --- reproducible-gzip.patch (rev 0) +++ reproducible-gzip.patch 2020-12-09 15:47:00 UTC (rev 403208) @@ -0,0 +1,38 @@ +--- hplip-3.20.5/createPPD.sh 2020-05-11 15:34:06.000000000 +0200 ++++ hplip-3.20.5.old/createPPD.sh 2020-05-27 12:02:44.089477299 +0200 +@@ -54,15 +54,15 @@ + else + cp prnt/ps/hp-postscript*.ppd ppd/classppd/ps + for i in ppd/classppd/ps/*.ppd; do +- gzip -c "$i" > "$i.gz" ++ gzip -nc "$i" > "$i.gz" + done + fi + #cp prnt/ps/hp-postscript*.ppd.gz ppd/classppd/ps + for i in ppd/classppd/hpcups/*.ppd; do +- gzip -c "$i" > "$i.gz" ++ gzip -nc "$i" > "$i.gz" + done + #for i in ppd/classppd/ps/*.ppd; do +- # gzip -c "$i" > "$i.gz" ++ # gzip -nc "$i" > "$i.gz" + #done + + cat > class_cups_drv.inc <<EOF +@@ -81,14 +81,14 @@ + install -d ppd/hpcups + ppdc -d ppd/hpcups prnt/drv/hpcups.drv + for i in ppd/hpcups/*.ppd; do +- gzip -c "$i" > "$i.gz" ++ gzip -nc "$i" > "$i.gz" + done + + install -d ppd/hpijs + ppdc -d ppd/hpijs prnt/drv/hpijs.drv + echo "gzip ppd files..." + for i in ppd/hpijs/*.ppd; do +- gzip -c "$i" > "$i.gz" ++ gzip -nc "$i" > "$i.gz" + done + echo "building foomatic_drv.inc..." + ./hpijs-drv > foomatic_drv.inc $shadow