Commit ab6b9e77 authored by Peter Korsgaard's avatar Peter Korsgaard
Browse files

uClibc: add patches to unbreak 0.9.32 on powerpc e500



Patches from Jason Woodward, posted on the uClibc list back in July.

Signed-off-by: default avatarPeter Korsgaard <jacmet@sunsite.dk>
parent 3e4d0292
Loading
Loading
Loading
Loading
+34 −0
Original line number Diff line number Diff line
>From 49f58308779cb0b798f5e7bc902bbc515c1ec394 Mon Sep 17 00:00:00 2001
From: Jason Woodward <jason.woodward@timesys.com>
Date: Sat, 11 Jun 2011 22:00:59 -0400
Subject: [PATCH] Fix e500 __fe_nomask_env use of __set_errno w/o CFLAGS-libm

Since the new _LIBC guard in 96c9a8f7d00cdf6bb7968a2390b9d87da8a45e2d we need
to use CFLAGS-libm (-DNOT_IN_libc -DIS_IN_libm) or we end up with linker
errors like:

  lib/libm.a(fe_nomask.os): In function `__fe_nomask_env':
  fe_nomask.c:(.text+0x26): undefined reference to `__libc_errno'
  collect2: ld returned 1 exit status

Signed-off-by: Jason Woodward <jason.woodward@timesys.com>
---
 libm/powerpc/e500/fpu/Makefile.arch |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/libm/powerpc/e500/fpu/Makefile.arch b/libm/powerpc/e500/fpu/Makefile.arch
index 904561e..a64843f 100644
--- a/libm/powerpc/e500/fpu/Makefile.arch
+++ b/libm/powerpc/e500/fpu/Makefile.arch
@@ -11,6 +11,8 @@ libm_ARCH_SRC:=$(wildcard $(libm_ARCH_fpu_DIR)/*.c)
 libm_ARCH_OBJ:=$(patsubst $(libm_ARCH_fpu_DIR)/%.c,$(libm_ARCH_fpu_OUT)/%.o,$(libm_ARCH_SRC))
 endif
 
+CFLAGS-fe_nomask.c := $(CFLAGS-libm)
+
 libm_ARCH_OBJS:=$(libm_ARCH_OBJ)
 
 ifeq ($(DOPIC),y)
-- 
1.7.0.4
+31 −0
Original line number Diff line number Diff line
>From 826984dee547b41238dc9572a1c756506a3c9148 Mon Sep 17 00:00:00 2001
From: Jason Woodward <jason.woodward@timesys.com>
Date: Sat, 11 Jun 2011 19:09:53 -0400
Subject: [PATCH] Fix e500 fpu libm build

Define libm_ARCH_fpu_OUT in libm/powerpc/e500/Makefile.arch as it is used
in libm/powerpc/e500/fpu/Makefile.arch

 libm_ARCH_OBJ:=$(patsubst $(libm_ARCH_fpu_DIR)/%.c,$(libm_ARCH_fpu_OUT)/%.o,$(libm_ARCH_SRC))

This appears to have been broken since cd3a494e99fa4bcad1c2a621b71361005528bead

Signed-off-by: Jason Woodward <jason.woodward@timesys.com>
---
 libm/powerpc/e500/Makefile.arch |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/libm/powerpc/e500/Makefile.arch b/libm/powerpc/e500/Makefile.arch
index 912ce7f..febde67 100644
--- a/libm/powerpc/e500/Makefile.arch
+++ b/libm/powerpc/e500/Makefile.arch
@@ -6,5 +6,6 @@
 #
 
 libm_ARCH_fpu_DIR := $(libm_SUBARCH_DIR)/fpu
+libm_ARCH_fpu_OUT := $(libm_SUBARCH_OUT)/fpu
 -include $(libm_ARCH_fpu_DIR)/Makefile.arch
 
-- 
1.7.0.4
+28 −0
Original line number Diff line number Diff line
>From 69d9cf20955d0222a5a2631021bc10854ea98128 Mon Sep 17 00:00:00 2001
From: Jason Woodward <jason.woodward@timesys.com>
Date: Sat, 11 Jun 2011 20:39:33 -0400
Subject: [PATCH] honor UCLIBC_HAS_FENV for e500

Signed-off-by: Jason Woodward <jason.woodward@timesys.com>
---
 libm/powerpc/e500/fpu/Makefile.arch |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/libm/powerpc/e500/fpu/Makefile.arch b/libm/powerpc/e500/fpu/Makefile.arch
index 8f00e09..904561e 100644
--- a/libm/powerpc/e500/fpu/Makefile.arch
+++ b/libm/powerpc/e500/fpu/Makefile.arch
@@ -6,8 +6,10 @@
 #
 
 
+ifeq ($(UCLIBC_HAS_FENV),y)
 libm_ARCH_SRC:=$(wildcard $(libm_ARCH_fpu_DIR)/*.c)
 libm_ARCH_OBJ:=$(patsubst $(libm_ARCH_fpu_DIR)/%.c,$(libm_ARCH_fpu_OUT)/%.o,$(libm_ARCH_SRC))
+endif
 
 libm_ARCH_OBJS:=$(libm_ARCH_OBJ)
 
-- 
1.7.0.4