This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH 1/2] [ADA] Fix MIPS big-endian build
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.
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