[PATCH 10/10] microblaze: build infrastructure

Steven J. Magnani steve at digidescorp.com
Tue Oct 5 14:23:23 UTC 2010


Fix Microblaze config and makefiles.

Signed-off-by: Steven J. Magnani <steve at digidescorp.com>
---
diff -uprN a/extra/Configs/Config.in b/extra/Configs/Config.in
--- a/extra/Configs/Config.in	2010-09-20 08:03:17.000000000 -0500
+++ b/extra/Configs/Config.in	2010-09-21 20:11:43.000000000 -0500
@@ -79,7 +79,7 @@ config TARGET_m68k
 	bool "m68k"
 
 config TARGET_microblaze
-	bool "microblaze (BROKEN)"
+	bool "microblaze"
 
 config TARGET_mips
 	bool "mips"
diff -uprN a/libc/sysdeps/linux/microblaze/Makefile b/libc/sysdeps/linux/microblaze/Makefile
--- a/libc/sysdeps/linux/microblaze/Makefile	2010-09-20 08:03:17.000000000 -0500
+++ b/libc/sysdeps/linux/microblaze/Makefile	2010-09-21 20:10:24.000000000 -0500
@@ -1,67 +1,25 @@
 # Makefile for uClibc
 #
-# Copyright (C) 2001,2002  NEC Corporation
-# Copyright (C) 2001,2002  Miles Bader <miles at gnu.org>
+# Copyright (C) 2000-2003 Erik Andersen <andersen at uclibc.org>
 #
-# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
-
-TOPDIR=../../../../
-include $(TOPDIR)Rules.mak
-
-#FIXME -- this arch should include its own crti.S and crtn.S
-UCLIBC_CTOR_DTOR=n
-
-CFLAGS += -I..
-ASFLAGS += -I.. -D__ASSEMBLER -DASM_GLOBAL_DIRECTIVE=.globl
-
-TARGET_MACHINE_TYPE=$(shell $(CC) -dumpmachine)
-
-CRT_SRC := crt0.S
-CRT_OBJ := crt0.o crt1.o
-CTOR_TARGETS := $(TOPDIR)lib/crti.o $(TOPDIR)lib/crtn.o
-
-SSRC := setjmp.S __longjmp.S vfork.S
-SOBJ := $(patsubst %.S,%.o, $(SSRC))
-
-CSRC := mmap.c syscall.c clone.c
-COBJ := $(patsubst %.c,%.o, $(CSRC))
-
-OBJS := $(SOBJ) $(COBJ)
-
-OBJ_LIST := ../../../obj.sysdeps.$(TARGET_ARCH)
-
-all: $(OBJ_LIST) $(CTOR_TARGETS)
-
-$(OBJ_LIST): $(OBJS) $(CRT_OBJ)
-	$(STRIPTOOL) -x -R .note -R .comment $^
-	$(INSTALL) -d $(TOPDIR)lib/
-	cp $(CRT_OBJ) $(TOPDIR)lib/
-	echo $(patsubst %, sysdeps/linux/$(TARGET_ARCH)/%, $(OBJS)) > $@
-
-$(CRT_OBJ): $(CRT_SRC)
-	$(CC) $(ASFLAGS) -DL_$* $< -c -o $*.o
-
-$(SOBJ): %.o : %.S
-	$(CC) $(ASFLAGS) -c $< -o $@
-
-$(COBJ): %.o : %.c
-	$(CC) $(CFLAGS) -c $< -o $@
-
-ifeq ($(UCLIBC_CTOR_DTOR),y)
-$(TOPDIR)lib/crti.o: crti.S
-	$(INSTALL) -d $(TOPDIR)lib/
-	$(CC) $(ASFLAGS) $(SSP_DISABLE_FLAGS) -c $< -o $@
-
-$(TOPDIR)lib/crtn.o: crtn.S
-	$(INSTALL) -d $(TOPDIR)lib/
-	$(CC) $(ASFLAGS) $(SSP_DISABLE_FLAGS) -c $< -o $@
-else
-$(CTOR_TARGETS):
-	$(INSTALL) -d $(TOPDIR)lib/
-	$(AR) $(ARFLAGS) $@
-endif
-
-headers:
-
-clean:
-	$(RM) *.o *~ core
+# This program is free software; you can redistribute it and/or modify it under
+# the terms of the GNU Library General Public License as published by the Free
+# Software Foundation; either version 2 of the License, or (at your option) any
+# later version.
+#
+# This program 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 Library General Public License for more
+# details.
+#
+# You should have received a copy of the GNU Library General Public License
+# along with this program; if not, write to the Free Software Foundation, Inc.,
+# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+top_srcdir=../../../../
+top_builddir=../../../../
+all: objs
+
+include $(top_builddir)Rules.mak
+include Makefile.arch
+include $(top_srcdir)Makerules
diff -uprN a/libc/sysdeps/linux/microblaze/Makefile.arch b/libc/sysdeps/linux/microblaze/Makefile.arch
--- a/libc/sysdeps/linux/microblaze/Makefile.arch	1969-12-31 18:00:00.000000000 -0600
+++ b/libc/sysdeps/linux/microblaze/Makefile.arch	2010-09-21 20:10:24.000000000 -0500
@@ -0,0 +1,14 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2001,2002  NEC Corporation
+# Copyright (C) 2001,2002  Miles Bader <miles at gnu.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+
+CSRC := mmap.c clone.c fixdfsi.c
+
+SSRC := setjmp.S __longjmp.S vfork.S
+
+ARCH_HEADERS := floatlib.h
+
+include $(top_srcdir)libc/sysdeps/linux/Makefile.commonarch

diff -uprN a/Rules.mak b/Rules.mak
--- a/Rules.mak	2010-09-20 08:03:17.000000000 -0500
+++ b/Rules.mak	2010-09-21 20:11:43.000000000 -0500
@@ -482,7 +482,7 @@ ifeq ($(TARGET_ARCH),i960)
 endif
 
 ifeq ($(TARGET_ARCH),microblaze)
-      SYMBOL_PREFIX=_
+      SYMBOL_PREFIX=
 endif
 
 ifeq ($(TARGET_ARCH),v850)



More information about the uClibc mailing list