Jelajahi Sumber

package/openipmi: fix musl build with libexecinfo

Disable execinfo to avoid the following musl build failure raised since
the addition of libexecinfo package in commit
eea8ba446c10701a273432552108d80fb2224ef4:

/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-musl/10.3.0/../../../../x86_64-buildroot-linux-musl/bin/ld: /home/buildroot/autobuild/instance-3/output-1/build/openipmi-2.0.28/utils/.libs/libOpenIPMIutils.so: undefined reference to `backtrace'

Fixes:
 - http://autobuild.buildroot.org/results/dcc33c5cca97d538231647a94212450f043974b3

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Fabrice Fontaine 3 tahun lalu
induk
melakukan
feda801885

+ 55 - 0
package/openipmi/0002-configure.ac-add-without-execinfo-option.patch

@@ -0,0 +1,55 @@
+From 388033e3d0129510c3884333bc428cefeb75e0b8 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Mon, 3 Jan 2022 23:27:21 +0100
+Subject: [PATCH] configure.ac: add --without-execinfo option
+
+Add an option to allow the user to disable execinfo to avoid the
+following build failure on musl with
+https://github.com/mikroskeem/libexecinfo:
+
+/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/bin/../lib/gcc/x86_64-buildroot-linux-musl/10.3.0/../../../../x86_64-buildroot-linux-musl/bin/ld: /home/buildroot/autobuild/instance-3/output-1/build/openipmi-2.0.28/utils/.libs/libOpenIPMIutils.so: undefined reference to `backtrace'
+
+Fixes:
+ - http://autobuild.buildroot.org/results/dcc33c5cca97d538231647a94212450f043974b3
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://sourceforge.net/p/openipmi/patches/36]
+---
+ configure.ac | 14 +++++++++++++-
+ 1 file changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 607864b9..f369166f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -77,6 +77,16 @@ AC_ARG_WITH(poptlibs,
+     POPTLIBS="$withval"
+ )
+ 
++tryexecinfo=yes
++AC_ARG_WITH(execinfo,
++[  --with-execinfo[[=yes|no]]      Look for execinfo.],
++    if test "x$withval" = "xyes"; then
++      tryexecinfo=yes
++    elif test "x$withval" = "xno"; then
++      tryexecinfo=no
++    fi,
++)
++
+ # If UCD SNMP requires OpenSSL, this tells where to find the crypto lib
+ tryopenssl=yes
+ AC_ARG_WITH(openssl,
+@@ -275,7 +285,9 @@ AM_PROG_CC_C_O
+ AC_PROG_LIBTOOL
+ AC_STDC_HEADERS
+ 
+-AC_CHECK_HEADERS(execinfo.h)
++if test "x$tryexecinfo" != "xno"; then
++   AC_CHECK_HEADERS(execinfo.h)
++fi
+ AC_CHECK_HEADERS([netinet/ether.h])
+ AC_CHECK_HEADERS([sys/ethernet.h])
+ 
+-- 
+2.34.1
+

+ 1 - 0
package/openipmi/openipmi.mk

@@ -15,6 +15,7 @@ OPENIPMI_INSTALL_STAGING = YES
 OPENIPMI_AUTORECONF = YES
 OPENIPMI_CONF_ENV = ac_cv_path_pkgprog="$(PKG_CONFIG_HOST_BINARY)"
 OPENIPMI_CONF_OPTS = \
+	--with-execinfo=no \
 	--with-glib=no \
 	--with-tcl=no \
 	--with-perl=no \