From 536871af7aecb295d30ac52a36d0d8ade1fed579 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Thu, 8 Aug 2024 13:51:06 +0200 Subject: [PATCH] net-dialup/lrzsz: Sync with Gentoo It's from Gentoo commit 64ae7e83e03ad692eff3cff5f6ad0a26a7c532de. --- .../portage-stable/net-dialup/lrzsz/Manifest | 1 + .../lrzsz/files/lrzsz-0.12.20-c99.patch | 27 +++++++ .../lrzsz-0.12.20-configure-clang16.patch | 13 ++++ .../files/lrzsz-0.12.20-disable-nls.patch | 25 ++++++ .../lrzsz-0.12.20-fix-integer-overflow.patch | 23 ++++++ .../files/lrzsz-0.12.20-gettext-0.22.patch | 48 ++++++++++++ ...2.20-r4.ebuild => lrzsz-0.12.20-r8.ebuild} | 31 +++++--- .../net-dialup/lrzsz/lrzsz-0.12.20-r9.ebuild | 76 +++++++++++++++++++ .../net-dialup/lrzsz/metadata.xml | 3 + 9 files changed, 237 insertions(+), 10 deletions(-) create mode 100644 sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-c99.patch create mode 100644 sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-configure-clang16.patch create mode 100644 sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-disable-nls.patch create mode 100644 sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-fix-integer-overflow.patch create mode 100644 sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-gettext-0.22.patch rename sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/{lrzsz-0.12.20-r4.ebuild => lrzsz-0.12.20-r8.ebuild} (66%) create mode 100644 sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r9.ebuild diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/Manifest b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/Manifest index 77293a9cd1..7e386a9ee3 100644 --- a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/Manifest +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/Manifest @@ -1 +1,2 @@ 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/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-c99.patch b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-c99.patch new file mode 100644 index 0000000000..db593179b0 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-c99.patch @@ -0,0 +1,27 @@ +https://src.fedoraproject.org/rpms/lrzsz/blob/c23247c9c7604aec31d49ed1b238622835f575e2/f/lrzsz-socklen.patch + +Use socklen_t as the length of the socket address (which is a bit of +an anachronism, considering the rest of the sources). The previous +code des not work on 64-bit big-endian architectures. + +--- a/src/tcp.c ++++ b/src/tcp.c +@@ -56,7 +56,7 @@ tcp_server (char *buf) + struct sockaddr_in s; + struct sockaddr_in t; + int on=1; +- size_t len; ++ socklen_t len; + + if ((sock = socket (AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) { + error(1,errno,"socket"); +@@ -91,7 +91,7 @@ tcp_accept (int d) + { + int so; + struct sockaddr_in s; +- size_t namelen; ++ socklen_t namelen; + int num=0; + + namelen = sizeof(s); + diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-configure-clang16.patch b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-configure-clang16.patch new file mode 100644 index 0000000000..bda489d11d --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-configure-clang16.patch @@ -0,0 +1,13 @@ +https://bugs.gentoo.org/898970 +--- a/configure.in ++++ b/configure.in +@@ -186,7 +186,8 @@ AC_CACHE_VAL(lrzsz_cv_sys_ftime_ok, + #include + #include + #include +-main () ++#include ++int main (void) + { + struct timeb s, slast; + int c = 0; diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-disable-nls.patch b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-disable-nls.patch new file mode 100644 index 0000000000..b0f290e715 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-disable-nls.patch @@ -0,0 +1,25 @@ +This package does not contain the m4 macros from gettext, so if gettext is not +installed the macros are lost when running eautoreconf. + +Embed the required m4 files and add the directory to configure.ac. + +--- a/Makefile.am ++++ b/Makefile.am +@@ -5,6 +5,7 @@ + noinst_SCRIPTS=systype + PR=@PACKAGE@-@VERSION@ + CLEAN_FILES=fastcheck.done ++AC_CONFIG_MACRO_DIR=-I m4 + + dist-hook: + mkdir $(distdir)/debian +--- a/configure.in ++++ b/configure.in +@@ -3,6 +3,7 @@ + AC_INIT(src/crctab.c) + AM_INIT_AUTOMAKE(lrzsz, 0.12.20) + AC_CONFIG_HEADERS([config.h]) ++AC_CONFIG_MACRO_DIR([m4]) + + + dnl AC_C_CROSS is in AC_PROG_CC since 2.12 diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-fix-integer-overflow.patch b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-fix-integer-overflow.patch new file mode 100644 index 0000000000..771b67dda4 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-fix-integer-overflow.patch @@ -0,0 +1,23 @@ +https://src.fedoraproject.org/rpms/lrzsz/blob/rawhide/f/lrzsz-0.12.20.patch +https://bugs.gentoo.org/797247 + +diff -urN lrzsz-0.12.20/src/zm.c lrzsz-0.12.20.new/src/zm.c +--- lrzsz-0.12.20/src/zm.c Tue Dec 29 09:48:38 1998 ++++ lrzsz-0.12.20.new/src/zm.c Tue Oct 8 12:46:58 2002 +@@ -431,10 +431,12 @@ + VPRINTF(3,("zsdata: %lu %s", (unsigned long) length, + Zendnames[(frameend-ZCRCE)&3])); + crc = 0; +- do { +- zsendline(*buf); crc = updcrc((0377 & *buf), crc); +- buf++; +- } while (--length>0); ++ ++ for( ; length; length--) { ++ zsendline(*buf); crc = updcrc((0377 & *buf), crc); ++ buf++; ++ } ++ + xsendline(ZDLE); xsendline(frameend); + crc = updcrc(frameend, crc); + diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-gettext-0.22.patch b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-gettext-0.22.patch new file mode 100644 index 0000000000..016e6dd402 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/files/lrzsz-0.12.20-gettext-0.22.patch @@ -0,0 +1,48 @@ +gettext 0.22 removed BUILD_INCLUDED_LIBINTL and USE_INCLUDED_LIBINTL is 'no' + +INSTOBJEXT was deprecated and removed, replace with .mo + +Bug: https://bugs.gentoo.org/908861 + +--- a/intl/Makefile.in ++++ b/intl/Makefile.in +@@ -81,7 +81,7 @@ + + INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/lib + +-all: all-@USE_INCLUDED_LIBINTL@ ++all: all-no + + all-yes: libintl.$la intlh.inst + all-no: +--- a/configure.in ++++ b/configure.in +@@ -98,7 +98,7 @@ + AM_PROG_AR + AC_ISC_POSIX + AC_USE_SYSTEM_EXTENSIONS +-AM_GNU_GETTEXT ++AM_GNU_GETTEXT([use-libtool]) + AC_C_CONST + AC_C_INLINE + +@@ -264,6 +264,8 @@ + AC_SUBST(LDFLAGS) + AC_SUBST(LIBS) + ++INTLLIBS="$LIBINTL" ++AC_SUBST(INTLLIBS) + + AC_DEFINE_UNQUOTED(LOCALEDIR,"$prefix/$DATADIRNAME", [LOCALEDIR]) + AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl) +--- a/po/Makefile.in.in ++++ b/po/Makefile.in.in +@@ -53,7 +53,7 @@ + + CATALOGS = de.gmo + CATOBJEXT = @CATOBJEXT@ +-INSTOBJEXT = @INSTOBJEXT@ ++INSTOBJEXT = .mo + + .SUFFIXES: + .SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r4.ebuild b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r8.ebuild similarity index 66% rename from sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r4.ebuild rename to sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r8.ebuild index b89e6b98f2..7b098c0c72 100644 --- a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r4.ebuild +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r8.ebuild @@ -1,13 +1,16 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 -inherit autotools flag-o-matic toolchain-funcs +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" +SRC_URI=" + https://www.ohse.de/uwe/releases/${P}.tar.gz + https://dev.gentoo.org/~ceamac/${CATEGORY}/${PN}/${PN}-m4-${PV}.tar.bz2 +" LICENSE="GPL-2" SLOT="0" @@ -15,6 +18,7 @@ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc IUSE="nls" DEPEND="nls? ( virtual/libintl )" +BDEPEND="nls? ( sys-devel/gettext )" PATCHES=( "${FILESDIR}"/${PN}-autotools.patch @@ -23,6 +27,10 @@ PATCHES=( "${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 ) DOCS=( AUTHORS COMPATABILITY ChangeLog NEWS \ @@ -30,26 +38,29 @@ DOCS=( AUTHORS COMPATABILITY ChangeLog NEWS \ 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 -f missing || die + rm missing || die # Autoheader does not like seeing this file. - rm -f acconfig.h || die + rm acconfig.h || die + # embed default m4 files in case gettext is not installed + mv "${WORKDIR}"/m4 . || die eautoreconf } src_configure() { tc-export CC - append-flags -Wstrict-prototypes + econf $(use_enable nls) } src_test() { - #Don't use check target. - #See bug #120748 before changing this function. - make vcheck || die "tests failed" + # Don't use check target. + # See bug #120748 before changing this function. + emake vcheck } src_install() { diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r9.ebuild b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r9.ebuild new file mode 100644 index 0000000000..93f8a934e1 --- /dev/null +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/lrzsz-0.12.20-r9.ebuild @@ -0,0 +1,76 @@ +# 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}/${PN}-m4-${PV}.tar.bz2 +" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~ia64 ~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 +) + +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 +} diff --git a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/metadata.xml b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/metadata.xml index 98ae10b3c3..62f678c966 100644 --- a/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/metadata.xml +++ b/sdk_container/src/third_party/portage-stable/net-dialup/lrzsz/metadata.xml @@ -5,4 +5,7 @@ embedded@gentoo.org Embedded Gentoo + + cpe:/a:lrzsz_project:lrzsz +