[PATCH 3/5] gas: Default to ELF for RTEMS targets

Joel Sherrill joel.sherrill@oarcorp.com
Thu Jan 19 22:59:00 GMT 2017



On 1/19/2017 4:55 PM, Alan Modra wrote:
> On Thu, Jan 19, 2017 at 09:39:39AM -0600, Joel Sherrill wrote:
>> One of the reasons this was duplicated was to ensure
>> that when someone tinkered with a target they knew
>> XXX-rtems was impacted. With this patch, there is
>> no record of each cpu-rtems being a used target.
>>
>> I know binutils doesn't remove targets often but this
>> makes the individual RTEMS targets invisible.
>>
>> It definitely means we likely don't have to touch
>> these files for new targets but it also means
>> we aren't obvious when deprecation discussions
>> occur.
>>
>> It would be nice to have a binutils maintainer wade
>> in. I can see how this is a nice clean up patch but
>> it loses information.  What are the thoughts on this?
>
> I would prefer to lose that information.  We're talking about bfd/
> here, and given that there is no difference between bfd support for
> <target>-elf and <target>-rtems, it doesn't make much sense to
> single out rtems targets in config.bfd.  The only concern would be if
> a future change removed support for <target>-elf but you wanted to
> keep <target>-rtems.  However, I can't see us deprecating an ELF
> target unless all support for <target> is no longer wanted.

That's the second opinion I wanted. Just wanted to
confirm that someone with a broader binutils thought
the information loss would be OK.

I am OK with it.

