1# $NetBSD: Makefile,v 1.10 2023/03/21 16:54:43 christos Exp $ 2 3NOCTF= 4.include <bsd.own.mk> 5.include "../Makefile.inc" 6 7GDBARCHDIR=${.CURDIR}/../../lib/libgdb/arch/${GDB_MACHINE_ARCH} 8.include "${GDBARCHDIR}/defs.mk" 9 10PROG= gdb 11 12SRCS= gdb.c 13CPPFLAGS+= -I${.CURDIR} \ 14 -I${.CURDIR}/../../lib/libgnulib/arch/${GDB_MACHINE_ARCH}/gnulib \ 15 -I${DIST}/gdb \ 16 -I${DIST}/gdbsupport \ 17 -I${DIST}/gdb/config \ 18 -I${DIST}/gnulib/import \ 19 -I${DIST}/include/opcode \ 20 -I${DIST}/readline \ 21 -I${DIST}/libdecnumber \ 22 -I${DIST} \ 23 -I${.CURDIR}/../../lib/libbfd/arch/${GDB_MACHINE_ARCH} \ 24 -I${.CURDIR}/../../lib/libgdbsupport/arch/${GDB_MACHINE_ARCH} \ 25 -I${.CURDIR}/../../lib/libgnulib/arch/${GDB_MACHINE_ARCH} \ 26 -I${.CURDIR}/../../lib/libgnulib/arch/${GDB_MACHINE_ARCH}/gnulib/import \ 27 -I${DIST}/bfd \ 28 -I${DIST}/include \ 29 ${GCPPFLAGS:M-D*} 30 31TEXINFO= gdb.texinfo stabs.texinfo 32INFOFLAGS= -I${DIST}/gdb/doc -I${DIST}/gdb/mi \ 33 -I${DIST}/readline/readline/doc -I${.CURDIR}/.. -DGDBN=${GDBN} 34 35GDBvn.texi: ${DIST}/gdb/version.in 36 echo "@set GDBVN $$(${TOOL_CAT} ${.ALLSRC})" > ${.TARGET} 37 38gdb-cfg.texi: ${DIST}/gdb/doc/all-cfg.texi 39 ${TOOL_CAT} ${.ALLSRC} > ${.TARGET} 40 41CLEANFILES+= GDBvn.texi gdb-cfg.texi 42stabs.info gdb.info: gdb-cfg.texi GDBvn.texi 43 44FILES= netbsd.xml 45FILESDIR= /usr/share/gdb/syscalls 46 47.include "../../Makefile.inc" 48.include <bsd.info.mk> 49 50LIBCTFDIR!= cd ${.CURDIR}/../../lib/libctf && ${PRINTOBJDIR} 51LIBGNULIBDIR!= cd ${.CURDIR}/../../lib/libgnulib && ${PRINTOBJDIR} 52LIBGDBSUPPORTDIR!= cd ${.CURDIR}/../../lib/libgdbsupport && ${PRINTOBJDIR} 53LIBOPCODESDIR!= cd ${.CURDIR}/../../lib/libopcodes && ${PRINTOBJDIR} 54LIBBFDDIR!= cd ${.CURDIR}/../../lib/libbfd && ${PRINTOBJDIR} 55LIBIBERTYDIR!= cd ${.CURDIR}/../../lib/libiberty && ${PRINTOBJDIR} 56LIBGDBDIR!= cd ${.CURDIR}/../../lib/libgdb && ${PRINTOBJDIR} 57LIBDECNUMBERDIR!= cd ${.CURDIR}/../../lib/libdecnumber && ${PRINTOBJDIR} 58 59.if ${USE_LIBEDIT} == yes 60LIBRL=-ledit 61LIBRLDP=${LIBEDIT} 62.else 63LIBRLDIR!= cd ${.CURDIR}/../../lib/libreadline && ${PRINTOBJDIR} 64LIBRL= -L${LIBRLDIR} -lreadline 65LIBRLDP= ${LIBRLDIR}/libreadline.a 66.endif 67 68LDADD+= -L${LIBGDBDIR} -lgdb 69DPADD+= ${LIBGDBDIR}/libgdb.a 70 71# Simulator support 72.if ${GDB_MACHINE_ARCH} == powerpc || ${GDB_MACHINE_ARCH} == powerpcle || \ 73 ${GDB_MACHINE_ARCH} == powerpc64 74SIMOBJ!= cd ${.CURDIR}/../../lib/libsim && ${PRINTOBJDIR} 75LDADD+= -L${SIMOBJ} -lsim 76DPADD+= ${SIMOBJ}/libsim.a 77.elif ${MACHINE_CPU} == xxmips 78SIMOBJ!= cd ${.CURDIR}/../../lib/libsim && ${PRINTOBJDIR} 79LDADD+= -L${SIMOBJ} -lsim 80DPADD+= ${SIMOBJ}/libsim.a 81.endif 82 83LDADD+= -L${LIBOPCODESDIR} -lopcodes \ 84 -L${LIBBFDDIR} -lbfd \ 85 -L${LIBDECNUMBERDIR} -ldecnumber \ 86 -L${LIBGDBSUPPORTDIR} -lgdbsupport \ 87 -L${LIBCTFDIR} -lctf \ 88 -L${LIBGNULIBDIR} -lgnulib \ 89 ${LIBRL} \ 90 -lterminfo \ 91 -L${LIBIBERTYDIR} -liberty 92 93DPADD+= ${LIBOPCODESDIR}/libopcodes.a \ 94 ${LIBBFDDIR}/libbfd.a \ 95 ${LIBDECNUMBERDIR}/libdecnumber.a \ 96 ${LIBGDBSUPPORTDIR}/libgdbsupport.a \ 97 ${LIBCTFDIR}/libctf.a \ 98 ${LIBGNULIBDIR}/libgnulib.a \ 99 ${LIBRLDP} \ 100 ${LIBTERMINFO} \ 101 ${LIBIBERTYDIR}/libiberty.a 102 103LDADD+= -lexpat -llzma -lz -lcurses -lintl -lm -lkvm -lutil -lpthread 104DPADD+= ${LIBEXPAT} ${LIBLZMA} ${LIBZ} ${LIBCURSES} ${LIBINTL} ${LIBM} ${LIBKVM} ${LIBUTIL} ${LIBPTHREAD} 105 106.include <bsd.prog.mk> 107 108# Force c++ 109CWARNFLAGS.clang+= -Wno-deprecated 110HOST_CC:= ${HOST_CXX} 111HOST_CFLAGS+= ${HOST_CXXFLAGS} 112CC:= ${CXX} 113CFLAGS:= ${CXXFLAGS} -std=gnu++11 -Wno-error=stack-protector 114 115.PATH: ${DIST}/gdb ${DIST}/gdb/mi ${DIST}/gdb/cli ${DIST}/gdb/tui \ 116 ${DIST}/gdb/signals ${DIST}/gdb/syscalls ${DIST}/gdb/doc \ 117 ${.CURDIR}/../arch/${GDB_MACHINE_ARCH} 118