This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][ARM] Support arm-android-eabi
- From: "=?big5?b?RG91ZyBLd2FuICjD9q62vHcp?=" <dougkwan at google dot com>
- To: "Joseph S. Myers" <joseph at codesourcery dot com>
- Cc: "Mark Mitchell" <mark at codesourcery dot com>, gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 9 Jul 2008 15:56:18 -0700
- Subject: Re: [PATCH][ARM] Support arm-android-eabi
- References: <498552560806271116o2f5618f6m230c1453dfa873c4@mail.gmail.com> <48656BAA.9080107@codesourcery.com> <498552560806281105y4b57ba94p53d375cb5cafed3a@mail.gmail.com> <4867D662.2040203@codesourcery.com> <498552560806291228q25344823k4c3a9644c45f1cf2@mail.gmail.com> <4867E4D9.8040503@codesourcery.com> <498552560806301522l721a55d6qc31cf0e929f7e825@mail.gmail.com> <Pine.LNX.4.64.0807091701270.9844@digraph.polyomino.org.uk>
2008/7/9 Joseph S. Myers <joseph@codesourcery.com>:
> This patch has broken the build for arm-*-linux-gnueabi; it's now looking
> for a crt0.o file that's inappropriate for this target.
>
> The patch adds definitions of the macros CC1_SPEC, CC1PLUS_SPEC, LIB_SPEC,
> STARTFILE_SPEC, ENDFILE_SPEC unconditionally to bpabi.h. However, some
> ARM targets rely on the definitions of these macros provided by previous
> headers (or maybe on the macros not being defined when a subsequent header
> is included - I don't know about that possibility), and the replacements
> are inappropriate for those targets. In the case of arm-*-linux-gnueabi,
> at least your definition of STARTFILE_SPEC is wrong.
The patch that got checked in was the second version. In the first
version, I did use a seperate android.h header to override those
macros. Could that a look at the patch in the first mail this thread
to see if that first version does it right?
> You need to fix GCC so that all targets including bpabi.h (that is
> arm*-*-linux-*eabi, arm*-*-uclinux-*eabi, arm*-*-eabi*,
> arm*-*-symbianelf*) have the same definitions of these macros (after the
> full set of target headers is included) they used to, except for the
> intended Android definitions for the generic arm*-*-eabi* only. (It's
> probably harmless for the other targets to handle -mandroid, but also
> unnecessary.) Note that the definitions may depend on how the compiler
> was configured in some cases (the STARTFILE_SPEC definition in
> config/linux.h does). One possibility would be that these new definitions
> go in a separate header only included for the generic arm*-*-eabi* target
> (note that I have not checked that these new definitions are the same as
> the old ones for that target unless you use -mandroid).
>
> --
> Joseph S. Myers
> joseph@codesourcery.com
>