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>
