File: [cvs.NetBSD.org] / pkgsrc / print / cups-base / patches / patch-config-scripts_cups-directories.m4 (download)
Revision 1.4, Tue May 10 20:47:37 2022 UTC (8 months, 3 weeks ago) by markd
Branch: MAIN
CVS Tags: pkgsrc-2022Q4-base, pkgsrc-2022Q4, pkgsrc-2022Q3-base, pkgsrc-2022Q3, pkgsrc-2022Q2-base, pkgsrc-2022Q2, HEAD Changes since 1.3: +75 -97
lines
{cups,cups-base,libcups}: update to 2.4.1
Changes in CUPS v2.4.1 (27th January 2022)
------------------------------------------
- The default color mode now is now configurable and defaults to the printer's
reported default mode
- Configuration script now checks linking for -Wl,-pie flags
- Fixed memory leaks - in testi18n, in `cups_enum_dests()`,
in `_cupsEncodeOption()` and `http_tls_upgrade()`
- Fixed missing bracket in de/index.html
- Fixed typos in configuration scripts
- Removed remaining legacy code for `RIP_MAX_CACHE` environment variable
- Removed deprecated directives from cupsctl and cups-files.conf
- Removed `purge-jobs` legacy code from CGI scripts and templates
Changes in CUPS v2.4.0 (29th November 2021)
-------------------------------------------
- Added configure option --with-idle-exit-timeout
- Added --with-systemd-timeoutstartsec configure option
- DigestOptions now are applied for MD5 Digest authentication defined
by RFC 2069 as well
- Fixed compilation on Solaris
- Fixed and improved German translations
Changes in CUPS v2.4rc1 (12th November 2021)
--------------------------------------------
- Added warning and debug messages when loading printers
if the queue is raw or with driver
- Compilation now uses -fstack-protector-strong if available
Changes in CUPS v2.4b1 (27th October 2021)
------------------------------------------
- Added support for CUPS running in a Snapcraft snap.
- Added basic OAuth 2.0 client support
- Added support for AirPrint and Mopria clients
- Added configure support for specifying systemd dependencies in the CUPS
service file
- Added a JSON output mode for `ipptool`.
- The `ipptool` command now correctly reports an error when a test file cannot
be found.
- CUPS library now uses thread safe `getpwnam_r` and `getpwuid_r` functions
- Fixed Kerberos authentication for the web interface
- The ZPL sample driver now supports more "standard" label sizes
- Fixed reporting of printer instances when enumerating and when no options are
set for the main instance
- Reverted USB read limit enforcement change from CUPS 2.2.12
- The IPP backend did not return the correct status code when a job was canceled
at the printer/server
- The `testlang` unit test program now loops over all of the available locales
by default
- The `cupsfilter` command now shows error messages when options are used
incorrectly
- The PPD functions now treat boolean values as case-insensitive
- Temporary queue names no longer end with an underscore
- The USB backend now runs as root
- Added pkg-config file for libcups
- Fixed a PPD memory leak caused by emulator definitions
- Fixed a `DISPLAY` bug in `ipptool`
- The scheduler now includes the `[Job N]` prefix for job log messages, even
when using syslog logging
- Added support for locales using the GB18030 character set
- `httpReconnect2` did not reset the socket file descriptor when the TLS
negotiation failed
- `httpUpdate` did not reset the socket file descriptor when the TLS
negotiation failed
- The IPP backend now retries Validate-Job requests
- Now show better error messages when a driver interface program fails to
provide a PPD file
- Added dark mode support to the CUPS web interface
- Added a workaround for Solaris in `httpAddrConnect2`
- Fixed an interaction between `--remote-admin` and `--remote-any` for the
`cupsctl` command
- Now use a 60 second timeout for reading USB backchannel data
- The USB backend now tries harder to find a serial number
- Fixed `@IF(name)` handling in `cupsd.conf`
- Fixed documentation and added examples for CUPS' limited CGI support
- Fixed the `lpc` command prompt
- Now always pass "localhost" in the `Host:` header when talking over a domain
socket or the loopback interface
- Fixed a job history update issue in the scheduler
- Fixed `job-pages-per-set` value for duplex print jobs.
- Fixed an edge case in `ippReadIO` to make sure that only complete attributes
and values are retained on an error
- Hardened `ippReadIO` to prevent invalid IPP messages from being propagated
- The scheduler now supports the "everywhere" model directly
- Fixed some IPP Everywhere option mapping problems
- Fixed support for "job-hold-until" with the Restart-Job operation
- Fixed the default color/grayscale presets for IPP Everywhere PPDs
- Fixed support for the 'offline-report' state for all USB backends
- Documentation fixes
- Localization updates
- USB quirk updates
- Web interface updates
- The `ippeveprinter` tool now automatically uses an available port.
- Fixed several Windows TLS and hashing issues.
- Deprecated cups-config
- Deprecated Kerberos (`AuthType Negotiate`) authentication
- Removed support for the (long deprecated and unused) `FontPath`,
`ListenBackLog`, `LPDConfigFile`, `KeepAliveTimeout`, `RIPCache`, and
`SMBConfigFile` directives in `cupsd.conf` and `cups-files.conf`.
- Stubbed out deprecated `httpMD5` functions.
- Add test for undefined page ranges during printing.
|
$NetBSD: patch-config-scripts_cups-directories.m4,v 1.4 2022/05/10 20:47:37 markd Exp $
The '$' while loops expand the variables as long as possible so that no
references to other variables occur. This is necessary because fontpath
may be "${exec_prefix}", which itself may be "${prefix}", and so on. I
don't know how many levels of indirection are possible, therefore the
loop.
I'm also sure that this is not the Right Way to fix it, but at least it
works.
--- config-scripts/cups-directories.m4.orig 2022-01-27 11:11:42.000000000 +0000
+++ config-scripts/cups-directories.m4
@@ -95,7 +95,7 @@ AS_IF([test "$sysconfdir" = "\${prefix}/
dnl Fix "libdir" variable...
AS_IF([test "$libdir" = "\${exec_prefix}/lib"], [
AS_CASE(["$host_os_name"], [linux*], [
- AS_IF([test -d /usr/lib64 -a ! -d /usr/lib64/fakeroot], [
+ AS_IF([test -d /usr/lib64 -a ! -d /usr/lib64/fakeroot && false], [
libdir="$exec_prefix/lib64"
], [
libdir="$exec_prefix/lib"
@@ -132,7 +132,15 @@ AC_SUBST([CUPS_CACHEDIR])
# Data files
CUPS_DATADIR="$datadir/cups"
-AC_DEFINE_UNQUOTED([CUPS_DATADIR], ["$datadir/cups"], [Location of data files.])
+done=no
+while test $done = no; do
+ case "$CUPS_DATADIR" in
+ *'$'*) eval "CUPS_DATADIR=$CUPS_DATADIR";;
+ *) done=yes;;
+ esac
+done
+
+AC_DEFINE_UNQUOTED([CUPS_DATADIR], ["$CUPS_DATADIR"], [Location of data files.])
AC_SUBST([CUPS_DATADIR])
# Icon directory
@@ -145,7 +153,11 @@ AC_ARG_WITH([icondir], AS_HELP_STRING([-
AS_IF([test "x$icondir" = x], [
ICONDIR="/usr/share/icons"
], [
- ICONDIR="$icondir"
+ if test "x$icondir" = xno; then
+ ICONDIR=""
+ else
+ ICONDIR="$icondir"
+ fi
])
AC_SUBST([ICONDIR])
@@ -160,6 +172,11 @@ AC_ARG_WITH([menudir], AS_HELP_STRING([-
AS_IF([test "x$menudir" = x], [
MENUDIR="/usr/share/applications"
], [
+ if test "x$menudir" = xno; then
+ MENUDIR=""
+ else
+ MENUDIR="$menudir"
+ fi
MENUDIR="$menudir"
])
@@ -179,7 +196,15 @@ AS_IF([test x$docdir = x], [
CUPS_DOCROOT="$docdir"
])
-AC_DEFINE_UNQUOTED([CUPS_DOCROOT], ["$docdir"], [Location of documentation files.])
+done=no
+while test $done = no; do
+ case "$CUPS_DOCROOT" in
+ *'$'*) eval "CUPS_DOCROOT=$CUPS_DOCROOT";;
+ *) done=yes;;
+ esac
+done
+
+AC_DEFINE_UNQUOTED([CUPS_DOCROOT], ["$CUPS_DOCROOT"], [Location of documentation files.])
AC_SUBST([CUPS_DOCROOT])
# Locale data
@@ -194,6 +219,14 @@ AS_IF([test "$localedir" = "\${datarootd
CUPS_LOCALEDIR="$localedir"
])
+done=no
+while test $done = no; do
+ case "$CUPS_LOCALEDIR" in
+ *'$'*) eval "CUPS_LOCALEDIR=$CUPS_LOCALEDIR";;
+ *) done=yes;;
+ esac
+done
+
AC_DEFINE_UNQUOTED([CUPS_LOCALEDIR], ["$CUPS_LOCALEDIR"], [Location of localization files.])
AC_SUBST([CUPS_LOCALEDIR])
@@ -232,10 +265,18 @@ AC_SUBST([CUPS_LOGDIR])
# Longer-term spool data
CUPS_REQUESTS="$localstatedir/spool/cups"
-AC_DEFINE_UNQUOTED([CUPS_REQUESTS], ["$localstatedir/spool/cups"], [Location of spool directory.])
+AC_DEFINE_UNQUOTED([CUPS_REQUESTS], ["$CUPS_REQUESTS"], [Location of spool directory.])
AC_SUBST([CUPS_REQUESTS])
# Server executables...
+AC_ARG_WITH([serverbindir], AS_HELP_STRING([--with-serverbindir], [set path for server helper programs]), [
+ serverbindir="$withval"
+], [
+ serverbindir=""
+])
+
+if test x$serverbindir = x; then
+
AS_CASE(["$host_os_name"], [*-gnu], [
# GNUs
INSTALL_SYSV="install-sysv"
@@ -250,13 +291,18 @@ AS_CASE(["$host_os_name"], [*-gnu], [
CUPS_SERVERBIN="$exec_prefix/lib/cups"
])
+else
+ INSTALL_SYSV=""
+ CUPS_SERVERBIN="$serverbindir"
+fi
+
AC_DEFINE_UNQUOTED([CUPS_SERVERBIN], ["$CUPS_SERVERBIN"], [Location of server programs.])
AC_SUBST([CUPS_SERVERBIN])
AC_SUBST([INSTALL_SYSV])
# Configuration files
CUPS_SERVERROOT="$sysconfdir/cups"
-AC_DEFINE_UNQUOTED([CUPS_SERVERROOT], ["$sysconfdir/cups"], [Location of server configuration files.])
+AC_DEFINE_UNQUOTED([CUPS_SERVERROOT], ["$CUPS_SERVERROOT"], [Location of server configuration files.])
AC_SUBST([CUPS_SERVERROOT])
# Transient run-time state