Makefile revision 1.3.6.1 1 # $NetBSD: Makefile,v 1.3.6.1 2023/10/08 14:35:21 martin Exp $
2
3 # XXX: Pull this (G_OBJCXX_OBJS) out with mknative-gcc. Needs some
4 # minor re-org of cc1plus and perhaps cc1obj. G_CXX_AND_OBJCXX_OBJS
5 # is reverse-derived from G_CXX_OBJS for now - when G_OBJCXX_OBJS is
6 # pulled out by mknative-gcc, it will include G_CXX_AND_OBJCXX_OBJS.
7 G_CXX_AND_OBJCXX_OBJS= ${G_CXX_OBJS:S,cp-lang.o,,:S,c-family/stub-objc.o,,}
8 G_OBJCXX_OBJS= \
9 objcp-act.o \
10 objcp-lang.o \
11 objcp/objcp-decl.o \
12 objcp/objc-runtime-shared-support.o \
13 objcp/objc-gnu-runtime-abi-01.o \
14 objcp/objc-next-runtime-abi-01.o \
15 objcp/objc-next-runtime-abi-02.o \
16 objcp/objc-encoding.o \
17 objcp/objc-map.o \
18 ${G_CXX_AND_OBJCXX_OBJS}
19
20 BUILDSYMLINKS+= ${DIST}/gcc/objc/objc-act.c objcp-act.c \
21 ${DIST}/gcc/objc/objc-lang.c objcp-lang.c
22
23 MYOBJS= ${G_OBJCXX_OBJS}
24 MY2OBJS= ${MYOBJS:S,objcp/,,:S,objc/,,:S,cp/,,:S,c-family/,,:S,c/,,}
25 PROG= cc1objplus
26 SRCS= ${MY2OBJS:S,known-headers.o,known-headers.cc,:S,c-spellcheck.o,c-spellcheck.cc,:S,constraint.o,constraint.cc,:S,logic.o,logic.cc,:S,coroutines.o,coroutines.cc,:Nlibcpp.a:.o=.c}
27 SRCS+= main.c ${PROG}-checksum.c
28
29
30 CPPFLAGS+= -I${DIST}/gcc/objc
31 CPPFLAGS+= -I${DIST}/gcc/objcp
32 CPPFLAGS+= -I${DIST}/gcc/cp
33 CPPFLAGS+= -DOBJCPLUS
34 CPPFLAGS.prefix.c+= -DPREFIX=\"/usr\"
35
36 .include "../Makefile.backend"
37 .include "../Makefile.backtrace"
38 .include "../Makefile.libcpp"
39 .include "../Makefile.libdecnumber"
40
41 CHECKSUM_OBJS= ${BACKENDOBJ}/libbackend.a \
42 main.o \
43 ${LIBBACKTRACEOBJ}/libbacktrace.a \
44 ${COMMONTARGETOBJ}/libcommon-target.a \
45 ${COMMONOBJ}/libcommon.a \
46 ${LIBCPPOBJ}/libcpp.a \
47 ${LIBDECNUMBEROBJ}/libdecnumber.a \
48 ${LIBIBERTYOBJ}/libiberty.a \
49 ${MY2OBJS} \
50 checksum-options
51
52 .include "../Makefile.checksum"
53
54 # XXX: like cc1plus
55 CFLAGS+=-Wno-error=stack-protector
56
57 COPTS.c-ada-spec.c+= -Wno-stack-protector
58 COPTS.c-attribs.c+= -Wno-stack-protector
59 COPTS.c-aux-info.c+= -Wno-stack-protector
60 COPTS.c-common.c+= -Wno-stack-protector
61 COPTS.c-cppbuiltin.c+= -Wno-stack-protector
62 COPTS.c-decl.c+= -Wno-stack-protector
63 COPTS.c-format.c+= -Wno-stack-protector
64 COPTS.c-lex.c+= -Wno-stack-protector
65 COPTS.c-ppoutput.c+= -Wno-stack-protector
66 COPTS.c-pragma.c+= -Wno-stack-protector
67 COPTS.c-typeck.c+= -Wno-stack-protector
68 COPTS.objc-act.c+= -Wno-stack-protector
69 COPTS.objc-gnu-runtime-abi-01.c+= -Wno-stack-protector
70 COPTS.objc-next-runtime-abi-01.c+= -Wno-stack-protector
71
72 .if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
73 COPTS.c-common.c+=-O3
74 .endif
75
76 LDADD+= ${LIBMPC} ${LIBMPFR} ${LIBGMP} -lintl -lz -lm
77 DPADD+= ${LIBMPC} ${LIBMPFR} ${LIBGMP} ${LIBINTL} ${LIBZ} ${LIBM}
78
79 .PATH: ${DIST}/gcc/objcp ${DIST}/gcc/objc ${DIST}/gcc/c ${DIST}/gcc/c-family
80 .PATH: ${DIST}/gcc/cp ${DIST}/gcc ${DIST}/gcc/config
81 .PATH: ${G_out_file:H}
82