commit:     9b9c9302cfda762c144f9b5611ae0384efff079a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  7 20:49:56 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Sep  7 20:50:19 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9b9c9302

app-text/a2ps: fix a2ps-lpr-wrapper

Quoting the bug:
"""
There is an error on a2ps-lpr-wrapper and the file was not printed

If lp is installed, a2ps-lpr-wrapper will use it otherwise it falls back to lpr.
However, the #{lp} variable defines the printer specifier as -P. lpr does not 
take -P, it takes -d.

The specifier needs to differ depending on which backend is being used; -d for 
lp or -P for lpr.
"""

See also the savannah bug (https://savannah.gnu.org/bugs/?64047).

Closes: https://bugs.gentoo.org/913751
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-text/a2ps/a2ps-4.15.5-r1.ebuild             | 90 +++++++++++++++++++++++++
 app-text/a2ps/files/a2ps-4.15-lpr-wrapper.patch | 23 +++++++
 2 files changed, 113 insertions(+)

diff --git a/app-text/a2ps/a2ps-4.15.5-r1.ebuild 
b/app-text/a2ps/a2ps-4.15.5-r1.ebuild
new file mode 100644
index 000000000000..cb24c360a855
--- /dev/null
+++ b/app-text/a2ps/a2ps-4.15.5-r1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools elisp-common
+
+DESCRIPTION="Any to PostScript filter"
+HOMEPAGE="https://www.gnu.org/software/a2ps/";
+SRC_URI="mirror://gnu/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 
~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="cjk emacs latex nls static-libs vanilla"
+
+# a2ps-lpr-wrapper needs bash
+RDEPEND="
+       app-text/ghostscript-gpl
+       app-text/libpaper:=
+       >=app-text/psutils-1.17
+       app-text/wdiff
+       app-shells/bash:*
+       dev-libs/boehm-gc
+       >=sys-apps/coreutils-6.10-r1
+       emacs? ( >=app-editors/emacs-23.1:* )
+       latex? ( virtual/latex-base )
+       nls? ( virtual/libintl )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       app-alternatives/yacc
+       >=dev-util/gperf-2.7.2
+       nls? ( sys-devel/gettext )
+"
+
+SITEFILE="50${PN}-gentoo.el"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-4.15-lpr-wrapper.patch
+)
+
+src_prepare() {
+       default
+
+       use vanilla || eapply "${FILESDIR}"/${PN}-4.15-stdout.patch
+
+       eautoreconf
+}
+
+src_configure() {
+       export LANG=C LC_ALL=C
+
+       econf \
+               --enable-shared \
+               $(use_enable static-libs static) \
+               --sysconfdir="${EPREFIX}"/etc/a2ps \
+               $(use_enable nls) \
+               COM_netscape=no \
+               COM_acroread=no \
+               $(usev !latex COM_latex=no) \
+               $(usev !emacs EMACS=no)
+}
+
+src_install() {
+       emake \
+               DESTDIR="${D}" \
+               lispdir="${EPREFIX}${SITELISP}"/${PN} \
+               install
+
+       newdoc "${ED}"/usr/share/a2ps/README README.a2ps
+       newdoc "${ED}"/usr/share/a2ps/ppd/README README.a2ps.ppd
+       newdoc "${ED}"/usr/share/ogonkify/README README.ogonkify
+
+       rm -f "${ED}"/usr/share/{a2ps,a2ps/ppd,ogonkify}/README || die
+
+       find "${ED}" -name '*.la' -delete || die
+
+       use emacs && elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+
+       dodoc ANNOUNCE AUTHORS ChangeLog FAQ NEWS README* THANKS TODO
+}
+
+pkg_postinst() {
+       use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+       use emacs && elisp-site-regen
+}

diff --git a/app-text/a2ps/files/a2ps-4.15-lpr-wrapper.patch 
b/app-text/a2ps/files/a2ps-4.15-lpr-wrapper.patch
new file mode 100644
index 000000000000..d7b231c0b929
--- /dev/null
+++ b/app-text/a2ps/files/a2ps-4.15-lpr-wrapper.patch
@@ -0,0 +1,23 @@
+# a2ps-lpr-wrapper exits on bogus parameter-count test
+# https://bugs.gentoo.org/913751
+# https://savannah.gnu.org/bugs/?64047
+--- a/src/a2ps-lpr-wrapper
++++ b/src/a2ps-lpr-wrapper
+@@ -5,7 +5,7 @@
+ set -e
+
+ usage() {
+-  echo "Usage: $(basename "$0") [-d printer] FILE..." >&2
++  echo "Usage: $(basename "$0") [-d printer] [FILE...]" >&2
+   exit 1
+ }
+
+@@ -17,7 +17,6 @@ while getopts d: flag; do
+   esac
+ done
+ shift $((OPTIND - 1))
+-if [ $# -eq 0 ]; then usage; fi
+
+ # If lp (from CUPS) exists, just use it.
+ if command -pv lp > /dev/null; then
+

Reply via email to