Control: tags -1 confirmed moreinfo On 2021-05-27 09:03:49 +0200, Didier 'OdyX' Raboud wrote: > Package: release.debian.org > Severity: normal > User: release.debian....@packages.debian.org > Usertags: unblock > X-Debbugs-Cc: c...@packages.debian.org > > Please approve the following update for src:cups > > [ Reason ] > Mikko Rapeli reported a USB printing regression in #989073, which, lukily > enough, was already reported and fixed upstream. It matters for Bullseye's > quality to ensure smooth USB printing. > > [ Impact ] > Failure to print without comprehensible error messages nor configurable ways > to fix USB printing. > > [ Tests ] > There are none, but as you'll see, these patches merely extend timeouts; also, > they have been reviewed and merged upstream, by the long-term upstream author, > Michael Sweet. > > [ Risks ] > Given the trivialness of the patches as well as the extended review, I > consider the risks to be negligible. > > [ Checklist ] > [x] all changes are documented in the d/changelog > [x] I reviewed all changes and I approve them > [x] attach debdiff against the package in testing > > [ Other info ] > I'm also attaching the "direct" patches, as my use of git debrebase produces a > noisy debdiff. I have also picked the 2.3.3op2-3+deb11u1 version, as > 2.3.3op2-4 was already uploaded in experimental; please advise if a change is > needed. > > Many thanks for your work! > > unblock cups/2.3.3op2-3+deb11u1
ACK, please remove the moreinfo tag once the new version is available in unstable. Cheers > From: Zdenek Dohnal <zdoh...@redhat.com> > Date: Tue, 13 Apr 2021 15:44:14 +0200 > Subject: backend/usb-libusb.c: Use 60s timeout for reading at backchannel > > Some older models malfunction if timeout is too short. > > Origin: upstream, https://github.com/OpenPrinting/cups/pull/174 > Bug: https://github.com/OpenPrinting/cups/issues/160 > Bug-Debian: https://bugs.debian.org/989073 > --- > backend/usb-libusb.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/backend/usb-libusb.c b/backend/usb-libusb.c > index d6b0eb4..fbb0d9d 100644 > --- a/backend/usb-libusb.c > +++ b/backend/usb-libusb.c > @@ -1704,7 +1704,7 @@ static void *read_thread(void *reference) > readstatus = libusb_bulk_transfer(g.printer->handle, > g.printer->read_endp, > readbuffer, rbytes, > - &rbytes, 250); > + &rbytes, 60000); > if (readstatus == LIBUSB_SUCCESS && rbytes > 0) > { > fprintf(stderr, "DEBUG: Read %d bytes of back-channel data...\n", > (int)rbytes); > From: Zdenek Dohnal <zdoh...@redhat.com> > Date: Tue, 13 Apr 2021 15:47:37 +0200 > Subject: backend/usb-libusb.c: Revert enforcing read limits > > This commit reverts the change introduced by 2.2.12 [1] - its > implementation caused a regression with Lexmark filters. > > [1] > https://github.com/apple/cups/commit/35e927f83529cd9b4bc37bcd418c50e307fced35 > > Origin: upstream, https://github.com/OpenPrinting/cups/pull/174 > Bug: https://github.com/OpenPrinting/cups/issues/72 > --- > backend/usb-libusb.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/backend/usb-libusb.c b/backend/usb-libusb.c > index fbb0d9d..89b5182 100644 > --- a/backend/usb-libusb.c > +++ b/backend/usb-libusb.c > @@ -1721,7 +1721,8 @@ static void *read_thread(void *reference) > * Make sure this loop executes no more than once every 250 miliseconds... > */ > > - if ((g.wait_eof || !g.read_thread_stop)) > + if ((readstatus != LIBUSB_SUCCESS || rbytes == 0) && > + (g.wait_eof || !g.read_thread_stop)) > usleep(250000); > } > while (g.wait_eof || !g.read_thread_stop); > diff -Nru cups-2.3.3op2/debian/changelog cups-2.3.3op2/debian/changelog > --- cups-2.3.3op2/debian/changelog 2021-02-12 14:09:29.000000000 +0100 > +++ cups-2.3.3op2/debian/changelog 2021-05-27 08:49:36.000000000 +0200 > @@ -1,3 +1,12 @@ > +cups (2.3.3op2-3+deb11u1) unstable; urgency=medium > + > + * Backport 2 upstream USB backend fixes: > + - Revert enforcing read limits (caused a regression with Lexmark filters) > + - Use 60s timeout (instead of 250ms) for reading at backchannel, as some > + older models malfunction if timeout is too short (Closes: #989073) > + > + -- Didier Raboud <o...@debian.org> Thu, 27 May 2021 08:49:36 +0200 > + > cups (2.3.3op2-3) unstable; urgency=medium > > [ Helge Kreutzmann ] > diff -Nru > cups-2.3.3op2/debian/patches/0001-backend-usb-libusb.c-Use-60s-timeout-for-reading-at-.patch > > cups-2.3.3op2/debian/patches/0001-backend-usb-libusb.c-Use-60s-timeout-for-reading-at-.patch > --- > cups-2.3.3op2/debian/patches/0001-backend-usb-libusb.c-Use-60s-timeout-for-reading-at-.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0001-backend-usb-libusb.c-Use-60s-timeout-for-reading-at-.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,26 @@ > +From: Zdenek Dohnal <zdoh...@redhat.com> > +Date: Tue, 13 Apr 2021 15:44:14 +0200 > +Subject: backend/usb-libusb.c: Use 60s timeout for reading at backchannel > + > +Some older models malfunction if timeout is too short. > + > +Origin: upstream, https://github.com/OpenPrinting/cups/pull/174 > +Bug: https://github.com/OpenPrinting/cups/issues/160 > +Bug-Debian: https://bugs.debian.org/989073 > +--- > + backend/usb-libusb.c | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/backend/usb-libusb.c b/backend/usb-libusb.c > +index d6b0eb4..fbb0d9d 100644 > +--- a/backend/usb-libusb.c > ++++ b/backend/usb-libusb.c > +@@ -1704,7 +1704,7 @@ static void *read_thread(void *reference) > + readstatus = libusb_bulk_transfer(g.printer->handle, > + g.printer->read_endp, > + readbuffer, rbytes, > +- &rbytes, 250); > ++ &rbytes, 60000); > + if (readstatus == LIBUSB_SUCCESS && rbytes > 0) > + { > + fprintf(stderr, "DEBUG: Read %d bytes of back-channel data...\n", > (int)rbytes); > diff -Nru > cups-2.3.3op2/debian/patches/0001-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > > cups-2.3.3op2/debian/patches/0001-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > --- > cups-2.3.3op2/debian/patches/0001-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0001-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,23 +0,0 @@ > -From: Didier Raboud <o...@debian.org> > -Date: Fri, 12 Feb 2021 13:47:22 +0100 > -Subject: Let cups.1 point to client.conf.5, not client.conf.7 > - > -Bug: https://github.com/OpenPrinting/cups/pull/92 > -Closes: #982303 > ---- > - man/cups.1 | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/man/cups.1 b/man/cups.1 > -index 706620d..751ad9a 100644 > ---- a/man/cups.1 > -+++ b/man/cups.1 > -@@ -125,7 +125,7 @@ Printers that do not support IPP can be supported using > applications such as > - .BR ippeveprinter (1). > - .SH SEE ALSO > - .BR cancel (1), > --.BR client.conf (7), > -+.BR client.conf (5), > - .BR cupsctl (8), > - .BR cupsd (8), > - .BR lp (1), > diff -Nru cups-2.3.3op2/debian/patches/0002-Apple-AirPrint-support.patch > cups-2.3.3op2/debian/patches/0002-Apple-AirPrint-support.patch > --- cups-2.3.3op2/debian/patches/0002-Apple-AirPrint-support.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ cups-2.3.3op2/debian/patches/0002-Apple-AirPrint-support.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,90 +0,0 @@ > -From: Till Kamppeter <till.kamppe...@gmail.com> > -Date: Tue, 9 Aug 2016 18:11:29 +0200 > -Subject: Apple AirPrint support > - > -Bug-Ubuntu: https://bugs.launchpad.net/bugs/711779 > -Bug-Ubuntu: https://bugs.launchpad.net/bugs/1054495 > -Bug-Debian: https://bugs.debian.org/700961 > -Bug: https://github.com/apple/cups/issues/4341 > -Bug: https://github.com/OpenPrinting/cups/pull/27 > ---- > - conf/mime.convs.in | 3 +++ > - conf/mime.types | 3 +++ > - scheduler/conf.c | 2 +- > - scheduler/dirsvc.c | 6 ++++++ > - scheduler/printers.c | 4 +++- > - 5 files changed, 16 insertions(+), 2 deletions(-) > - > -diff --git a/conf/mime.convs.in b/conf/mime.convs.in > -index 57b459d..e042e01 100644 > ---- a/conf/mime.convs.in > -+++ b/conf/mime.convs.in > -@@ -44,6 +44,9 @@ application/postscript > application/vnd.cups-postscript 66 pstops > - application/vnd.cups-raster image/pwg-raster 100 > rastertopwg > - application/vnd.cups-raster image/urf 100 > rastertopwg > - > -+# Needed for printing from iOS (AirPrint) clients > -+image/urf application/pdf 100 > - > -+ > - ######################################################################## > - # > - # Raw filter... > -diff --git a/conf/mime.types b/conf/mime.types > -index fcd6b6e..ebb0525 100644 > ---- a/conf/mime.types > -+++ b/conf/mime.types > -@@ -108,6 +108,9 @@ image/x-alias pix short(8,8) > short(8,24) > - image/x-bitmap bmp string(0,BM) + !printable(2,14) > - image/x-icon ico > - > -+# Needed for printing from iOS (AirPrint) clients > -+image/urf urf string(0,UNIRAST<00>) > -+ > - ######################################################################## > - # > - # Text files... > -diff --git a/scheduler/conf.c b/scheduler/conf.c > -index 74531a8..bfd1b0b 100644 > ---- a/scheduler/conf.c > -+++ b/scheduler/conf.c > -@@ -750,7 +750,7 @@ cupsdReadConfiguration(void) > - DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED; > - > - #if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) > -- cupsdSetString(&DNSSDSubTypes, "_cups,_print"); > -+ cupsdSetString(&DNSSDSubTypes, "_cups,_print,_universal"); > - cupsdClearString(&DNSSDHostName); > - #endif /* HAVE_DNSSD || HAVE_AVAHI */ > - > -diff --git a/scheduler/dirsvc.c b/scheduler/dirsvc.c > -index ddd3701..fb2a305 100644 > ---- a/scheduler/dirsvc.c > -+++ b/scheduler/dirsvc.c > -@@ -440,6 +440,12 @@ dnssdBuildTxtRecord( > - keyvalue[count ][0] = "pdl"; > - keyvalue[count++][1] = p->pdl ? p->pdl : "application/postscript"; > - > -+ /* iOS 6 does not accept this printer as AirPrint printer if there is > -+ no URF txt record or "URF=none", "DM3" is the minimum needed found > -+ by try and error */ > -+ keyvalue[count ][0] = "URF"; > -+ keyvalue[count++][1] = "DM3"; > -+ > - if (get_auth_info_required(p, air_str, sizeof(air_str))) > - { > - keyvalue[count ][0] = "air"; > -diff --git a/scheduler/printers.c b/scheduler/printers.c > -index 7e9a9f2..3e00874 100644 > ---- a/scheduler/printers.c > -+++ b/scheduler/printers.c > -@@ -3733,7 +3733,9 @@ add_printer_formats(cupsd_printer_t *p) /* I - > Printer */ > - } > - else if (!_cups_strcasecmp(type->super, "image")) > - { > -- if (!_cups_strcasecmp(type->type, "jpeg")) > -+ if (!_cups_strcasecmp(type->type, "urf")) > -+ strlcat(pdl, "image/urf,", sizeof(pdl)); > -+ else if (!_cups_strcasecmp(type->type, "jpeg")) > - strlcat(pdl, "image/jpeg,", sizeof(pdl)); > - else if (!_cups_strcasecmp(type->type, "png")) > - strlcat(pdl, "image/png,", sizeof(pdl)); > diff -Nru > cups-2.3.3op2/debian/patches/0002-backend-usb-libusb.c-Revert-enforcing-read-limits.patch > > cups-2.3.3op2/debian/patches/0002-backend-usb-libusb.c-Revert-enforcing-read-limits.patch > --- > cups-2.3.3op2/debian/patches/0002-backend-usb-libusb.c-Revert-enforcing-read-limits.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0002-backend-usb-libusb.c-Revert-enforcing-read-limits.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,29 @@ > +From: Zdenek Dohnal <zdoh...@redhat.com> > +Date: Tue, 13 Apr 2021 15:47:37 +0200 > +Subject: backend/usb-libusb.c: Revert enforcing read limits > + > +This commit reverts the change introduced by 2.2.12 [1] - its > +implementation caused a regression with Lexmark filters. > + > +[1] > https://github.com/apple/cups/commit/35e927f83529cd9b4bc37bcd418c50e307fced35 > + > +Origin: upstream, https://github.com/OpenPrinting/cups/pull/174 > +Bug: https://github.com/OpenPrinting/cups/issues/72 > +--- > + backend/usb-libusb.c | 3 ++- > + 1 file changed, 2 insertions(+), 1 deletion(-) > + > +diff --git a/backend/usb-libusb.c b/backend/usb-libusb.c > +index fbb0d9d..89b5182 100644 > +--- a/backend/usb-libusb.c > ++++ b/backend/usb-libusb.c > +@@ -1721,7 +1721,8 @@ static void *read_thread(void *reference) > + * Make sure this loop executes no more than once every 250 > miliseconds... > + */ > + > +- if ((g.wait_eof || !g.read_thread_stop)) > ++ if ((readstatus != LIBUSB_SUCCESS || rbytes == 0) && > ++ (g.wait_eof || !g.read_thread_stop)) > + usleep(250000); > + } > + while (g.wait_eof || !g.read_thread_stop); > diff -Nru > cups-2.3.3op2/debian/patches/0003-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > > cups-2.3.3op2/debian/patches/0003-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > --- > cups-2.3.3op2/debian/patches/0003-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0003-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,37 +0,0 @@ > -From: Till Kampetter <till.kampet...@gmail.com> > -Date: Tue, 9 Aug 2016 18:11:36 +0200 > -Subject: Keep foomatic PPDs "(recommended)" stanzas in NickNames > - > -Bug-Upstream: https://github.com/OpenPrinting/cups/pull/33 > ---- > - scheduler/cups-driverd.cxx | 10 ---------- > - 1 file changed, 10 deletions(-) > - > -diff --git a/scheduler/cups-driverd.cxx b/scheduler/cups-driverd.cxx > -index 85516eb..874eb3c 100644 > ---- a/scheduler/cups-driverd.cxx > -+++ b/scheduler/cups-driverd.cxx > -@@ -240,7 +240,6 @@ add_ppd(const char *filename, /* I - PPD > filename */ > - const char *scheme) /* I - PPD scheme */ > - { > - ppd_info_t *ppd; /* PPD */ > -- char *recommended; /* Foomatic driver string */ > - > - > - /* > -@@ -278,15 +277,6 @@ add_ppd(const char *filename, /* I - PPD > filename */ > - strlcpy(ppd->record.device_id, device_id, sizeof(ppd->record.device_id)); > - strlcpy(ppd->record.scheme, scheme, sizeof(ppd->record.scheme)); > - > -- /* > -- * Strip confusing (and often wrong) "recommended" suffix added by > -- * Foomatic drivers... > -- */ > -- > -- if ((recommended = strstr(ppd->record.make_and_model, > -- " (recommended)")) != NULL) > -- *recommended = '\0'; > -- > - /* > - * Add the PPD to the PPD arrays... > - */ > diff -Nru > cups-2.3.3op2/debian/patches/0003-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > > cups-2.3.3op2/debian/patches/0003-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > --- > cups-2.3.3op2/debian/patches/0003-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0003-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,23 @@ > +From: Didier Raboud <o...@debian.org> > +Date: Fri, 12 Feb 2021 13:47:22 +0100 > +Subject: Let cups.1 point to client.conf.5, not client.conf.7 > + > +Bug: https://github.com/OpenPrinting/cups/pull/92 > +Closes: #982303 > +--- > + man/cups.1 | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/man/cups.1 b/man/cups.1 > +index 706620d..751ad9a 100644 > +--- a/man/cups.1 > ++++ b/man/cups.1 > +@@ -125,7 +125,7 @@ Printers that do not support IPP can be supported using > applications such as > + .BR ippeveprinter (1). > + .SH SEE ALSO > + .BR cancel (1), > +-.BR client.conf (7), > ++.BR client.conf (5), > + .BR cupsctl (8), > + .BR cupsd (8), > + .BR lp (1), > diff -Nru cups-2.3.3op2/debian/patches/0004-Apple-AirPrint-support.patch > cups-2.3.3op2/debian/patches/0004-Apple-AirPrint-support.patch > --- cups-2.3.3op2/debian/patches/0004-Apple-AirPrint-support.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ cups-2.3.3op2/debian/patches/0004-Apple-AirPrint-support.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,90 @@ > +From: Till Kamppeter <till.kamppe...@gmail.com> > +Date: Tue, 9 Aug 2016 18:11:29 +0200 > +Subject: Apple AirPrint support > + > +Bug-Ubuntu: https://bugs.launchpad.net/bugs/711779 > +Bug-Ubuntu: https://bugs.launchpad.net/bugs/1054495 > +Bug-Debian: https://bugs.debian.org/700961 > +Bug: https://github.com/apple/cups/issues/4341 > +Bug: https://github.com/OpenPrinting/cups/pull/27 > +--- > + conf/mime.convs.in | 3 +++ > + conf/mime.types | 3 +++ > + scheduler/conf.c | 2 +- > + scheduler/dirsvc.c | 6 ++++++ > + scheduler/printers.c | 4 +++- > + 5 files changed, 16 insertions(+), 2 deletions(-) > + > +diff --git a/conf/mime.convs.in b/conf/mime.convs.in > +index 57b459d..e042e01 100644 > +--- a/conf/mime.convs.in > ++++ b/conf/mime.convs.in > +@@ -44,6 +44,9 @@ application/postscript > application/vnd.cups-postscript 66 pstops > + application/vnd.cups-raster image/pwg-raster 100 > rastertopwg > + application/vnd.cups-raster image/urf 100 > rastertopwg > + > ++# Needed for printing from iOS (AirPrint) clients > ++image/urf application/pdf 100 > - > ++ > + ######################################################################## > + # > + # Raw filter... > +diff --git a/conf/mime.types b/conf/mime.types > +index fcd6b6e..ebb0525 100644 > +--- a/conf/mime.types > ++++ b/conf/mime.types > +@@ -108,6 +108,9 @@ image/x-alias pix short(8,8) > short(8,24) > + image/x-bitmap bmp string(0,BM) + !printable(2,14) > + image/x-icon ico > + > ++# Needed for printing from iOS (AirPrint) clients > ++image/urf urf string(0,UNIRAST<00>) > ++ > + ######################################################################## > + # > + # Text files... > +diff --git a/scheduler/conf.c b/scheduler/conf.c > +index 74531a8..bfd1b0b 100644 > +--- a/scheduler/conf.c > ++++ b/scheduler/conf.c > +@@ -750,7 +750,7 @@ cupsdReadConfiguration(void) > + DefaultShared = CUPS_DEFAULT_DEFAULT_SHARED; > + > + #if defined(HAVE_DNSSD) || defined(HAVE_AVAHI) > +- cupsdSetString(&DNSSDSubTypes, "_cups,_print"); > ++ cupsdSetString(&DNSSDSubTypes, "_cups,_print,_universal"); > + cupsdClearString(&DNSSDHostName); > + #endif /* HAVE_DNSSD || HAVE_AVAHI */ > + > +diff --git a/scheduler/dirsvc.c b/scheduler/dirsvc.c > +index ddd3701..fb2a305 100644 > +--- a/scheduler/dirsvc.c > ++++ b/scheduler/dirsvc.c > +@@ -440,6 +440,12 @@ dnssdBuildTxtRecord( > + keyvalue[count ][0] = "pdl"; > + keyvalue[count++][1] = p->pdl ? p->pdl : "application/postscript"; > + > ++ /* iOS 6 does not accept this printer as AirPrint printer if there is > ++ no URF txt record or "URF=none", "DM3" is the minimum needed found > ++ by try and error */ > ++ keyvalue[count ][0] = "URF"; > ++ keyvalue[count++][1] = "DM3"; > ++ > + if (get_auth_info_required(p, air_str, sizeof(air_str))) > + { > + keyvalue[count ][0] = "air"; > +diff --git a/scheduler/printers.c b/scheduler/printers.c > +index 7e9a9f2..3e00874 100644 > +--- a/scheduler/printers.c > ++++ b/scheduler/printers.c > +@@ -3733,7 +3733,9 @@ add_printer_formats(cupsd_printer_t *p) /* I - > Printer */ > + } > + else if (!_cups_strcasecmp(type->super, "image")) > + { > +- if (!_cups_strcasecmp(type->type, "jpeg")) > ++ if (!_cups_strcasecmp(type->type, "urf")) > ++ strlcat(pdl, "image/urf,", sizeof(pdl)); > ++ else if (!_cups_strcasecmp(type->type, "jpeg")) > + strlcat(pdl, "image/jpeg,", sizeof(pdl)); > + else if (!_cups_strcasecmp(type->type, "png")) > + strlcat(pdl, "image/png,", sizeof(pdl)); > diff -Nru > cups-2.3.3op2/debian/patches/0004-Debian-Set-LogFileGroup-to-adm.patch > cups-2.3.3op2/debian/patches/0004-Debian-Set-LogFileGroup-to-adm.patch > --- cups-2.3.3op2/debian/patches/0004-Debian-Set-LogFileGroup-to-adm.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ cups-2.3.3op2/debian/patches/0004-Debian-Set-LogFileGroup-to-adm.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,23 +0,0 @@ > -From: Martin Pitt <mp...@debian.org> > -Date: Tue, 9 Aug 2016 18:11:38 +0200 > -Subject: Debian: Set LogFileGroup to adm > - > ---- > - conf/cups-files.conf.in | 4 ++++ > - 1 file changed, 4 insertions(+) > - > -diff --git a/conf/cups-files.conf.in b/conf/cups-files.conf.in > -index af11fcc..80ca351 100644 > ---- a/conf/cups-files.conf.in > -+++ b/conf/cups-files.conf.in > -@@ -29,6 +29,10 @@ SystemGroup @CUPS_SYSTEM_GROUPS@ > - #ConfigFilePerm 0@CUPS_CONFIG_FILE_PERM@ > - #LogFilePerm 0@CUPS_LOG_FILE_PERM@ > - > -+# Specifies the group name or ID that will be used for log files. > -+# The default group in Debian is "adm". > -+LogFileGroup adm > -+ > - # Location of the file logging all access to the scheduler; may be the name > - # "syslog". If not an absolute path, the value of ServerRoot is used as the > - # root directory. Also see the "AccessLogLevel" directive in cupsd.conf. > diff -Nru > cups-2.3.3op2/debian/patches/0005-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > > cups-2.3.3op2/debian/patches/0005-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > --- > cups-2.3.3op2/debian/patches/0005-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0005-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,62 +0,0 @@ > -From: Didier Raboud <o...@debian.org> > -Date: Tue, 9 Aug 2016 18:11:24 +0200 > -Subject: Debian: Move cupsd.conf.default from SERVERROOT to DATADIR > - > -Origin: vendor > -Bug: https://github.com/apple/cups/issues/4342 > -Bug: https://github.com/OpenPrinting/cups/pull/26 > -Bug-Debian: https://bugs.debian.org/640124 > ---- > - cgi-bin/admin.c | 6 +++++- > - conf/Makefile | 5 +++-- > - 2 files changed, 8 insertions(+), 3 deletions(-) > - > -diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c > -index c648938..5ff7501 100644 > ---- a/cgi-bin/admin.c > -+++ b/cgi-bin/admin.c > -@@ -1636,6 +1636,7 @@ do_config_server(http_t *http) /* I - HTTP > connection */ > - int ch; /* Character from file */ > - char filename[1024]; /* Filename */ > - const char *server_root; /* Location of config files */ > -+ const char *data_dir; /* Location of data files */ > - > - > - /* > -@@ -1719,7 +1720,10 @@ do_config_server(http_t *http) /* I - > HTTP connection */ > - * well... > - */ > - > -- strlcat(filename, ".default", sizeof(filename)); > -+ if ((data_dir = getenv("CUPS_DATADIR")) == NULL) > -+ data_dir = CUPS_DATADIR; > -+ > -+ snprintf(filename, sizeof(filename), "%s/cupsd.conf.default",data_dir); > - > - if (!stat(filename, &info) && info.st_size < (1024 * 1024) && > - (cupsd = cupsFileOpen(filename, "r")) != NULL) > -diff --git a/conf/Makefile b/conf/Makefile > -index e249e60..42a123f 100644 > ---- a/conf/Makefile > -+++ b/conf/Makefile > -@@ -70,7 +70,7 @@ install-data: > - else \ > - $(INSTALL_CONFIG) -g $(CUPS_GROUP) $$file $(SERVERROOT) > ; \ > - fi ; \ > -- $(INSTALL_CONFIG) -g $(CUPS_GROUP) $$file > $(SERVERROOT)/$$file.default; \ > -+ $(INSTALL_CONFIG) -g $(CUPS_GROUP) $$file > $(DATADIR)/$$file.default; \ > - done > - $(INSTALL_DIR) -m 755 $(DATADIR)/mime > - for file in $(REPLACE); do \ > -@@ -118,9 +118,10 @@ install-libs: > - # > - > - uninstall: > -- for file in $(KEEP) $(REPLACE) cupsd.conf.default; do \ > -+ for file in $(KEEP) $(REPLACE); do \ > - $(RM) $(SERVERROOT)/$$file; \ > - done > -+ $(RM) $(DATADIR)/cupsd.conf.default > - -$(RMDIR) $(SERVERROOT) > - for file in $(REPLACE); do \ > - $(RM) $(DATADIR)/mime/$$file; \ > diff -Nru > cups-2.3.3op2/debian/patches/0005-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > > cups-2.3.3op2/debian/patches/0005-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > --- > cups-2.3.3op2/debian/patches/0005-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0005-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,37 @@ > +From: Till Kampetter <till.kampet...@gmail.com> > +Date: Tue, 9 Aug 2016 18:11:36 +0200 > +Subject: Keep foomatic PPDs "(recommended)" stanzas in NickNames > + > +Bug-Upstream: https://github.com/OpenPrinting/cups/pull/33 > +--- > + scheduler/cups-driverd.cxx | 10 ---------- > + 1 file changed, 10 deletions(-) > + > +diff --git a/scheduler/cups-driverd.cxx b/scheduler/cups-driverd.cxx > +index 85516eb..874eb3c 100644 > +--- a/scheduler/cups-driverd.cxx > ++++ b/scheduler/cups-driverd.cxx > +@@ -240,7 +240,6 @@ add_ppd(const char *filename, /* I - PPD > filename */ > + const char *scheme) /* I - PPD scheme */ > + { > + ppd_info_t *ppd; /* PPD */ > +- char *recommended; /* Foomatic driver string */ > + > + > + /* > +@@ -278,15 +277,6 @@ add_ppd(const char *filename, /* I - PPD > filename */ > + strlcpy(ppd->record.device_id, device_id, sizeof(ppd->record.device_id)); > + strlcpy(ppd->record.scheme, scheme, sizeof(ppd->record.scheme)); > + > +- /* > +- * Strip confusing (and often wrong) "recommended" suffix added by > +- * Foomatic drivers... > +- */ > +- > +- if ((recommended = strstr(ppd->record.make_and_model, > +- " (recommended)")) != NULL) > +- *recommended = '\0'; > +- > + /* > + * Add the PPD to the PPD arrays... > + */ > diff -Nru > cups-2.3.3op2/debian/patches/0006-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > > cups-2.3.3op2/debian/patches/0006-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > --- > cups-2.3.3op2/debian/patches/0006-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0006-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,27 +0,0 @@ > -From: Martin Pitt <mp...@debian.org> > -Date: Tue, 9 Aug 2016 18:11:41 +0200 > -Subject: Debian: Do not alter the permissions of cupsd.conf, ever > - > -Origin: vendor > -Bug: https://github.com/OpenPrinting/cups/pull/36 > ---- > - scheduler/conf.c | 2 ++ > - 1 file changed, 2 insertions(+) > - > -diff --git a/scheduler/conf.c b/scheduler/conf.c > -index bfd1b0b..c8cd5ea 100644 > ---- a/scheduler/conf.c > -+++ b/scheduler/conf.c > -@@ -1140,10 +1140,12 @@ cupsdReadConfiguration(void) > - Group, 1, 1) < 0 || > - cupsdCheckPermissions(ServerRoot, "ssl", 0700, RunUser, > - Group, 1, 0) < 0 || > -+ /* Never alter permissions of central conffile > - cupsdCheckPermissions(ConfigurationFile, NULL, ConfigFilePerm, > RunUser, > - Group, 0, 0) < 0 || > - cupsdCheckPermissions(CupsFilesFile, NULL, ConfigFilePerm, RunUser, > - Group, 0, 0) < 0 || > -+ */ > - cupsdCheckPermissions(ServerRoot, "classes.conf", 0600, RunUser, > - Group, 0, 0) < 0 || > - cupsdCheckPermissions(ServerRoot, "printers.conf", 0600, RunUser, > diff -Nru > cups-2.3.3op2/debian/patches/0006-Debian-Set-LogFileGroup-to-adm.patch > cups-2.3.3op2/debian/patches/0006-Debian-Set-LogFileGroup-to-adm.patch > --- cups-2.3.3op2/debian/patches/0006-Debian-Set-LogFileGroup-to-adm.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ cups-2.3.3op2/debian/patches/0006-Debian-Set-LogFileGroup-to-adm.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,23 @@ > +From: Martin Pitt <mp...@debian.org> > +Date: Tue, 9 Aug 2016 18:11:38 +0200 > +Subject: Debian: Set LogFileGroup to adm > + > +--- > + conf/cups-files.conf.in | 4 ++++ > + 1 file changed, 4 insertions(+) > + > +diff --git a/conf/cups-files.conf.in b/conf/cups-files.conf.in > +index af11fcc..80ca351 100644 > +--- a/conf/cups-files.conf.in > ++++ b/conf/cups-files.conf.in > +@@ -29,6 +29,10 @@ SystemGroup @CUPS_SYSTEM_GROUPS@ > + #ConfigFilePerm 0@CUPS_CONFIG_FILE_PERM@ > + #LogFilePerm 0@CUPS_LOG_FILE_PERM@ > + > ++# Specifies the group name or ID that will be used for log files. > ++# The default group in Debian is "adm". > ++LogFileGroup adm > ++ > + # Location of the file logging all access to the scheduler; may be the name > + # "syslog". If not an absolute path, the value of ServerRoot is used as the > + # root directory. Also see the "AccessLogLevel" directive in cupsd.conf. > diff -Nru > cups-2.3.3op2/debian/patches/0007-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > > cups-2.3.3op2/debian/patches/0007-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > --- > cups-2.3.3op2/debian/patches/0007-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0007-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,62 @@ > +From: Didier Raboud <o...@debian.org> > +Date: Tue, 9 Aug 2016 18:11:24 +0200 > +Subject: Debian: Move cupsd.conf.default from SERVERROOT to DATADIR > + > +Origin: vendor > +Bug: https://github.com/apple/cups/issues/4342 > +Bug: https://github.com/OpenPrinting/cups/pull/26 > +Bug-Debian: https://bugs.debian.org/640124 > +--- > + cgi-bin/admin.c | 6 +++++- > + conf/Makefile | 5 +++-- > + 2 files changed, 8 insertions(+), 3 deletions(-) > + > +diff --git a/cgi-bin/admin.c b/cgi-bin/admin.c > +index c648938..5ff7501 100644 > +--- a/cgi-bin/admin.c > ++++ b/cgi-bin/admin.c > +@@ -1636,6 +1636,7 @@ do_config_server(http_t *http) /* I - HTTP > connection */ > + int ch; /* Character from file */ > + char filename[1024]; /* Filename */ > + const char *server_root; /* Location of config files */ > ++ const char *data_dir; /* Location of data files */ > + > + > + /* > +@@ -1719,7 +1720,10 @@ do_config_server(http_t *http) /* I - > HTTP connection */ > + * well... > + */ > + > +- strlcat(filename, ".default", sizeof(filename)); > ++ if ((data_dir = getenv("CUPS_DATADIR")) == NULL) > ++ data_dir = CUPS_DATADIR; > ++ > ++ snprintf(filename, sizeof(filename), "%s/cupsd.conf.default",data_dir); > + > + if (!stat(filename, &info) && info.st_size < (1024 * 1024) && > + (cupsd = cupsFileOpen(filename, "r")) != NULL) > +diff --git a/conf/Makefile b/conf/Makefile > +index e249e60..42a123f 100644 > +--- a/conf/Makefile > ++++ b/conf/Makefile > +@@ -70,7 +70,7 @@ install-data: > + else \ > + $(INSTALL_CONFIG) -g $(CUPS_GROUP) $$file $(SERVERROOT) > ; \ > + fi ; \ > +- $(INSTALL_CONFIG) -g $(CUPS_GROUP) $$file > $(SERVERROOT)/$$file.default; \ > ++ $(INSTALL_CONFIG) -g $(CUPS_GROUP) $$file > $(DATADIR)/$$file.default; \ > + done > + $(INSTALL_DIR) -m 755 $(DATADIR)/mime > + for file in $(REPLACE); do \ > +@@ -118,9 +118,10 @@ install-libs: > + # > + > + uninstall: > +- for file in $(KEEP) $(REPLACE) cupsd.conf.default; do \ > ++ for file in $(KEEP) $(REPLACE); do \ > + $(RM) $(SERVERROOT)/$$file; \ > + done > ++ $(RM) $(DATADIR)/cupsd.conf.default > + -$(RMDIR) $(SERVERROOT) > + for file in $(REPLACE); do \ > + $(RM) $(DATADIR)/mime/$$file; \ > diff -Nru > cups-2.3.3op2/debian/patches/0007-Debian-Show-compile-command-lines.patch > cups-2.3.3op2/debian/patches/0007-Debian-Show-compile-command-lines.patch > --- cups-2.3.3op2/debian/patches/0007-Debian-Show-compile-command-lines.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ cups-2.3.3op2/debian/patches/0007-Debian-Show-compile-command-lines.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,20 +0,0 @@ > -From: Till Kampetter <till.kampet...@gmail.com> > -Date: Tue, 9 Aug 2016 18:11:43 +0200 > -Subject: Debian: Show compile command lines > - > ---- > - Makedefs.in | 1 - > - 1 file changed, 1 deletion(-) > - > -diff --git a/Makedefs.in b/Makedefs.in > -index 9ee7585..038bb94 100644 > ---- a/Makedefs.in > -+++ b/Makedefs.in > -@@ -263,7 +263,6 @@ USBQUIRKS = @USBQUIRKS@ > - # Rules... > - # > - > --.SILENT: > - .SUFFIXES: .a .c .cxx .h .o > - > - .c.o: > diff -Nru > cups-2.3.3op2/debian/patches/0008-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > > cups-2.3.3op2/debian/patches/0008-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > --- > cups-2.3.3op2/debian/patches/0008-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0008-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,27 @@ > +From: Martin Pitt <mp...@debian.org> > +Date: Tue, 9 Aug 2016 18:11:41 +0200 > +Subject: Debian: Do not alter the permissions of cupsd.conf, ever > + > +Origin: vendor > +Bug: https://github.com/OpenPrinting/cups/pull/36 > +--- > + scheduler/conf.c | 2 ++ > + 1 file changed, 2 insertions(+) > + > +diff --git a/scheduler/conf.c b/scheduler/conf.c > +index bfd1b0b..c8cd5ea 100644 > +--- a/scheduler/conf.c > ++++ b/scheduler/conf.c > +@@ -1140,10 +1140,12 @@ cupsdReadConfiguration(void) > + Group, 1, 1) < 0 || > + cupsdCheckPermissions(ServerRoot, "ssl", 0700, RunUser, > + Group, 1, 0) < 0 || > ++ /* Never alter permissions of central conffile > + cupsdCheckPermissions(ConfigurationFile, NULL, ConfigFilePerm, > RunUser, > + Group, 0, 0) < 0 || > + cupsdCheckPermissions(CupsFilesFile, NULL, ConfigFilePerm, RunUser, > + Group, 0, 0) < 0 || > ++ */ > + cupsdCheckPermissions(ServerRoot, "classes.conf", 0600, RunUser, > + Group, 0, 0) < 0 || > + cupsdCheckPermissions(ServerRoot, "printers.conf", 0600, RunUser, > diff -Nru > cups-2.3.3op2/debian/patches/0008-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > > cups-2.3.3op2/debian/patches/0008-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > --- > cups-2.3.3op2/debian/patches/0008-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0008-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,49 +0,0 @@ > -From: Didier Raboud <o...@debian.org> > -Date: Tue, 9 Aug 2016 18:11:49 +0200 > -Subject: Debian: Use dpkg-architecture in cups-config to make it > - architecture-independant > - > - Also filter -L/usr/lib/(triplet) out of LDFLAGS. > - Also strip unnecessary libs from --libs. > - Also launch krb5-config at runtime to avoid getting usr/lib/(triplet) from > krb5-config > - > -Bug-Debian: https://bugs.debian.org/741519 > -Bug-Debian: https://bugs.debian.org/727058 > -Bug-Debian: https://bugs.debian.org/730838 > -Bug-Debian: https://bugs.debian.org/751157 > ---- > - cups-config.in | 7 ++++--- > - 1 file changed, 4 insertions(+), 3 deletions(-) > - > -diff --git a/cups-config.in b/cups-config.in > -index 9dd094d..b073a07 100755 > ---- a/cups-config.in > -+++ b/cups-config.in > -@@ -17,7 +17,7 @@ prefix=@prefix@ > - exec_prefix=@exec_prefix@ > - bindir=@bindir@ > - includedir=@includedir@ > --libdir=@libdir@ > -+libdir=${prefix}/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH) > - datarootdir=@datadir@ > - datadir=@datadir@ > - sysconfdir=@sysconfdir@ > -@@ -29,7 +29,8 @@ INSTALLSTATIC=@INSTALLSTATIC@ > - # flags for compiler and linker... > - CFLAGS="" > - LDFLAGS="@EXPORT_LDFLAGS@" > --LIBS="@LIBGSSAPI@ @DNSSDLIBS@ @EXPORT_SSLLIBS@ @LIBZ@ @LIBS@" > -+LIBGSSAPI=`[ ! -x /usr/bin/krb5-config ] || /usr/bin/krb5-config --libs` > -+LIBS="$LIBGSSAPI @DNSSDLIBS@ @EXPORT_SSLLIBS@ @LIBZ@ @LIBS@" > - > - # Check for local invocation... > - selfdir=`dirname $0` > -@@ -43,7 +44,7 @@ else > - CFLAGS="$CFLAGS -I$includedir" > - fi > - > -- if test $libdir != /usr/lib -a $libdir != /usr/lib32 -a $libdir != > /usr/lib64; then > -+ if test $libdir != /usr/lib -a $libdir != /usr/lib32 -a $libdir != > /usr/lib64 -a $libdir != /usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH); > then > - LDFLAGS="$LDFLAGS -L$libdir" > - fi > - fi > diff -Nru > cups-2.3.3op2/debian/patches/0009-Debian-Build-mantohtml-with-the-build-architecture-c.patch > > cups-2.3.3op2/debian/patches/0009-Debian-Build-mantohtml-with-the-build-architecture-c.patch > --- > cups-2.3.3op2/debian/patches/0009-Debian-Build-mantohtml-with-the-build-architecture-c.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0009-Debian-Build-mantohtml-with-the-build-architecture-c.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,110 +0,0 @@ > -From: Helmut Grohne <hel...@subdivi.de> > -Date: Tue, 9 Aug 2016 18:11:49 +0200 > -Subject: Debian: Build mantohtml with the build architecture compiler > - > -mantohtml is run during build. Thus it needs to be built with the build > -architecture compiler (or execution fails). The obvious part is switching to > -CC_FOR_BUILD. That also depends on it not requiring any other cups > components. > -In particular, removing uses of strlcpy and replacing host architecture- > -specific includes is thus needed. > - > -Bug-Debian: https://bugs.debian.org/837936 > ---- > - Makedefs.in | 1 + > - configure.ac | 9 +++++++++ > - man/Makefile | 5 ++--- > - man/mantohtml.c | 15 ++++++++++----- > - 4 files changed, 22 insertions(+), 8 deletions(-) > - > -diff --git a/Makedefs.in b/Makedefs.in > -index 038bb94..291099c 100644 > ---- a/Makedefs.in > -+++ b/Makedefs.in > -@@ -22,6 +22,7 @@ CUPS_VERSION = @CUPS_VERSION@ > - AR = @AR@ > - AWK = @AWK@ > - CC = @LIBTOOL_CC@ @CC@ > -+CC_FOR_BUILD = @CC_FOR_BUILD@ > - CHMOD = @CHMOD@ > - CXX = @LIBTOOL_CXX@ @CXX@ > - DSO = @DSO@ > -diff --git a/configure.ac b/configure.ac > -index 93a4b97..b60b832 100644 > ---- a/configure.ac > -+++ b/configure.ac > -@@ -20,6 +20,15 @@ sinclude(config-scripts/cups-common.m4) > - sinclude(config-scripts/cups-directories.m4) > - sinclude(config-scripts/cups-manpages.m4) > - > -+AC_MSG_CHECKING([for build system compiler]) > -+if test "$cross_compiling" = yes; then > -+ CC_FOR_BUILD=${CC_FOR_BUILD-cc} > -+else > -+ CC_FOR_BUILD=${CC} > -+fi > -+AC_MSG_RESULT(${CC_FOR_BUILD}) > -+AC_SUBST(CC_FOR_BUILD) > -+ > - sinclude(config-scripts/cups-sharedlibs.m4) > - sinclude(config-scripts/cups-libtool.m4) > - sinclude(config-scripts/cups-compiler.m4) > -diff --git a/man/Makefile b/man/Makefile > -index 621fe60..e01591a 100644 > ---- a/man/Makefile > -+++ b/man/Makefile > -@@ -222,6 +222,5 @@ html: $(MAN1) $(MAN5) $(MAN7) $(MAN8) mantohtml > - ./mantohtml $$file >../doc/help/man-`basename $$file .8`.html; \ > - done > - > --mantohtml: mantohtml.o ../cups/$(LIBCUPSSTATIC) > -- $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ mantohtml.o $(LINKCUPSSTATIC) > -- $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ > -+mantohtml: mantohtml.c > -+ $(CC_FOR_BUILD) -o $@ $< > -diff --git a/man/mantohtml.c b/man/mantohtml.c > -index 2a9353a..6223f17 100644 > ---- a/man/mantohtml.c > -+++ b/man/mantohtml.c > -@@ -11,8 +11,10 @@ > - * Include necessary headers. > - */ > - > --#include <cups/string-private.h> > --#include <cups/array-private.h> > -+#include <ctype.h> > -+#include <stdio.h> > -+#include <stdlib.h> > -+#include <string.h> > - #include <unistd.h> > - > - > -@@ -811,7 +813,8 @@ main(int argc, /* I - Number > of command-line args */ > - * Anchor for HTML output... > - */ > - > -- strlcpy(anchor, line + 4, sizeof(anchor)); > -+ strncpy(anchor, line + 4, sizeof(anchor) - 1); > -+ anchor[sizeof(anchor) - 1] = '\0'; > - } > - else if (strncmp(line, ".\\\"", 3)) > - { > -@@ -940,7 +943,8 @@ html_alternate(const char *s, /* I - String */ > - manfile[1024], /* Man page filename */ > - manurl[1024]; /* Man page URL */ > - > -- strlcpy(name, s, sizeof(name)); > -+ strncpy(name, s, sizeof(name) - 1); > -+ name[sizeof(name) - 1] = '\0'; > - if ((size_t)(end - s) < sizeof(name)) > - name[end - s] = '\0'; > - > -@@ -1173,7 +1177,8 @@ html_fputs(const char *s, /* I - String > */ > - if (end[-1] == ',' || end[-1] == '.' || end[-1] == ')') > - end --; > - > -- strlcpy(temp, s, sizeof(temp)); > -+ strncpy(temp, s, sizeof(temp) - 1); > -+ temp[sizeof(temp) - 1] = '\0'; > - if ((size_t)(end -s) < sizeof(temp)) > - temp[end - s] = '\0'; > - > diff -Nru > cups-2.3.3op2/debian/patches/0009-Debian-Show-compile-command-lines.patch > cups-2.3.3op2/debian/patches/0009-Debian-Show-compile-command-lines.patch > --- cups-2.3.3op2/debian/patches/0009-Debian-Show-compile-command-lines.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ cups-2.3.3op2/debian/patches/0009-Debian-Show-compile-command-lines.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,20 @@ > +From: Till Kampetter <till.kampet...@gmail.com> > +Date: Tue, 9 Aug 2016 18:11:43 +0200 > +Subject: Debian: Show compile command lines > + > +--- > + Makedefs.in | 1 - > + 1 file changed, 1 deletion(-) > + > +diff --git a/Makedefs.in b/Makedefs.in > +index 9ee7585..038bb94 100644 > +--- a/Makedefs.in > ++++ b/Makedefs.in > +@@ -263,7 +263,6 @@ USBQUIRKS = @USBQUIRKS@ > + # Rules... > + # > + > +-.SILENT: > + .SUFFIXES: .a .c .cxx .h .o > + > + .c.o: > diff -Nru > cups-2.3.3op2/debian/patches/0010-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > > cups-2.3.3op2/debian/patches/0010-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > --- > cups-2.3.3op2/debian/patches/0010-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0010-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,23 +0,0 @@ > -From: Didier Raboud <o...@debian.org> > -Date: Wed, 3 Feb 2021 14:27:34 +0100 > -Subject: Debian: Reproducibility: httpAddrGetHostname() test fails under > - reprotest; skip it > - > ---- > - cups/testhttp.c | 3 +-- > - 1 file changed, 1 insertion(+), 2 deletions(-) > - > -diff --git a/cups/testhttp.c b/cups/testhttp.c > -index dfb767c..8cb87d6 100644 > ---- a/cups/testhttp.c > -+++ b/cups/testhttp.c > -@@ -416,8 +416,7 @@ main(int argc, /* I - Number > of command-line arguments */ > - } > - else > - { > -- failures ++; > -- puts("FAIL"); > -+ puts("FAIL (Debian Reproducibility; failure allowed, as this is known > to fail under reprotest"); > - } > - > - /* > diff -Nru > cups-2.3.3op2/debian/patches/0010-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > > cups-2.3.3op2/debian/patches/0010-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > --- > cups-2.3.3op2/debian/patches/0010-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0010-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,49 @@ > +From: Didier Raboud <o...@debian.org> > +Date: Tue, 9 Aug 2016 18:11:49 +0200 > +Subject: Debian: Use dpkg-architecture in cups-config to make it > + architecture-independant > + > + Also filter -L/usr/lib/(triplet) out of LDFLAGS. > + Also strip unnecessary libs from --libs. > + Also launch krb5-config at runtime to avoid getting usr/lib/(triplet) from > krb5-config > + > +Bug-Debian: https://bugs.debian.org/741519 > +Bug-Debian: https://bugs.debian.org/727058 > +Bug-Debian: https://bugs.debian.org/730838 > +Bug-Debian: https://bugs.debian.org/751157 > +--- > + cups-config.in | 7 ++++--- > + 1 file changed, 4 insertions(+), 3 deletions(-) > + > +diff --git a/cups-config.in b/cups-config.in > +index 9dd094d..b073a07 100755 > +--- a/cups-config.in > ++++ b/cups-config.in > +@@ -17,7 +17,7 @@ prefix=@prefix@ > + exec_prefix=@exec_prefix@ > + bindir=@bindir@ > + includedir=@includedir@ > +-libdir=@libdir@ > ++libdir=${prefix}/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH) > + datarootdir=@datadir@ > + datadir=@datadir@ > + sysconfdir=@sysconfdir@ > +@@ -29,7 +29,8 @@ INSTALLSTATIC=@INSTALLSTATIC@ > + # flags for compiler and linker... > + CFLAGS="" > + LDFLAGS="@EXPORT_LDFLAGS@" > +-LIBS="@LIBGSSAPI@ @DNSSDLIBS@ @EXPORT_SSLLIBS@ @LIBZ@ @LIBS@" > ++LIBGSSAPI=`[ ! -x /usr/bin/krb5-config ] || /usr/bin/krb5-config --libs` > ++LIBS="$LIBGSSAPI @DNSSDLIBS@ @EXPORT_SSLLIBS@ @LIBZ@ @LIBS@" > + > + # Check for local invocation... > + selfdir=`dirname $0` > +@@ -43,7 +44,7 @@ else > + CFLAGS="$CFLAGS -I$includedir" > + fi > + > +- if test $libdir != /usr/lib -a $libdir != /usr/lib32 -a $libdir != > /usr/lib64; then > ++ if test $libdir != /usr/lib -a $libdir != /usr/lib32 -a $libdir != > /usr/lib64 -a $libdir != /usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH); > then > + LDFLAGS="$LDFLAGS -L$libdir" > + fi > + fi > diff -Nru > cups-2.3.3op2/debian/patches/0011-Debian-Build-mantohtml-with-the-build-architecture-c.patch > > cups-2.3.3op2/debian/patches/0011-Debian-Build-mantohtml-with-the-build-architecture-c.patch > --- > cups-2.3.3op2/debian/patches/0011-Debian-Build-mantohtml-with-the-build-architecture-c.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0011-Debian-Build-mantohtml-with-the-build-architecture-c.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,110 @@ > +From: Helmut Grohne <hel...@subdivi.de> > +Date: Tue, 9 Aug 2016 18:11:49 +0200 > +Subject: Debian: Build mantohtml with the build architecture compiler > + > +mantohtml is run during build. Thus it needs to be built with the build > +architecture compiler (or execution fails). The obvious part is switching to > +CC_FOR_BUILD. That also depends on it not requiring any other cups > components. > +In particular, removing uses of strlcpy and replacing host architecture- > +specific includes is thus needed. > + > +Bug-Debian: https://bugs.debian.org/837936 > +--- > + Makedefs.in | 1 + > + configure.ac | 9 +++++++++ > + man/Makefile | 5 ++--- > + man/mantohtml.c | 15 ++++++++++----- > + 4 files changed, 22 insertions(+), 8 deletions(-) > + > +diff --git a/Makedefs.in b/Makedefs.in > +index 038bb94..291099c 100644 > +--- a/Makedefs.in > ++++ b/Makedefs.in > +@@ -22,6 +22,7 @@ CUPS_VERSION = @CUPS_VERSION@ > + AR = @AR@ > + AWK = @AWK@ > + CC = @LIBTOOL_CC@ @CC@ > ++CC_FOR_BUILD = @CC_FOR_BUILD@ > + CHMOD = @CHMOD@ > + CXX = @LIBTOOL_CXX@ @CXX@ > + DSO = @DSO@ > +diff --git a/configure.ac b/configure.ac > +index 93a4b97..b60b832 100644 > +--- a/configure.ac > ++++ b/configure.ac > +@@ -20,6 +20,15 @@ sinclude(config-scripts/cups-common.m4) > + sinclude(config-scripts/cups-directories.m4) > + sinclude(config-scripts/cups-manpages.m4) > + > ++AC_MSG_CHECKING([for build system compiler]) > ++if test "$cross_compiling" = yes; then > ++ CC_FOR_BUILD=${CC_FOR_BUILD-cc} > ++else > ++ CC_FOR_BUILD=${CC} > ++fi > ++AC_MSG_RESULT(${CC_FOR_BUILD}) > ++AC_SUBST(CC_FOR_BUILD) > ++ > + sinclude(config-scripts/cups-sharedlibs.m4) > + sinclude(config-scripts/cups-libtool.m4) > + sinclude(config-scripts/cups-compiler.m4) > +diff --git a/man/Makefile b/man/Makefile > +index 621fe60..e01591a 100644 > +--- a/man/Makefile > ++++ b/man/Makefile > +@@ -222,6 +222,5 @@ html: $(MAN1) $(MAN5) $(MAN7) $(MAN8) mantohtml > + ./mantohtml $$file >../doc/help/man-`basename $$file .8`.html; \ > + done > + > +-mantohtml: mantohtml.o ../cups/$(LIBCUPSSTATIC) > +- $(LD_CC) $(ARCHFLAGS) $(ALL_LDFLAGS) -o $@ mantohtml.o $(LINKCUPSSTATIC) > +- $(CODE_SIGN) -s "$(CODE_SIGN_IDENTITY)" $@ > ++mantohtml: mantohtml.c > ++ $(CC_FOR_BUILD) -o $@ $< > +diff --git a/man/mantohtml.c b/man/mantohtml.c > +index 2a9353a..6223f17 100644 > +--- a/man/mantohtml.c > ++++ b/man/mantohtml.c > +@@ -11,8 +11,10 @@ > + * Include necessary headers. > + */ > + > +-#include <cups/string-private.h> > +-#include <cups/array-private.h> > ++#include <ctype.h> > ++#include <stdio.h> > ++#include <stdlib.h> > ++#include <string.h> > + #include <unistd.h> > + > + > +@@ -811,7 +813,8 @@ main(int argc, /* I - Number > of command-line args */ > + * Anchor for HTML output... > + */ > + > +- strlcpy(anchor, line + 4, sizeof(anchor)); > ++ strncpy(anchor, line + 4, sizeof(anchor) - 1); > ++ anchor[sizeof(anchor) - 1] = '\0'; > + } > + else if (strncmp(line, ".\\\"", 3)) > + { > +@@ -940,7 +943,8 @@ html_alternate(const char *s, /* I - String */ > + manfile[1024], /* Man page filename */ > + manurl[1024]; /* Man page URL */ > + > +- strlcpy(name, s, sizeof(name)); > ++ strncpy(name, s, sizeof(name) - 1); > ++ name[sizeof(name) - 1] = '\0'; > + if ((size_t)(end - s) < sizeof(name)) > + name[end - s] = '\0'; > + > +@@ -1173,7 +1177,8 @@ html_fputs(const char *s, /* I - String > */ > + if (end[-1] == ',' || end[-1] == '.' || end[-1] == ')') > + end --; > + > +- strlcpy(temp, s, sizeof(temp)); > ++ strncpy(temp, s, sizeof(temp) - 1); > ++ temp[sizeof(temp) - 1] = '\0'; > + if ((size_t)(end -s) < sizeof(temp)) > + temp[end - s] = '\0'; > + > diff -Nru > cups-2.3.3op2/debian/patches/0011-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > > cups-2.3.3op2/debian/patches/0011-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > --- > cups-2.3.3op2/debian/patches/0011-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0011-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,23 +0,0 @@ > -From: Didier Raboud <o...@debian.org> > -Date: Wed, 3 Feb 2021 16:30:08 +0100 > -Subject: Debian: Reproducibility: Do not run stp tests as root > - > -Reprotest insist in running these tests as root; skip them there. > ---- > - test/run-stp-tests.sh | 3 ++- > - 1 file changed, 2 insertions(+), 1 deletion(-) > - > -diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh > -index 4498a8c..ce868ea 100755 > ---- a/test/run-stp-tests.sh > -+++ b/test/run-stp-tests.sh > -@@ -19,7 +19,8 @@ argcount=$# > - > - if test "x`id -u`" = x0; then > - echo Please run this as a normal user. Not supported when run as root. > -- exit 1 > -+ echo "Debian Reproducibility: Skipping allowed, as this is known to > break under reprotest. This message MUST NOT be visible in normal Debian > buildd logs." > -+ exit 0 > - fi > - > - # > diff -Nru > cups-2.3.3op2/debian/patches/0012-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > > cups-2.3.3op2/debian/patches/0012-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > --- > cups-2.3.3op2/debian/patches/0012-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0012-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,23 @@ > +From: Didier Raboud <o...@debian.org> > +Date: Wed, 3 Feb 2021 14:27:34 +0100 > +Subject: Debian: Reproducibility: httpAddrGetHostname() test fails under > + reprotest; skip it > + > +--- > + cups/testhttp.c | 3 +-- > + 1 file changed, 1 insertion(+), 2 deletions(-) > + > +diff --git a/cups/testhttp.c b/cups/testhttp.c > +index dfb767c..8cb87d6 100644 > +--- a/cups/testhttp.c > ++++ b/cups/testhttp.c > +@@ -416,8 +416,7 @@ main(int argc, /* I - Number > of command-line arguments */ > + } > + else > + { > +- failures ++; > +- puts("FAIL"); > ++ puts("FAIL (Debian Reproducibility; failure allowed, as this is known > to fail under reprotest"); > + } > + > + /* > diff -Nru > cups-2.3.3op2/debian/patches/0012-Debian-Reproducibility-Run-testlang-for-each-provide.patch > > cups-2.3.3op2/debian/patches/0012-Debian-Reproducibility-Run-testlang-for-each-provide.patch > --- > cups-2.3.3op2/debian/patches/0012-Debian-Reproducibility-Run-testlang-for-each-provide.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0012-Debian-Reproducibility-Run-testlang-for-each-provide.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,30 +0,0 @@ > -From: Didier Raboud <o...@debian.org> > -Date: Wed, 3 Feb 2021 16:20:20 +0100 > -Subject: Debian: Reproducibility: Run testlang for each provided CUPS locale > -MIME-Version: 1.0 > -Content-Type: text/plain; charset="utf-8" > -Content-Transfer-Encoding: 8bit > - > -… and only for these. > - > -Of the build environment forces LC_ALL to a non-provided locale, the build > will fail. > ---- > - cups/Makefile | 4 ++-- > - 1 file changed, 2 insertions(+), 2 deletions(-) > - > -diff --git a/cups/Makefile b/cups/Makefile > -index 4e2aa6d..2068349 100644 > ---- a/cups/Makefile > -+++ b/cups/Makefile > -@@ -639,9 +639,9 @@ testlang: testlang.o $(LIBCUPSSTATIC) > - lang=`basename $$po .po | sed -e '1,$$s/^cups_//'`; \ > - $(MKDIR) locale/$$lang; \ > - $(LN) ../../$$po locale/$$lang; \ > -+ echo Running language API tests for $$lang...; \ > -+ LOCALEDIR=locale ./testlang -l $$lang; \ > - done > -- echo Running language API tests... > -- LOCALEDIR=locale ./testlang > - > - > - # > diff -Nru > cups-2.3.3op2/debian/patches/0013-Debian-po4a-infrastructure-and-translations-for-manp.patch > > cups-2.3.3op2/debian/patches/0013-Debian-po4a-infrastructure-and-translations-for-manp.patch > --- > cups-2.3.3op2/debian/patches/0013-Debian-po4a-infrastructure-and-translations-for-manp.patch > 2021-02-12 14:09:29.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0013-Debian-po4a-infrastructure-and-translations-for-manp.patch > 1970-01-01 01:00:00.000000000 +0100 > @@ -1,341 +0,0 @@ > -From: Didier Raboud <o...@debian.org> > -Date: Tue, 9 Aug 2016 18:11:50 +0200 > -Subject: Debian: po4a infrastructure and translations for manpages > -MIME-Version: 1.0 > -Content-Type: text/plain; charset="utf-8" > -Content-Transfer-Encoding: 8bit > - > -Author: Nicolas François <nicolas.franc...@centraliens.net>, Helge > Kreutzmann <deb...@helgefjell.de> > -Origin: vendor > -Bug-Debian: https://bugs.debian.org/478597 > ---- > - man/Makefile | 17 +++- > - man/Makefile.l10n | 235 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++ > - man/de/Makefile | 7 ++ > - man/fr/Makefile | 7 ++ > - 4 files changed, 264 insertions(+), 2 deletions(-) > - create mode 100644 man/Makefile.l10n > - create mode 100644 man/de/Makefile > - create mode 100644 man/fr/Makefile > - > -diff --git a/man/Makefile b/man/Makefile > -index e01591a..48f06c4 100644 > ---- a/man/Makefile > -+++ b/man/Makefile > -@@ -63,12 +63,18 @@ MAN8 = cupsaccept.8 \ > - lpmove.8 \ > - lpc.8 > - > -+LANGUAGES=de fr > - > - # > - # Make everything... > - # > - > --all: $(MAN1) $(MAN5) $(MAN7) $(MAN8) > -+all: $(MAN1) $(MAN5) $(MAN7) $(MAN8) translations > -+ > -+translations: > -+ # Update the translations and build the translated material > -+ po4a --previous ../debian/manpage-po4a/cups.cfg > -+ for lang in $(LANGUAGES); do $(MAKE) -C $$lang; done > - > - > - # > -@@ -91,6 +97,12 @@ unittests: > - > - clean: > - $(RM) mantohtml mantohtml.o > -+ $(RM) $(MAN1) $(MAN5) $(MAN7) $(MAN8) > -+ for lang in $(LANGUAGES); do $(MAKE) -C $$lang clean; done > -+ # Make sure the PO files are updated and remove generated > -+ # translations. > -+ po4a --previous --rm-translations ../debian/manpage-po4a/cups.cfg > -+ $(RM) ../debian/manpage-po4a/po/cups.pot > - > - > - # > -@@ -142,6 +154,7 @@ install-data: all > - $(RM) $(MANDIR)/man8/$$file; \ > - $(LN) cupsd-helper.8 $(MANDIR)/man8/$$file; \ > - done > -+ for lang in $(LANGUAGES); do $(MAKE) -C $$lang install; done > - > - > - # > -@@ -189,7 +202,7 @@ uninstall: > - for file in $(MAN8) cupsenable.8 cupsreject.8 cups-deviced.8 > cups-driverd.8 cups-exec.8; do \ > - $(RM) $(MANDIR)/man8/$$file; \ > - done > -- -$(RMDIR) $(MANDIR)/man8 > -+ -$(RMDIR) $(AMANDIR)/man$(MAN8DIR) > - > - > - # > -diff --git a/man/Makefile.l10n b/man/Makefile.l10n > -new file mode 100644 > -index 0000000..08390f5 > ---- /dev/null > -+++ b/man/Makefile.l10n > -@@ -0,0 +1,235 @@ > -+# > -+# Man page makefile for CUPS. > -+# > -+# Copyright © 2007-2019 by Apple Inc. > -+# Copyright © 1993-2006 by Easy Software Products. > -+# > -+# Licensed under Apache License v2.0. See the file "LICENSE" for more > -+# information. > -+# > -+ > -+include ../../Makedefs > -+ > -+ > -+# > -+# Man pages... > -+# > -+ > -+MAN1 = cancel.1 \ > -+ cups.1 \ > -+ cups-config.1 \ > -+ cupstestppd.1 \ > -+ ippeveprinter.1 \ > -+ $(IPPFIND_MAN) \ > -+ ipptool.1 \ > -+ lp.1 \ > -+ lpoptions.1 \ > -+ lpq.1 \ > -+ lprm.1 \ > -+ lpr.1 \ > -+ lpstat.1 \ > -+ ppdc.1 \ > -+ ppdhtml.1 \ > -+ ppdi.1 \ > -+ ppdmerge.1 \ > -+ ppdpo.1 > -+MAN5 = classes.conf.5 \ > -+ client.conf.5 \ > -+ cups-files.conf.5 \ > -+ cups-snmp.conf.5 \ > -+ cupsd.conf.5 \ > -+ cupsd-logs.5 \ > -+ ipptoolfile.5 \ > -+ mailto.conf.5 \ > -+ mime.convs.5 \ > -+ mime.types.5 \ > -+ ppdcfile.5 \ > -+ printers.conf.5 \ > -+ subscriptions.conf.5 > -+MAN7 = backend.7 \ > -+ filter.7 \ > -+ ippevepcl.7 \ > -+ notifier.7 > -+MAN8 = cupsaccept.8 \ > -+ cupsctl.8 \ > -+ cupsfilter.8 \ > -+ cups-lpd.8 \ > -+ cups-snmp.8 \ > -+ cupsd.8 \ > -+ cupsd-helper.8 \ > -+ cupsenable.8 \ > -+ lpadmin.8 \ > -+ lpinfo.8 \ > -+ lpmove.8 \ > -+ lpc.8 > -+ > -+ > -+# > -+# Make everything... > -+# > -+ > -+# Debian-specific patch: Just assume all files are here. > -+all: > -+ > -+ > -+# > -+# Make library targets... > -+# > -+ > -+libs: > -+ > -+ > -+# > -+# Make unit tests... > -+# > -+ > -+unittests: > -+ > -+ > -+# > -+# Clean all config and object files... > -+# > -+ > -+clean: > -+ $(RM) mantohtml mantohtml.o > -+ > -+ > -+# > -+# Dummy depend target... > -+# > -+ > -+depend: > -+ > -+ > -+# > -+# Install all targets... > -+# > -+ > -+# Debian-specific patch: directory-based language namespace > -+MANDIR := $(MANDIR)/$(LANGUAGE) > -+ > -+install: all install-data install-headers install-libs install-exec > -+ > -+ > -+# > -+# Install data files... > -+# > -+ > -+# Debian-specific patch: skip if doesn't exist > -+install-data: all > -+ echo Installing man pages in $(MANDIR)/man1... > -+ $(INSTALL_DIR) -m 755 $(MANDIR)/man1 > -+ for file in $(MAN1); do \ > -+ [ ! -r $$file ] || \ > -+ $(INSTALL_MAN) $$file $(MANDIR)/man1; \ > -+ done > -+ echo Installing man pages in $(MANDIR)/man5... > -+ $(INSTALL_DIR) -m 755 $(MANDIR)/man5 > -+ for file in $(MAN5); do \ > -+ [ ! -r $$file ] || \ > -+ $(INSTALL_MAN) $$file $(MANDIR)/man5; \ > -+ done > -+ echo Installing man pages in $(MANDIR)/man7... > -+ $(INSTALL_DIR) -m 755 $(MANDIR)/man7 > -+ for file in $(MAN7); do \ > -+ [ ! -r $$file ] || \ > -+ $(INSTALL_MAN) $$file $(MANDIR)/man7; \ > -+ done > -+ $(RM) $(MANDIR)/man7/ippeveps.7 > -+ $(LN) ippevepcl.7 $(MANDIR)/man7/ippeveps.7 > -+ echo Installing man pages in $(MANDIR)/man8... > -+ $(INSTALL_DIR) -m 755 $(MANDIR)/man8 > -+ for file in $(MAN8); do \ > -+ [ ! -r $$file ] || \ > -+ $(INSTALL_MAN) $$file $(MANDIR)/man8; \ > -+ done > -+ $(RM) $(MANDIR)/man8/cupsdisable.8 > -+ $(LN) cupsenable.8 $(MANDIR)/man8/cupsdisable.8 > -+ $(RM) $(MANDIR)/man8/cupsreject.8 > -+ $(LN) cupsaccept.8 $(MANDIR)/man8/cupsreject.8 > -+ for file in cups-deviced.8 cups-driverd.8 cups-exec.8; do \ > -+ $(RM) $(MANDIR)/man8/$$file; \ > -+ $(LN) cupsd-helper.8 $(MANDIR)/man8/$$file; \ > -+ done > -+ > -+ > -+# > -+# Install programs... > -+# > -+ > -+install-exec: > -+ > -+ > -+# > -+# Install headers... > -+# > -+ > -+install-headers: > -+ > -+ > -+# > -+# Install libraries... > -+# > -+ > -+install-libs: > -+ > -+ > -+# > -+# Uninstall files... > -+# > -+ > -+uninstall: > -+ echo Uninstalling man pages from $(MANDIR)/man1... > -+ for file in $(MAN1); do \ > -+ $(RM) $(MANDIR)/man1/$$file; \ > -+ done > -+ -$(RMDIR) $(MANDIR)/man1 > -+ echo Uninstalling man pages from $(MANDIR)/man5... > -+ for file in $(MAN5); do \ > -+ $(RM) $(MANDIR)/man5/$$file; \ > -+ done > -+ -$(RMDIR) $(MANDIR)/man5 > -+ echo Uninstalling man pages from $(MANDIR)/man7... > -+ for file in $(MAN7) ippeveps.7; do \ > -+ $(RM) $(MANDIR)/man7/$$file; \ > -+ done > -+ -$(RMDIR) $(MANDIR)/man7 > -+ echo Uninstalling man pages from $(MANDIR)/man8... > -+ for file in $(MAN8) cupsenable.8 cupsreject.8 cups-deviced.8 > cups-driverd.8 cups-exec.8; do \ > -+ $(RM) $(MANDIR)/man8/$$file; \ > -+ done > -+ -$(RMDIR) $(MANDIR)/man8 > -+ > -+ > -+# > -+# Local programs (not built when cross-compiling...) > -+# > -+ > -+local: html > -+ > -+ > -+# > -+# Make html versions of man pages... > -+# > -+ > -+html: $(MAN1) $(MAN5) $(MAN7) $(MAN8) mantohtml > -+ echo Converting man pages to HTML... > -+ for file in $(MAN1); do \ > -+ echo " $$file..."; \ > -+ ./mantohtml $$file >../doc/help/man-`basename $$file .1`.html; \ > -+ done > -+ for file in $(MAN5); do \ > -+ echo " $$file..."; \ > -+ ./mantohtml $$file >../doc/help/man-`basename $$file .5`.html; \ > -+ done > -+ for file in $(MAN7); do \ > -+ echo " $$file..."; \ > -+ ./mantohtml $$file >../doc/help/man-`basename $$file .7`.html; \ > -+ done > -+ for file in $(MAN8); do \ > -+ echo " $$file..."; \ > -+ ./mantohtml $$file >../doc/help/man-`basename $$file .8`.html; \ > -+ done > -+ > -+mantohtml: mantohtml.c > -+ $(CC_FOR_BUILD) -o $@ $< > -diff --git a/man/de/Makefile b/man/de/Makefile > -new file mode 100644 > -index 0000000..7c23784 > ---- /dev/null > -+++ b/man/de/Makefile > -@@ -0,0 +1,7 @@ > -+# > -+# Man page makefile for the Common UNIX Printing System (CUPS). > -+# > -+ > -+LANGUAGE=de > -+ > -+include ../Makefile.l10n > -diff --git a/man/fr/Makefile b/man/fr/Makefile > -new file mode 100644 > -index 0000000..6a50e93 > ---- /dev/null > -+++ b/man/fr/Makefile > -@@ -0,0 +1,7 @@ > -+# > -+# Man page makefile for the Common UNIX Printing System (CUPS). > -+# > -+ > -+LANGUAGE=fr > -+ > -+include ../Makefile.l10n > diff -Nru > cups-2.3.3op2/debian/patches/0013-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > > cups-2.3.3op2/debian/patches/0013-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > --- > cups-2.3.3op2/debian/patches/0013-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0013-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,23 @@ > +From: Didier Raboud <o...@debian.org> > +Date: Wed, 3 Feb 2021 16:30:08 +0100 > +Subject: Debian: Reproducibility: Do not run stp tests as root > + > +Reprotest insist in running these tests as root; skip them there. > +--- > + test/run-stp-tests.sh | 3 ++- > + 1 file changed, 2 insertions(+), 1 deletion(-) > + > +diff --git a/test/run-stp-tests.sh b/test/run-stp-tests.sh > +index 4498a8c..ce868ea 100755 > +--- a/test/run-stp-tests.sh > ++++ b/test/run-stp-tests.sh > +@@ -19,7 +19,8 @@ argcount=$# > + > + if test "x`id -u`" = x0; then > + echo Please run this as a normal user. Not supported when run as root. > +- exit 1 > ++ echo "Debian Reproducibility: Skipping allowed, as this is known to > break under reprotest. This message MUST NOT be visible in normal Debian > buildd logs." > ++ exit 0 > + fi > + > + # > diff -Nru > cups-2.3.3op2/debian/patches/0014-Debian-Reproducibility-Run-testlang-for-each-provide.patch > > cups-2.3.3op2/debian/patches/0014-Debian-Reproducibility-Run-testlang-for-each-provide.patch > --- > cups-2.3.3op2/debian/patches/0014-Debian-Reproducibility-Run-testlang-for-each-provide.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0014-Debian-Reproducibility-Run-testlang-for-each-provide.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,30 @@ > +From: Didier Raboud <o...@debian.org> > +Date: Wed, 3 Feb 2021 16:20:20 +0100 > +Subject: Debian: Reproducibility: Run testlang for each provided CUPS locale > +MIME-Version: 1.0 > +Content-Type: text/plain; charset="utf-8" > +Content-Transfer-Encoding: 8bit > + > +… and only for these. > + > +Of the build environment forces LC_ALL to a non-provided locale, the build > will fail. > +--- > + cups/Makefile | 4 ++-- > + 1 file changed, 2 insertions(+), 2 deletions(-) > + > +diff --git a/cups/Makefile b/cups/Makefile > +index 4e2aa6d..2068349 100644 > +--- a/cups/Makefile > ++++ b/cups/Makefile > +@@ -639,9 +639,9 @@ testlang: testlang.o $(LIBCUPSSTATIC) > + lang=`basename $$po .po | sed -e '1,$$s/^cups_//'`; \ > + $(MKDIR) locale/$$lang; \ > + $(LN) ../../$$po locale/$$lang; \ > ++ echo Running language API tests for $$lang...; \ > ++ LOCALEDIR=locale ./testlang -l $$lang; \ > + done > +- echo Running language API tests... > +- LOCALEDIR=locale ./testlang > + > + > + # > diff -Nru > cups-2.3.3op2/debian/patches/0015-Debian-po4a-infrastructure-and-translations-for-manp.patch > > cups-2.3.3op2/debian/patches/0015-Debian-po4a-infrastructure-and-translations-for-manp.patch > --- > cups-2.3.3op2/debian/patches/0015-Debian-po4a-infrastructure-and-translations-for-manp.patch > 1970-01-01 01:00:00.000000000 +0100 > +++ > cups-2.3.3op2/debian/patches/0015-Debian-po4a-infrastructure-and-translations-for-manp.patch > 2021-05-27 08:49:36.000000000 +0200 > @@ -0,0 +1,341 @@ > +From: Didier Raboud <o...@debian.org> > +Date: Tue, 9 Aug 2016 18:11:50 +0200 > +Subject: Debian: po4a infrastructure and translations for manpages > +MIME-Version: 1.0 > +Content-Type: text/plain; charset="utf-8" > +Content-Transfer-Encoding: 8bit > + > +Author: Nicolas François <nicolas.franc...@centraliens.net>, Helge > Kreutzmann <deb...@helgefjell.de> > +Origin: vendor > +Bug-Debian: https://bugs.debian.org/478597 > +--- > + man/Makefile | 17 +++- > + man/Makefile.l10n | 235 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++ > + man/de/Makefile | 7 ++ > + man/fr/Makefile | 7 ++ > + 4 files changed, 264 insertions(+), 2 deletions(-) > + create mode 100644 man/Makefile.l10n > + create mode 100644 man/de/Makefile > + create mode 100644 man/fr/Makefile > + > +diff --git a/man/Makefile b/man/Makefile > +index e01591a..48f06c4 100644 > +--- a/man/Makefile > ++++ b/man/Makefile > +@@ -63,12 +63,18 @@ MAN8 = cupsaccept.8 \ > + lpmove.8 \ > + lpc.8 > + > ++LANGUAGES=de fr > + > + # > + # Make everything... > + # > + > +-all: $(MAN1) $(MAN5) $(MAN7) $(MAN8) > ++all: $(MAN1) $(MAN5) $(MAN7) $(MAN8) translations > ++ > ++translations: > ++ # Update the translations and build the translated material > ++ po4a --previous ../debian/manpage-po4a/cups.cfg > ++ for lang in $(LANGUAGES); do $(MAKE) -C $$lang; done > + > + > + # > +@@ -91,6 +97,12 @@ unittests: > + > + clean: > + $(RM) mantohtml mantohtml.o > ++ $(RM) $(MAN1) $(MAN5) $(MAN7) $(MAN8) > ++ for lang in $(LANGUAGES); do $(MAKE) -C $$lang clean; done > ++ # Make sure the PO files are updated and remove generated > ++ # translations. > ++ po4a --previous --rm-translations ../debian/manpage-po4a/cups.cfg > ++ $(RM) ../debian/manpage-po4a/po/cups.pot > + > + > + # > +@@ -142,6 +154,7 @@ install-data: all > + $(RM) $(MANDIR)/man8/$$file; \ > + $(LN) cupsd-helper.8 $(MANDIR)/man8/$$file; \ > + done > ++ for lang in $(LANGUAGES); do $(MAKE) -C $$lang install; done > + > + > + # > +@@ -189,7 +202,7 @@ uninstall: > + for file in $(MAN8) cupsenable.8 cupsreject.8 cups-deviced.8 > cups-driverd.8 cups-exec.8; do \ > + $(RM) $(MANDIR)/man8/$$file; \ > + done > +- -$(RMDIR) $(MANDIR)/man8 > ++ -$(RMDIR) $(AMANDIR)/man$(MAN8DIR) > + > + > + # > +diff --git a/man/Makefile.l10n b/man/Makefile.l10n > +new file mode 100644 > +index 0000000..08390f5 > +--- /dev/null > ++++ b/man/Makefile.l10n > +@@ -0,0 +1,235 @@ > ++# > ++# Man page makefile for CUPS. > ++# > ++# Copyright © 2007-2019 by Apple Inc. > ++# Copyright © 1993-2006 by Easy Software Products. > ++# > ++# Licensed under Apache License v2.0. See the file "LICENSE" for more > ++# information. > ++# > ++ > ++include ../../Makedefs > ++ > ++ > ++# > ++# Man pages... > ++# > ++ > ++MAN1 = cancel.1 \ > ++ cups.1 \ > ++ cups-config.1 \ > ++ cupstestppd.1 \ > ++ ippeveprinter.1 \ > ++ $(IPPFIND_MAN) \ > ++ ipptool.1 \ > ++ lp.1 \ > ++ lpoptions.1 \ > ++ lpq.1 \ > ++ lprm.1 \ > ++ lpr.1 \ > ++ lpstat.1 \ > ++ ppdc.1 \ > ++ ppdhtml.1 \ > ++ ppdi.1 \ > ++ ppdmerge.1 \ > ++ ppdpo.1 > ++MAN5 = classes.conf.5 \ > ++ client.conf.5 \ > ++ cups-files.conf.5 \ > ++ cups-snmp.conf.5 \ > ++ cupsd.conf.5 \ > ++ cupsd-logs.5 \ > ++ ipptoolfile.5 \ > ++ mailto.conf.5 \ > ++ mime.convs.5 \ > ++ mime.types.5 \ > ++ ppdcfile.5 \ > ++ printers.conf.5 \ > ++ subscriptions.conf.5 > ++MAN7 = backend.7 \ > ++ filter.7 \ > ++ ippevepcl.7 \ > ++ notifier.7 > ++MAN8 = cupsaccept.8 \ > ++ cupsctl.8 \ > ++ cupsfilter.8 \ > ++ cups-lpd.8 \ > ++ cups-snmp.8 \ > ++ cupsd.8 \ > ++ cupsd-helper.8 \ > ++ cupsenable.8 \ > ++ lpadmin.8 \ > ++ lpinfo.8 \ > ++ lpmove.8 \ > ++ lpc.8 > ++ > ++ > ++# > ++# Make everything... > ++# > ++ > ++# Debian-specific patch: Just assume all files are here. > ++all: > ++ > ++ > ++# > ++# Make library targets... > ++# > ++ > ++libs: > ++ > ++ > ++# > ++# Make unit tests... > ++# > ++ > ++unittests: > ++ > ++ > ++# > ++# Clean all config and object files... > ++# > ++ > ++clean: > ++ $(RM) mantohtml mantohtml.o > ++ > ++ > ++# > ++# Dummy depend target... > ++# > ++ > ++depend: > ++ > ++ > ++# > ++# Install all targets... > ++# > ++ > ++# Debian-specific patch: directory-based language namespace > ++MANDIR := $(MANDIR)/$(LANGUAGE) > ++ > ++install: all install-data install-headers install-libs install-exec > ++ > ++ > ++# > ++# Install data files... > ++# > ++ > ++# Debian-specific patch: skip if doesn't exist > ++install-data: all > ++ echo Installing man pages in $(MANDIR)/man1... > ++ $(INSTALL_DIR) -m 755 $(MANDIR)/man1 > ++ for file in $(MAN1); do \ > ++ [ ! -r $$file ] || \ > ++ $(INSTALL_MAN) $$file $(MANDIR)/man1; \ > ++ done > ++ echo Installing man pages in $(MANDIR)/man5... > ++ $(INSTALL_DIR) -m 755 $(MANDIR)/man5 > ++ for file in $(MAN5); do \ > ++ [ ! -r $$file ] || \ > ++ $(INSTALL_MAN) $$file $(MANDIR)/man5; \ > ++ done > ++ echo Installing man pages in $(MANDIR)/man7... > ++ $(INSTALL_DIR) -m 755 $(MANDIR)/man7 > ++ for file in $(MAN7); do \ > ++ [ ! -r $$file ] || \ > ++ $(INSTALL_MAN) $$file $(MANDIR)/man7; \ > ++ done > ++ $(RM) $(MANDIR)/man7/ippeveps.7 > ++ $(LN) ippevepcl.7 $(MANDIR)/man7/ippeveps.7 > ++ echo Installing man pages in $(MANDIR)/man8... > ++ $(INSTALL_DIR) -m 755 $(MANDIR)/man8 > ++ for file in $(MAN8); do \ > ++ [ ! -r $$file ] || \ > ++ $(INSTALL_MAN) $$file $(MANDIR)/man8; \ > ++ done > ++ $(RM) $(MANDIR)/man8/cupsdisable.8 > ++ $(LN) cupsenable.8 $(MANDIR)/man8/cupsdisable.8 > ++ $(RM) $(MANDIR)/man8/cupsreject.8 > ++ $(LN) cupsaccept.8 $(MANDIR)/man8/cupsreject.8 > ++ for file in cups-deviced.8 cups-driverd.8 cups-exec.8; do \ > ++ $(RM) $(MANDIR)/man8/$$file; \ > ++ $(LN) cupsd-helper.8 $(MANDIR)/man8/$$file; \ > ++ done > ++ > ++ > ++# > ++# Install programs... > ++# > ++ > ++install-exec: > ++ > ++ > ++# > ++# Install headers... > ++# > ++ > ++install-headers: > ++ > ++ > ++# > ++# Install libraries... > ++# > ++ > ++install-libs: > ++ > ++ > ++# > ++# Uninstall files... > ++# > ++ > ++uninstall: > ++ echo Uninstalling man pages from $(MANDIR)/man1... > ++ for file in $(MAN1); do \ > ++ $(RM) $(MANDIR)/man1/$$file; \ > ++ done > ++ -$(RMDIR) $(MANDIR)/man1 > ++ echo Uninstalling man pages from $(MANDIR)/man5... > ++ for file in $(MAN5); do \ > ++ $(RM) $(MANDIR)/man5/$$file; \ > ++ done > ++ -$(RMDIR) $(MANDIR)/man5 > ++ echo Uninstalling man pages from $(MANDIR)/man7... > ++ for file in $(MAN7) ippeveps.7; do \ > ++ $(RM) $(MANDIR)/man7/$$file; \ > ++ done > ++ -$(RMDIR) $(MANDIR)/man7 > ++ echo Uninstalling man pages from $(MANDIR)/man8... > ++ for file in $(MAN8) cupsenable.8 cupsreject.8 cups-deviced.8 > cups-driverd.8 cups-exec.8; do \ > ++ $(RM) $(MANDIR)/man8/$$file; \ > ++ done > ++ -$(RMDIR) $(MANDIR)/man8 > ++ > ++ > ++# > ++# Local programs (not built when cross-compiling...) > ++# > ++ > ++local: html > ++ > ++ > ++# > ++# Make html versions of man pages... > ++# > ++ > ++html: $(MAN1) $(MAN5) $(MAN7) $(MAN8) mantohtml > ++ echo Converting man pages to HTML... > ++ for file in $(MAN1); do \ > ++ echo " $$file..."; \ > ++ ./mantohtml $$file >../doc/help/man-`basename $$file .1`.html; \ > ++ done > ++ for file in $(MAN5); do \ > ++ echo " $$file..."; \ > ++ ./mantohtml $$file >../doc/help/man-`basename $$file .5`.html; \ > ++ done > ++ for file in $(MAN7); do \ > ++ echo " $$file..."; \ > ++ ./mantohtml $$file >../doc/help/man-`basename $$file .7`.html; \ > ++ done > ++ for file in $(MAN8); do \ > ++ echo " $$file..."; \ > ++ ./mantohtml $$file >../doc/help/man-`basename $$file .8`.html; \ > ++ done > ++ > ++mantohtml: mantohtml.c > ++ $(CC_FOR_BUILD) -o $@ $< > +diff --git a/man/de/Makefile b/man/de/Makefile > +new file mode 100644 > +index 0000000..7c23784 > +--- /dev/null > ++++ b/man/de/Makefile > +@@ -0,0 +1,7 @@ > ++# > ++# Man page makefile for the Common UNIX Printing System (CUPS). > ++# > ++ > ++LANGUAGE=de > ++ > ++include ../Makefile.l10n > +diff --git a/man/fr/Makefile b/man/fr/Makefile > +new file mode 100644 > +index 0000000..6a50e93 > +--- /dev/null > ++++ b/man/fr/Makefile > +@@ -0,0 +1,7 @@ > ++# > ++# Man page makefile for the Common UNIX Printing System (CUPS). > ++# > ++ > ++LANGUAGE=fr > ++ > ++include ../Makefile.l10n > diff -Nru cups-2.3.3op2/debian/patches/series > cups-2.3.3op2/debian/patches/series > --- cups-2.3.3op2/debian/patches/series 2021-02-12 14:09:29.000000000 > +0100 > +++ cups-2.3.3op2/debian/patches/series 2021-05-27 08:49:36.000000000 > +0200 > @@ -1,13 +1,15 @@ > -0001-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > -0002-Apple-AirPrint-support.patch > -0003-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > -0004-Debian-Set-LogFileGroup-to-adm.patch > -0005-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > -0006-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > -0007-Debian-Show-compile-command-lines.patch > -0008-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > -0009-Debian-Build-mantohtml-with-the-build-architecture-c.patch > -0010-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > -0011-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > -0012-Debian-Reproducibility-Run-testlang-for-each-provide.patch > -0013-Debian-po4a-infrastructure-and-translations-for-manp.patch > +0001-backend-usb-libusb.c-Use-60s-timeout-for-reading-at-.patch > +0002-backend-usb-libusb.c-Revert-enforcing-read-limits.patch > +0003-Let-cups.1-point-to-client.conf.5-not-client.conf.7.patch > +0004-Apple-AirPrint-support.patch > +0005-Keep-foomatic-PPDs-recommended-stanzas-in-NickNames.patch > +0006-Debian-Set-LogFileGroup-to-adm.patch > +0007-Debian-Move-cupsd.conf.default-from-SERVERROOT-to-DA.patch > +0008-Debian-Do-not-alter-the-permissions-of-cupsd.conf-ev.patch > +0009-Debian-Show-compile-command-lines.patch > +0010-Debian-Use-dpkg-architecture-in-cups-config-to-make-.patch > +0011-Debian-Build-mantohtml-with-the-build-architecture-c.patch > +0012-Debian-Reproducibility-httpAddrGetHostname-test-fail.patch > +0013-Debian-Reproducibility-Do-not-run-stp-tests-as-root.patch > +0014-Debian-Reproducibility-Run-testlang-for-each-provide.patch > +0015-Debian-po4a-infrastructure-and-translations-for-manp.patch -- Sebastian Ramacher
signature.asc
Description: PGP signature