1# $FreeBSD$
2
3NO_MAN=
4.include <bsd.own.mk>
5
6.include "../Makefile.inc"
7
8.PATH: ${GCCDIR}/cp ${GCCDIR}
9
10PROG=	cc1plus
11SRCS=	cfns.h
12SRCS+=	main.c cp-lang.c c-opts.c call.c class.c cvt.c cxx-pretty-print.c \
13	decl.c decl2.c error.c except.c expr.c dump.c friend.c  init.c lex.c \
14	mangle.c method.c name-lookup.c parser.c pt.c ptree.c repo.c rtti.c \
15	search.c semantics.c tree.c typeck.c typeck2.c optimize.c \
16	cp-objcp-common.c cp-gimplify.c tree-mudflap.c
17
18BINDIR=	/usr/libexec
19.if ${MK_SHARED_TOOLCHAIN} == "no"
20NO_SHARED?=yes
21.endif
22
23CFLAGS+= -I${GCCDIR}/cp -I.
24
25OBJS+=	${PROG}-checksum.o
26DPADD=	${LIBBACKEND} ${LIBCPP} ${LIBDECNUMBER} ${LIBIBERTY}
27LDADD=	${LIBBACKEND} ${LIBCPP} ${LIBDECNUMBER} ${LIBIBERTY}
28
29#-----------------------------------------------------------------------
30# C++ parser
31cfns.h: cfns.gperf
32	gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
33	    ${.ALLSRC} > ${.TARGET}
34CLEANFILES= cfns.h
35
36DOBJS+=	${SRCS:N*.h:R:S/$/.o/g}
37${PROG}-dummy:	${DOBJS}
38	${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${DOBJS} ${LDADD}
39CLEANFILES+=	${PROG}-dummy
40
41${PROG}-checksum.c:	${PROG}-dummy
42	../cc_tools/genchecksum ${PROG}-dummy > ${.TARGET}
43CLEANFILES+=	${PROG}-checksum.c
44
45.include <bsd.prog.mk>
46