svn commit: r216351 - head/lib/csu/ia64

Tijl Coosemans tijl at
Fri Dec 10 08:53:07 UTC 2010

Author: tijl
Date: Fri Dec 10 08:53:06 2010
New Revision: 216351

  Add a .note.ABI-tag section to ia64 startup files by linking crtbrand.c
  in crt1.o. On other architectures crtbrand.c is included from crt1.c,
  but that's not a C source code file on ia64. Instead it is compiled
  separately and included in crt1.o using incremental linking.
  Tested by:	dim (previous version)
  Approved by:	kib (mentor)


Modified: head/lib/csu/ia64/Makefile
--- head/lib/csu/ia64/Makefile	Fri Dec 10 08:33:56 2010	(r216350)
+++ head/lib/csu/ia64/Makefile	Fri Dec 10 08:53:06 2010	(r216351)
@@ -2,21 +2,42 @@
 .PATH: ${.CURDIR}/../common
-SRCS=		crt1.S crti.S crtn.S
+SRCS=		crti.S crtn.S
 OBJS=		${SRCS:N*.h:R:S/$/.o/g}
-OBJS+=		Scrt1.o gcrt1.o
-CFLAGS+=	-I${.CURDIR}/../common \
-		-I${.CURDIR}/../../libc/include
+OBJS+=		crt1.o gcrt1.o Scrt1.o
 all: ${OBJS}
+CLEANFILES+=	crt1_.o gcrt1_.o Scrt1_.o
+CLEANFILES+=	crtbrand.o gcrtbrand.o Scrtbrand.o
-gcrt1.o: crt1.S
-	${CC} ${CFLAGS} -DGCRT -c -o gcrt1.o ${.ALLSRC}
+crt1_.o: crt1.S
+	${CC} ${CFLAGS} -c -o ${.TARGET} ${.ALLSRC}
-Scrt1.o: crt1.S
-	${CC} ${CFLAGS} -fPIC -DPIC -c -o Scrt1.o ${.ALLSRC}
+crtbrand.o: crtbrand.c
+	${CC} ${CFLAGS} -c -o ${.TARGET} ${.ALLSRC}
+crt1.o: crt1_.o crtbrand.o
+	${LD} ${LDFLAGS} -r -o ${.TARGET} crt1_.o crtbrand.o
+gcrt1_.o: crt1.S
+	${CC} ${CFLAGS} -DGCRT -c -o ${.TARGET} ${.ALLSRC}
+gcrtbrand.o: crtbrand.c
+	${CC} ${CFLAGS} -DGCRT -c -o ${.TARGET} ${.ALLSRC}
+gcrt1.o: gcrt1_.o gcrtbrand.o
+	${LD} ${LDFLAGS} -r -o ${.TARGET} ${.ALLSRC}
+Scrt1_.o: crt1.S
+	${CC} ${CFLAGS} -fPIC -DPIC -c -o ${.TARGET} ${.ALLSRC}
+Scrtbrand.o: crtbrand.c
+	${CC} ${CFLAGS} -fPIC -DPIC -c -o ${.TARGET} ${.ALLSRC}
+Scrt1.o: Scrt1_.o Scrtbrand.o
+	${LD} ${LDFLAGS} -r -o ${.TARGET} ${.ALLSRC}
 	${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \

More information about the svn-src-all mailing list