summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz93@gmail.com>2024-03-20 01:10:01 -0400
committerSam James <sam@gentoo.org>2024-03-20 06:17:01 +0000
commitb29b05a7c97ec83ea7074ed87d0b87796914c58d (patch)
tree83c44cbd1d451a307beb19b593bc8a5fa62371d6 /net-analyzer
parentnet-analyzer/tcptrace: mark as LTO-unsafe, strict-aliasing unsafe (diff)
downloadgentoo-b29b05a7c97ec83ea7074ed87d0b87796914c58d.tar.gz
gentoo-b29b05a7c97ec83ea7074ed87d0b87796914c58d.tar.bz2
gentoo-b29b05a7c97ec83ea7074ed87d0b87796914c58d.zip
net-analyzer/tcptrace: fix Modern C porting
Closes: https://bugs.gentoo.org/900042 Signed-off-by: Eli Schwartz <eschwartz93@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-analyzer')
-rw-r--r--net-analyzer/tcptrace/files/0001-configure.in-fix-implicit-function-declaration-causi.patch26
-rw-r--r--net-analyzer/tcptrace/tcptrace-6.6.7_p6-r2.ebuild73
2 files changed, 99 insertions, 0 deletions
diff --git a/net-analyzer/tcptrace/files/0001-configure.in-fix-implicit-function-declaration-causi.patch b/net-analyzer/tcptrace/files/0001-configure.in-fix-implicit-function-declaration-causi.patch
new file mode 100644
index 000000000000..d9158bae6981
--- /dev/null
+++ b/net-analyzer/tcptrace/files/0001-configure.in-fix-implicit-function-declaration-causi.patch
@@ -0,0 +1,26 @@
+From f199970cdb38259f0748e79ece844dc2cd676cdf Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz93@gmail.com>
+Date: Tue, 19 Mar 2024 21:39:10 -0400
+Subject: [PATCH] configure.in: fix implicit function declaration causing test
+ to mistest
+
+---
+ configure.in | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/configure.in b/configure.in
+index 38132e0..e973815 100644
+--- a/configure.in
++++ b/configure.in
+@@ -51,6 +51,8 @@ dnl If strcmp returns 0, we are on an enironment that uses %llu, otherwise
+ dnl we are on a MacOSX environment that uses %qu
+ AC_TRY_RUN([
+ #include <stdio.h>
++#include <string.h>
++#include <stdlib.h>
+
+ #define NIX "%llu"
+
+--
+2.43.2
+
diff --git a/net-analyzer/tcptrace/tcptrace-6.6.7_p6-r2.ebuild b/net-analyzer/tcptrace/tcptrace-6.6.7_p6-r2.ebuild
new file mode 100644
index 000000000000..cce2849f482b
--- /dev/null
+++ b/net-analyzer/tcptrace/tcptrace-6.6.7_p6-r2.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit autotools flag-o-matic
+
+DESCRIPTION="A Tool for analyzing network packet dumps"
+HOMEPAGE="http://www.tcptrace.org/"
+SRC_URI="
+ http://www.tcptrace.org/download/${P/_p*}.tar.gz
+ http://www.tcptrace.org/download/old/$(ver_cut 1-2)/${P/_p*}.tar.gz
+ mirror://debian/pool/main/t/${PN}/${PN}_${PV/_p*}-${PV/*_p}.debian.tar.xz
+"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+
+DEPEND="
+ net-libs/libpcap
+"
+RDEPEND="
+ ${DEPEND}
+"
+PATCHES=(
+ "${FILESDIR}"/${P/_p*}-cross-compile.patch
+ "${FILESDIR}"/${P/_p*}-_DEFAULT_SOURCE.patch
+ "${FILESDIR}"/${P/_p*}-fix-build-clang16.patch
+ "${FILESDIR}"/0001-configure.in-fix-implicit-function-declaration-causi.patch
+)
+S=${WORKDIR}/${P/_p*}
+
+src_prepare() {
+ default
+
+ eapply \
+ $(awk '{ print "'"${WORKDIR}"'/debian/patches/" $0; }' < "${WORKDIR}"/debian/patches/series)
+
+ eautoreconf
+}
+
+src_configure() {
+ # -Werror=strict-aliasing
+ # https://bugs.gentoo.org/861260
+ #
+ # Upstream site no longer exists.
+ #
+ # Do not trust with LTO either.
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ default
+}
+
+src_compile() {
+ emake CCOPT="${CFLAGS}"
+}
+
+src_install() {
+ dobin tcptrace xpl2gpl
+
+ newman tcptrace.man tcptrace.1
+ dodoc CHANGES COPYRIGHT FAQ README* THANKS WWW
+}
+
+pkg_postinst() {
+ if ! has_version ${CATEGORY}/${PN}; then
+ elog "Note: tcptrace outputs its graphs in the xpl (xplot)"
+ elog "format. Since xplot is unavailable, you will have to"
+ elog "use the included xpl2gpl utility to convert it to"
+ elog "the gnuplot format."
+ fi
+}