commit:     39a47ae3a6b29144a075dc7d92db224011e31457
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Nov 16 23:16:45 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Nov 16 23:16:45 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39a47ae3

net-analyzer/yersinia: fix configure w/ clang 16

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

 .../files/yersinia-0.8.2-configure-clang16.patch   | 53 +++++++++++++++++++
 ...sinia-0.8.2.ebuild => yersinia-0.8.2-r1.ebuild} | 20 ++++----
 net-analyzer/yersinia/yersinia-9999.ebuild         | 59 ----------------------
 3 files changed, 64 insertions(+), 68 deletions(-)

diff --git a/net-analyzer/yersinia/files/yersinia-0.8.2-configure-clang16.patch 
b/net-analyzer/yersinia/files/yersinia-0.8.2-configure-clang16.patch
new file mode 100644
index 000000000000..f2366c02dfb4
--- /dev/null
+++ b/net-analyzer/yersinia/files/yersinia-0.8.2-configure-clang16.patch
@@ -0,0 +1,53 @@
+https://github.com/tomac/yersinia/pull/76
+
+From ec9d31932fca39e3160b0d0bfd0383db82ff5bcf Mon Sep 17 00:00:00 2001
+From: Sam James <[email protected]>
+Date: Wed, 16 Nov 2022 23:10:45 +0000
+Subject: [PATCH] configure: fix -Wimplicit-function-declaration,
+ -Wstrict-prototypes
+
+Clang 16 makes -Wimplicit-function-declaration an error by default. 
Unfortunately,
+this can lead to misconfiguration or miscompilation of software as configure
+tests may then return the wrong result.
+
+For more information, see LWN.net [0] or LLVM's Discourse [1], the Gentoo wiki 
[2],
+or the (new) c-std-porting mailing list [3].
+
+[0] https://lwn.net/Articles/913505/
+[1] 
https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213
+[2] https://wiki.gentoo.org/wiki/Modern_C_porting
+[3] hosted at lists.linux.dev.
+
+Signed-off-by: Sam James <[email protected]>
+--- a/configure.in
++++ b/configure.in
+@@ -233,12 +233,13 @@ dnl fi
+ 
+ AC_MSG_CHECKING(if libnet is at least version 1.1.2)
+ AC_TRY_RUN([
+-#include<stdio.h>
+-#include<libnet.h>
++#include <stdlib.h>
++#include <stdio.h>
++#include <libnet.h>
+ #define HOPE_MAJOR  1
+ #define HOPE_MEDIUM 1
+ #define HOPE_MINOR  2
+-int main()
++int main(void)
+ {
+   unsigned int major,medium,minor,current, desired;
+   desired = HOPE_MAJOR*10000 + HOPE_MEDIUM*100 + HOPE_MINOR;
+@@ -419,9 +420,9 @@ AC_CHECK_FUNCS(strerror_r, 
have_strerror_r=yes,have_strerror_r=no)
+ if test $have_strerror_r = yes; then
+ AC_MSG_CHECKING(if strerror_r is on glibc version >= 2.0)
+ AC_TRY_RUN([
+-#include <stdio.h>
++#include <stdlib.h>
+ #include <features.h>
+-int main()
++int main(void)
+ {
+ #if defined(__GLIBC__) && __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 0
+    exit(0);
+

diff --git a/net-analyzer/yersinia/yersinia-0.8.2.ebuild 
b/net-analyzer/yersinia/yersinia-0.8.2-r1.ebuild
similarity index 85%
rename from net-analyzer/yersinia/yersinia-0.8.2.ebuild
rename to net-analyzer/yersinia/yersinia-0.8.2-r1.ebuild
index e216096f810c..0d001464a4d2 100644
--- a/net-analyzer/yersinia/yersinia-0.8.2.ebuild
+++ b/net-analyzer/yersinia/yersinia-0.8.2-r1.ebuild
@@ -1,7 +1,8 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=8
+
 inherit autotools flag-o-matic
 
 DESCRIPTION="A framework for layer 2 attacks"
@@ -14,30 +15,31 @@ KEYWORDS="amd64 x86"
 IUSE="gtk ncurses"
 
 RDEPEND="
+       >=net-libs/libnet-1.1.2
+       >=net-libs/libpcap-0.9.4
        ncurses? ( >=sys-libs/ncurses-5.5:= )
        gtk? (
                dev-libs/glib:2
                x11-libs/gdk-pixbuf
                =x11-libs/gtk+-2*
        )
-       >=net-libs/libnet-1.1.2
-       >=net-libs/libpcap-0.9.4
-"
-DEPEND="
-       virtual/pkgconfig
-       ${RDEPEND}
 "
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
 DOCS=( AUTHORS ChangeLog FAQ README THANKS TODO )
+
 PATCHES=(
        "${FILESDIR}"/${PN}-0.7.1-no-ncurses.patch
        "${FILESDIR}"/${PN}-0.7.3-tinfo.patch
+       "${FILESDIR}"/${PN}-0.8.2-configure-clang16.patch
 )
 
 src_prepare() {
        default
 
        if ! use gtk; then
-               #bug #514802
+               # bug #514802
                sed -i -e '/AM_GLIB_GNU_GETTEXT/d' configure.in || die
        fi
 

diff --git a/net-analyzer/yersinia/yersinia-9999.ebuild 
b/net-analyzer/yersinia/yersinia-9999.ebuild
deleted file mode 100644
index f2825d6f6f13..000000000000
--- a/net-analyzer/yersinia/yersinia-9999.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-inherit autotools flag-o-matic git-r3
-
-DESCRIPTION="A framework for layer 2 attacks"
-HOMEPAGE="https://github.com/tomac/yersinia";
-EGIT_REPO_URI="https://github.com/tomac/yersinia";
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS=""
-IUSE="gtk ncurses"
-
-RDEPEND="
-       ncurses? ( >=sys-libs/ncurses-5.5:= )
-       gtk? (
-               dev-libs/glib:2
-               x11-libs/gdk-pixbuf
-               =x11-libs/gtk+-2*
-       )
-       >=net-libs/libnet-1.1.2
-       >=net-libs/libpcap-0.9.4
-"
-DEPEND="
-       virtual/pkgconfig
-       ${RDEPEND}
-"
-DOCS=( AUTHORS ChangeLog FAQ README THANKS TODO )
-PATCHES=(
-       "${FILESDIR}"/${PN}-0.7.1-no-ncurses.patch
-       "${FILESDIR}"/${PN}-9999-tinfo.patch
-)
-
-src_prepare() {
-       default
-
-       if ! use gtk; then
-               #bug #514802
-               sed -i -e '/AM_GLIB_GNU_GETTEXT/d' configure.in || die
-       fi
-
-       eautoreconf
-}
-
-src_configure() {
-       append-cflags -fcommon
-
-       econf \
-               --enable-admin \
-               --with-pcap-includes=/usr/include \
-               $(use_with ncurses) \
-               $(use_enable gtk)
-}
-
-src_compile() {
-       emake CFLAGS="${CFLAGS}"
-}

Reply via email to