This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][ARM] Support arm-android-eabi


Here is my updated patch. Things changed since last patch:

- option -mandroid is now in a seperate optiion file eabi.opt, which
is only used in targets arm*-*-eabi*.
- generic-eabi.h is renamed eabi.h
- The "Android specific" comment is removed from eabi.h
- LINK_SPEC, STARTFILE_SPEC and ENDFILE_SPEC use default for
non-Android targets defined in header earlier in the inclusion chain
(bpabi.h and unknown-elf.h)

eabi.h still provides defaults for CC1_SPEC, CC1PLUS_SPEC and LIB_SPEC
for non-Android targets because these are defined later in the the
inclusion chain in the original code (gcc.c and arm.h)

-Doug

2008-07-13  Doug Kwan  <dougkwan@google.com>

	* config.gcc (arm*-*-eabi*): Include arm/eabi.h and use
	additional option file arm/eabi.opt.
	* config/arm/eabi.h (File): New configuration file for EABI targets.
	* config/arm/elf.h (SUBTARGET_EXTRA_SPECS): Add
	SUBSUBTARGET_EXTRA_SPECS.
	(SUBSUBTARGET_EXTRA_SPECS): Provide empty default.
	* config/arm/unknown-elf.h (STARTFILE_UNKNOWN_ELF_SPEC): Renamed
	from STARTFILE_SPEC so that it can be referenced in an override.
	(STARTFILE_SPEC): Use STARTFILE_UNKNOWN_ELF_SPEC.
	(ENDFILE_UNKNOWN_ELF_SPEC): Renamed from ENDFILE_SPEC so that it
	can be referenced in an override.
	(ENDFILE_SPEC): Use ENDFILE_UNKNOWN_ELF_SPEC.
	* config/arm/bpabi.h (LINK_BPABI_SPEC): Renamed from LINK_SPEC
	so that it can be referenced in an override.
	(LINK_SPEC): Use LINK_BPABI_SPEC.
	* config/arm/eabi.opt (File): New.


2008/7/13 Mark Mitchell <mark@codesourcery.com>:
> Doug Kwan (Ãö®¶¼w) wrote:
>
>> Thanks for iterating this patch with me so many times :)
>
> Sorry to be making lots of work...
>
>> We can use a eabi.opt I suppose.
>
> Right, that sounds good.
>
>> I chose generic-eabi.h instead of eabi.h because there are other BPABI
>> based targets which do not want the new macros. I can certainly drop
>> the generic bit.
>
> We already have bpabi.h for all ("generic") Base Platform ABI systems (which
> include bare-metal, RTOS, uClinux, SymbianOS, GNU/Linux, etc.). So, I think
> we can use eabi.h for the "bare-metal and RTOS" category. It's not a perfect
> name, but it matches existing practice in the ARM toolchain and elsewhere.
>
>> But this does
>>
>> base.h
>>
>> #define BASE_FOO ...
>> #undef FOO
>> #define FOO BASE_FOO
>>
>> derived.h
>>
>> #define DERIVED_FOO ... /* uses BASE_FOO */
>> #undef FOO
>> #define FOO DERIVED_FOO
>
> Right; that's why I was suggesting BPABI_LINK_SPEC, for example.
>
> Thanks,
>
> --
> Mark Mitchell
> CodeSourcery
> mark@codesourcery.com
> (650) 331-3385 x713
>

Attachment: patch.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]