This is essentially the same as the i386-pc-gnu section, the differences
are the same as between freebsd i386 and freebsd x86_64.

gcc/ada/ChangeLog:

        * Makefile.rtl: Add x86_64-pc-gnu section.

Signed-off-by: Samuel Thibault <samuel.thiba...@gnu.org>
---
 gcc/ada/ChangeLog    |  2 ++
 gcc/ada/Makefile.rtl | 32 ++++++++++++++++++++++++++++++++
 2 files changed, 34 insertions(+)

diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index a202af4a7ae..83a779da5b0 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -13,6 +13,8 @@
        * Makefile.rtl (x86-gnuhurd): Use libgnat/system-gnu.ads instead of
        libgnat/system-freebsd.ads.
 
+       * Makefile.rtl (x86_64-gnuhurd): Add x86_64-pc-gnu section.
+
 2024-10-29  David Malcolm  <dmalc...@redhat.com>
 
        PR other/116613
diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
index f09df7d6b1c..faed547530e 100644
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -1780,6 +1780,38 @@ ifeq ($(strip $(filter-out x86_64 
kfreebsd%,$(target_cpu) $(target_os))),)
 endif
 endif
 
+# x86_64-pc-gnu i.e. GNU Hurd
+ifeq ($(strip $(filter-out x86_64 pc gnu,$(target_cpu) $(target_os))),)
+
+  SELECTED_PAIRS=x86_64-gnuhurd
+
+  LIBGNAT_TARGET_PAIRS = \
+  a-intnam.ads<libgnarl/a-intnam__bsd.ads \
+  s-inmaop.adb<libgnarl/s-inmaop__posix.adb \
+  s-intman.adb<libgnarl/s-intman__posix.adb \
+  s-osinte.adb<libgnarl/s-osinte__gnu.adb \
+  s-osinte.ads<libgnarl/s-osinte__gnu.ads \
+  s-oslock.ads<libgnat/s-oslock__posix.ads \
+  s-osprim.adb<libgnat/s-osprim__posix.adb \
+  s-taprop.adb<libgnarl/s-taprop__posix.adb \
+  s-taspri.ads<libgnarl/s-taspri__posix.ads \
+  s-tpopsp.adb<libgnarl/s-tpopsp__posix-foreign.adb \
+  $(ATOMICS_TARGET_PAIRS) \
+  $(X86_64_TARGET_PAIRS) \
+  $(GNATRTL_128BIT_PAIRS) \
+  system.ads<libgnat/system-gnu.ads
+
+  EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
+
+  TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
+
+  EH_MECHANISM=-gcc
+  THREADSLIB = -lpthread
+  GNATLIB_SHARED = gnatlib-shared-dual
+  GMEM_LIB = gmemlib
+  LIBRARY_VERSION := $(LIB_VERSION)
+endif
+
 # aarch64 FreeBSD
 ifeq ($(SELECTED_PAIRS),PAIRS_NONE)
 ifeq ($(strip $(filter-out %aarch64 freebsd%,$(target_cpu) $(target_os))),)
-- 
2.43.0

Reply via email to