Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F146887315
D27040.id80277.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
37 KB
Referenced Files
None
Subscribers
None
D27040.id80277.diff
View Options
Index: devel/gdb/Makefile
===================================================================
--- devel/gdb/Makefile
+++ devel/gdb/Makefile
@@ -2,8 +2,8 @@
# $FreeBSD$
PORTNAME= gdb
-PORTVERSION= 9.2
-PORTREVISION= 2
+PORTVERSION= 10.1
+PORTREVISION= 0
CATEGORIES= devel
MASTER_SITES= GNU
Index: devel/gdb/distinfo
===================================================================
--- devel/gdb/distinfo
+++ devel/gdb/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1591304030
-SHA256 (gdb-9.2.tar.xz) = 360cd7ae79b776988e89d8f9a01c985d0b1fa21c767a4295e5f88cb49175c555
-SIZE (gdb-9.2.tar.xz) = 20979436
+TIMESTAMP = 1604240338
+SHA256 (gdb-10.1.tar.xz) = f82f1eceeec14a3afa2de8d9b0d3c91d5a3820e23e0a01bbb70ef9f0276b62c0
+SIZE (gdb-10.1.tar.xz) = 21507112
SHA256 (bsdjhb-libcxx-gdbpy-229610a_GH0.tar.gz) = d4235f98b71c4d5e3f01744de279e64808229dd46c0f00cac6a12fdeb3a998a1
SIZE (bsdjhb-libcxx-gdbpy-229610a_GH0.tar.gz) = 5299
Index: devel/gdb/files/extrapatch-kgdb
===================================================================
--- devel/gdb/files/extrapatch-kgdb
+++ devel/gdb/files/extrapatch-kgdb
@@ -1,8 +1,8 @@
diff --git gdb/Makefile.in gdb/Makefile.in
-index c3e074b21f..8d026a98cb 100644
+index 4808357e65..982af063b8 100644
--- gdb/Makefile.in
+++ gdb/Makefile.in
-@@ -648,6 +648,7 @@ TARGET_OBS = @TARGET_OBS@
+@@ -665,6 +665,7 @@ TARGET_OBS = @TARGET_OBS@
# All target-dependent objects files that require 64-bit CORE_ADDR
# (used with --enable-targets=all --enable-64-bit-bfd).
ALL_64_TARGET_OBS = \
@@ -10,7 +10,7 @@
aarch64-fbsd-tdep.o \
aarch64-linux-tdep.o \
aarch64-newlib-tdep.o \
-@@ -662,6 +663,7 @@ ALL_64_TARGET_OBS = \
+@@ -679,6 +680,7 @@ ALL_64_TARGET_OBS = \
amd64-darwin-tdep.o \
amd64-dicos-tdep.o \
amd64-fbsd-tdep.o \
@@ -18,7 +18,7 @@
amd64-linux-tdep.o \
amd64-nbsd-tdep.o \
amd64-obsd-tdep.o \
-@@ -676,6 +678,7 @@ ALL_64_TARGET_OBS = \
+@@ -693,6 +695,7 @@ ALL_64_TARGET_OBS = \
ia64-vms-tdep.o \
mips64-obsd-tdep.o \
sparc64-fbsd-tdep.o \
@@ -26,7 +26,7 @@
sparc64-linux-tdep.o \
sparc64-nbsd-tdep.o \
sparc64-obsd-tdep.o \
-@@ -694,6 +697,7 @@ ALL_TARGET_OBS = \
+@@ -713,6 +716,7 @@ ALL_TARGET_OBS = \
arch/ppc-linux-common.o \
arch/riscv.o \
arm-bsd-tdep.o \
@@ -34,7 +34,7 @@
arm-fbsd-tdep.o \
arm-linux-tdep.o \
arm-nbsd-tdep.o \
-@@ -711,6 +715,8 @@ ALL_TARGET_OBS = \
+@@ -731,6 +735,8 @@ ALL_TARGET_OBS = \
csky-linux-tdep.o \
csky-tdep.o \
dicos-tdep.o \
@@ -43,7 +43,7 @@
fbsd-tdep.o \
frv-linux-tdep.o \
frv-tdep.o \
-@@ -727,6 +733,7 @@ ALL_TARGET_OBS = \
+@@ -746,6 +752,7 @@ ALL_TARGET_OBS = \
i386-darwin-tdep.o \
i386-dicos-tdep.o \
i386-fbsd-tdep.o \
@@ -51,7 +51,7 @@
i386-gnu-tdep.o \
i386-go32-tdep.o \
i386-linux-tdep.o \
-@@ -750,6 +757,7 @@ ALL_TARGET_OBS = \
+@@ -770,6 +777,7 @@ ALL_TARGET_OBS = \
mep-tdep.o \
microblaze-linux-tdep.o \
microblaze-tdep.o \
@@ -59,7 +59,7 @@
mips-fbsd-tdep.o \
mips-linux-tdep.o \
mips-nbsd-tdep.o \
-@@ -768,6 +776,7 @@ ALL_TARGET_OBS = \
+@@ -788,6 +796,7 @@ ALL_TARGET_OBS = \
or1k-linux-tdep.o \
or1k-tdep.o \
ppc-fbsd-tdep.o \
@@ -67,15 +67,15 @@
ppc-linux-tdep.o \
ppc-nbsd-tdep.o \
ppc-obsd-tdep.o \
-@@ -775,6 +784,7 @@ ALL_TARGET_OBS = \
+@@ -795,6 +804,7 @@ ALL_TARGET_OBS = \
ppc-sysv-tdep.o \
ppc64-tdep.o \
ravenscar-thread.o \
+ riscv-fbsd-kern.o \
riscv-fbsd-tdep.o \
riscv-linux-tdep.o \
- riscv-tdep.o \
-@@ -1648,7 +1658,7 @@ generated_files = \
+ riscv-ravenscar-thread.o \
+@@ -1606,7 +1616,7 @@ generated_files = \
# Flags needed to compile Python code
PYTHON_CFLAGS = @PYTHON_CFLAGS@
@@ -84,7 +84,7 @@
@$(MAKE) $(FLAGS_TO_PASS) DO=all "DODIRS=`echo $(SUBDIRS) | sed 's/testsuite//'`" subdir_do
# Rule for compiling .c files in the top-level gdb directory.
-@@ -1913,6 +1923,12 @@ ifneq ($(CODESIGN_CERT),)
+@@ -1871,6 +1881,12 @@ ifneq ($(CODESIGN_CERT),)
$(ECHO_SIGN) $(CODESIGN) -s $(CODESIGN_CERT) gdb$(EXEEXT)
endif
@@ -97,7 +97,7 @@
# Convenience rule to handle recursion.
.PHONY: all-data-directory
all-data-directory: data-directory/Makefile
-@@ -1953,6 +1969,7 @@ clean mostlyclean: $(CONFIG_CLEAN)
+@@ -1911,6 +1927,7 @@ clean mostlyclean: $(CONFIG_CLEAN)
rm -f init.c stamp-init version.c stamp-version
rm -f gdb$(EXEEXT) core make.log
rm -f gdb[0-9]$(EXEEXT)
@@ -105,7 +105,7 @@
rm -f test-cp-name-parser$(EXEEXT)
rm -f xml-builtin.c stamp-xml
rm -f $(DEPDIR)/*
-@@ -2152,6 +2169,7 @@ MAKEOVERRIDES =
+@@ -2106,6 +2123,7 @@ MAKEOVERRIDES =
ALLDEPFILES = \
aarch32-tdep.c \
@@ -113,7 +113,7 @@
aarch64-fbsd-nat.c \
aarch64-fbsd-tdep.c \
aarch64-linux-nat.c \
-@@ -2171,6 +2189,7 @@ ALLDEPFILES = \
+@@ -2125,6 +2143,7 @@ ALLDEPFILES = \
amd64-bsd-nat.c \
amd64-darwin-tdep.c \
amd64-dicos-tdep.c \
@@ -121,7 +121,7 @@
amd64-fbsd-nat.c \
amd64-fbsd-tdep.c \
amd64-linux-nat.c \
-@@ -2185,6 +2204,7 @@ ALLDEPFILES = \
+@@ -2139,6 +2158,7 @@ ALLDEPFILES = \
arc-tdep.c \
arm.c \
arm-bsd-tdep.c \
@@ -129,7 +129,7 @@
arm-fbsd-nat.c \
arm-fbsd-tdep.c \
arm-get-next-pcs.c \
-@@ -2205,6 +2225,9 @@ ALLDEPFILES = \
+@@ -2160,6 +2180,9 @@ ALLDEPFILES = \
csky-tdep.c \
darwin-nat.c \
dicos-tdep.c \
@@ -139,7 +139,7 @@
fbsd-nat.c \
fbsd-tdep.c \
fork-child.c \
-@@ -2226,6 +2249,7 @@ ALLDEPFILES = \
+@@ -2180,6 +2203,7 @@ ALLDEPFILES = \
i386-darwin-nat.c \
i386-darwin-tdep.c \
i386-dicos-tdep.c \
@@ -147,7 +147,7 @@
i386-fbsd-nat.c \
i386-fbsd-tdep.c \
i386-gnu-nat.c \
-@@ -2262,6 +2286,7 @@ ALLDEPFILES = \
+@@ -2217,6 +2241,7 @@ ALLDEPFILES = \
microblaze-linux-tdep.c \
microblaze-tdep.c \
mingw-hdep.c \
@@ -155,7 +155,7 @@
mips-fbsd-nat.c \
mips-fbsd-tdep.c \
mips-linux-nat.c \
-@@ -2281,6 +2306,7 @@ ALLDEPFILES = \
+@@ -2236,6 +2261,7 @@ ALLDEPFILES = \
obsd-nat.c \
obsd-tdep.c \
posix-hdep.c \
@@ -163,7 +163,7 @@
ppc-fbsd-nat.c \
ppc-fbsd-tdep.c \
ppc-linux-nat.c \
-@@ -2295,6 +2321,7 @@ ALLDEPFILES = \
+@@ -2250,6 +2276,7 @@ ALLDEPFILES = \
procfs.c \
ravenscar-thread.c \
remote-sim.c \
@@ -171,7 +171,7 @@
riscv-fbsd-nat.c \
riscv-fbsd-tdep.c \
riscv-linux-nat.c \
-@@ -2330,6 +2357,7 @@ ALLDEPFILES = \
+@@ -2286,6 +2313,7 @@ ALLDEPFILES = \
sparc-sol2-nat.c \
sparc-sol2-tdep.c \
sparc-tdep.c \
@@ -179,7 +179,7 @@
sparc64-fbsd-nat.c \
sparc64-fbsd-tdep.c \
sparc64-linux-nat.c \
-@@ -2588,7 +2616,7 @@ endif
+@@ -2544,7 +2572,7 @@ endif
# A list of all the objects we might care about in this build, for
# dependency tracking.
@@ -189,10 +189,10 @@
# All the .deps files to include.
diff --git gdb/config.in gdb/config.in
-index cb886ba8e1..b8a937f6de 100644
+index 9755458f9c..4a1f7a924c 100644
--- gdb/config.in
+++ gdb/config.in
-@@ -218,6 +218,12 @@
+@@ -217,6 +217,12 @@
/* Define to 1 if your system has the kinfo_getvmmap function. */
#undef HAVE_KINFO_GETVMMAP
@@ -206,10 +206,10 @@
#undef HAVE_LANGINFO_CODESET
diff --git gdb/configure gdb/configure
-index b572d414ca..12e08354cc 100755
+index e7811e807a..0a6a1304ce 100755
--- gdb/configure
+++ gdb/configure
-@@ -8064,6 +8064,126 @@ $as_echo "#define HAVE_KINFO_GETFILE 1" >>confdefs.h
+@@ -8331,6 +8331,126 @@ $as_echo "#define HAVE_KINFO_GETVMMAP 1" >>confdefs.h
fi
@@ -337,12 +337,12 @@
if test "X$prefix" = "XNONE"; then
acl_final_prefix="$ac_default_prefix"
diff --git gdb/configure.ac gdb/configure.ac
-index ca0da7980c..39dc6a3559 100644
+index 620ae23e34..9186b54386 100644
--- gdb/configure.ac
+++ gdb/configure.ac
-@@ -485,6 +485,16 @@ AC_SEARCH_LIBS(kinfo_getfile, util util-freebsd,
- [AC_DEFINE(HAVE_KINFO_GETFILE, 1,
- [Define to 1 if your system has the kinfo_getfile function. ])])
+@@ -480,6 +480,16 @@ AC_SEARCH_LIBS(kinfo_getvmmap, util util-freebsd,
+ [AC_DEFINE(HAVE_KINFO_GETVMMAP, 1,
+ [Define to 1 if your system has the kinfo_getvmmap function. ])])
+# kgdb needs kvm_open2 for cross-debugging
+AC_SEARCH_LIBS(kvm_open2, kvm,
@@ -358,7 +358,7 @@
# GDB may fork/exec the iconv program to get the list of supported character
diff --git gdb/configure.nat gdb/configure.nat
-index fb4522f579..a5059ff37d 100644
+index 3e94a064ae..6b73f8dd90 100644
--- gdb/configure.nat
+++ gdb/configure.nat
@@ -63,7 +63,8 @@ case ${gdb_host} in
@@ -372,7 +372,7 @@
LOADLIBES='-lkvm'
;;
diff --git gdb/configure.tgt gdb/configure.tgt
-index caa42be1c0..45668ccaed 100644
+index a3e11c4b9b..1d8b6f10a0 100644
--- gdb/configure.tgt
+++ gdb/configure.tgt
@@ -101,7 +101,7 @@ esac
@@ -393,7 +393,7 @@
;;
aarch64*-*-linux*)
-@@ -171,7 +171,7 @@ arm*-*-linux*)
+@@ -173,7 +173,7 @@ arm*-*-linux*)
;;
arm*-*-freebsd*)
# Target: FreeBSD/arm
@@ -402,7 +402,7 @@
;;
arm*-*-netbsd* | arm*-*-knetbsd*-gnu)
# Target: NetBSD/arm
-@@ -270,7 +270,11 @@ i[34567]86-*-dicos*)
+@@ -277,7 +277,11 @@ i[34567]86-*-dicos*)
;;
i[34567]86-*-freebsd* | i[34567]86-*-kfreebsd*-gnu)
# Target: FreeBSD/i386
@@ -415,7 +415,7 @@
;;
i[34567]86-*-netbsd* | i[34567]86-*-knetbsd*-gnu)
# Target: NetBSD/i386
-@@ -424,7 +428,7 @@ mips*-*-netbsd* | mips*-*-knetbsd*-gnu)
+@@ -423,7 +427,7 @@ mips*-*-netbsd* | mips*-*-knetbsd*-gnu)
;;
mips*-*-freebsd*)
# Target: MIPS running FreeBSD
@@ -424,7 +424,7 @@
gdb_sim=../sim/mips/libsim.a
;;
mips64*-*-openbsd*)
-@@ -491,7 +495,7 @@ or1k-*-* | or1knd-*-*)
+@@ -489,7 +493,7 @@ or1k-*-* | or1knd-*-*)
powerpc*-*-freebsd*)
# Target: FreeBSD/powerpc
gdb_target_obs="rs6000-tdep.o ppc-sysv-tdep.o ppc64-tdep.o \
@@ -433,7 +433,7 @@
ravenscar-thread.o ppc-ravenscar-thread.o"
;;
-@@ -545,7 +549,7 @@ s390*-*-linux*)
+@@ -541,7 +545,7 @@ s390*-*-linux*)
riscv*-*-freebsd*)
# Target: FreeBSD/riscv
@@ -442,7 +442,7 @@
;;
riscv*-*-linux*)
-@@ -624,6 +628,7 @@ sparc64-*-linux*)
+@@ -616,6 +620,7 @@ sparc64-*-linux*)
sparc*-*-freebsd* | sparc*-*-kfreebsd*-gnu)
# Target: FreeBSD/sparc64
gdb_target_obs="sparc-tdep.o sparc64-tdep.o sparc64-fbsd-tdep.o \
@@ -450,7 +450,7 @@
ravenscar-thread.o sparc-ravenscar-thread.o"
;;
sparc-*-netbsd* | sparc-*-knetbsd*-gnu)
-@@ -745,8 +750,8 @@ x86_64-*-linux*)
+@@ -735,8 +740,8 @@ x86_64-*-linux*)
;;
x86_64-*-freebsd* | x86_64-*-kfreebsd*-gnu)
# Target: FreeBSD/amd64
@@ -461,20 +461,8 @@
;;
x86_64-*-mingw* | x86_64-*-cygwin*)
# Target: MingW/amd64
-diff --git gdb/defs.h gdb/defs.h
-index 567f214b81..abbaa1f950 100644
---- gdb/defs.h
-+++ gdb/defs.h
-@@ -481,6 +481,7 @@ enum gdb_osabi
- GDB_OSABI_SOLARIS,
- GDB_OSABI_LINUX,
- GDB_OSABI_FREEBSD,
-+ GDB_OSABI_FREEBSD_KERNEL,
- GDB_OSABI_NETBSD,
- GDB_OSABI_OPENBSD,
- GDB_OSABI_WINCE,
diff --git gdb/osabi.c gdb/osabi.c
-index dec1bddc4c..06c514167e 100644
+index 627b9d9815..45a2fc6ade 100644
--- gdb/osabi.c
+++ gdb/osabi.c
@@ -66,6 +66,7 @@ static const struct osabi_names gdb_osabi_names[] =
@@ -485,11 +473,23 @@
{ "NetBSD", NULL },
{ "OpenBSD", NULL },
{ "WindowsCE", NULL },
+diff --git gdb/osabi.h gdb/osabi.h
+index a7e6a10d01..07cef9bee3 100644
+--- gdb/osabi.h
++++ gdb/osabi.h
+@@ -31,6 +31,7 @@ enum gdb_osabi
+ GDB_OSABI_SOLARIS,
+ GDB_OSABI_LINUX,
+ GDB_OSABI_FREEBSD,
++ GDB_OSABI_FREEBSD_KERNEL,
+ GDB_OSABI_NETBSD,
+ GDB_OSABI_OPENBSD,
+ GDB_OSABI_WINCE,
diff --git gdb/regcache.c gdb/regcache.c
-index 1580359cd4..50ff8d4039 100644
+index 91d3202b94..903b3d0d86 100644
--- gdb/regcache.c
+++ gdb/regcache.c
-@@ -996,6 +996,22 @@ reg_buffer::raw_supply_zeroed (int regnum)
+@@ -1108,6 +1108,22 @@ reg_buffer::raw_supply_zeroed (int regnum)
m_register_status[regnum] = REG_VALID;
}
@@ -513,10 +513,10 @@
void
diff --git gdb/regcache.h gdb/regcache.h
-index e2935eea74..83654be825 100644
+index 9390f5708e..62920a5b7f 100644
--- gdb/regcache.h
+++ gdb/regcache.h
-@@ -226,6 +226,8 @@ public:
+@@ -228,6 +228,8 @@ class reg_buffer : public reg_buffer_common
only LEN, without editing the rest of the register. */
void raw_supply_part (int regnum, int offset, int len, const gdb_byte *in);
@@ -526,15 +526,15 @@
virtual ~reg_buffer () = default;
diff --git gnulib/configure gnulib/configure
-index 7c74371e8f..396467f68d 100644
+index ef7f6d5e80..536a0b4812 100644
--- gnulib/configure
+++ gnulib/configure
-@@ -20267,6 +20267,8 @@ else
- case "$host_os" in
- # Guess all is fine on glibc systems.
- *-gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
-+ # Guess all is fine on FreeBSD.
-+ freebsd*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
- # If we don't know, assume the worst.
- *) gl_cv_func_gettimeofday_clobber="guessing yes" ;;
- esac
+@@ -20747,6 +20747,8 @@ else
+ *-gnu* | gnu*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
+ # Guess all is fine on musl systems.
+ *-musl*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
++ # Guess all is fine on FreeBSD.
++ freebsd*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
+ # Guess no on native Windows.
+ mingw*) gl_cv_func_gettimeofday_clobber="guessing no" ;;
+ # If we don't know, obey --enable-cross-guesses.
Index: devel/gdb/files/kgdb/amd64fbsd-kern.c
===================================================================
--- devel/gdb/files/kgdb/amd64fbsd-kern.c
+++ devel/gdb/files/kgdb/amd64fbsd-kern.c
@@ -22,11 +22,10 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $FreeBSD$
*/
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
#include "defs.h"
#include "frame-unwind.h"
#include "gdbcore.h"
@@ -241,6 +240,7 @@
fbsd_vmcore_set_cpu_pcb_addr(gdbarch, kgdb_trgt_stop_pcb);
}
+void _initialize_amd64_kgdb_tdep(void);
void
_initialize_amd64_kgdb_tdep(void)
{
Index: devel/gdb/files/kgdb/fbsd-kld.c
===================================================================
--- devel/gdb/files/kgdb/fbsd-kld.c
+++ devel/gdb/files/kgdb/fbsd-kld.c
@@ -22,11 +22,10 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $FreeBSD$
*/
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
#include "defs.h"
#include "command.h"
#include "completer.h"
@@ -88,7 +87,7 @@
}
static int
-kld_ok (char *path)
+kld_ok (const char *path)
{
struct stat sb;
@@ -106,66 +105,60 @@
".debug",
".symbols",
"",
- NULL
};
-static int
-check_kld_path (char *path, size_t path_size)
+static bool
+check_kld_path (std::string &path)
{
- const char **suffix;
- char *ep;
-
- ep = path + strlen(path);
- suffix = kld_suffixes;
- while (*suffix != NULL) {
- if (strlcat(path, *suffix, path_size) < path_size) {
- if (kld_ok(path))
- return (1);
- }
-
- /* Restore original path to remove suffix. */
- *ep = '\0';
- suffix++;
- }
- return (0);
+ for (const char *suffix : kld_suffixes) {
+ std::string new_path = path + suffix;
+ if (kld_ok (new_path.c_str ())) {
+ path = new_path;
+ return true;
+ }
+ }
+ return false;
}
/*
* Try to find the path for a kld by looking in the kernel's directory and
* in the various paths in the module path.
*/
-static int
-find_kld_path (const char *filename, char *path, size_t path_size)
+static gdb::optional<std::string>
+find_kld_path (const char *filename)
{
- struct kld_info *info;
- gdb::unique_xmalloc_ptr<char> module_path;
- char *module_dir, *cp;
- int error;
+ if (exec_bfd)
+ {
+ std::string kernel_dir = ldirname (bfd_get_filename (exec_bfd));
+ if (!kernel_dir.empty ())
+ {
+ std::string path = string_printf("%s/%s", kernel_dir.c_str (),
+ filename);
+ if (check_kld_path (path))
+ return path;
+ }
+ }
- info = get_kld_info();
- if (exec_bfd) {
- std::string kernel_dir = ldirname(bfd_get_filename(exec_bfd));
- if (!kernel_dir.empty()) {
- snprintf(path, path_size, "%s/%s", kernel_dir.c_str(),
- filename);
- if (check_kld_path(path, path_size))
- return (1);
- }
+ struct kld_info *info = get_kld_info ();
+ if (info->module_path_addr != 0)
+ {
+ gdb::unique_xmalloc_ptr<char> module_path
+ = target_read_string(info->module_path_addr, PATH_MAX);
+
+ if (module_path != nullptr)
+ {
+ char *cp = module_path.get();
+ char *module_dir;
+ while ((module_dir = strsep(&cp, ";")) != NULL)
+ {
+ std::string path = string_printf("%s/%s", module_dir, filename);
+ if (check_kld_path (path))
+ return path;
+ }
}
- if (info->module_path_addr != 0) {
- target_read_string(info->module_path_addr, &module_path,
- PATH_MAX, &error);
- if (error == 0) {
- cp = module_path.get();
- while ((module_dir = strsep(&cp, ";")) != NULL) {
- snprintf(path, path_size, "%s/%s", module_dir,
- filename);
- if (check_kld_path(path, path_size))
- return (1);
- }
- }
- }
- return (0);
+ }
+
+ return {};
}
/*
@@ -193,28 +186,23 @@
static int
find_kld_address (const char *arg, CORE_ADDR *address)
{
- struct kld_info *info;
- CORE_ADDR kld;
- gdb::unique_xmalloc_ptr<char> kld_filename;
- const char *filename;
- int error;
-
- info = get_kld_info();
+ struct kld_info *info = get_kld_info();
if (info->linker_files_addr == 0 || info->off_address == 0 ||
info->off_filename == 0 || info->off_next == 0)
return (0);
- filename = lbasename(arg);
- for (kld = read_pointer(info->linker_files_addr); kld != 0;
+ const char *filename = lbasename(arg);
+ for (CORE_ADDR kld = read_pointer(info->linker_files_addr); kld != 0;
kld = read_pointer(kld + info->off_next)) {
/* Try to read this linker file's filename. */
- target_read_string(read_pointer(kld + info->off_filename),
- &kld_filename, PATH_MAX, &error);
- if (error)
+ gdb::unique_xmalloc_ptr<char> kld_filename =
+ target_read_string (read_pointer (kld + info->off_filename),
+ PATH_MAX);
+ if (kld_filename == nullptr)
continue;
/* Compare this kld's filename against our passed in name. */
- if (strcmp(kld_filename.get(), filename) != 0)
+ if (strcmp(kld_filename.get (), filename) != 0)
continue;
/*
@@ -249,7 +237,7 @@
}
static void
-load_kld (char *path, CORE_ADDR base_addr, int from_tty)
+load_kld (const char *path, CORE_ADDR base_addr, int from_tty)
{
struct target_section *sections = NULL, *sections_end = NULL, *s;
gdb_bfd_ref_ptr bfd;
@@ -301,24 +289,25 @@
static void
kgdb_add_kld_cmd (const char *arg, int from_tty)
{
- char path[PATH_MAX];
CORE_ADDR base_addr;
if (!exec_bfd)
error("No kernel symbol file");
/* Try to open the raw path to handle absolute paths first. */
- snprintf(path, sizeof(path), "%s", arg);
- if (!check_kld_path(path, sizeof(path))) {
+ std::string path (arg);
+ if (!check_kld_path(path)) {
/*
* If that didn't work, look in the various possible
* paths for the module.
*/
- if (!find_kld_path(arg, path, sizeof(path))) {
+ gdb::optional<std::string> found = find_kld_path (arg);
+ if (!found) {
error("Unable to locate kld");
return;
}
+ path = std::move(*found);
}
if (!find_kld_address(arg, &base_addr)) {
@@ -326,7 +315,7 @@
return;
}
- load_kld(path, base_addr, from_tty);
+ load_kld(path.c_str (), base_addr, from_tty);
reinit_frame_cache();
}
@@ -435,33 +424,27 @@
static struct so_list *
kld_current_sos (void)
{
- struct so_list *head, **prev, *newobj;
- struct kld_info *info;
- CORE_ADDR kld, kernel;
- gdb::unique_xmalloc_ptr<char> path;
- int error;
-
- info = get_kld_info();
+ struct kld_info *info = get_kld_info();
if (info->linker_files_addr == 0 || info->kernel_file_addr == 0 ||
info->off_address == 0 || info->off_filename == 0 ||
info->off_next == 0)
return (NULL);
- head = NULL;
- prev = &head;
+ struct so_list *head = NULL;
+ struct so_list **prev = &head;
/*
* Walk the list of linker files creating so_list entries for
* each non-kernel file.
*/
- kernel = read_pointer(info->kernel_file_addr);
- for (kld = read_pointer(info->linker_files_addr); kld != 0;
+ CORE_ADDR kernel = read_pointer(info->kernel_file_addr);
+ for (CORE_ADDR kld = read_pointer(info->linker_files_addr); kld != 0;
kld = read_pointer(kld + info->off_next)) {
/* Skip the main kernel file. */
if (kld == kernel)
continue;
- newobj = XCNEW (struct so_list);
+ struct so_list *newobj = XCNEW (struct so_list);
lm_info_kld *li = new lm_info_kld;
li->base_address = 0;
@@ -469,11 +452,11 @@
newobj->lm_info = li;
/* Read the base filename and store it in so_original_name. */
- target_read_string(read_pointer(kld + info->off_filename),
- &path, sizeof(newobj->so_original_name), &error);
- if (error != 0) {
- warning("kld_current_sos: Can't read filename: %s\n",
- safe_strerror(error));
+ gdb::unique_xmalloc_ptr<char> path =
+ target_read_string (read_pointer (kld + info->off_filename),
+ sizeof(newobj->so_original_name));
+ if (path == nullptr) {
+ warning("kld_current_sos: Can't read filename\n");
free_so(newobj);
continue;
}
@@ -484,18 +467,14 @@
* Try to read the pathname (if it exists) and store
* it in so_name.
*/
- if (find_kld_path(newobj->so_original_name, newobj->so_name,
- sizeof(newobj->so_name))) {
- /* we found the kld */;
- } else if (info->off_pathname != 0) {
- target_read_string(read_pointer(kld +
+ if (info->off_pathname != 0) {
+ path = target_read_string (read_pointer (kld +
info->off_pathname),
- &path, sizeof(newobj->so_name), &error);
- if (error != 0) {
+ sizeof(newobj->so_name));
+ if (path == nullptr) {
warning(
- "kld_current_sos: Can't read pathname for \"%s\": %s\n",
- newobj->so_original_name,
- safe_strerror(error));
+ "kld_current_sos: Can't read pathname for \"%s\"\n",
+ newobj->so_original_name);
strlcpy(newobj->so_name, newobj->so_original_name,
sizeof(newobj->so_name));
} else {
@@ -542,20 +521,19 @@
kld_find_and_open_solib (const char *solib, unsigned o_flags,
gdb::unique_xmalloc_ptr<char> *temp_pathname)
{
- char path[PATH_MAX];
- int fd;
-
- temp_pathname->reset (NULL);
- if (!find_kld_path(solib, path, sizeof(path))) {
- errno = ENOENT;
- return (-1);
- }
- fd = open(path, o_flags, 0);
- if (fd >= 0)
- temp_pathname->reset(xstrdup(path));
- return (fd);
+ temp_pathname->reset (NULL);
+ gdb::optional<std::string> found = find_kld_path (solib);
+ if (!found) {
+ errno = ENOENT;
+ return (-1);
+ }
+ int fd = open(found->c_str (), o_flags, 0);
+ if (fd >= 0)
+ temp_pathname->reset (xstrdup (found->c_str ()));
+ return (fd);
}
+void _initialize_kld_target(void);
void
_initialize_kld_target(void)
{
Index: devel/gdb/files/kgdb/fbsd-kthr.c
===================================================================
--- devel/gdb/files/kgdb/fbsd-kthr.c
+++ devel/gdb/files/kgdb/fbsd-kthr.c
@@ -22,16 +22,15 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $FreeBSD$
*/
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
#include <sys/param.h>
#include <sys/proc.h>
#include <stdbool.h>
-#include <defs.h>
+#include "defs.h"
#include "gdbcore.h"
#include "objfiles.h"
#include "value.h"
@@ -340,27 +339,27 @@
const char *
kgdb_thr_extra_thread_info(int tid)
{
- char comm[MAXCOMLEN + 1];
- char td_name[MAXCOMLEN + 1];
- struct kthr *kt;
- static char buf[64];
+ static char buf[64];
- kt = kgdb_thr_lookup_tid(tid);
- if (kt == NULL)
- return (NULL);
- snprintf(buf, sizeof(buf), "PID=%d", kt->pid);
- try {
- read_memory_string (kt->paddr + proc_off_p_comm, comm,
- sizeof(comm));
- strlcat(buf, ": ", sizeof(buf));
- strlcat(buf, comm, sizeof(buf));
- read_memory_string (kt->kaddr + thread_off_td_name, td_name,
- sizeof(td_name));
- if (strcmp(comm, td_name) != 0) {
- strlcat(buf, "/", sizeof(buf));
- strlcat(buf, td_name, sizeof(buf));
- }
- } catch (const gdb_exception_error &e) {
+ struct kthr *kt = kgdb_thr_lookup_tid(tid);
+ if (kt == nullptr)
+ return (nullptr);
+
+ snprintf(buf, sizeof (buf), "PID=%d", kt->pid);
+ gdb::unique_xmalloc_ptr<char> comm
+ = target_read_string (kt->paddr + proc_off_p_comm, MAXCOMLEN + 1);
+ if (comm != nullptr)
+ {
+ strlcat(buf, ": ", sizeof (buf));
+ strlcat(buf, comm.get (), sizeof (buf));
+
+ gdb::unique_xmalloc_ptr<char> td_name
+ = target_read_string (kt->kaddr + thread_off_td_name, MAXCOMLEN + 1);
+ if (td_name != nullptr && strcmp (comm.get (), td_name.get ()) != 0)
+ {
+ strlcat(buf, "/", sizeof (buf));
+ strlcat(buf, td_name.get (), sizeof (buf));
}
- return (buf);
+ }
+ return (buf);
}
Index: devel/gdb/files/kgdb/fbsd-kvm.c
===================================================================
--- devel/gdb/files/kgdb/fbsd-kvm.c
+++ devel/gdb/files/kgdb/fbsd-kvm.c
@@ -22,11 +22,10 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $FreeBSD$
*/
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
#include "defs.h"
#include "command.h"
#include "elf-bfd.h"
@@ -186,11 +185,13 @@
&osabi);
/*
- * aarch64 kernels don't have the right note tag for
- * kernels so just look for /red/herring anyway.
+ * aarch64 and RISC-V kernels don't have the right
+ * note tag for kernels so just look for /red/herring
+ * anyway.
*/
if (osabi == GDB_OSABI_UNKNOWN &&
- elf_elfheader(abfd)->e_machine == EM_AARCH64)
+ ((elf_elfheader(abfd)->e_machine == EM_AARCH64) ||
+ (elf_elfheader(abfd)->e_machine == EM_RISCV)))
break;
if (osabi != GDB_OSABI_FREEBSD)
return (GDB_OSABI_UNKNOWN);
@@ -249,7 +250,7 @@
bool has_memory () override;
bool has_stack () override;
bool has_registers () override;
- bool has_execution (ptid_t) override { return false; }
+ bool has_execution (inferior *inf) override { return false; }
};
/* Target ops for libkvm interface. */
@@ -405,14 +406,16 @@
inf->fake_pid_p = 1;
}
solib_create_inferior_hook(0);
- init_thread_list();
kt = kgdb_thr_init(ops->cpu_pcb_addr);
+ thread_info *curthr = nullptr;
while (kt != NULL) {
- add_thread_silent(fbsd_vmcore_ptid(kt->tid));
+ thread_info *thr = add_thread_silent(&fbsd_kvm_ops,
+ fbsd_vmcore_ptid(kt->tid));
+ if (kt == curkthr)
+ curthr = thr;
kt = kgdb_thr_next(kt);
}
- if (curkthr != 0)
- inferior_ptid = fbsd_vmcore_ptid(curkthr->tid);
+ switch_to_thread (curthr);
target_fetch_registers (get_current_regcache (), -1);
@@ -434,7 +437,8 @@
vmcore = NULL;
}
- inferior_ptid = null_ptid;
+ switch_to_no_thread ();
+ exit_inferior_silent (current_inferior ());
}
#if 0
@@ -530,7 +534,7 @@
if (ops->supply_pcb == NULL)
return;
- kt = kgdb_thr_lookup_tid(inferior_ptid.tid());
+ kt = kgdb_thr_lookup_tid(regcache->ptid().tid());
if (kt == NULL)
return;
ops->supply_pcb(regcache, kt->pcb);
@@ -590,7 +594,7 @@
{
struct thread_info *tp;
- tp = find_thread_ptid (fbsd_vmcore_ptid (tid));
+ tp = find_thread_ptid (&fbsd_kvm_ops, fbsd_vmcore_ptid (tid));
if (tp == NULL)
error ("invalid tid");
thread_select (arg, tp);
@@ -642,11 +646,13 @@
kgdb_switch_to_thread(arg, addr);
}
+void _initialize_kgdb_target(void);
void
_initialize_kgdb_target(void)
{
- add_target(fbsd_kvm_target_info, fbsd_kvm_target_open);
+ add_target(fbsd_kvm_target_info, fbsd_kvm_target_open,
+ filename_completer);
fbsd_vmcore_data = gdbarch_data_register_pre_init(fbsd_vmcore_init);
Index: devel/gdb/files/kgdb/i386fbsd-kern.c
===================================================================
--- devel/gdb/files/kgdb/i386fbsd-kern.c
+++ devel/gdb/files/kgdb/i386fbsd-kern.c
@@ -22,11 +22,10 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $FreeBSD$
*/
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
#include "defs.h"
#include "frame-unwind.h"
#include "gdbcore.h"
@@ -467,6 +466,7 @@
fbsd_vmcore_set_cpu_pcb_addr(gdbarch, kgdb_trgt_stop_pcb);
}
+void _initialize_i386_kgdb_tdep(void);
void
_initialize_i386_kgdb_tdep(void)
{
Index: devel/gdb/files/kgdb/kgdb-main.c
===================================================================
--- devel/gdb/files/kgdb/kgdb-main.c
+++ devel/gdb/files/kgdb/kgdb-main.c
@@ -22,10 +22,9 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $FreeBSD$
*/
-
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
#include <sys/param.h>
#include <sys/stat.h>
Index: devel/gdb/files/kgdb/mipsfbsd-kern.c
===================================================================
--- devel/gdb/files/kgdb/mipsfbsd-kern.c
+++ devel/gdb/files/kgdb/mipsfbsd-kern.c
@@ -25,11 +25,10 @@
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* from: src/gnu/usr.bin/gdb/kgdb/trgt_alpha.c,v 1.2.2.1 2005/09/15 05:32:10 marcel
+ *
+ * $FreeBSD: head/gnu/usr.bin/gdb/kgdb/trgt_mips.c 249878 2013-04-25 04:53:01Z imp $
*/
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: head/gnu/usr.bin/gdb/kgdb/trgt_mips.c 249878 2013-04-25 04:53:01Z imp $");
-
#include "defs.h"
#include "frame-unwind.h"
#include "osabi.h"
@@ -286,6 +285,7 @@
fbsd_vmcore_set_cpu_pcb_addr (gdbarch, kgdb_trgt_stop_pcb);
}
+void _initialize_mips_kgdb_tdep(void);
void
_initialize_mips_kgdb_tdep (void)
{
Index: devel/gdb/files/kgdb/ppcfbsd-kern.c
===================================================================
--- devel/gdb/files/kgdb/ppcfbsd-kern.c
+++ devel/gdb/files/kgdb/ppcfbsd-kern.c
@@ -22,11 +22,10 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $FreeBSD$
*/
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
#include "defs.h"
#include "frame-unwind.h"
#include "gdbcore.h"
@@ -240,6 +239,7 @@
}
}
+void _initialize_ppc_kgdb_tdep(void);
void
_initialize_ppc_kgdb_tdep(void)
{
Index: devel/gdb/files/kgdb/riscv-fbsd-kern.c
===================================================================
--- devel/gdb/files/kgdb/riscv-fbsd-kern.c
+++ devel/gdb/files/kgdb/riscv-fbsd-kern.c
@@ -49,11 +49,8 @@
{ 1, RISCV_SP_REGNUM, 0 },
{ 1, RISCV_GP_REGNUM, 0 },
{ 1, RISCV_TP_REGNUM, 0 },
- { 3, 5, 0 }, /* t0 - t2 */
- { 4, 28, 0 }, /* t3 - t6 */
{ 2, RISCV_FP_REGNUM, 0 }, /* s0 - s1 */
{ 10, 18, 0 }, /* s2 - s11 */
- { 8, RISCV_A0_REGNUM, 0 }, /* a0 - a7 */
{ 0 }
};
@@ -66,7 +63,7 @@
static void
riscv_fbsd_supply_pcb(struct regcache *regcache, CORE_ADDR pcb_addr)
{
- gdb_byte buf[31 * 8];
+ gdb_byte buf[16 * riscv_abi_xlen (regcache->arch ())];
/* Always give a value for PC in case the PCB isn't readable. */
regcache->raw_supply_zeroed (RISCV_PC_REGNUM);
Index: devel/gdb/files/kgdb/sparc64fbsd-kern.c
===================================================================
--- devel/gdb/files/kgdb/sparc64fbsd-kern.c
+++ devel/gdb/files/kgdb/sparc64fbsd-kern.c
@@ -22,11 +22,10 @@
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * $FreeBSD$
*/
-#include <sys/cdefs.h>
-__FBSDID("$FreeBSD$");
-
#include "defs.h"
#include "gdbarch.h"
#include "gdbcore.h"
@@ -303,6 +302,7 @@
#endif
}
+void _initialize_sparc64_kgdb_tdep(void);
void
_initialize_sparc64_kgdb_tdep(void)
{
Index: devel/gdb/files/patch-commit-c47bae859
===================================================================
--- devel/gdb/files/patch-commit-c47bae859
+++ /dev/null
@@ -1,99 +0,0 @@
-commit c47bae859a5af0d95224d90000df0e529f7c5aa0
-Author: Kevin Buettner <kevinb@redhat.com>
-Date: Wed May 27 20:05:40 2020 -0700
-
-diff --git a/gdb/python/python.c b/gdb/python/python.c
-index 67f362b852..4bdd2201ab 100644
---- gdb/python/python.c
-+++ gdb/python/python.c
-@@ -238,6 +238,30 @@ gdbpy_enter::~gdbpy_enter ()
- PyGILState_Release (m_state);
- }
-
-+/* A helper class to save and restore the GIL, but without touching
-+ the other globals that are handled by gdbpy_enter. */
-+
-+class gdbpy_gil
-+{
-+public:
-+
-+ gdbpy_gil ()
-+ : m_state (PyGILState_Ensure ())
-+ {
-+ }
-+
-+ ~gdbpy_gil ()
-+ {
-+ PyGILState_Release (m_state);
-+ }
-+
-+ DISABLE_COPY_AND_ASSIGN (gdbpy_gil);
-+
-+private:
-+
-+ PyGILState_STATE m_state;
-+};
-+
- /* Set the quit flag. */
-
- static void
-@@ -251,6 +275,10 @@ gdbpy_set_quit_flag (const struct extension_language_defn *extlang)
- static int
- gdbpy_check_quit_flag (const struct extension_language_defn *extlang)
- {
-+ if (!gdb_python_initialized)
-+ return 0;
-+
-+ gdbpy_gil gil;
- return PyOS_InterruptOccurred ();
- }
-
-@@ -943,30 +971,6 @@ gdbpy_source_script (const struct extension_language_defn *extlang,
-
- /* Posting and handling events. */
-
--/* A helper class to save and restore the GIL, but without touching
-- the other globals that are handled by gdbpy_enter. */
--
--class gdbpy_gil
--{
--public:
--
-- gdbpy_gil ()
-- : m_state (PyGILState_Ensure ())
-- {
-- }
--
-- ~gdbpy_gil ()
-- {
-- PyGILState_Release (m_state);
-- }
--
-- DISABLE_COPY_AND_ASSIGN (gdbpy_gil);
--
--private:
--
-- PyGILState_STATE m_state;
--};
--
- /* A single event. */
- struct gdbpy_event
- {
-@@ -1616,6 +1620,7 @@ finalize_python (void *ignore)
-
- Py_Finalize ();
-
-+ gdb_python_initialized = false;
- restore_active_ext_lang (previous_active);
- }
-
-@@ -1785,8 +1790,7 @@ do_start_initialization ()
- return false;
-
- /* Release the GIL while gdb runs. */
-- PyThreadState_Swap (NULL);
-- PyEval_ReleaseLock ();
-+ PyEval_SaveThread ();
-
- make_final_cleanup (finalize_python, NULL);
-
Index: devel/gdb/files/patch-gdb_amd64-bsd-nat.c
===================================================================
--- devel/gdb/files/patch-gdb_amd64-bsd-nat.c
+++ devel/gdb/files/patch-gdb_amd64-bsd-nat.c
@@ -14,17 +14,17 @@
struct reg regs;
+ register_t old_rflags;
- if (ptrace (PT_GETREGS, pid, (PTRACE_TYPE_ARG3) ®s, 0) == -1)
+ if (gdb_ptrace (PT_GETREGS, ptid, (PTRACE_TYPE_ARG3) ®s, 0) == -1)
perror_with_name (_("Couldn't get registers"));
+ old_rflags = regs.r_rflags;
amd64_collect_native_gregset (regcache, ®s, regnum);
-+ /* This is a workaround about the PSL_USERCHANGE posix limitation. */
++ /* This is a workaround about the PSL_USERCHANGE posix limitation. */
+ if ((regs.r_rflags ^ old_rflags ) & ~PSL_USERCHANGE)
+ {
+ regs.r_rflags ^= (regs.r_rflags ^ old_rflags ) & ~PSL_USERCHANGE;
+ }
- if (ptrace (PT_SETREGS, pid, (PTRACE_TYPE_ARG3) ®s, 0) == -1)
+ if (gdb_ptrace (PT_SETREGS, ptid, (PTRACE_TYPE_ARG3) ®s, 0) == -1)
perror_with_name (_("Couldn't write registers"));
Index: devel/gdb/files/patch-gdb_gdbsupport_common-defs.h
===================================================================
--- devel/gdb/files/patch-gdb_gdbsupport_common-defs.h
+++ devel/gdb/files/patch-gdb_gdbsupport_common-defs.h
@@ -1,5 +1,5 @@
---- gdb/gdbsupport/common-defs.h.orig 2020-02-08 04:50:14.000000000 -0800
-+++ gdb/gdbsupport/common-defs.h 2020-02-27 10:06:21.899297000 -0800
+--- gdbsupport/common-defs.h.orig 2020-02-08 04:50:14.000000000 -0800
++++ gdbsupport/common-defs.h 2020-02-27 10:06:21.899297000 -0800
@@ -55,9 +55,15 @@
Must do this before including any system header, since other system
Index: devel/gdb/files/patch-gnulib_import_stddef.in.h
===================================================================
--- devel/gdb/files/patch-gnulib_import_stddef.in.h
+++ devel/gdb/files/patch-gnulib_import_stddef.in.h
@@ -1,11 +1,11 @@
---- gnulib/import/stddef.in.h.orig 2020-02-08 04:50:14.000000000 -0800
-+++ gnulib/import/stddef.in.h 2020-02-27 10:09:59.859133000 -0800
-@@ -84,7 +84,7 @@
- /* Some platforms lack max_align_t. The check for _GCC_MAX_ALIGN_T is
- a hack in case the configure-time test was done with g++ even though
- we are currently compiling with gcc. */
--#if ! (@HAVE_MAX_ALIGN_T@ || defined _GCC_MAX_ALIGN_T)
-+#if 0
+--- gnulib/import/stddef.in.h.orig 2020-09-13 04:33:41.000000000 +0200
++++ gnulib/import/stddef.in.h 2020-11-01 15:46:55.395133000 +0100
+@@ -90,7 +90,7 @@
+ #if defined _MSC_VER && defined __cplusplus
+ # include <cstddef>
+ #else
+-# if ! (@HAVE_MAX_ALIGN_T@ || defined _GCC_MAX_ALIGN_T)
++# if 0
+ # if !GNULIB_defined_max_align_t
/* On the x86, the maximum storage alignment of double, long, etc. is 4,
but GCC's C11 ABI for x86 says that max_align_t has an alignment of 8,
- and the C11 standard allows this. Work around this problem by
Index: devel/gdb/files/patch-libctf_swap.h
===================================================================
--- devel/gdb/files/patch-libctf_swap.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- libctf/swap.h.orig 2020-02-27 15:22:32.550650000 -0800
-+++ libctf/swap.h 2020-02-27 15:22:43.397285000 -0800
-@@ -43,7 +43,7 @@ bswap_32 (uint32_t v)
- | ((v & 0x000000ff) << 24));
- }
-
--inline uint64_t
-+static inline uint64_t
- bswap_identity_64 (uint64_t v)
- {
- return v;
Index: devel/gdb/pkg-plist
===================================================================
--- devel/gdb/pkg-plist
+++ devel/gdb/pkg-plist
@@ -78,6 +78,7 @@
%%DATADIR%%/syscalls/mips-n32-linux.xml
%%DATADIR%%/syscalls/mips-n64-linux.xml
%%DATADIR%%/syscalls/mips-o32-linux.xml
+%%DATADIR%%/syscalls/netbsd.xml
%%DATADIR%%/syscalls/ppc-linux.xml
%%DATADIR%%/syscalls/ppc64-linux.xml
%%DATADIR%%/syscalls/s390-linux.xml
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Mar 7, 12:22 PM (55 m, 7 s)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29342423
Default Alt Text
D27040.id80277.diff (37 KB)
Attached To
Mode
D27040: devel/gdb: Update to 10.1
Attached
Detach File
Event Timeline
Log In to Comment