From bd3bbd032949642ab113058e6372de40af7f0b2c Mon Sep 17 00:00:00 2001 From: Brian Gianforcaro Date: Thu, 16 Dec 2021 04:50:19 -0800 Subject: Ports: Add initial GDB 11.1 port This builds and runs, but crashes when you attempt to try to debug something at the moment. --- Ports/gdb/package.sh | 16 +++++++++++ Ports/gdb/patches/build-config.patch | 55 ++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+) create mode 100755 Ports/gdb/package.sh create mode 100644 Ports/gdb/patches/build-config.patch (limited to 'Ports/gdb') diff --git a/Ports/gdb/package.sh b/Ports/gdb/package.sh new file mode 100755 index 0000000000..81c775d721 --- /dev/null +++ b/Ports/gdb/package.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env -S bash ../.port_include.sh +port=gdb +version=11.1 +useconfigure=true +configopts=("--target=${SERENITY_ARCH}-pc-serenity" "--with-sysroot=/" "--with-build-sysroot=${SERENITY_INSTALL_ROOT}" "--with-newlib" "--enable-languages=c,c++" "--disable-lto" "--disable-nls" "--enable-shared" "--enable-default-pie" "--enable-host-shared" "--enable-threads=posix") +files="https://ftpmirror.gnu.org/gnu/gdb/gdb-${version}.tar.xz gdb-${version}.tar.xz cccfcc407b20d343fb320d4a9a2110776dd3165118ffd41f4b1b162340333f94" +makeopts+=("all") +installopts=("DESTDIR=${SERENITY_INSTALL_ROOT}") +depends=("gmp" "binutils") +auth_type="sha256" + +# We only have a stub of getrusage(..) +export ac_cv_func_getrusage=no + +# We don't support the madvise options that are used. +export ac_cv_func_madvise=no diff --git a/Ports/gdb/patches/build-config.patch b/Ports/gdb/patches/build-config.patch new file mode 100644 index 0000000000..019cd279d4 --- /dev/null +++ b/Ports/gdb/patches/build-config.patch @@ -0,0 +1,55 @@ +diff --git a/bfd/config.bfd b/bfd/config.bfd +index 30087e3..11dc114 100644 +--- a/bfd/config.bfd ++++ b/bfd/config.bfd +@@ -634,6 +634,11 @@ case "${targ}" in + targ_selvecs= + targ64_selvecs=x86_64_elf64_vec + ;; ++ i[3-7]86-*-serenity*) ++ targ_defvec=i386_elf32_vec ++ targ_selvecs= ++ targ64_selvecs=x86_64_elf64_vec ++ ;; + #ifdef BFD64 + x86_64-*-cloudabi*) + targ_defvec=x86_64_elf64_cloudabi_vec +@@ -694,6 +699,10 @@ case "${targ}" in + targ_selvecs=i386_elf32_vec + want64=true + ;; ++ x86_64-*-serenity*) ++ targ_defvec=x86_64_elf64_vec ++ want64=true ++ ;; + #endif + i[3-7]86-*-lynxos*) + targ_defvec=i386_elf32_vec +diff --git a/gdbsupport/configure b/gdbsupport/configure +index a9dd02c..3c5bcf5 100755 +--- a/gdbsupport/configure ++++ b/gdbsupport/configure +@@ -8934,7 +8934,7 @@ $as_echo "$gdb_cv_cxx_std_thread" >&6; } + + # This check must be here, while LIBS includes any necessary + # threading library. +- for ac_func in pthread_sigmask pthread_setname_np ++ for ac_func in pthread_setname_np + do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` + ac_fn_cxx_check_func "$LINENO" "$ac_func" "$as_ac_var" +diff --git a/libiberty/configure b/libiberty/configure +index fffb91d..defc239 100755 +--- a/libiberty/configure ++++ b/libiberty/configure +@@ -6478,7 +6478,9 @@ case "${host}" in + $as_echo "#define HAVE_SYS_ERRLIST 1" >>confdefs.h + + $as_echo "#define HAVE_SYS_NERR 1" >>confdefs.h +- ++ ;; ++ *-*-serenity*) ++ $as_echo "#define HAVE_PSIGNAL 1" >>confdefs.h + ;; + esac + -- cgit v1.2.3