commit:     2877a7951774ccfbd346ac536da23ce740c16dc3
Author:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 14 10:38:00 2024 +0000
Commit:     Viorel Munteanu <ceamac <AT> gentoo <DOT> org>
CommitDate: Sat Dec 14 10:45:51 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2877a795

net-dialup/lrzsz: fix compilation with C23

Include older gettext macros (from 0.19).  Unfortunately, running
autopoint breaks the makefiles; so does using
AM_GNU_GETTEXT([external]).

Add a patch to fix compilation with gcc-15.  Also tested with clang-19
-std=gnu23.

Closes: https://bugs.gentoo.org/836585
Closes: https://bugs.gentoo.org/943880
Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org>

 net-dialup/lrzsz/Manifest                 |  1 +
 net-dialup/lrzsz/lrzsz-0.12.20-r10.ebuild | 77 +++++++++++++++++++++++++++++++
 2 files changed, 78 insertions(+)

diff --git a/net-dialup/lrzsz/Manifest b/net-dialup/lrzsz/Manifest
index 7e386a9ee3bb..d492485ee7df 100644
--- a/net-dialup/lrzsz/Manifest
+++ b/net-dialup/lrzsz/Manifest
@@ -1,2 +1,3 @@
+DIST gettext-0.19.8-runtime-m4.tar.xz 26092 BLAKE2B 
671c43cbdc393658c0f9960cf6b743b5126a52ff0a87dbd8a59f6a8c398eecfab7509421d6e01096d73e40f2feb7b2bc229822c4d475d91a703c941134a506b5
 SHA512 
a5e5a64c7e2bd1a0fa6d426ff72a286027451ff034050541a92ba5a4d7889f925e4674e1df89e0c7e9657329209284995afcb0180a2e441136694556450e4edd
 DIST lrzsz-0.12.20.tar.gz 280938 BLAKE2B 
86511ab112da849f5894f18c045f2c8a9dd4c4e97426c1d98c5b91aade6c39e26f4a7e5674e057c9596a240dfd3ef32053fcdc8ee58b33654cf15eec64779b1e
 SHA512 
9bce64036f1f1c65f5910f19802aecaf3dc5ffeab0feeca10fa8d2fe1b83e212391cce23056d22fd0eda52df89e12ede68eb5d22ffcf22f935910d2af7399f12
 DIST lrzsz-m4-0.12.20.tar.bz2 23959 BLAKE2B 
933e43f80a40478baef77d69f81fcb04947f2d0afb87f777b0c000ea4223408bf3e55d687cf625ab4835fb30e274f7058ff09ee3b51ad90e09723cd3053ee038
 SHA512 
c8818381f2e5271bc2dd7d469c0a33a6b22d42d3159b41f168223473a8b03322f3ff91a49ce398e3ef5abe7b355d92b83b1429d0c6d450d19985a60e2e1190d4

diff --git a/net-dialup/lrzsz/lrzsz-0.12.20-r10.ebuild 
b/net-dialup/lrzsz/lrzsz-0.12.20-r10.ebuild
new file mode 100644
index 000000000000..d1ea630d21b1
--- /dev/null
+++ b/net-dialup/lrzsz/lrzsz-0.12.20-r10.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools toolchain-funcs
+
+DESCRIPTION="Communication package providing the X, Y, and ZMODEM file 
transfer protocols"
+HOMEPAGE="https://www.ohse.de/uwe/software/lrzsz.html";
+SRC_URI="
+       https://www.ohse.de/uwe/releases/${P}.tar.gz
+       
https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/gettext-0.19.8-runtime-m4.tar.xz
+"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 
~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="nls"
+
+DEPEND="nls? ( virtual/libintl )"
+BDEPEND="nls? ( sys-devel/gettext )"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-autotools.patch
+       "${FILESDIR}"/${PN}-implicit-decl.patch
+       "${FILESDIR}"/${P}-automake-1.12.patch
+       "${FILESDIR}"/${P}-automake-1.13.patch
+       "${FILESDIR}"/${P}-gettext-0.20.patch
+       "${FILESDIR}"/${P}-AR.patch
+       "${FILESDIR}"/${P}-configure-clang16.patch
+       "${FILESDIR}"/${P}-gettext-0.22.patch
+       "${FILESDIR}"/${P}-disable-nls.patch
+       "${FILESDIR}"/${P}-c99.patch
+       "${FILESDIR}"/${P}-fix-integer-overflow.patch
+       "${FILESDIR}"/${P}-c23.patch
+)
+
+DOCS=( AUTHORS COMPATABILITY ChangeLog NEWS \
+       README{,.cvs,.gettext,.isdn4linux,.tests} THANKS TODO )
+
+src_prepare() {
+       default
+
+       # automake is unhappy if this is missing
+       >> config.rpath || die
+       # This is too old.  Remove it so automake puts in a newer copy.
+       rm missing || die
+       # Autoheader does not like seeing this file.
+       rm acconfig.h || die
+       # embed default m4 files in case gettext is not installed
+       mv "${WORKDIR}"/m4 . || die
+
+       eautoreconf
+}
+
+src_configure() {
+       tc-export CC
+
+       econf $(use_enable nls)
+}
+
+src_test() {
+       # Don't use check target.
+       # See bug #120748 before changing this function.
+       emake vcheck
+}
+
+src_install() {
+       default
+
+       local x
+       for x in {r,s}{b,x,z} ; do
+               dosym l${x} /usr/bin/${x}
+               dosym l${x:0:1}z.1 /usr/share/man/man1/${x}.1
+               [ "${x:1:1}" = "z" ] || dosym l${x:0:1}z.1 
/usr/share/man/man1/l${x}.1
+       done
+}

Reply via email to