diff mbox

[1/2,ADA] Fix MIPS big-endian build

Message ID 04f3bf7f-3689-ee62-610d-fceb8394fa83@imgtec.com
State New
Headers show

Commit Message

James Cowgill Jan. 3, 2017, 2:53 p.m. UTC
Hi,

On 03/01/17 14:47, Arnaud Charlet wrote:
>> This patch merges the mips and mipsel sections in
>> gcc-interface/Makefile.in favoring the existing variables in mipsel.
>> Over time, the mipsel target was tested much more than the mips target
>> and a number of fixes were applied which should have been applied to
>> both. Since the only real difference between mips and mipsel is the
>> endianness, it makes sense to merge them together and add an extra ifeq
>> for the one file which does differ with endianness.
>>
>> I don't have commit access.
>>
>> Thanks,
>> James
>>
>> gcc/ada/Changelog:
>>
>> 2017-01-03  James Cowgill  <James.Cowgill@imgtec.com>
>>
>> 	* s-linux-mips.ads: Rename from s-linux-mipsel.ads.
>> 	* gcc-interface/Makefile.in (MIPS/Linux): Merge mips and mipsel
>> 	sections.
> 
> Changes look OK to me.

Thanks, can you commit it for me? I screwed up the patch in the email I
sent a few minutes ago but the patch below should apply.

James

gcc/ada/Changelog:

2017-01-03  James Cowgill  <James.Cowgill@imgtec.com>

	* s-linux-mips.ads: Rename from s-linux-mipsel.ads.
	* gcc-interface/Makefile.in (MIPS/Linux): Merge mips and mipsel
	sections.

Comments

Eric Botcazou Jan. 3, 2017, 5:53 p.m. UTC | #1
> Thanks, can you commit it for me? I screwed up the patch in the email I
> sent a few minutes ago but the patch below should apply.

I installed both patches on the mainline.
diff mbox

Patch

diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in
index 98889c0f30f..b47a16c8b41 100644
--- a/gcc/ada/gcc-interface/Makefile.in
+++ b/gcc/ada/gcc-interface/Makefile.in
@@ -1813,36 +1813,12 @@  ifeq ($(strip $(filter-out cygwin% mingw32% pe,$(target_os))),)
 endif
 
 # Mips Linux
-ifeq ($(strip $(filter-out mips linux%,$(target_cpu) $(target_os))),)
+ifeq ($(strip $(filter-out mips% linux%,$(target_cpu) $(target_os))),)
   LIBGNAT_TARGET_PAIRS = \
   a-intnam.ads<a-intnam-linux.ads \
   s-inmaop.adb<s-inmaop-posix.adb \
   s-intman.adb<s-intman-posix.adb \
-  s-linux.ads<s-linux.ads \
-  s-osinte.adb<s-osinte-posix.adb \
-  s-osinte.ads<s-osinte-linux.ads \
-  s-osprim.adb<s-osprim-posix.adb \
-  s-taprop.adb<s-taprop-linux.adb \
-  s-tasinf.ads<s-tasinf-linux.ads \
-  s-tasinf.adb<s-tasinf-linux.adb \
-  s-taspri.ads<s-taspri-posix.ads \
-  s-tpopsp.adb<s-tpopsp-posix-foreign.adb \
-  system.ads<system-linux-mips.ads
-
-  EH_MECHANISM=-gcc
-  THREADSLIB = -lpthread
-  GNATLIB_SHARED = gnatlib-shared-dual
-  GMEM_LIB = gmemlib
-  LIBRARY_VERSION := $(LIB_VERSION)
-endif
-
-# Mips/el and Mips64/el Linux
-ifeq ($(strip $(filter-out mipsel mips64el linux%,$(target_cpu) $(target_os))),)
-  LIBGNAT_TARGET_PAIRS = \
-  a-intnam.ads<a-intnam-linux.ads \
-  s-inmaop.adb<s-inmaop-posix.adb \
-  s-intman.adb<s-intman-posix.adb \
-  s-linux.ads<s-linux-mipsel.ads \
+  s-linux.ads<s-linux-mips.ads \
   s-osinte.adb<s-osinte-posix.adb \
   s-osinte.ads<s-osinte-linux.ads \
   s-osprim.adb<s-osprim-posix.adb \
@@ -1852,7 +1828,12 @@  ifeq ($(strip $(filter-out mipsel mips64el linux%,$(target_cpu) $(target_os))),)
   s-taspri.ads<s-taspri-posix-noaltstack.ads \
   s-tpopsp.adb<s-tpopsp-posix-foreign.adb \
   g-sercom.adb<g-sercom-linux.adb \
-  system.ads<system-linux-mipsel.ads
+
+  ifeq ($(strip $(filter-out %el,$(target_cpu))),)
+    LIBGNAT_TARGET_PAIRS += system.ads<system-linux-mipsel.ads
+  else
+    LIBGNAT_TARGET_PAIRS += system.ads<system-linux-mips.ads
+  endif
 
   TOOLS_TARGET_PAIRS =  \
     mlib-tgt-specific.adb<mlib-tgt-specific-linux.adb \
diff --git a/gcc/ada/s-linux-mipsel.ads b/gcc/ada/s-linux-mips.ads
similarity index 100%
rename from gcc/ada/s-linux-mipsel.ads
rename to gcc/ada/s-linux-mips.ads