summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-03-24 08:03:08 +0000
committerSam James <sam@gentoo.org>2023-03-25 01:41:16 +0000
commit841c181bcfa1725454bd1cbfefe1064608dbc726 (patch)
tree60822225556faabc0304fea830d8579150097ef5
parentx11-terms/kitty: stabilize 0.27.1 for amd64 (diff)
downloadgentoo-841c181bcfa1725454bd1cbfefe1064608dbc726.tar.gz
gentoo-841c181bcfa1725454bd1cbfefe1064608dbc726.tar.bz2
gentoo-841c181bcfa1725454bd1cbfefe1064608dbc726.zip
dev-libs/elfutils: fix bashisms in configure
Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--dev-libs/elfutils/elfutils-0.189-r1.ebuild (renamed from dev-libs/elfutils/elfutils-0.189.ebuild)6
-rw-r--r--dev-libs/elfutils/files/elfutils-0.189-configure-bashisms.patch49
2 files changed, 54 insertions, 1 deletions
diff --git a/dev-libs/elfutils/elfutils-0.189.ebuild b/dev-libs/elfutils/elfutils-0.189-r1.ebuild
index 0df16d8efdf8..285cb3c8c192 100644
--- a/dev-libs/elfutils/elfutils-0.189.ebuild
+++ b/dev-libs/elfutils/elfutils-0.189-r1.ebuild
@@ -4,7 +4,7 @@
EAPI=8
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/elfutils.gpg
-inherit flag-o-matic multilib-minimal verify-sig
+inherit autotools flag-o-matic multilib-minimal verify-sig
DESCRIPTION="Libraries/utilities to handle ELF objects (drop in replacement for libelf)"
HOMEPAGE="https://sourceware.org/elfutils/"
@@ -44,6 +44,7 @@ BDEPEND="
PATCHES=(
"${WORKDIR}"/${PN}-0.187-patches/
+ "${FILESDIR}"/${P}-configure-bashisms.patch
)
src_unpack() {
@@ -62,6 +63,9 @@ src_prepare() {
eapply "${WORKDIR}"/${PN}-0.187-patches/musl/
fi
+ # Only here for ${P}-configure-bashisms.patch, delete on next bump!
+ eautoreconf
+
if ! use static-libs; then
sed -i -e '/^lib_LIBRARIES/s:=.*:=:' -e '/^%.os/s:%.o$::' lib{asm,dw,elf}/Makefile.in || die
fi
diff --git a/dev-libs/elfutils/files/elfutils-0.189-configure-bashisms.patch b/dev-libs/elfutils/files/elfutils-0.189-configure-bashisms.patch
new file mode 100644
index 000000000000..04c01b0ecf88
--- /dev/null
+++ b/dev-libs/elfutils/files/elfutils-0.189-configure-bashisms.patch
@@ -0,0 +1,49 @@
+https://sourceware.org/git/?p=elfutils.git;a=commit;h=a9834d7df68afde4ee44ee8fef888cf7e799171a
+
+From a9834d7df68afde4ee44ee8fef888cf7e799171a Mon Sep 17 00:00:00 2001
+From: Mark Wielaard <mark@klomp.org>
+Date: Sun, 5 Mar 2023 13:09:34 +0100
+Subject: [PATCH] configure.ac contains Bashisms
+
+Autoconf scripts are supposed to be written in POSIX-compatible shell
+language. elfutils commits 0ffe2874e75d48cb88936e119e5284ff2bf664d9
+and 3fa98a6f29b0f370e32549ead7eb897c839af980 introduced Bashisms to
+configure.ac that cause errors when /bin/sh is not Bash.
+
+Example error when /bin/sh is Dash:
+
+./configure: 8748: test: xyes: unexpected operator
+
+The cause of the error is the use of a non-existent == operator in
+expressions passed to the 'test' built-in command. POSIX shell
+specifies only an = operator for testing string equality.
+
+ * configure.ac: Replace == by = in use_msan and enable_demangler
+ comparisons.
+
+https://sourceware.org/bugzilla/show_bug.cgi?id=30196
+
+Reported-by: Matt Whitlock <sourceware@mattwhitlock.name>
+Signed-off-by: Mark Wielaard <mark@klomp.org>
+--- a/configure.ac
++++ b/configure.ac
+@@ -169,7 +169,7 @@ if test "$use_msan" = yes; then
+ CXXFLAGS="$CXXFLAGS -fsanitize=memory -fsanitize-memory-track-origins -D_FORTIFY_SOURCE=0"
+ LDFLAGS="-shared"
+ AC_LINK_IFELSE([AC_LANG_SOURCE([int main (int argc, char **argv) { return 0; }])], use_msan=yes, use_msan=no)
+- AS_IF([test "x$use_msan" == xyes],
++ AS_IF([test "x$use_msan" = xyes],
+ ac_cv_zdefs=no NO_UNDEFINED=,
+ AC_MSG_WARN([clang memory sanitizer not available])
+ CFLAGS="$old_CFLAGS" CXXFLAGS="$old_CXXFLAGS")
+@@ -493,7 +493,7 @@ AC_ARG_ENABLE([demangler],
+ AS_HELP_STRING([--disable-demangler],
+ [Disable libstdc++ demangle support]),
+ [], [enable_demangler=yes])
+-AS_IF([test "x$enable_demangler" == xyes],
++AS_IF([test "x$enable_demangler" = xyes],
+ AC_CHECK_LIB([stdc++], [__cxa_demangle], [dnl
+ AC_DEFINE([USE_DEMANGLE], [1], [Defined if demangling is enabled])])
+ AM_CONDITIONAL(DEMANGLE, test "x$ac_cv_lib_stdcpp___cxa_demangle" = "xyes")
+--
+2.31.1