1 # $NetBSD: Makefile,v 1.26 2020/09/17 16:06:27 christos Exp $ 2 3 NOCTF= 4 HOSTPROG_CXX= 1 5 6 .include <bsd.own.mk> 7 8 .include "../Makefile.inc" 9 10 LIBISPRIVATE= yes 11 LIB= gdb 12 GDBARCHDIR= ${.CURDIR}/arch/${GDB_MACHINE_ARCH} 13 14 .include "${GDBARCHDIR}/defs.mk" 15 16 SRCS= ${G_LIBGDB_OBS:.o=.c} dwarf2-frame.c 17 GCPPFLAGS= ${G_INTERNAL_CFLAGS} 18 CPPFLAGS+= -I${.CURDIR} \ 19 -I${GDBARCHDIR} \ 20 -I${DIST} \ 21 -I${DIST}/gdb \ 22 -I${DIST}/gdbsupport \ 23 -I${DIST}/gdb/config \ 24 -I${DIST}/gnulib/import \ 25 -I${DIST}/include/opcode \ 26 -I${DIST}/readline \ 27 -I${DIST}/libdecnumber \ 28 -I${.CURDIR}/../libgnulib/arch/${GDB_MACHINE_ARCH} \ 29 -I${.CURDIR}/../libgnulib/arch/${GDB_MACHINE_ARCH}/import \ 30 -I${.CURDIR}/../libgdbsupport/arch/${GDB_MACHINE_ARCH} \ 31 -I${.CURDIR}/../libbfd/arch/${GDB_MACHINE_ARCH} \ 32 -I${.CURDIR}/../libdecnumber/arch/${GDB_MACHINE_ARCH} \ 33 -I${DIST}/bfd \ 34 -I${DIST}/include \ 35 -Dsighandler_t=sig_t \ 36 -DTARGET_SYSTEM_ROOT=\"\" \ 37 -DTARGET_SYSTEM_ROOT_RELOCATABLE=0 \ 38 -DBINDIR=\"${BINDIR}\" \ 39 ${GCPPFLAGS:M-D*} 40 41 CWARNFLAGS.clang+= -Wno-switch 42 43 .include "../../Makefile.inc" 44 .include <bsd.lib.mk> 45 46 # Force c++ 47 CWARNFLAGS.clang+= -Wno-deprecated 48 HOST_CC:= ${HOST_CXX} 49 CC:= ${CXX} 50 CFLAGS:= ${CXXFLAGS} -std=gnu++11 -Wno-error=stack-protector 51 52 .PATH: ${DIST}/gdb ${DIST}/gdb/arch ${DIST}/gdb/mi ${DIST}/gdb/cli \ 53 ${DIST}/gdb/tui ${DIST}/gdb/python ${DIST}/gdb/common ${DIST}/gdb/target \ 54 ${DIST}/gdb/nat ${DIST}/gdb/guile ${DIST}/gdb/compile ${DIST}/gdb/doc \ 55 ${DIST}/gdb/dwarf2 ${DIST}/gdb/unittests \ 56 ${GDBARCHDIR} 57 58 # 59 60 ada-exp.c: ada-lex.c 61 62 .if defined(HAVE_GCC) && ${HAVE_GCC} >= 8 && ${ACTIVE_CC} == "gcc" 63 .if !empty(MACHINE_ARCH:Mearmv7hf*) 64 # GCC 8.4 miscompiles this with -O2 or -O1 for earmv7hf{,eb}. 65 # Neither earmv6hf{,eb} nor earmv7{,eb} are affected. 66 COPTS.dwarf2expr.c+=-O0 67 .endif 68 .endif 69 70 # These are generated by implicit rules and are not easy to generate 71 CLEANDIRFILES+= \ 72 ada-exp.c ada-lex.c \ 73 c-exp.c \ 74 d-exp.c \ 75 cp-name-parser.c \ 76 f-exp.c \ 77 go-exp.c \ 78 jv-exp.c \ 79 m2-exp.c \ 80 p-exp.c \ 81 rust-exp.c 82 83 # corelow.c 84 CWARNFLAGS.gcc+= ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=alloca-larger-than= :} 85