summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2022-03-28 08:27:31 +0100
committerSam James <sam@gentoo.org>2022-03-28 08:28:03 +0100
commit0a91cef90a3879f5fe3763a01c0f37c336bd1a6c (patch)
tree7079580aa7dd12a30df3ba473664c0fa5a03dbac /sys-libs/zlib
parentdev-util/cbindgen: add 0.21.0 (diff)
downloadgentoo-0a91cef90a3879f5fe3763a01c0f37c336bd1a6c.tar.gz
gentoo-0a91cef90a3879f5fe3763a01c0f37c336bd1a6c.tar.bz2
gentoo-0a91cef90a3879f5fe3763a01c0f37c336bd1a6c.zip
sys-libs/zlib: fix CC detection in configure
Notably fixes multilib (although it actually silently skipped for me) in at least one way. Closes: https://bugs.gentoo.org/836308 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-libs/zlib')
-rw-r--r--sys-libs/zlib/files/zlib-1.2.12-fix-CC-logic-in-configure.patch27
-rw-r--r--sys-libs/zlib/zlib-1.2.12.ebuild4
2 files changed, 31 insertions, 0 deletions
diff --git a/sys-libs/zlib/files/zlib-1.2.12-fix-CC-logic-in-configure.patch b/sys-libs/zlib/files/zlib-1.2.12-fix-CC-logic-in-configure.patch
new file mode 100644
index 000000000000..da9455519b6f
--- /dev/null
+++ b/sys-libs/zlib/files/zlib-1.2.12-fix-CC-logic-in-configure.patch
@@ -0,0 +1,27 @@
+From 95b9053f10710f9f881f4daec2f2e78da87560cf Mon Sep 17 00:00:00 2001
+From: Sam James <sam@gentoo.org>
+Date: Mon, 28 Mar 2022 08:21:18 +0100
+Subject: [PATCH] Fix CC logic in configure
+
+In https://github.com/madler/zlib/commit/e9a52aa129efe3834383e415580716a7c4027f8d,
+the logic was changed to try check harder for GCC, but it dropped
+the default setting of cc=${CC}.
+
+This led to e.g. misdetection of inability to build shared libs
+for say, multilib cases (w/ CC being one thing (e.g. x86_64-unknown-linux-gnu-gcc -m32
+and then 'cc' used for shared libs being w/o -m32).
+
+Signed-off-by: Sam James <sam@gentoo.org>
+--- a/configure
++++ b/configure
+@@ -180,7 +180,10 @@ if test -z "$CC"; then
+ else
+ cc=${CROSS_PREFIX}cc
+ fi
++else
++ cc=${CC}
+ fi
++
+ cflags=${CFLAGS-"-O3"}
+ # to force the asm version use: CFLAGS="-O3 -DASMV" ./configure
+ case "$cc" in
diff --git a/sys-libs/zlib/zlib-1.2.12.ebuild b/sys-libs/zlib/zlib-1.2.12.ebuild
index d43f2e1853c7..1a031b3c2526 100644
--- a/sys-libs/zlib/zlib-1.2.12.ebuild
+++ b/sys-libs/zlib/zlib-1.2.12.ebuild
@@ -36,6 +36,9 @@ PATCHES=(
# bug #831628
"${FILESDIR}"/${PN}-1.2.11-configure-fix-AR-RANLIB-NM-detection.patch
+
+ # Fix broken CC logic
+ "${FILESDIR}"/${PN}-1.2.12-fix-CC-logic-in-configure.patch
)
src_prepare() {
@@ -85,6 +88,7 @@ multilib_src_configure() {
*)
# bug #347167
local uname=$("${BROOT}"/usr/share/gnuconfig/config.sub "${CHOST}" | cut -d- -f3)
+
local myconf=(
--shared
--prefix="${EPREFIX}/usr"