Home | History | Annotate | Line # | Download | only in cc1objplus
      1 #	$NetBSD: Makefile,v 1.4 2025/09/07 04:12:29 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.
      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.cc objcp-act.cc \
     21 		${DIST}/gcc/objc/objc-lang.cc objcp-lang.cc
     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=.cc}
     27 SRCS+=		main.cc ${PROG}-checksum.cc
     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.cc+=	-DPREFIX=\"/usr\"
     35 CPPFLAGS.module.cc+=	-DTARGET_MACHINE=\"${MACHINE_GNU_PLATFORM}\" \
     36 			-DHOST_MACHINE=\"${MACHINE_GNU_PLATFORM}\"
     37 
     38 .include "../Makefile.backend"
     39 .include "../Makefile.backtrace"
     40 .include "../Makefile.libcody"
     41 .include "../Makefile.libcpp"
     42 .include "../Makefile.libdecnumber"
     43 
     44 CHECKSUM_OBJS=	${BACKENDOBJ}/libbackend.a \
     45 		main.o \
     46 		${LIBBACKTRACEOBJ}/libbacktrace.a \
     47 		${COMMONTARGETOBJ}/libcommon-target.a \
     48 		${COMMONOBJ}/libcommon.a \
     49 		${LIBCPPOBJ}/libcpp.a \
     50 		${LIBDECNUMBEROBJ}/libdecnumber.a \
     51 		${LIBIBERTYOBJ}/libiberty.a \
     52 		${MY2OBJS} \
     53 		checksum-options
     54 
     55 .include "../Makefile.checksum"
     56 
     57 # XXX: like cc1plus
     58 CFLAGS+=-Wno-error=stack-protector
     59 
     60 COPTS.c-ada-spec.cc+=			-Wno-error=stack-protector
     61 COPTS.c-attribs.cc+=			-Wno-error=stack-protector
     62 COPTS.c-aux-info.cc+=			-Wno-error=stack-protector
     63 COPTS.c-common.cc+=			-Wno-error=stack-protector
     64 COPTS.c-cppbuiltin.cc+=			-Wno-error=stack-protector
     65 COPTS.c-decl.cc+=			-Wno-error=stack-protector
     66 COPTS.c-format.cc+=			-Wno-error=stack-protector
     67 COPTS.c-lex.cc+=			-Wno-error=stack-protector
     68 COPTS.c-omp.cc+=			-Wno-error=stack-protector
     69 COPTS.c-ppoutput.cc+=			-Wno-error=stack-protector
     70 COPTS.c-pretty-print.cc+=		-Wno-error=stack-protector
     71 COPTS.c-pragma.cc+=			-Wno-error=stack-protector
     72 COPTS.c-typeck.cc+=			-Wno-error=stack-protector
     73 COPTS.objc-act.cc+=			-Wno-error=stack-protector
     74 COPTS.objc-gnu-runtime-abi-01.cc+=	-Wno-error=stack-protector
     75 COPTS.objc-next-runtime-abi-01.cc+=	-Wno-error=stack-protector
     76 
     77 .if ${MACHINE_ARCH} == "vax" && 0
     78 COPTS.c-decl.c+=-O0
     79 COPTS.c-typeck.c+=-O0
     80 COPTS.c-array-notation.c+=-O0
     81 COPTS.c-common.c+=-O0
     82 COPTS.c-ada-spec.c+=-O0
     83 COPTS.cilk.c+=-O0
     84 COPTS.c-ubsan.c+=-O0
     85 COPTS.cc1obj-checksum.c+=-O0
     86 COPTS.decl.c+=-O0
     87 .endif
     88 
     89 .if ${MACHINE_ARCH} == "mipseb" || ${MACHINE_ARCH} == "mipsel"
     90 #COPTS.c-common.cc+=-O3
     91 .endif
     92 
     93 LDADD+=	${LIBMPC} ${LIBMPFR} ${LIBGMP} -lintl -lz -lm
     94 DPADD+=	${LIBMPC} ${LIBMPFR} ${LIBGMP} ${LIBINTL} ${LIBZ} ${LIBM}
     95 
     96 .PATH: ${DIST}/gcc/objcp ${DIST}/gcc/objc ${DIST}/gcc/c ${DIST}/gcc/c-family
     97 .PATH: ${DIST}/gcc/cp ${DIST}/gcc ${DIST}/gcc/config
     98 .PATH: ${G_out_file:H}
     99