summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/zlib/zlib/0001-configure-Pass-LDFLAGS-to-link-tests.patch
blob: 07b2cd3879d930fa529304a065b45ab90956e55b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
Upstream-Status: Submitted [https://github.com/madler/zlib/pull/599]
Signed-off-by: Ross Burton <ross.burton@arm.com>

From ea77f1f003a4d18b23cca703f3c824942863a1b4 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 8 Mar 2022 22:38:47 -0800
Subject: [PATCH] configure: Pass LDFLAGS to link tests

LDFLAGS can contain critical flags without which linking wont succeed
therefore ensure that all configure tests involving link time checks are
using LDFLAGS on compiler commandline along with CFLAGS to ensure the
tests perform correctly. Without this some tests may fail resulting in
wrong confgure result, ending in miscompiling the package

Signed-off-by: Khem Raj <raj.khem@gmail.com>

---
 configure | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/configure b/configure
index c55098a..a7c6d72 100755
--- a/configure
+++ b/configure
@@ -443,7 +443,7 @@ if test $shared -eq 1; then
   echo Checking for shared library support... | tee -a configure.log
   # we must test in two steps (cc then ld), required at least on SunOS 4.x
   if try $CC -c $SFLAGS $test.c &&
-     try $LDSHARED $SFLAGS -o $test$shared_ext $test.o; then
+     try $LDSHARED $SFLAGS $LDFLAGS -o $test$shared_ext $test.o; then
     echo Building shared library $SHAREDLIBV with $CC. | tee -a configure.log
   elif test -z "$old_cc" -a -z "$old_cflags"; then
     echo No shared library support. | tee -a configure.log
@@ -505,7 +505,7 @@ int main(void) {
 }
 EOF
   fi
-  if try $CC $CFLAGS -o $test $test.c; then
+  if try $CC $CFLAGS $LDFLAGS -o $test $test.c; then
     sizet=`./$test`
     echo "Checking for a pointer-size integer type..." $sizet"." | tee -a configure.log
     CFLAGS="${CFLAGS} -DNO_SIZE_T=${sizet}"
@@ -539,7 +539,7 @@ int main(void) {
   return 0;
 }
 EOF
-  if try $CC $CFLAGS -o $test $test.c; then
+  if try $CC $CFLAGS $LDFLAGS -o $test $test.c; then
     echo "Checking for fseeko... Yes." | tee -a configure.log
   else
     CFLAGS="${CFLAGS} -DNO_FSEEKO"
@@ -556,7 +556,7 @@ cat > $test.c <<EOF
 #include <errno.h>
 int main() { return strlen(strerror(errno)); }
 EOF
-if try $CC $CFLAGS -o $test $test.c; then
+if try $CC $CFLAGS $LDFLAGS -o $test $test.c; then
   echo "Checking for strerror... Yes." | tee -a configure.log
 else
   CFLAGS="${CFLAGS} -DNO_STRERROR"
@@ -663,7 +663,7 @@ int main()
   return (mytest("Hello%d\n", 1));
 }
 EOF
-  if try $CC $CFLAGS -o $test $test.c; then
+  if try $CC $CFLAGS $LDFLAGS -o $test $test.c; then
     echo "Checking for vsnprintf() in stdio.h... Yes." | tee -a configure.log
 
     echo >> configure.log
@@ -753,7 +753,7 @@ int main()
 }
 EOF
 
-  if try $CC $CFLAGS -o $test $test.c; then
+  if try $CC $CFLAGS $LDFLAGS -o $test $test.c; then
     echo "Checking for snprintf() in stdio.h... Yes." | tee -a configure.log
 
     echo >> configure.log