svn commit: r183876 - in head/lib: libc/arm/gen libstand

Rafal Jaworowski raj at FreeBSD.org
Tue Oct 14 09:53:48 UTC 2008


Author: raj
Date: Tue Oct 14 09:53:47 2008
New Revision: 183876
URL: http://svn.freebsd.org/changeset/base/183876

Log:
  Let libstand(3) build on ARM.
  
  This is a pre-requisite for loader(8) + U-Boot support library on this arch.

Modified:
  head/lib/libc/arm/gen/_setjmp.S
  head/lib/libstand/Makefile

Modified: head/lib/libc/arm/gen/_setjmp.S
==============================================================================
--- head/lib/libc/arm/gen/_setjmp.S	Tue Oct 14 08:44:27 2008	(r183875)
+++ head/lib/libc/arm/gen/_setjmp.S	Tue Oct 14 09:53:47 2008	(r183876)
@@ -101,6 +101,10 @@ ENTRY(_longjmp)
 
 	/* validation failed, die die die. */
 botch:
+#if !defined(_STANDALONE)
 	bl	PIC_SYM(_C_LABEL(longjmperror), PLT)
 	bl	PIC_SYM(_C_LABEL(abort), PLT)
 	b	. - 8		/* Cannot get here */
+#else
+	b	.
+#endif

Modified: head/lib/libstand/Makefile
==============================================================================
--- head/lib/libstand/Makefile	Tue Oct 14 08:44:27 2008	(r183875)
+++ head/lib/libstand/Makefile	Tue Oct 14 09:53:47 2008	(r183876)
@@ -32,6 +32,9 @@ CFLAGS+=	-msoft-float -D_STANDALONE
 .if ${MACHINE_ARCH} == "amd64"
 CFLAGS+=	-m32 -I.
 .endif
+.if ${MACHINE_ARCH} == "arm"
+CFLAGS+=	-msoft-float -DSOFTFLOAT -D_STANDALONE
+.endif
 
 # standalone components and stuff we have modified locally
 SRCS+=	zutil.h __main.c assert.c bcd.c bswap.c environment.c getopt.c gets.c \
@@ -48,12 +51,17 @@ SRCS+= ntoh.c
 # string functions from libc
 .PATH: ${.CURDIR}/../libc/string
 .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "powerpc" || \
-	${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "amd64"
+	${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "amd64" || \
+	${MACHINE_ARCH} == "arm"
 SRCS+=	bcmp.c bcopy.c bzero.c ffs.c index.c memccpy.c memchr.c memcmp.c \
         memcpy.c memmove.c memset.c qdivrem.c rindex.c strcat.c strchr.c \
         strcmp.c strcpy.c strcspn.c strlen.c strncat.c strncmp.c strncpy.c \
 	strpbrk.c strrchr.c strsep.c strspn.c strstr.c strtok.c swab.c
 .endif
+.if ${MACHINE_ARCH} == "arm"
+.PATH: ${.CURDIR}/../libc/arm/gen
+SRCS+= divsi3.S
+.endif
 .if ${MACHINE_ARCH} == "ia64"
 .PATH: ${.CURDIR}/../libc/ia64/string
 SRCS+=	bcmp.c bcopy.S bzero.S ffs.S index.c memccpy.c memchr.c memcmp.c \


More information about the svn-src-head mailing list