0941a412fc
This is not multilib per se, but it will allow gcc to emit 32-bit code, therefore enabling things like native GRUB to be built. Also, while at it, enable secureplt for all ppc64 targets. [ci skip]
57 lines
2.5 KiB
Diff
57 lines
2.5 KiB
Diff
--- gcc/config/rs6000/t-linux
|
|
+++ gcc/config/rs6000/t-linux
|
|
@@ -2,7 +2,8 @@
|
|
# or soft-float.
|
|
ifeq (,$(filter $(with_cpu),$(SOFT_FLOAT_CPUS))$(findstring soft,$(with_float)))
|
|
ifneq (,$(findstring powerpc64,$(target)))
|
|
-MULTILIB_OSDIRNAMES := .=../lib64$(call if_multiarch,:powerpc64-linux-gnu)
|
|
+MULTILIB_OSDIRNAMES := m64=../lib
|
|
+MULTILIB_OSDIRNAMES += m32=../lib32
|
|
else
|
|
ifneq (,$(findstring spe,$(target)))
|
|
MULTIARCH_DIRNAME := powerpc-linux-gnuspe$(if $(findstring 8548,$(with_cpu)),,v1)
|
|
@@ -14,7 +15,8 @@
|
|
MULTIARCH_DIRNAME := $(subst -linux,le-linux,$(MULTIARCH_DIRNAME))
|
|
endif
|
|
ifneq (,$(findstring powerpc64le,$(target)))
|
|
-MULTILIB_OSDIRNAMES := $(subst -linux,le-linux,$(MULTILIB_OSDIRNAMES))
|
|
+MULTILIB_OSDIRNAMES := m64=../lib
|
|
+MULTILIB_OSDIRNAMES += m32=../lib32
|
|
endif
|
|
endif
|
|
|
|
--- gcc/config/rs6000/t-linux64
|
|
+++ gcc/config/rs6000/t-linux64
|
|
@@ -28,8 +28,8 @@
|
|
MULTILIB_OPTIONS := m64/m32
|
|
MULTILIB_DIRNAMES := 64 32
|
|
MULTILIB_EXTRA_OPTS :=
|
|
-MULTILIB_OSDIRNAMES := m64=../lib64$(call if_multiarch,:powerpc64-linux-gnu)
|
|
-MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu)
|
|
+MULTILIB_OSDIRNAMES := m64=../lib
|
|
+MULTILIB_OSDIRNAMES += m32=../lib32
|
|
|
|
rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c
|
|
$(COMPILE) $<
|
|
--- gcc/config/rs6000/t-linux64bele
|
|
+++ gcc/config/rs6000/t-linux64bele
|
|
@@ -2,6 +2,6 @@
|
|
|
|
MULTILIB_OPTIONS += mlittle
|
|
MULTILIB_DIRNAMES += le
|
|
-MULTILIB_OSDIRNAMES += $(subst =,.mlittle=,$(subst lible32,lib32le,$(subst lible64,lib64le,$(subst lib,lible,$(subst -linux,le-linux,$(MULTILIB_OSDIRNAMES))))))
|
|
-MULTILIB_OSDIRNAMES += $(subst $(if $(findstring 64,$(target)),m64,m32).,,$(filter $(if $(findstring 64,$(target)),m64,m32).mlittle%,$(MULTILIB_OSDIRNAMES)))
|
|
+MULTILIB_OSDIRNAMES = m64=../lib
|
|
+MULTILIB_OSDIRNAMES+= m32=../lib32
|
|
MULTILIB_MATCHES := ${MULTILIB_MATCHES_ENDIAN}
|
|
--- gcc/config/rs6000/t-linux64lebe
|
|
+++ gcc/config/rs6000/t-linux64lebe
|
|
@@ -2,6 +2,6 @@
|
|
|
|
MULTILIB_OPTIONS += mbig
|
|
MULTILIB_DIRNAMES += be
|
|
-MULTILIB_OSDIRNAMES += $(subst =,.mbig=,$(subst libbe32,lib32be,$(subst libbe64,lib64be,$(subst lib,libbe,$(subst le-linux,-linux,$(MULTILIB_OSDIRNAMES))))))
|
|
-MULTILIB_OSDIRNAMES += $(subst $(if $(findstring 64,$(target)),m64,m32).,,$(filter $(if $(findstring 64,$(target)),m64,m32).mbig%,$(MULTILIB_OSDIRNAMES)))
|
|
+MULTILIB_OSDIRNAMES := m64=../lib
|
|
+MULTILIB_OSDIRNAMES += m32=../lib32
|
|
MULTILIB_MATCHES := ${MULTILIB_MATCHES_ENDIAN}
|