net-dialup/lrzsz: Sync with Gentoo

It's from Gentoo commit 64ae7e83e03ad692eff3cff5f6ad0a26a7c532de.
This commit is contained in:
Krzesimir Nowak 2024-08-08 13:51:06 +02:00
parent ca8f7b6e74
commit 536871af7a
9 changed files with 237 additions and 10 deletions

View File

@ -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

View File

@ -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);

View File

@ -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 <sys/types.h>
#include <sys/timeb.h>
#include <stdio.h>
-main ()
+#include <stdlib.h>
+int main (void)
{
struct timeb s, slast;
int c = 0;

View File

@ -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

View File

@ -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);

View File

@ -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

View File

@ -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() {

View File

@ -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
}

View File

@ -5,4 +5,7 @@
<email>embedded@gentoo.org</email>
<name>Embedded Gentoo</name>
</maintainer>
<upstream>
<remote-id type="cpe">cpe:/a:lrzsz_project:lrzsz</remote-id>
</upstream>
</pkgmetadata>