Am 13.06.2013 11:42, schrieb Richard Sandiford:
> "Bernhard Reutner-Fischer" <rep.dot....@gmail.com> writes:
>> On 12 June 2013 20:20:50 Richard Sandiford <rdsandif...@googlemail.com> 
>> wrote:
>>> Matthias Klose <d...@ubuntu.com> writes:
>>>> Index: config/mips/t-linux64
>>>> ===================================================================
>>>> --- config/mips/t-linux64  (revision 200012)
>>>> +++ config/mips/t-linux64  (working copy)
>>>> @@ -24,3 +24,13 @@
>>>>    ../lib32$(call 
>>> if_multiarch,:mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT)) \
>>>>    ../lib$(call if_multiarch,:mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT)) \
>>>>    ../lib64$(call
>>>> if_multiarch,:mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT))
>>>> +
>>>> +ifneq (,$(findstring abin32,$(target)))
>>>> +MULTIARCH_DIRNAME = $(call 
>>> if_multiarch,mips64$(MIPS_EL)-linux-gnuabin32$(MIPS_SOFT))
>>>> +else
>>>> +ifneq (,$(findstring abi64,$(target)))
>>>> +MULTIARCH_DIRNAME = $(call 
>>> if_multiarch,mips64$(MIPS_EL)-linux-gnuabi64$(MIPS_SOFT))
>>>> +else
>>>> +MULTIARCH_DIRNAME = $(call 
>>> if_multiarch,mips$(MIPS_EL)-linux-gnu$(MIPS_SOFT))
>>>> +endif
>>>> +endif
>>>
>>> findstring seems a bit fragile for a full triple.  I think it would
>>> be better to have something similar to the current MIPS_SOFT definition:
>>>
>>> MIPS_SOFT = $(if $(strip $(filter MASK_SOFT_FLOAT_ABI, 
>>> $(target_cpu_default)) $(filter soft, $(with_float))),soft)
>>>
>>> but for ABIs.  It could then also take with_abi into account.
>>> Maybe something like:
>>>
>>> MIPS_ABI = $(or $(with_abi), \
>>>                 $(if $(filter MIPS_ABI_DEFAULT=ABI_N32, \
>>>                           $(target_cpu_default)), n32), \
>>>                 o32)
>>>
>>> (completely untested).
>>
>> Bikeshedding:
>> Doko would know, but ISTR that $(or) did not exist in make-3.80 which is 
>> currently the minimum prerequisite, fwiw.
> 
> Gah, that's a pity.  Thanks for the catch though.  Maybe firstword
> would be OK instead.
> 
> I see I also fell into the usual ABI trap.  It wouldn't have affected
> the use in this patch, but the default ought to be "32" rather than "o32".

the define is in tm_defines, not target_cpu_default.

MIPS_ABI = $(or $(with_abi), \
                $(if $(filter MIPS_ABI_DEFAULT=ABI_N32, \
                              $(tm_defines)), n32), \
                 32)

However I can't see yet how this should be used. Maybe Aurelian could come up
with a tested version of this patch?

  Matthias

Reply via email to