commit:     60c4e1235300e9bba9f1d86512a09257f60fe640
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Sep  8 04:39:02 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep  8 04:41:10 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=60c4e123

sci-visualization/opendx: fix build with slibtool, gcc 11

Closes: https://bugs.gentoo.org/786627
Closes: https://bugs.gentoo.org/779160
Thanks-to: orbea <orbea <AT> riseup.net>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../opendx/files/opendx-4.4.4-slibtool.patch       | 40 ++++++++++++++++++++++
 sci-visualization/opendx/opendx-4.4.4-r7.ebuild    |  6 +++-
 2 files changed, 45 insertions(+), 1 deletion(-)

diff --git a/sci-visualization/opendx/files/opendx-4.4.4-slibtool.patch 
b/sci-visualization/opendx/files/opendx-4.4.4-slibtool.patch
new file mode 100644
index 00000000000..964322aab9c
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-slibtool.patch
@@ -0,0 +1,40 @@
+https://bugs.gentoo.org/779160
+
+commit 980149800b1bc9310c404dcc822d35bd725e8b3c
+Author: orbea <[email protected]>
+Date:   Wed Apr 7 11:42:21 2021 -0700
+
+    build: Fix undefined references with slibtool.
+
+diff --git a/src/exec/dpexec/Makefile.am b/src/exec/dpexec/Makefile.am
+index 9f37d05..bd8aefe 100644
+--- a/src/exec/dpexec/Makefile.am
++++ b/src/exec/dpexec/Makefile.am
+@@ -33,6 +33,8 @@ libDPEXECclm_la_SOURCES = \
+       crc.c d.c exobject.c function.c license.c loader.c macro.c \
+       dpparse.c userinter.c utils.c optarg.c sfile.c ddx.c
+ 
++libDPEXEC_la_LIBADD = ../dxmods/libuser.la
++
+ EXTRA_DIST = local.mk dxThreadMain.cpp dxThreadMain.h tmainUtil.cpp 
tmainUtil.h
+ 
+ $(OBJECTS): yuiif.c yuiif.h
+diff --git a/src/exec/dxexec/Makefile.am b/src/exec/dxexec/Makefile.am
+index 9bc4260..1971965 100644
+--- a/src/exec/dxexec/Makefile.am
++++ b/src/exec/dxexec/Makefile.am
+@@ -12,10 +12,10 @@ libDXEXEC_la_CFLAGS = $(AM_CFLAGS)
+ bindir = $(libdir)/dx/bin_@ARCH@
+ bin_PROGRAMS = dxexec
+ 
+-dxexec_LDADD = ../dpexec/libDPEXEC.la ../dxmods/libDXMODS.la 
../dxmods/user.lo \
+-      ../dxmods/libDXMODSN.la ../libdx/libLIBDX.la ../libdx/mem.lo \
+-      ../libdx/memory.lo ../hwrender/libHW.la ../hwrender/opengl/libOPENGL.la 
+-dxexec_LDFLAGS = @DXEXEC_EXP@
++dxexec_LDADD = ../dpexec/libDPEXEC.la ../dxmods/libDXMODS.la \
++      ../dxmods/libDXMODSN.la ../libdx/libLIBDX.la ../libdx/libmem.la \
++      ../hwrender/libHW.la ../hwrender/opengl/libOPENGL.la
++dxexec_LDFLAGS = @DXEXEC_EXP@ -no-undefined
+ dxexec_SOURCES = main.c
+ 
+ EXTRA_DIST = tmain.cpp

diff --git a/sci-visualization/opendx/opendx-4.4.4-r7.ebuild 
b/sci-visualization/opendx/opendx-4.4.4-r7.ebuild
index 024c2706ae3..f0a448c98e8 100644
--- a/sci-visualization/opendx/opendx-4.4.4-r7.ebuild
+++ b/sci-visualization/opendx/opendx-4.4.4-r7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -48,6 +48,7 @@ PATCHES=(
        "${FILESDIR}/${P}-szip.patch"
        "${FILESDIR}/${P}-null.patch"
        "${FILESDIR}/${P}-invalid-conversion.patch"
+       "${FILESDIR}/${P}-slibtool.patch"
        "${WORKDIR}/${PN}-4.4.4_p20160917-fix-c++14.patch"
 )
 
@@ -61,6 +62,9 @@ src_configure() {
        # with gcc 3.3.2 I had an infinite loop on src/exec/libdx/zclipQ.c
        append-flags -fno-strength-reduce
 
+       # bug #786627
+       append-cppflags -std=c++14
+
        # (#82672)
        filter-flags -finline-functions
        replace-flags -O3 -O2

Reply via email to