[oe] [meta-oe][PATCH 2/5] jack: Use c++ compiler for programs which use c++ source files

Khem Raj raj.khem at gmail.com
Thu Jan 16 04:42:17 UTC 2020


Signed-off-by: Khem Raj <raj.khem at gmail.com>
---
 ...ts-Use-c-compiler-for-jack_simdtests.patch | 33 +++++++++++++++++++
 .../recipes-multimedia/jack/jack_1.19.14.bb   |  6 +++-
 2 files changed, 38 insertions(+), 1 deletion(-)
 create mode 100644 meta-oe/recipes-multimedia/jack/jack/0001-example-clients-Use-c-compiler-for-jack_simdtests.patch

diff --git a/meta-oe/recipes-multimedia/jack/jack/0001-example-clients-Use-c-compiler-for-jack_simdtests.patch b/meta-oe/recipes-multimedia/jack/jack/0001-example-clients-Use-c-compiler-for-jack_simdtests.patch
new file mode 100644
index 0000000000..dda21a32d8
--- /dev/null
+++ b/meta-oe/recipes-multimedia/jack/jack/0001-example-clients-Use-c-compiler-for-jack_simdtests.patch
@@ -0,0 +1,33 @@
+From 76b8a389268275cc13f3b4e61394d40b24ec56f1 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem at gmail.com>
+Date: Wed, 15 Jan 2020 20:21:58 -0800
+Subject: [PATCH] example-clients: Use c++ compiler for jack_simdtests
+
+It uses c++ sources and runtime therefore its best to use c++ compiler
+to build it so it can find the correct runtime, cross compiling with
+clang fails
+
+x86_64-yoe-linux-ld: example-clients/simdtests.cpp.28.o: undefined reference to symbol '__cxa_call_unexpected@@CXXABI_1.3'
+
+Upstream-Status: Submitted [https://github.com/jackaudio/jack2/pull/536]
+Signed-off-by: Khem Raj <raj.khem at gmail.com>
+---
+ example-clients/wscript | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/example-clients/wscript b/example-clients/wscript
+index a8857aa7..df9435aa 100644
+--- a/example-clients/wscript
++++ b/example-clients/wscript
+@@ -69,6 +69,8 @@ def build(bld):
+ 
+         if bld.env['IS_MACOSX']:
+             prog = bld(features='c cprogram', framework = ['Foundation'])
++        elif example_program == 'jack_simdtests':
++            prog = bld(features='cxx cxxprogram')
+         else:
+             prog = bld(features='c cprogram')
+         prog.includes = os_incdir + ['../common/jack', '../common']
+-- 
+2.25.0
+
diff --git a/meta-oe/recipes-multimedia/jack/jack_1.19.14.bb b/meta-oe/recipes-multimedia/jack/jack_1.19.14.bb
index cebc952661..3f3d53f608 100644
--- a/meta-oe/recipes-multimedia/jack/jack_1.19.14.bb
+++ b/meta-oe/recipes-multimedia/jack/jack_1.19.14.bb
@@ -14,7 +14,9 @@ LIC_FILES_CHKSUM = " \
 
 DEPENDS = "libsamplerate0 libsndfile1 readline"
 
-SRC_URI = "git://github.com/jackaudio/jack2.git"
+SRC_URI = "git://github.com/jackaudio/jack2.git \
+           file://0001-example-clients-Use-c-compiler-for-jack_simdtests.patch \
+          "
 SRCREV = "b54a09bf7ef760d81fdb8544ad10e45575394624"
 
 S = "${WORKDIR}/git"
@@ -30,6 +32,8 @@ PACKAGECONFIG[opus] = "--opus=yes,--opus=no,libopus"
 # portaudio is for windows builds only
 EXTRA_OECONF = "--portaudio=no"
 
+export CC = "${CXX}"
+
 do_install_append() {
 	if ! ${@bb.utils.contains('PACKAGECONFIG', 'dbus', True, False, d)}; then
 		rm -f ${D}${bindir}/jack_control
-- 
2.25.0



More information about the Openembedded-devel mailing list