1#	$NetBSD: Makefile,v 1.7 2023/08/09 14:56:41 christos Exp $
2
3NOCTF=
4NOMAN=
5.include <bsd.own.mk>
6.include "../Makefile.inc"
7
8PROG=		gdbserver
9
10SERVER_SRCS+=	ax.cc debug.cc dll.cc hostio.cc inferiors.cc
11SERVER_SRCS+=	notif.cc mem-break.cc
12SERVER_SRCS+=	regcache.cc remote-utils.cc server.cc symbol.cc target-ser.cc
13SERVER_SRCS+=	tdesc.cc tracepoint.cc utils.cc waitstatus.c version.cc
14
15NETBSD_SRCS=		netbsd-low.cc fork-child.cc fork-inferior.c netbsd-nat.c
16ARCH_SRCS=		netbsd-${MACHINE}-low.cc ${MACHINE}.c
17SRCS=		${SERVER_SRCS} ${NETBSD_SRCS} ${ARCH_SRCS}
18CPPFLAGS+=	-I${.CURDIR} \
19		-I${.CURDIR}/arch/${GDB_MACHINE_ARCH} \
20		-I${.CURDIR}/../../lib/libgnulib/arch/${GDB_MACHINE_ARCH}/gnulib \
21		-I${DIST}/gdb \
22		-I${DIST}/gdbserver \
23		-I${DIST}/gdbsupport \
24		-I${DIST}/gdb/regformats \
25		-I${DIST}/gdb/config \
26		-I${DIST}/gnulib/import \
27		-I${DIST} \
28		-I${.CURDIR}/../../lib/libgdbsupport/arch/${GDB_MACHINE_ARCH} \
29		-I${.CURDIR}/../../lib/libgnulib/arch/${GDB_MACHINE_ARCH} \
30		-I${.CURDIR}/../../lib/libgnulib/arch/${GDB_MACHINE_ARCH}/gnulib/import \
31		-I${DIST}/include \
32		${GCPPFLAGS:M-D*}
33
34# /usr/src/current/external/gpl3/gdb/bin/gdbserver/../../dist/gdb/nat/fork-inferior.c:497:15: error: 6 enumeration values not handled in switch: 'TARGET_WAITKIND_VFORK_DONE', 'TARGET_WAITKIND_IGNORE', 'TARGET_WAITKIND_NO_HISTORY'... [-Werror,-Wswitch]
35CXXFLAGS+=	${${ACTIVE_CC} == "clang":? -Wno-error=switch : }
36
37.include "../../Makefile.inc"
38.include <bsd.info.mk>
39
40LIBBFD!=	     cd ${.CURDIR}/../../lib/libbfd	   && ${PRINTOBJDIR}
41LIBGNULIBDIR!=	     cd ${.CURDIR}/../../lib/libgnulib	   && ${PRINTOBJDIR}
42LIBGDBSUPPORTDIR!=   cd ${.CURDIR}/../../lib/libgdbsupport && ${PRINTOBJDIR}
43LIBIBERTYDIR!=	     cd ${.CURDIR}/../../lib/libiberty	   && ${PRINTOBJDIR}
44
45LDADD+= -L${LIBGDBSUPPORTDIR} -lgdbsupport \
46	-L${LIBGNULIBDIR} -lgnulib \
47	-L${LIBIBERTYDIR} -liberty \
48	-lintl
49
50DPADD+=	${LIBGDBSUPPORTDIR}/libgdbsupport.a \
51	${LIBGNULIBDIR}/libgnulib.a \
52	${LIBIBERTYDIR}/libiberty.a \
53	${LIBINTL}
54
55.include <bsd.prog.mk>
56
57# Force c++
58CWARNFLAGS.clang+=	-Wno-deprecated
59HOST_CC:=		${HOST_CXX}
60HOST_CFLAGS+=		${HOST_CXXFLAGS}
61CC:=			${CXX}
62CFLAGS:=		${CXXFLAGS} -std=gnu++11 -Wno-error=stack-protector -pthread
63
64.PATH: ${DIST}/gdbserver ${DIST}/gdb/nat ${DIST}/gdb/arch  \
65	${.CURDIR}/arch/${GDB_MACHINE_ARCH} ${DIST}/gdb/target \
66	${DIST}/../lib/libgdbsupport/arch/${GDB_MACHINE_ARCH}
67