aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRuslan Ermilov <ru@FreeBSD.org>2002-04-12 08:17:24 +0000
committerRuslan Ermilov <ru@FreeBSD.org>2002-04-12 08:17:24 +0000
commitf8ba15551dba349ad4d69e8dd5722e0e2198d024 (patch)
treecc1ba313e26b32f4c1e6e2cef3499c1d0600026c
parent722ff934ee126477f99414d130e5b604d3470d80 (diff)
downloadsrc-f8ba15551dba349ad4d69e8dd5722e0e2198d024.tar.gz
src-f8ba15551dba349ad4d69e8dd5722e0e2198d024.zip
Don't add -lstdc++ to LDADD, just let c++(1) link C++ programs.
Record the dependency on ${LIBSTDCPLUSPLUS} similar to ${LIBC}. Suggested by: imp, obrien, peter
Notes
Notes: svn path=/head/; revision=94497
-rw-r--r--share/mk/bsd.prog.mk12
1 files changed, 7 insertions, 5 deletions
diff --git a/share/mk/bsd.prog.mk b/share/mk/bsd.prog.mk
index aaafd2559dc5..950736fef4e8 100644
--- a/share/mk/bsd.prog.mk
+++ b/share/mk/bsd.prog.mk
@@ -22,8 +22,6 @@ LDFLAGS+= -static
.if defined(PROG_CXX)
PROG= ${PROG_CXX}
-DPADD+= ${LIBSTDCPLUSPLUS}
-LDADD+= -lstdc++
.endif
.if defined(PROG)
@@ -37,9 +35,6 @@ LDADD+= ${OBJCLIBS}
OBJS+= ${SRCS:N*.h:R:S/$/.o/g}
-${PROG}: ${OBJS}
- ${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
-
.else !defined(SRCS)
.if !target(${PROG})
@@ -55,8 +50,12 @@ SRCS= ${PROG}.c
# the name of a variable temporary object.
# - it's useful to keep objects around for crunching.
OBJS= ${PROG}.o
+.endif
${PROG}: ${OBJS}
+.if defined(PROG_CXX)
+ ${CXX} ${CXXFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
+.else
${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${OBJS} ${LDADD}
.endif
@@ -88,6 +87,9 @@ _EXTRADEPEND:
${LDADD:S/^/-Wl,/}` >> ${DEPENDFILE}
.else
echo ${PROG}: ${LIBC} ${DPADD} >> ${DEPENDFILE}
+.if defined(PROG_CXX)
+ echo ${PROG}: ${LIBSTDCPLUSPLUS} >> ${DEPENDFILE}
+.endif
.endif
.endif