>> Except for the loss of documentation issue, I am
>> OK with it.
>>
>> --joel
>>
>> On 1/19/2017 6:42 AM, Sebastian Huber wrote:
>>> gas/
>>> 	* configure.tgt (aarch64*-*-rtems*): Remove.
>>> 	(bfin-*-rtems*): Likewise.
>>> 	(h8300-*-rtems*): Likewise.
>>> 	(i386-*-rtems*): Likewise.
>>> 	(m32c-*-rtems*): Likewise.
>>> 	(m32r-*-rtems*): Likewise.
>>> 	(m68k-*-rtems*): Likewise.
>>> 	(mips-*-rtems*): Likewise.
>>> 	(nios2-*-rtems*): Likewise.
>>> 	(ppc-*-rtems*): Likewise.
>>> 	(sh-*-rtems*): Likewise.
>>> 	(sparc64-*-rtems*): Likewise.
>>> 	(sparc-*-rtems*): Likewise.
>>> 	(*-*-rtems*) Use ELF format.
>>> ---
>>> gas/configure.tgt | 20 ++++++--------------
>>> 1 file changed, 6 insertions(+), 14 deletions(-)
>>>
>>> diff --git a/gas/configure.tgt b/gas/configure.tgt
>>> index 95c4a13..c3b352b 100644
>>> --- a/gas/configure.tgt
>>> +++ b/gas/configure.tgt
>>> @@ -122,7 +122,7 @@ esac
>>> generic_target=${cpu_type}-$vendor-$os
>>> # Note: This table is alpha-sorted, please try to keep it that way.
>>> case ${generic_target} in
>>> -  aarch64*-*-elf | aarch64*-*-rtems*)	fmt=elf;;
>>> +  aarch64*-*-elf*)			fmt=elf;;
>>>   aarch64*-*-fuchsia*)			fmt=elf;;
>>>   aarch64*-*-linux*)			fmt=elf em=linux ;;
>>>
>>> @@ -167,7 +167,6 @@ case ${generic_target} in
>>>
>>>   bfin-*-linux-uclibc)			fmt=fdpicelf em=linux ;;
>>>   bfin-*-uclinux*)			fmt=elf em=linux ;;
>>> -  bfin-*-rtems*)			fmt=elf ;;
>>>   bfin-*elf)				fmt=elf ;;
>>>
>>>   cr16-*-elf*)				fmt=elf ;;
>>> @@ -210,7 +209,7 @@ case ${generic_target} in
>>>   hppa-*-bsd*)				fmt=som em=hppa ;;
>>>   hppa-*-hiux*)				fmt=som em=hppa ;;
>>>
>>> -  h8300-*-elf | h8300-*-rtems*)		fmt=elf ;;
>>> +  h8300-*-elf)				fmt=elf ;;
>>>   h8300-*-linux*)			fmt=elf em=linux ;;
>>>
>>>   i370-*-elf* | i370-*-linux*)		fmt=elf ;;
>>> @@ -266,7 +265,6 @@ case ${generic_target} in
>>>   i386-*-vsta)				fmt=aout ;;
>>>   i386-*-msdosdjgpp* \
>>>   | i386-*-go32*)			fmt=coff em=go32 ;;
>>> -  i386-*-rtems*)			fmt=elf ;;
>>>   i386-*-gnu*)				fmt=elf em=gnu ;;
>>>   i386-*-mach*)				fmt=aout em=mach ;;
>>>   i386-*-msdos*)			fmt=aout ;;
>>> @@ -306,9 +304,9 @@ case ${generic_target} in
>>>
>>>   lm32-*-*)				fmt=elf ;;
>>>
>>> -  m32c-*-elf | m32c-*-rtems*)		fmt=elf ;;
>>> +  m32c-*-elf)				fmt=elf ;;
>>>
>>> -  m32r-*-elf* | m32r-*-rtems*)		fmt=elf ;;
>>> +  m32r-*-elf*)				fmt=elf ;;
>>>   m32r-*-linux*)			fmt=elf em=linux;;
>>>
>>>   m68hc11-*-* | m6811-*-*)		fmt=elf ;;
>>> @@ -317,7 +315,6 @@ case ${generic_target} in
>>>   m68k-*-aout)				fmt=aout bfd_gas=yes ;;
>>>   m68k-*-elf*)				fmt=elf ;;
>>>   m68k-*-sysv4*)			fmt=elf em=svr4 ;;
>>> -  m68k-*-rtems*)			fmt=elf ;;
>>>   m68k-*-linux-*)			fmt=elf em=linux ;;
>>>   m68k-*-uclinux*)			fmt=elf em=uclinux ;;
>>>   m68k-*-gnu*)				fmt=elf ;;
>>> @@ -344,7 +341,7 @@ case ${generic_target} in
>>>   mips-*-sysv4*MP* | mips-*-gnu*)	fmt=elf em=tmips ;;
>>>   mips*-sde-elf* | mips*-mti-elf* | mips*-img-elf*)
>>> 					fmt=elf em=tmips ;;
>>> -  mips-*-elf* | mips-*-rtems*)		fmt=elf ;;
>>> +  mips-*-elf*)				fmt=elf ;;
>>>   mips-*-netbsd*)			fmt=elf em=tmips ;;
>>>   mips-*-openbsd*)			fmt=elf em=tmips ;;
>>>
>>> @@ -367,7 +364,6 @@ case ${generic_target} in
>>>   nds32-*-elf*)				fmt=elf ;;
>>>   nds32-*-linux*)			fmt=elf em=linux ;;
>>>
>>> -  nios2-*-rtems*)			fmt=elf ;;
>>>   nios2*-linux*)			fmt=elf em=linux ;;
>>>
>>>   ns32k-pc532-mach*)			fmt=aout em=pc532mach ;;
>>> @@ -390,7 +386,6 @@ case ${generic_target} in
>>>   ppc-*-eabi* | ppc-*-sysv4*)		fmt=elf ;;
>>>   ppc-*-linux-*)			fmt=elf em=linux ;;
>>>   ppc-*-solaris*)			fmt=elf em=solaris ;;
>>> -  ppc-*-rtems*)				fmt=elf ;;
>>>   ppc-*-macos*)				fmt=coff em=macos ;;
>>>   ppc-*-nto*)				fmt=elf ;;
>>>   ppc-*-kaos*)				fmt=elf ;;
>>> @@ -423,13 +418,10 @@ case ${generic_target} in
>>>   sh-*-coff*)				fmt=coff ;;
>>>   sh-*-nto*)				fmt=elf ;;
>>>   sh-*-pe*)				fmt=coff em=pe bfd_gas=yes endian=little ;;
>>> -  sh-*-rtems*)				fmt=elf ;;
>>>   sh-*-kaos*)				fmt=elf ;;
>>>   shle*-*-kaos*)			fmt=elf ;;
>>>   sh64-*-elf*)				fmt=elf ;;
>>>
>>> -  sparc64-*-rtems*)			fmt=elf ;;
>>> -  sparc-*-rtems*)			fmt=elf ;;
>>>   sparc-*-sunos4*)			fmt=aout em=sun3 ;;
>>>   sparc-*-aout)				fmt=aout em=sparcaout ;;
>>>   sparc-*-coff)				fmt=coff ;;
>>> @@ -488,7 +480,7 @@ case ${generic_target} in
>>>   *-*-generic)				fmt=generic ;;
>>>   *-*-xray | *-*-hms)			fmt=coff ;;
>>>   *-*-sim)				fmt=coff ;;
>>> -  *-*-elf | *-*-sysv4*)			fmt=elf ;;
>>> +  *-*-elf | *-*-rtems* | *-*-sysv4*)	fmt=elf ;;
>>>   *-*-solaris*)				fmt=elf em=solaris ;;
>>>   *-*-aros*)				fmt=elf em=linux ;;
>>>   *-*-vxworks* | *-*-windiss)		fmt=elf em=vxworks ;;
>>>
>>
>> --
>>
>

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel.sherrill@OARcorp.com        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35806
Support Available                (256) 722-9985



More information about the Binutils mailing list