diff mbox series

[1/1] package/glibc: fix build with BR2_OPTIMIZE_S

Message ID 20220927031702.2918414-1-james.hilliard1@gmail.com
State Superseded
Headers show
Series [1/1] package/glibc: fix build with BR2_OPTIMIZE_S | expand

Commit Message

James Hilliard Sept. 27, 2022, 3:17 a.m. UTC
Add patch from glibc patchwork to fix bug #29576.

Details:
https://sourceware.org/bugzilla/show_bug.cgi?id=29576

Fixes:
 - http://autobuild.buildroot.net/results/5b4/5b442f95587ddc65a995bbd9e310c88a66c55b1f

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
 .../0002-x86-Fix-Os-build-BZ-29576.patch      | 47 +++++++++++++++++++
 1 file changed, 47 insertions(+)
 create mode 100644 package/glibc/0002-x86-Fix-Os-build-BZ-29576.patch
diff mbox series

Patch

diff --git a/package/glibc/0002-x86-Fix-Os-build-BZ-29576.patch b/package/glibc/0002-x86-Fix-Os-build-BZ-29576.patch
new file mode 100644
index 0000000000..b0f02c8478
--- /dev/null
+++ b/package/glibc/0002-x86-Fix-Os-build-BZ-29576.patch
@@ -0,0 +1,47 @@ 
+From 89c31b2f2ecdf9e87fb937d3019471359a03d11c Mon Sep 17 00:00:00 2001
+From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
+Date: Wed, 21 Sep 2022 10:51:08 -0300
+Subject: [PATCH] x86: Fix -Os build (BZ #29576)
+
+The compiler might transform __stpcpy calls (which are routed to
+__builtin_stpcpy as an optimization) to strcpy and x86_64 strcpy
+multiarch implementation does not build any working symbol due
+ISA_SHOULD_BUILD not being evaluated for IS_IN(rtld).
+
+Checked on x86_64-linux-gnu.
+
+Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
+[Upstream status:
+https://patchwork.sourceware.org/project/glibc/patch/20220921135108.3324737-7-adhemerval.zanella@linaro.org/]
+---
+ sysdeps/x86_64/multiarch/rtld-strcpy.S | 18 ++++++++++++++++++
+ 1 file changed, 18 insertions(+)
+ create mode 100644 sysdeps/x86_64/multiarch/rtld-strcpy.S
+
+diff --git a/sysdeps/x86_64/multiarch/rtld-strcpy.S b/sysdeps/x86_64/multiarch/rtld-strcpy.S
+new file mode 100644
+index 0000000000..19439c553d
+--- /dev/null
++++ b/sysdeps/x86_64/multiarch/rtld-strcpy.S
+@@ -0,0 +1,18 @@
++/* Copyright (C) 2022 Free Software Foundation, Inc.
++   This file is part of the GNU C Library.
++
++   The GNU C Library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2.1 of the License, or (at your option) any later version.
++
++   The GNU C Library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with the GNU C Library; if not, see
++   <https://www.gnu.org/licenses/>.  */
++
++#include "../strcpy.S"
+-- 
+2.34.1
+