Add macros for the linker, which might be different than the compiler.
authorSimon Schubert <corecode@dragonflybsd.org>
Mon, 19 May 2008 10:26:02 +0000 (10:26 +0000)
committerSimon Schubert <corecode@dragonflybsd.org>
Mon, 19 May 2008 10:26:02 +0000 (10:26 +0000)
share/mk/bsd.hostprog.mk
share/mk/bsd.lib.mk
share/mk/bsd.prog.mk
share/mk/sys.mk

index 7f8f4c9..094b337 100644 (file)
@@ -1,4 +1,4 @@
-# $DragonFly: src/share/mk/bsd.hostprog.mk,v 1.7 2007/08/25 15:22:30 corecode Exp $
+# $DragonFly: src/share/mk/bsd.hostprog.mk,v 1.8 2008/05/19 10:26:02 corecode Exp $
 
 .include <bsd.init.mk>
 
@@ -35,9 +35,9 @@ OBJS:=        ${OBJS:N${_OBJ}} ${_OBJ}
 
 ${PROG}.nx: ${OBJS}
 .if defined(PROG_CXX)
-       ${NXCXX} ${NXCXXFLAGS} ${NXLDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
+       ${NXCXX_LINK} ${NXCXXFLAGS} ${NXLDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .else
-       ${NXCC} ${NXCFLAGS} ${NXLDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
+       ${NXCC_LINK} ${NXCFLAGS} ${NXLDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .endif
 .endif
 
index f02c05d..2cd02f5 100644 (file)
@@ -1,6 +1,6 @@
 #      from: @(#)bsd.lib.mk    5.26 (Berkeley) 5/2/91
 # $FreeBSD: src/share/mk/bsd.lib.mk,v 1.91.2.15 2002/08/07 16:31:50 ru Exp $
-# $DragonFly: src/share/mk/bsd.lib.mk,v 1.16 2006/02/13 13:27:20 corecode Exp $
+# $DragonFly: src/share/mk/bsd.lib.mk,v 1.17 2008/05/19 10:26:02 corecode Exp $
 #
 
 .include <bsd.init.mk>
@@ -185,7 +185,7 @@ ${SHLIB_NAME}: ${SOBJS}
 .if defined(SHLIB_LINK)
        ${LN} -fs ${.TARGET} ${SHLIB_LINK}
 .endif
-       ${CC} ${LDFLAGS} -shared -Wl,-x \
+       ${CC_LINK} ${LDFLAGS} -shared -Wl,-x \
            -o ${.TARGET} -Wl,-soname,${SONAME} \
            `lorder ${SOBJS} | tsort -q` ${LDADD}
 .endif
index 7ca396a..fed836f 100644 (file)
@@ -1,6 +1,6 @@
 #      from: @(#)bsd.prog.mk   5.26 (Berkeley) 6/25/91
 # $FreeBSD: src/share/mk/bsd.prog.mk,v 1.86.2.17 2002/12/23 16:33:37 ru Exp $
-# $DragonFly: src/share/mk/bsd.prog.mk,v 1.13 2006/02/13 14:21:25 corecode Exp $
+# $DragonFly: src/share/mk/bsd.prog.mk,v 1.14 2008/05/19 10:26:02 corecode Exp $
 
 .include <bsd.init.mk>
 
@@ -35,9 +35,9 @@ OBJS+=  ${SRCS:N*.h:N*.patch:R:S/$/.o/g}
 
 ${PROG}: ${OBJS}
 .if defined(PROG_CXX)
-       ${CXX} ${CXXFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
+       ${CXX_LINK} ${CXXFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .else
-       ${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
+       ${CC_LINK} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .endif
 
 .else # !defined(SRCS)
@@ -58,9 +58,9 @@ OBJS= ${PROG}.o
 
 ${PROG}: ${OBJS}
 .if defined(PROG_CXX)
-       ${CXX} ${CXXFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
+       ${CXX_LINK} ${CXXFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .else
-       ${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
+       ${CC_LINK} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
 .endif
 .endif
 
@@ -84,16 +84,11 @@ CLEANFILES+= ${PROG} ${OBJS}
 
 .if defined(PROG)
 _EXTRADEPEND:
-.if ${OBJFORMAT} == aout
-       echo ${PROG}: `${CC} -Wl,-f ${CFLAGS} ${LDFLAGS} \
-           ${LDADD:S/^/-Wl,/}` >> ${DEPENDFILE}
-.else
        echo ${PROG}: ${LIBC} ${DPADD} >> ${DEPENDFILE}
 .if defined(PROG_CXX)
        echo ${PROG}: ${LIBSTDCPLUSPLUS} >> ${DEPENDFILE}
 .endif
 .endif
-.endif
 
 .if !target(install)
 
index c28c383..2cc6bd1 100644 (file)
@@ -1,6 +1,6 @@
 #      from: @(#)sys.mk        8.2 (Berkeley) 3/21/94
 # $FreeBSD: src/share/mk/sys.mk,v 1.45.2.6 2002/12/23 16:33:37 ru Exp $
-# $DragonFly: src/share/mk/sys.mk,v 1.20 2007/07/22 21:59:36 corecode Exp $
+# $DragonFly: src/share/mk/sys.mk,v 1.21 2008/05/19 10:26:02 corecode Exp $
 
 unix           ?=      We run FreeBSD, not UNIX.
 
@@ -41,15 +41,19 @@ CC          ?=      c89
 .else
 CC             ?=      cc
 .endif
+CC_LINK                ?=      ${CC}
 # The system cc frontend is not subject to the path, e.g. when buildworld
 # is doing cross compiles it may still need the native compiler for things.
 #
 NXENV          ?=      CCVER=${HOST_CCVER} OBJFORMAT_PATH=/ PATH=/usr/bin:/bin:/usr/sbin:/sbin
 NXCC           ?=      ${NXENV} ${CC}
+NXCC_LINK      ?=      ${NXENV} ${CC_LINK}
 CFLAGS         ?=      -O -pipe
 
 CXX            ?=      c++
+CXX_LINK       ?=      ${CXX}
 NXCXX          ?=      ${NXENV} ${CXX}
+NXCXX_LINK     ?=      ${NXENV} ${CXX_LINK}
 CXXFLAGS       ?=      ${CXXINCLUDES} ${CFLAGS}
 
 CPP            ?=      cpp