summaryrefslogtreecommitdiff
path: root/patches/glibc/2.16.0
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2017-03-09 05:21:36 (GMT)
committerAlexey Neyman <stilor@att.net>2017-03-09 05:21:36 (GMT)
commit3b658d15d320e39149e858f74d00397e76514d9f (patch)
tree36c75fc7cbaebdbfba4dbdf5ade7b1d00be5d18b /patches/glibc/2.16.0
parenta61f1c5bc285f4a1a05a25e39ab67a70cac16770 (diff)
Patch failing grep expression in glibc configure
Signed-off-by: Alexey Neyman <stilor@att.net>
Diffstat (limited to 'patches/glibc/2.16.0')
-rw-r--r--patches/glibc/2.16.0/140-Fix-combreloc-test-BSD-grep.patch49
1 files changed, 49 insertions, 0 deletions
diff --git a/patches/glibc/2.16.0/140-Fix-combreloc-test-BSD-grep.patch b/patches/glibc/2.16.0/140-Fix-combreloc-test-BSD-grep.patch
new file mode 100644
index 0000000..3c34e01
--- /dev/null
+++ b/patches/glibc/2.16.0/140-Fix-combreloc-test-BSD-grep.patch
@@ -0,0 +1,49 @@
+From 61d5f9c09b3157db76bd1a393e248c262a8d9dd4 Mon Sep 17 00:00:00 2001
+From: Alexey Neyman <stilor@att.net>
+Date: Wed, 8 Mar 2017 14:31:10 -0800
+Subject: [PATCH] Fix combreloc test with BSD grep
+
+The test for "-z combreloc" fails when cross-compiling on a machine
+that uses BSD grep (e.g. on macos). grep complains about empty
+subexpression and exits with non-zero status, which is interpreted
+by configure as "not found". As a result, support for "-z combreloc"
+(HAVE_Z_COMBRELOC) is not detected, leading to link failure on SPARC.
+
+ * configure.ac: Avoid empty subexpression in grep.
+
+Signed-off-by: Alexey Neyman <stilor@att.net>
+---
+ ChangeLog | 5 +++++
+ configure | 2 +-
+ configure.ac | 2 +-
+ 3 files changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/configure b/configure
+index eecd0ac..0118bd1 100755
+--- a/configure
++++ b/configure
+@@ -5804,7 +5804,7 @@ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; }
+ then
+- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
++ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then
+ libc_cv_z_combreloc=yes
+ else
+ libc_cv_z_combreloc=no
+diff --git a/configure.ac b/configure.ac
+index 4a77411..19f6d87 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1391,7 +1391,7 @@ dnl cross-platform since the gcc used can be a cross compiler. Without
+ dnl introducing new options this is not easily doable. Instead use a tool
+ dnl which always is cross-platform: readelf. To detect whether -z combreloc
+ dnl look for a section named .rel.dyn.
+- if $READELF -S conftest.so | grep '\.rel\(a\|\)\.dyn' > /dev/null; then
++ if $READELF -S conftest.so | grep '\.\(rel\|rela\)\.dyn' > /dev/null; then
+ libc_cv_z_combreloc=yes
+ else
+ libc_cv_z_combreloc=no
+--
+2.9.3
+