[PATCH][ARM] Support arm-android-eabi
Joseph S. Myers
joseph@codesourcery.com
Wed Jul 9 17:37:00 GMT 2008
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.
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
More information about the Gcc-patches
mailing list