aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2020-08-16 01:38:30 +0200
committerPierre-Marie de Rodat <derodat@adacore.com>2020-10-22 08:11:21 -0400
commitb1f909cfc13f3ea5779e3844509415a54c4b534e (patch)
tree540979a7c1cb31c8a3a0de231171e87f9a31adc1
parent1019e23137b0e05c0cae1959ded69cba9466f3b5 (diff)
downloadgcc-b1f909cfc13f3ea5779e3844509415a54c4b534e.zip
gcc-b1f909cfc13f3ea5779e3844509415a54c4b534e.tar.gz
gcc-b1f909cfc13f3ea5779e3844509415a54c4b534e.tar.bz2
[Ada] Build support units for 128-bit integer types on 64-bit platforms
gcc/ada/ * Makefile.rtl (64-bit platforms): Add GNATRTL_128BIT_PAIRS to the LIBGNAT_TARGET_PAIRS list and also GNATRTL_128BIT_OBJS to the EXTRA_GNATRTL_NONTASKING_OBJS list.
-rw-r--r--gcc/ada/Makefile.rtl220
1 files changed, 160 insertions, 60 deletions
diff --git a/gcc/ada/Makefile.rtl b/gcc/ada/Makefile.rtl
index e2a4f4e..589ba68 100644
--- a/gcc/ada/Makefile.rtl
+++ b/gcc/ada/Makefile.rtl
@@ -1060,6 +1060,11 @@ ifeq ($(strip $(filter-out powerpc% wrs vxworks vxworksspe vxworks7% vxworks7spe
EXTRA_GNATRTL_NONTASKING_OBJS+=s-stchop.o
endif
+ ifeq ($(strip $(filter-out powerpc64, $(target_cpu))),)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+
TOOLS_TARGET_PAIRS=indepsw.adb<indepsw-gnu.adb
ifeq ($(strip $(filter-out rtp,$(THREAD_KIND))),)
@@ -1263,20 +1268,7 @@ endif
# x86/x86_64 VxWorks
ifeq ($(strip $(filter-out %86 x86_64 wrs vxworks vxworks7%,$(target_cpu) $(target_vendor) $(target_os))),)
- EH_MECHANISM=-gcc
-
- VX=$(strip $(if $(filter vxworks7%, $(target_os)), vxworks7, vxworks))
- SVX=system-$(VX)
-
- ifeq ($(strip $(filter-out x86_64, $(target_cpu))),)
- X86CPU=x86_64
- LIBGNAT_TARGET_PAIRS=$(X86_64_TARGET_PAIRS)
- else
- X86CPU=x86
- LIBGNAT_TARGET_PAIRS=$(X86_TARGET_PAIRS)
- endif
-
- LIBGNAT_TARGET_PAIRS+= \
+ LIBGNAT_TARGET_PAIRS= \
a-intnam.ads<libgnarl/a-intnam__vxworks.ads \
i-vxwork.ads<libgnat/i-vxwork__x86.ads \
a-naliop.ads<libgnat/a-naliop__nolibm.ads \
@@ -1301,8 +1293,23 @@ ifeq ($(strip $(filter-out %86 x86_64 wrs vxworks vxworks7%,$(target_cpu) $(targ
g-stsifd.adb<libgnat/g-stsifd__sockets.adb \
$(ATOMICS_TARGET_PAIRS)
+ VX=$(strip $(if $(filter vxworks7%, $(target_os)), vxworks7, vxworks))
+ SVX=system-$(VX)
+
+ ifeq ($(strip $(filter-out x86_64, $(target_cpu))),)
+ X86CPU=x86_64
+ LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ else
+ X86CPU=x86
+ LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
+ endif
+
TOOLS_TARGET_PAIRS=indepsw.adb<indepsw-gnu.adb
+ EH_MECHANISM=-gcc
+
# The CPU setting for VxSim varies with the
# host (Windows or Linux)
# target (VxWorks6 or VxWorks7)
@@ -1382,7 +1389,7 @@ ifeq ($(strip $(filter-out %86 x86_64 wrs vxworks vxworks7%,$(target_cpu) $(targ
endif
endif
- EXTRA_GNATRTL_NONTASKING_OBJS=i-vxwork.o i-vxwoio.o
+ EXTRA_GNATRTL_NONTASKING_OBJS += i-vxwork.o i-vxwoio.o
endif
endif
@@ -1406,12 +1413,37 @@ endif
# ARM and Aarch64 VxWorks
ifeq ($(strip $(filter-out aarch64 arm% coff wrs vx%,$(target_cpu) $(target_vendor) $(target_os))),)
+ LIBGNAT_TARGET_PAIRS = \
+ a-intnam.ads<libgnarl/a-intnam__vxworks.ads \
+ a-naliop.ads<libgnat/a-naliop__nolibm.ads \
+ a-nuaufl.ads<libgnat/a-nuaufl__wraplf.ads \
+ a-nashfl.ads<libgnat/a-nashfl__wraplf.ads \
+ s-inmaop.adb<libgnarl/s-inmaop__vxworks.adb \
+ s-interr.adb<libgnarl/s-interr__vxworks.adb \
+ s-intman.ads<libgnarl/s-intman__vxworks.ads \
+ s-intman.adb<libgnarl/s-intman__vxworks.adb \
+ s-osinte.adb<libgnarl/s-osinte__vxworks.adb \
+ s-osinte.ads<libgnarl/s-osinte__vxworks.ads \
+ s-osprim.adb<libgnat/s-osprim__vxworks.adb \
+ s-parame.ads<libgnat/s-parame__vxworks.ads \
+ s-parame.adb<libgnat/s-parame__vxworks.adb \
+ s-stchop.ads<libgnat/s-stchop__limit.ads \
+ s-stchop.adb<libgnat/s-stchop__vxworks.adb \
+ s-taprop.adb<libgnarl/s-taprop__vxworks.adb \
+ s-tasinf.ads<libgnarl/s-tasinf__vxworks.ads \
+ s-taspri.ads<libgnarl/s-taspri__vxworks.ads \
+ g-socthi.ads<libgnat/g-socthi__vxworks.ads \
+ g-socthi.adb<libgnat/g-socthi__vxworks.adb \
+ g-stsifd.adb<libgnat/g-stsifd__sockets.adb
+
ifeq ($(strip $(filter-out aarch64, $(target_cpu))),)
ARCH_STR=aarch64
VX=vxworks7
EH_MECHANISM=-gcc
SIGTRAMP_OBJ=sigtramp-vxworks.o
- LIBGNAT_TARGET_PAIRS += a-nallfl.ads<libgnat/a-nallfl__wraplf.ads
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS) \
+ a-nallfl.ads<libgnat/a-nallfl__wraplf.ads
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
else
ifeq ($(strip $(filter-out arm%, $(target_cpu))),)
ARCH_STR=arm
@@ -1429,31 +1461,9 @@ ifeq ($(strip $(filter-out aarch64 arm% coff wrs vx%,$(target_cpu) $(target_vend
endif
endif
- SVX=system-$(VX)
+ LIBGNAT_TARGET_PAIRS += s-vxwork.ads<libgnarl/s-vxwork__$(ARCH_STR).ads
- LIBGNAT_TARGET_PAIRS = \
- a-intnam.ads<libgnarl/a-intnam__vxworks.ads \
- a-naliop.ads<libgnat/a-naliop__nolibm.ads \
- a-nuaufl.ads<libgnat/a-nuaufl__wraplf.ads \
- a-nashfl.ads<libgnat/a-nashfl__wraplf.ads \
- s-inmaop.adb<libgnarl/s-inmaop__vxworks.adb \
- s-interr.adb<libgnarl/s-interr__vxworks.adb \
- s-intman.ads<libgnarl/s-intman__vxworks.ads \
- s-intman.adb<libgnarl/s-intman__vxworks.adb \
- s-osinte.adb<libgnarl/s-osinte__vxworks.adb \
- s-osinte.ads<libgnarl/s-osinte__vxworks.ads \
- s-osprim.adb<libgnat/s-osprim__vxworks.adb \
- s-parame.ads<libgnat/s-parame__vxworks.ads \
- s-parame.adb<libgnat/s-parame__vxworks.adb \
- s-stchop.ads<libgnat/s-stchop__limit.ads \
- s-stchop.adb<libgnat/s-stchop__vxworks.adb \
- s-taprop.adb<libgnarl/s-taprop__vxworks.adb \
- s-tasinf.ads<libgnarl/s-tasinf__vxworks.ads \
- s-taspri.ads<libgnarl/s-taspri__vxworks.ads \
- s-vxwork.ads<libgnarl/s-vxwork__$(ARCH_STR).ads \
- g-socthi.ads<libgnat/g-socthi__vxworks.ads \
- g-socthi.adb<libgnat/g-socthi__vxworks.adb \
- g-stsifd.adb<libgnat/g-stsifd__sockets.adb
+ SVX=system-$(VX)
TOOLS_TARGET_PAIRS=indepsw.adb<indepsw-gnu.adb
@@ -1498,9 +1508,8 @@ ifeq ($(strip $(filter-out aarch64 arm% coff wrs vx%,$(target_cpu) $(target_vend
endif
endif
- EXTRA_GNATRTL_NONTASKING_OBJS=i-vxwork.o i-vxwoio.o \
- s-stchop.o
- EXTRA_GNATRTL_TASKING_OBJS=i-vxinco.o s-vxwork.o s-vxwext.o
+ EXTRA_GNATRTL_NONTASKING_OBJS += i-vxwork.o i-vxwoio.o s-stchop.o
+ EXTRA_GNATRTL_TASKING_OBJS += i-vxinco.o s-vxwork.o s-vxwext.o
EXTRA_LIBGNAT_OBJS+=vx_stack_info.o
@@ -1563,10 +1572,12 @@ ifeq ($(strip $(filter-out aarch64 %qnx,$(target_cpu) $(target_os))),)
g-soliop.ads<libgnat/g-soliop__qnx.ads \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
+ $(GNATRTL_128BIT_PAIRS) \
system.ads<libgnat/system-qnx-aarch64.ads
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
+ EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
EXTRA_GNATRTL_TASKING_OBJS=s-qnx.o
EXTRA_LIBGNAT_OBJS+=sigtramp-qnx.o
EXTRA_LIBGNAT_SRCS+=sigtramp.h
@@ -1579,7 +1590,7 @@ ifeq ($(strip $(filter-out aarch64 %qnx,$(target_cpu) $(target_os))),)
LIBRARY_VERSION := $(LIB_VERSION)
endif
-# Sparc Solaris
+# SPARC Solaris
ifeq ($(strip $(filter-out sparc% sun solaris%,$(target_cpu) $(target_vendor) $(target_os))),)
LIBGNAT_TARGET_PAIRS = \
a-intnam.ads<libgnarl/a-intnam__solaris.ads \
@@ -1603,6 +1614,18 @@ ifeq ($(strip $(filter-out sparc% sun solaris%,$(target_cpu) $(target_vendor) $(
EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
+ ifeq ($(strip $(filter-out sparc64 sparcv9,$(target_cpu))),)
+ ifneq ($(strip $(MULTISUBDIR)),/sparcv8plus)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ else
+ ifeq ($(strip $(MULTISUBDIR)),/sparcv9)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ endif
+
EH_MECHANISM=-gcc
THREADSLIB = -lposix4 -lthread
MISCLIB = -lposix4 -lnsl -lsocket
@@ -1612,7 +1635,7 @@ ifeq ($(strip $(filter-out sparc% sun solaris%,$(target_cpu) $(target_vendor) $(
LIBRARY_VERSION := $(LIB_VERSION)
endif
-# x86 and x86-64 solaris
+# x86 and x86-64 Solaris
ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(target_cpu) $(target_os))),)
LIBGNAT_TARGET_PAIRS_COMMON = \
a-intnam.ads<libgnarl/a-intnam__solaris.ads \
@@ -1636,6 +1659,8 @@ ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(target_cpu) $(target_os))),)
ifeq ($(strip $(MULTISUBDIR)),/amd64)
LIBGNAT_TARGET_PAIRS = \
$(LIBGNAT_TARGET_PAIRS_COMMON) $(X86_64_TARGET_PAIRS)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
else
LIBGNAT_TARGET_PAIRS = \
$(LIBGNAT_TARGET_PAIRS_COMMON) $(X86_TARGET_PAIRS)
@@ -1647,6 +1672,8 @@ ifeq ($(strip $(filter-out %86 %x86_64 solaris2%,$(target_cpu) $(target_os))),)
else
LIBGNAT_TARGET_PAIRS = \
$(LIBGNAT_TARGET_PAIRS_COMMON) $(X86_64_TARGET_PAIRS)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
endif
endif
@@ -1682,6 +1709,8 @@ ifeq ($(strip $(filter-out %86 linux%,$(target_cpu) $(target_os))),)
ifeq ($(strip $(MULTISUBDIR)),/64)
LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
else
LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
endif
@@ -1779,8 +1808,13 @@ ifeq ($(strip $(filter-out x86_64 kfreebsd%,$(target_cpu) $(target_os))),)
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-freebsd.ads
+ EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
+
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
EH_MECHANISM=-gcc
@@ -1806,8 +1840,11 @@ ifeq ($(strip $(filter-out %aarch64 freebsd%,$(target_cpu) $(target_os))),)
s-tpopsp.adb<libgnarl/s-tpopsp__posix.adb \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
+ $(GNATRTL_128BIT_PAIRS) \
system.ads<libgnat/system-freebsd.ads
+ EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
+
GNATLIB_SHARED = gnatlib-shared-dual
EH_MECHANISM=-gcc
@@ -1863,12 +1900,14 @@ ifeq ($(strip $(filter-out %86_64 freebsd%,$(target_cpu) $(target_os))),)
$(TRASYM_DWARF_UNIX_PAIRS) \
$(ATOMICS_TARGET_PAIRS) \
$(X86_64_TARGET_PAIRS) \
+ $(GNATRTL_128BIT_PAIRS) \
system.ads<libgnat/system-freebsd.ads
GNATLIB_SHARED = gnatlib-shared-dual
EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
EH_MECHANISM=-gcc
THREADSLIB= -lpthread
@@ -1892,11 +1931,13 @@ ifeq ($(strip $(filter-out %86_64 dragonfly%,$(target_cpu) $(target_os))),)
s-tpopsp.adb<libgnarl/s-tpopsp__posix.adb \
$(ATOMICS_TARGET_PAIRS) \
$(X86_64_TARGET_PAIRS) \
+ $(GNATRTL_128BIT_PAIRS) \
system.ads<libgnat/system-dragonfly-x86_64.ads
GNATLIB_SHARED = gnatlib-shared-dual
- EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
+ EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
EH_MECHANISM=-gcc
THREADSLIB= -lpthread
@@ -1922,6 +1963,18 @@ ifeq ($(strip $(filter-out s390% linux%,$(target_cpu) $(target_os))),)
s-tpopsp.adb<libgnarl/s-tpopsp__posix-foreign.adb \
system.ads<libgnat/system-linux-s390.ads
+ ifeq ($(strip $(filter-out s390x,$(target_cpu))),)
+ ifneq ($(strip $(MULTISUBDIR)),/32)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ else
+ ifeq ($(strip $(MULTISUBDIR)),/64)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ endif
+
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
@@ -2211,7 +2264,7 @@ endif
# PowerPC and e500v2 Linux
ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
- LIBGNAT_TARGET_PAIRS_COMMON = \
+ LIBGNAT_TARGET_PAIRS = \
a-exetim.adb<libgnarl/a-exetim__posix.adb \
a-exetim.ads<libgnarl/a-exetim__default.ads \
a-intnam.ads<libgnarl/a-intnam__linux.ads \
@@ -2223,21 +2276,30 @@ ifeq ($(strip $(filter-out powerpc% linux%,$(target_cpu) $(target_os))),)
s-linux.ads<libgnarl/s-linux.ads \
s-osinte.adb<libgnarl/s-osinte__posix.adb \
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
+ s-mudido.adb<libgnarl/s-mudido__affinity.adb \
+ s-osinte.ads<libgnarl/s-osinte__linux.ads \
+ s-osprim.adb<libgnat/s-osprim__posix.adb \
+ s-taprop.adb<libgnarl/s-taprop__linux.adb \
+ s-tasinf.ads<libgnarl/s-tasinf__linux.ads \
+ s-tasinf.adb<libgnarl/s-tasinf__linux.adb \
+ s-taspri.ads<libgnarl/s-taspri__posix.ads \
$(TRASYM_DWARF_UNIX_PAIRS) \
s-tsmona.adb<libgnat/s-tsmona__linux.adb \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
system.ads<libgnat/system-linux-ppc.ads
- LIBGNAT_TARGET_PAIRS = \
- $(LIBGNAT_TARGET_PAIRS_COMMON) \
- s-mudido.adb<libgnarl/s-mudido__affinity.adb \
- s-osinte.ads<libgnarl/s-osinte__linux.ads \
- s-osprim.adb<libgnat/s-osprim__posix.adb \
- s-taprop.adb<libgnarl/s-taprop__linux.adb \
- s-tasinf.ads<libgnarl/s-tasinf__linux.ads \
- s-tasinf.adb<libgnarl/s-tasinf__linux.adb \
- s-taspri.ads<libgnarl/s-taspri__posix.ads
+ ifeq ($(strip $(filter-out powerpc64,$(target_cpu))),)
+ ifneq ($(strip $(MULTISUBDIR)),/32)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ else
+ ifeq ($(strip $(MULTISUBDIR)),/64)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ endif
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
@@ -2304,10 +2366,12 @@ ifeq ($(strip $(filter-out aarch64% linux%,$(target_cpu) $(target_os))),)
s-taspri.ads<libgnarl/s-taspri__posix.ads \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
+ $(GNATRTL_128BIT_PAIRS) \
system.ads<libgnat/system-linux-arm.ads
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
+ EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
EH_MECHANISM=-gcc
THREADSLIB=-lpthread -lrt
@@ -2316,7 +2380,7 @@ ifeq ($(strip $(filter-out aarch64% linux%,$(target_cpu) $(target_os))),)
LIBRARY_VERSION := $(LIB_VERSION)
endif
-# Sparc Linux
+# SPARC Linux
ifeq ($(strip $(filter-out sparc% linux%,$(target_cpu) $(target_os))),)
LIBGNAT_TARGET_PAIRS = \
a-intnam.ads<libgnarl/a-intnam__linux.ads \
@@ -2333,6 +2397,18 @@ ifeq ($(strip $(filter-out sparc% linux%,$(target_cpu) $(target_os))),)
s-tpopsp.adb<libgnarl/s-tpopsp__tls.adb \
system.ads<libgnat/system-linux-sparc.ads
+ ifeq ($(strip $(filter-out sparc64 sparcv9,$(target_cpu))),)
+ ifneq ($(strip $(MULTISUBDIR)),/32)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ else
+ ifeq ($(strip $(MULTISUBDIR)),/64)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ endif
+
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
@@ -2450,11 +2526,13 @@ ifeq ($(strip $(filter-out %ia64 linux%,$(target_cpu) $(target_os))),)
s-tsmona.adb<libgnat/s-tsmona__linux.adb \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
+ $(GNATRTL_128BIT_PAIRS) \
system.ads<libgnat/system-linux-ia64.ads
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJ
EXTRA_GNATRTL_TASKING_OBJS=s-linux.o a-exetim.o
EH_MECHANISM=-gcc
THREADSLIB=-lpthread -lrt
@@ -2479,9 +2557,11 @@ ifeq ($(strip $(filter-out ia64% hp hpux%,$(target_cpu) $(target_vendor) $(targe
$(TRASYM_DWARF_UNIX_PAIRS) \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
+ $(GNATRTL_128BIT_PAIRS) \
system.ads<libgnat/system-hpux-ia64.ads
EXTRA_GNATRTL_NONTASKING_OBJS += $(TRASYM_DWARF_UNIX_OBJS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
MISCLIB=
EH_MECHANISM=-gcc
@@ -2510,10 +2590,12 @@ ifeq ($(strip $(filter-out alpha% linux%,$(target_cpu) $(target_os))),)
s-taspri.ads<libgnarl/s-taspri__posix-noaltstack.ads \
$(ATOMICS_TARGET_PAIRS) \
$(ATOMICS_BUILTINS_TARGET_PAIRS) \
+ $(GNATRTL_128BIT_PAIRS) \
system.ads<libgnat/system-linux-alpha.ads
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
+ EXTRA_GNATRTL_NONTASKING_OBJS = $(GNATRTL_128BIT_OBJS)
EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
EH_MECHANISM=-gcc
MISCLIB=
@@ -2617,6 +2699,18 @@ ifeq ($(strip $(filter-out riscv% linux%,$(target_cpu) $(target_os))),)
s-tpopsp.adb<libgnarl/s-tpopsp__posix-foreign.adb \
system.ads<libgnat/system-linux-riscv.ads
+ ifeq ($(strip $(filter-out riscv64,$(target_cpu))),)
+ ifneq ($(strip $(MULTISUBDIR)),/lib32)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ else
+ ifeq ($(strip $(MULTISUBDIR)),/lib64)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
+ endif
+ endif
+
TOOLS_TARGET_PAIRS = indepsw.adb<indepsw-gnu.adb
EXTRA_GNATRTL_TASKING_OBJS=s-linux.o
@@ -2650,11 +2744,13 @@ ifeq ($(strip $(filter-out darwin%,$(target_os))),)
ifeq ($(strip $(MULTISUBDIR)),/x86_64)
SO_OPTS += -m64
LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
else
LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
endif
- EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
+ EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
endif
ifeq ($(strip $(filter-out %x86_64,$(target_cpu))),)
@@ -2671,9 +2767,11 @@ ifeq ($(strip $(filter-out darwin%,$(target_os))),)
LIBGNAT_TARGET_PAIRS += $(X86_TARGET_PAIRS)
else
LIBGNAT_TARGET_PAIRS += $(X86_64_TARGET_PAIRS)
+ LIBGNAT_TARGET_PAIRS += $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
endif
- EXTRA_GNATRTL_NONTASKING_OBJS=g-sse.o g-ssvety.o
+ EXTRA_GNATRTL_NONTASKING_OBJS += g-sse.o g-ssvety.o
EXTRA_GNATRTL_TASKING_OBJS=a-exetim.o
endif
@@ -2707,8 +2805,10 @@ ifeq ($(strip $(filter-out darwin%,$(target_os))),)
s-intman.adb<libgnarl/s-intman__susv3.adb \
s-osprim.adb<libgnat/s-osprim__darwin.adb \
$(ATOMICS_TARGET_PAIRS) \
- $(ATOMICS_BUILTINS_TARGET_PAIRS)
+ $(ATOMICS_BUILTINS_TARGET_PAIRS) \
+ $(GNATRTL_128BIT_PAIRS)
+ EXTRA_GNATRTL_NONTASKING_OBJS += $(GNATRTL_128BIT_OBJS)
EXTRA_LIBGNAT_OBJS+=sigtramp-ios.o
EXTRA_LIBGNAT_SRCS+=sigtramp.h
LIBGNAT_TARGET_PAIRS += \