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