aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2021-03-08 14:58:40 -0800
committerKhem Raj <raj.khem@gmail.com>2021-03-08 16:24:25 -0800
commitd1a74bad3667de31844d9ace739813c3dcdb82ab (patch)
treea0ee7834897c997cd52d34886080a6527b794b16 /meta-oe/recipes-support
parentbbc3b9dd0ffc506e15f5d4e8ff39e483bfdec7a7 (diff)
downloadmeta-openembedded-d1a74bad3667de31844d9ace739813c3dcdb82ab.tar.gz
glog: Link with libexecinfo on musl
some platforms e.g. riscv do not yet have libunwind ported so use libexecinfo instead Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support')
-rw-r--r--meta-oe/recipes-support/glog/glog/libexecinfo.patch29
-rw-r--r--meta-oe/recipes-support/glog/glog_0.4.0.bb4
2 files changed, 33 insertions, 0 deletions
diff --git a/meta-oe/recipes-support/glog/glog/libexecinfo.patch b/meta-oe/recipes-support/glog/glog/libexecinfo.patch
new file mode 100644
index 0000000000..ae46d3274f
--- /dev/null
+++ b/meta-oe/recipes-support/glog/glog/libexecinfo.patch
@@ -0,0 +1,29 @@
+Link libexecinfo if its found, this is needed for musl based systems
+
+Fixes
+ld: libglog.so.0.4.0: undefined reference to `backtrace'
+| collect2: error: ld returned 1 exit status
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -115,6 +115,7 @@ check_cxx_compiler_flag (-Wunnamed-type-
+ check_symbol_exists (snprintf stdio.h HAVE_SNPRINTF)
+
+ check_library_exists (dbghelp UnDecorateSymbolName "" HAVE_DBGHELP)
++check_library_exists (execinfo backtrace "" HAVE_EXECINFO)
+
+ find_package(Libunwind)
+
+@@ -471,6 +472,10 @@ if (Libunwind_FOUND)
+ target_link_libraries (glog PUBLIC unwind)
+ endif (Libunwind_FOUND)
+
++if (HAVE_EXECINFO)
++ target_link_libraries (glog PUBLIC execinfo)
++endif (HAVE_EXECINFO)
++
+ if (HAVE_DBGHELP)
+ target_link_libraries (glog PUBLIC dbghelp)
+ endif (HAVE_DBGHELP)
diff --git a/meta-oe/recipes-support/glog/glog_0.4.0.bb b/meta-oe/recipes-support/glog/glog_0.4.0.bb
index 8dc84e4125..6b101ef676 100644
--- a/meta-oe/recipes-support/glog/glog_0.4.0.bb
+++ b/meta-oe/recipes-support/glog/glog_0.4.0.bb
@@ -9,6 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=dc9db360e0bbd4e46672f3fd91dd6c4b"
SRC_URI = " \
git://github.com/google/glog.git;nobranch=1 \
file://0001-Find-Libunwind-during-configure.patch \
+ file://libexecinfo.patch \
"
SRCREV = "96a2f23dca4cc7180821ca5f32e526314395d26a"
@@ -20,8 +21,11 @@ inherit cmake
PACKAGECONFIG ?= "shared unwind"
PACKAGECONFIG_remove_riscv64 = "unwind"
PACKAGECONFIG_remove_riscv32 = "unwind"
+PACKAGECONFIG_append_libc-musl_riscv64 = " execinfo"
+PACKAGECONFIG_append_libc-musl_riscv32 = " execinfo"
PACKAGECONFIG[unwind] = "-DWITH_UNWIND=ON,-DWITH_UNWIND=OFF,libunwind,libunwind"
+PACKAGECONFIG[execinfo] = ",,libexecinfo"
PACKAGECONFIG[shared] = "-DBUILD_SHARED_LIBS=ON,-DBUILD_SHARED_LIBS=OFF,,"
do_configure_append() {