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