Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 23 Jun 1998 13:00:07 +0200 (CEST)
From:      Joachim Kuebart <joki@kuebart.stuttgart.netsurf.de>
To:        freebsd-current@FreeBSD.ORG
Subject:   ELF patches to bsd.lib.mk
Message-ID:  <199806231100.NAA00273@jaguar.domestic.de>

next in thread | raw e-mail | index | archive | help
Hi,

this is to make the ELF ld which has no -O switch work as well.

The patches I posted yesterday are sub-optimal which was pointed out
by Wolfgang Helbig. The following are better:

Index: bsd.lib.mk
===================================================================
RCS file: /usr/CVS-Repository/src/share/mk/bsd.lib.mk,v
retrieving revision 1.74
diff -u -r1.74 bsd.lib.mk
--- bsd.lib.mk	1998/06/05 18:38:54	1.74
+++ bsd.lib.mk	1998/06/23 11:00:18
@@ -50,78 +50,96 @@
 
 .c.o:
 	${CC} ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .c.po:
 	${CC} -pg ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -X -r ${.TARGET}
+	@${LD} -O ${.TARGET}.tmp -X -r ${.TARGET}
+	@mv -f ${.TARGET.tmp} ${.TARGET}
 
 .c.so:
 	${CC} ${PICFLAG} -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .cc.o .C.o .cpp.o .cxx.o:
 	${CXX} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .cc.po .C.po .cpp.po .cxx.po:
 	${CXX} -pg ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -X -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -X -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .cc.so .C.so .cpp.so .cxx.so:
 	${CXX} ${PICFLAG} -DPIC ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .f.o:
 	${FC} ${FFLAGS} -o ${.TARGET} -c ${.IMPSRC} 
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .f.po:
 	${FC} -pg ${FFLAGS} -o ${.TARGET} -c ${.IMPSRC} 
-	@${LD} -O ${.TARGET} -X -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -X -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .f.so:
 	${FC} ${PICFLAG} -DPIC ${FFLAGS} -o ${.TARGET} -c ${.IMPSRC}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .m.o:
 	${OBJC} ${OBJCFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .m.po:
 	${OBJC} ${OBJCFLAGS} -pg -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -X -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -X -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .m.so:
 	${OBJC} ${PICFLAG} -DPIC ${OBJCFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .s.o:
 	${CC} -x assembler-with-cpp ${CFLAGS:M-[BID]*} ${AINC} -c \
 	    ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .s.po:
 	${CC} -x assembler-with-cpp -DPROF ${CFLAGS:M-[BID]*} ${AINC} -c \
 	    ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -X -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -X -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .s.so:
 	${CC} -x assembler-with-cpp -fpic -DPIC ${CFLAGS:M-[BID]*} ${AINC} -c \
 	    ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .S.o:
 	${CC} ${CFLAGS:M-[BID]*} ${AINC} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .S.po:
 	${CC} -DPROF ${CFLAGS:M-[BID]*} ${AINC} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -X -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -X -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .S.so:
 	${CC} -fpic -DPIC ${CFLAGS:M-[BID]*} ${AINC} -c ${.IMPSRC} -o ${.TARGET}
-	@${LD} -O ${.TARGET} -x -r ${.TARGET}
+	@${LD} -o ${.TARGET}.tmp -x -r ${.TARGET}
+	@mv -f ${.TARGET}.tmp ${.TARGET}
 
 .if !defined(INTERNALLIB) || defined(INTERNALSTATICLIB)
 .if !defined(NOPROFILE) && !defined(INTERNALLIB)


cu Jo

---------------------------------------------------------------------
FreeBSD: The Power to Serve                  <http://www.freebsd.org>;
Joachim Kuebart
Tel: +49 711 653706            Oh god, god, god -- My tongue's asleep
Germany                        and my teeth itch.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199806231100.NAA00273>