Makefile revision 1.1
1# $NetBSD: Makefile,v 1.1 2023/02/20 02:01:03 mrg 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. 7G_CXX_AND_OBJCXX_OBJS= ${G_CXX_OBJS:S,cp-lang.o,,:S,c-family/stub-objc.o,,} 8G_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 20BUILDSYMLINKS+= ${DIST}/gcc/objc/objc-act.c objcp-act.c \ 21 ${DIST}/gcc/objc/objc-lang.c objcp-lang.c 22 23MYOBJS= ${G_OBJCXX_OBJS} 24MY2OBJS= ${MYOBJS:S,objcp/,,:S,objc/,,:S,cp/,,:S,c-family/,,:S,c/,,} 25PROG= cc1objplus 26SRCS= ${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} 27SRCS+= main.c ${PROG}-checksum.c 28 29 30CPPFLAGS+= -I${DIST}/gcc/objc 31CPPFLAGS+= -I${DIST}/gcc/objcp 32CPPFLAGS+= -I${DIST}/gcc/cp 33CPPFLAGS+= -DOBJCPLUS 34CPPFLAGS.prefix.c+= -DPREFIX=\"/usr\" 35 36.include "../Makefile.backend" 37.include "../Makefile.backtrace" 38.include "../Makefile.libcpp" 39.include "../Makefile.libdecnumber" 40 41CHECKSUM_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 55CFLAGS+=-Wno-error=stack-protector 56 57COPTS.c-ada-spec.c+= -Wno-stack-protector 58COPTS.c-attribs.c+= -Wno-stack-protector 59COPTS.c-aux-info.c+= -Wno-stack-protector 60COPTS.c-common.c+= -Wno-stack-protector 61COPTS.c-cppbuiltin.c+= -Wno-stack-protector 62COPTS.c-decl.c+= -Wno-stack-protector 63COPTS.c-format.c+= -Wno-stack-protector 64COPTS.c-lex.c+= -Wno-stack-protector 65COPTS.c-ppoutput.c+= -Wno-stack-protector 66COPTS.c-pragma.c+= -Wno-stack-protector 67COPTS.c-typeck.c+= -Wno-stack-protector 68COPTS.objc-act.c+= -Wno-stack-protector 69COPTS.objc-gnu-runtime-abi-01.c+= -Wno-stack-protector 70COPTS.objc-next-runtime-abi-01.c+= -Wno-stack-protector 71 72.if ${MACHINE_ARCH} == "vax" 73COPTS.c-decl.c+=-O0 74COPTS.c-typeck.c+=-O0 75COPTS.c-array-notation.c+=-O0 76COPTS.c-common.c+=-O0 77COPTS.c-ada-spec.c+=-O0 78COPTS.cilk.c+=-O0 79COPTS.c-ubsan.c+=-O0 80COPTS.cc1obj-checksum.c+=-O0 81COPTS.decl.c+=-O0 82.endif 83 84.if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel" 85COPTS.c-common.c+=-O3 86.endif 87 88LDADD+= ${LIBMPC} ${LIBMPFR} ${LIBGMP} -lintl -lz -lm 89DPADD+= ${LIBMPC} ${LIBMPFR} ${LIBGMP} ${LIBINTL} ${LIBZ} ${LIBM} 90 91.PATH: ${DIST}/gcc/objcp ${DIST}/gcc/objc ${DIST}/gcc/c ${DIST}/gcc/c-family 92.PATH: ${DIST}/gcc/cp ${DIST}/gcc ${DIST}/gcc/config 93.PATH: ${G_out_file:H} 94