1 # $NetBSD: Makefile,v 1.11 2024/08/12 20:30:05 christos Exp $ 2 3 NOCTF= 4 .include <bsd.own.mk> 5 .include "../Makefile.inc" 6 7 GDBLIBDIR=${.CURDIR}/../../lib 8 GDBARCHDIR=${GDBLIBDIR}/libgdb/arch/${GDB_MACHINE_ARCH} 9 .include "${GDBARCHDIR}/defs.mk" 10 11 PROG= gdb 12 13 SRCS= gdb.c 14 CPPFLAGS+= -I${.CURDIR} \ 15 -I${GNULIBDIR}/libgnulib/arch/${GDB_MACHINE_ARCH}/gnulib \ 16 -I${DIST}/gdb \ 17 -I${DIST}/gdbsupport \ 18 -I${DIST}/gdb/config \ 19 -I${DIST}/gnulib/import \ 20 -I${DIST}/include/opcode \ 21 -I${DIST}/readline \ 22 -I${DIST}/libdecnumber \ 23 -I${DIST} \ 24 -I${GDBLIBDIR}/libgdbsupport/arch/${GDB_MACHINE_ARCH} \ 25 -I${GDBLIBDIR}/libgdbsupport/arch/${GDB_MACHINE_ARCH}/gdbsupport \ 26 -I${GDBLIBDIR}/libbfd/arch/${GDB_MACHINE_ARCH} \ 27 -I${GDBLIBDIR}/libgnulib/arch/${GDB_MACHINE_ARCH} \ 28 -I${GDBLIBDIR}/libgnulib/arch/${GDB_MACHINE_ARCH}/gnulib/import \ 29 -I${DIST}/bfd \ 30 -I${DIST}/include \ 31 ${GCPPFLAGS:M-D*} 32 33 34 TEXINFO= gdb.texinfo stabs.texinfo 35 INFOFLAGS= -I${DIST}/gdb/doc -I${DIST}/gdb/mi \ 36 -I${DIST}/readline/readline/doc -I${.CURDIR}/.. -DGDBN=${GDBN} 37 38 gdb-cfg.texi: ${DIST}/gdb/doc/all-cfg.texi 39 ${TOOL_CAT} ${.ALLSRC} > ${.TARGET} 40 41 CLEANFILES+= gdb-cfg.texi 42 stabs.info gdb.info: gdb-cfg.texi GDBvn.texi 43 44 FILES= netbsd.xml 45 FILESDIR= /usr/share/gdb/syscalls 46 47 .include "../../Makefile.inc" 48 .include <bsd.info.mk> 49 50 PROGDPLIBS+= gdb ${GDBLIBDIR}/libgdb 51 # XXX: modula2 won't load otherwise, since nothing brings the m2-objs in. 52 LIBGDBDIR!= cd ${GDBLIBDIR}/libgdb && ${PRINTOBJDIR} 53 LDADD+= ${LIBGDBDIR}/m2-lang.o 54 55 # Simulator support 56 .if ${GDB_MACHINE_ARCH} == powerpc || ${GDB_MACHINE_ARCH} == powerpcle || \ 57 ${GDB_MACHINE_ARCH} == powerpc64 58 PROGDPLIBS+= sim ${GDBLIBDIR}/libsim 59 .elif ${MACHINE_CPU} == xxmips 60 PROGDPLIBS+= sim ${GDBLIBDIR}/libsim 61 .endif 62 63 PROGDPLIBS+= opcodes ${GDBLIBDIR}/libopcodes \ 64 bfd ${GDBLIBDIR}/libbfd \ 65 decnumber ${GDBLIBDIR}/libdecnumber \ 66 gdbsupport ${GDBLIBDIR}/libgdbsupport \ 67 backtrace ${GDBLIBDIR}/libbacktrace \ 68 sframe ${GDBLIBDIR}/libsframe \ 69 ctf ${GDBLIBDIR}/libctf \ 70 gnulib ${GDBLIBDIR}/libgnulib \ 71 iberty ${GDBLIBDIR}/libiberty 72 73 .if ${USE_LIBEDIT} == yes 74 LDADD+= -ledit 75 DPADD+= ${LIBEDIT} 76 .else 77 PROGDPLIBS+= readline ${GDBLIBDIR}/libreadline 78 .endif 79 80 .include <bsd.prog.mk> 81 82 LIBGMP!= cd ${.CURDIR}/../../../../lgpl3/gmp/lib/libgmp && ${PRINTOBJDIR} 83 LDADD+= -L${LIBGMP} -lgmp 84 DPADD+= ${LIBGMP}/libgmp.a 85 86 LDADD+= -lexpat -llzma -lz -lcurses -lterminfo -lintl -lm -lkvm -lutil -lpthread 87 DPADD+= ${LIBEXPAT} ${LIBLZMA} ${LIBZ} ${LIBCURSES} ${LIBTERMINFO} ${LIBINTL} \ 88 ${LIBM} ${LIBKVM} ${LIBUTIL} ${LIBPTHREAD} 89 90 # Force c++ 91 CWARNFLAGS.clang+= -Wno-deprecated 92 HOST_CC:= ${HOST_CXX} 93 HOST_CFLAGS+= ${HOST_CXXFLAGS} 94 CC:= ${CXX} 95 CFLAGS:= ${CXXFLAGS} -std=gnu++11 -Wno-error=stack-protector 96 97 .PATH: ${DIST}/gdb ${DIST}/gdb/mi ${DIST}/gdb/cli ${DIST}/gdb/tui \ 98 ${DIST}/gdb/signals ${DIST}/gdb/syscalls ${DIST}/gdb/doc \ 99 ${.CURDIR}/../arch/${GDB_MACHINE_ARCH} 100