commit:     bd7aa280e36e37620e378c70aed1f0c04c80969e
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Thu Oct 13 08:11:05 2022 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Thu Oct 13 09:06:07 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd7aa280

x11-libs/neXtaw: EAPI7->8, fix w/ clang16, -std=gnu89 + -fno-strict

clang16 fixes regenerates some flex/yacc files so BDEPEND on them.

Haven't looked for a proper fix wrt #864535, may be easy but
passing -fno-strict-aliasing as better-than-nothing.

Closes: https://bugs.gentoo.org/864535
Closes: https://bugs.gentoo.org/871489
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 x11-libs/neXtaw/files/neXtaw-0.15.1-clang16.patch  | 27 ++++++++++++++++
 ...aw-0.15.1-r3.ebuild => neXtaw-0.15.1-r4.ebuild} | 37 +++++++++++++++-------
 2 files changed, 52 insertions(+), 12 deletions(-)

diff --git a/x11-libs/neXtaw/files/neXtaw-0.15.1-clang16.patch 
b/x11-libs/neXtaw/files/neXtaw-0.15.1-clang16.patch
new file mode 100644
index 000000000000..a1f5bf27922c
--- /dev/null
+++ b/x11-libs/neXtaw/files/neXtaw-0.15.1-clang16.patch
@@ -0,0 +1,27 @@
+https://bugs.gentoo.org/871489
+--- a/X11/neXtaw/XawIm.c
++++ b/X11/neXtaw/XawIm.c
+@@ -61,2 +61,3 @@
+ #include <X11/StringDefs.h>
++#include <X11/ResourceI.h>
+ #include <X11/Xos.h>
+--- a/X11/neXtaw/laygram.y
++++ b/X11/neXtaw/laygram.y
+@@ -16,2 +16,7 @@
+ 
++%code provides {
++    void yyerror(char *s);
++    int yylex(void);
++}
++
+ %union {
+--- a/X11/neXtaw/laylex.l
++++ b/X11/neXtaw/laylex.l
+@@ -88,2 +88,3 @@
+ 
++void
+ yysetsource(s)
+@@ -94,2 +95,3 @@
+ 
++void
+ yyerror(s)

diff --git a/x11-libs/neXtaw/neXtaw-0.15.1-r3.ebuild 
b/x11-libs/neXtaw/neXtaw-0.15.1-r4.ebuild
similarity index 53%
rename from x11-libs/neXtaw/neXtaw-0.15.1-r3.ebuild
rename to x11-libs/neXtaw/neXtaw-0.15.1-r4.ebuild
index f89f61178319..db8f5d2fd8ee 100644
--- a/x11-libs/neXtaw/neXtaw-0.15.1-r3.ebuild
+++ b/x11-libs/neXtaw/neXtaw-0.15.1-r4.ebuild
@@ -1,34 +1,47 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
+EAPI=8
+
+inherit flag-o-matic
 
 DESCRIPTION="Athena Widgets with N*XTSTEP appearance"
-HOMEPAGE="http://siag.nu/neXtaw/";
-SRC_URI="http://siag.nu/pub/neXtaw/${P}.tar.gz";
+HOMEPAGE="https://siag.nu/neXtaw/";
+SRC_URI="https://siag.nu/pub/neXtaw/${P}.tar.gz";
 
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 ~riscv sparc x86 
~amd64-linux ~x86-linux ~ppc-macos ~sparc-solaris"
 
 RDEPEND="
-       x11-base/xorg-proto
        x11-libs/libICE
-       x11-libs/libXext
-       x11-libs/libXt
-       x11-libs/libX11
        x11-libs/libSM
+       x11-libs/libX11
+       x11-libs/libXext
        x11-libs/libXmu
-       x11-libs/libxkbfile
        x11-libs/libXpm
-       !<x11-libs/neXtaw-0.15.1-r1"
-DEPEND="${RDEPEND}"
+       x11-libs/libXt
+       x11-libs/libxkbfile"
+DEPEND="
+       ${RDEPEND}
+       x11-base/xorg-proto"
+BDEPEND="
+       sys-devel/flex
+       virtual/yacc"
+
+PATCHES=(
+       "${FILESDIR}"/${P}-clang16.patch
+)
 
 src_configure() {
-       econf --disable-static
+       append-cflags -std=gnu89 # old codebase, incompatible with c2x
+       append-cflags -fno-strict-aliasing #864535
+
+       default
 }
 
 src_install() {
        default
+
        find "${ED}" -name '*.la' -delete || die
 }

Reply via email to