1# $NetBSD: Makefile.common,v 1.9 2020/08/19 07:48:02 mrg Exp $ 2 3DIST= ${GCCDIST} 4GNUHOSTDIST= ${DIST} 5 6GCC_MACHINE_ARCH=${MACHINE_ARCH:S/earmv5/earm/} 7 8# Support src/compat builds 9.if defined(MLIBDIR) && exists(${.CURDIR}/../libstdc++-v3/arch/${MLIBDIR}/defs.mk) 10LIBSTDCXX_MACHINE_ARCH=${MLIBDIR} 11.else 12LIBSTDCXX_MACHINE_ARCH=${GCC_MACHINE_ARCH} 13.endif 14 15# Make sure we get G_*_SOURCES, etc.*, for the .for loops 16.include "${.CURDIR}/../libstdc++-v3/arch/${LIBSTDCXX_MACHINE_ARCH}/defs.mk" 17 18LIBSTDCXXSRCS= ${G_SRC_SOURCES} ${G_CPP98_SOURCES} ${G_CPP11_SOURCES} 19# XXX XXX dir.o doesn't have <deque> stuff properly, leave it out for now 20#LIBSTDCXXSRCS+= ${G_FILESYSTEM_SOURCES} 21 22LIBSUPCXXSRCS= ${G_LIBSUPCXX_SOURCES} ${G_LIBSUPCXX_C_SOURCES} 23 24CPPFLAGS+= -I${DIST}/gcc 25CPPFLAGS+= -I${DIST}/include 26CPPFLAGS+= -I${DIST}/libstdc++-v3/libsupc++ 27CPPFLAGS+= -I${DIST}/libgcc 28CPPFLAGS+= -I${.CURDIR}/../libstdc++-v3/arch/${LIBSTDCXX_MACHINE_ARCH} -I. 29CPPFLAGS+= -DHAVE_STDLIB_H -DHAVE_STRING_H 30 31CPPFLAGS.cp-demangle.c=-DIN_GLIBCPP_V3 32 33.for _f in ${G_CPP98_SOURCES} 34COPTS.${_f}+= -std=gnu++98 35.endfor 36 37STD_GNU11= \ 38 eh_aux_runtime.cc \ 39 eh_ptr.cc \ 40 eh_terminate.cc \ 41 eh_throw.cc \ 42 guard.cc \ 43 atexit_thread.cc \ 44 nested_exception.cc \ 45 new_handler.cc \ 46 new_op.cc \ 47 new_opnt.cc 48 49.for _f in ${STD_GNU11} ${G_CPP11_SOURCES:M*.cc} 50COPTS.${_f}+= -std=gnu++11 51.endfor 52 53STD_GNU14= \ 54 del_ops.cc \ 55 del_opvs.cc 56 57.for _f in ${STD_GNU14} ${G_FILESYSTEM_SOURCES:M*.cc} 58COPTS.${_f}+= -std=gnu++17 -Wno-sized-deallocation 59.endfor 60 61STD_GNU1Z= \ 62 new_opa.cc \ 63 new_opant.cc \ 64 new_opva.cc \ 65 new_opvant.cc \ 66 del_opa.cc \ 67 del_opant.cc \ 68 del_opsa.cc \ 69 del_opva.cc \ 70 del_opvant.cc \ 71 del_opvsa.cc 72 73.for _f in ${STD_GNU1Z} 74COPTS.${_f}+= -std=gnu++1z 75.endfor 76