summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorchristos <christos@NetBSD.org>2020-09-23 23:21:29 +0000
committerchristos <christos@NetBSD.org>2020-09-23 23:21:29 +0000
commit69b51faac5e9af23666eb0cd57df50572fceec8f (patch)
treef8bf80adfc517a4a0c259eb9b2cde3a17d87285c /tools
parent52bcf860eb0adca8445e2faa19a117f159a76e0f (diff)
Add gdbserver
Diffstat (limited to 'tools')
-rw-r--r--tools/gdb/Makefile9
-rw-r--r--tools/gdb/mknative-gdb15
2 files changed, 22 insertions, 2 deletions
diff --git a/tools/gdb/Makefile b/tools/gdb/Makefile
index e659e745839..797c6637eb4 100644
--- a/tools/gdb/Makefile
+++ b/tools/gdb/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.38 2019/06/02 23:28:32 christos Exp $
+# $NetBSD: Makefile,v 1.39 2020/09/23 23:21:29 christos Exp $
.include <bsd.hostinit.mk>
@@ -87,6 +87,12 @@ CONFIGURE_ARGS_SIM=
CONFIGURE_ARGS_SIM+= --disable-sim
.endif
+CONFIGURE_ARGS_GDBSERVER=
+.if \
+ ${MACHINE_CPU} == "x86_64"
+CONFIGURE_ARGS_GDBSERVER+= --enable-gdbserver
+.endif
+
native-gdb: .native/.configure_done
@echo 'Extracting GDB configury for a native toolchain.'
MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} gdb \
@@ -101,6 +107,7 @@ native-gdb: .native/.configure_done
--prefix=/usr \
--with-separate-debug-dir=/usr/libdata/debug \
${CONFIGURE_ARGS_SIM} \
+ ${CONFIGURE_ARGS_GDBSERVER} \
--build=`${GNUHOSTDIST}/config.guess` \
--host=${MACHINE_GNU_PLATFORM} \
--target=${MACHINE_GNU_PLATFORM})
diff --git a/tools/gdb/mknative-gdb b/tools/gdb/mknative-gdb
index cf9eef77657..4b64861b16c 100644
--- a/tools/gdb/mknative-gdb
+++ b/tools/gdb/mknative-gdb
@@ -1,5 +1,5 @@
#!/bin/sh
-# $NetBSD: mknative-gdb,v 1.12 2020/09/17 16:54:31 christos Exp $
+# $NetBSD: mknative-gdb,v 1.13 2020/09/23 23:21:29 christos Exp $
#
# Shell script for generating all the constants needed for a native
# platform build of src/external/gpl3/gdb
@@ -151,6 +151,8 @@ get_gdb_libgnulib () {
done
}
+##### gdb/lib/libgdb #####
+
get_gdb_libgdb () {
local _GDBP=$_GDB/lib/libgdb
@@ -212,6 +214,16 @@ get_gdb_libgdb () {
esac
}
+# gdb/bin/gdbserver`
+
+get_gdb_bingdbserver () {
+ local _CTF=$_GDB/bin/gdbserver
+ mkdir -p $_TOP/$_CTF/arch/$_MACHINE_SUBDIR
+
+ write_c $_CTF/arch/$_MACHINE_SUBDIR/config.h \
+ <$_TMPDIR/gdbserver/config.h
+}
+
##### main #####
case $1 in
@@ -225,6 +237,7 @@ all|gdb) # everything (uses "canadian cross" temp environment)
get_gdb_libiberty
get_gdb_libreadline
get_gdb_libdecnumber
+ get_gdb_bingdbserver
exit 0
;;