Installing headers with 0.9.29 spawns gcc errors
Yann E. MORIN
yann.morin.1998 at anciens.enib.fr
Thu May 17 18:46:56 UTC 2007
Hello!
I'm trying to install the uClibc-0.9.29 headers to be used next to build gcc.
My target is armeb, xscale.
When installing the headers, we don't necessarily have a cross-compiler handy,
because that's what we're trying to get in the first place.
Unfortunately, Rules.mak does the following (only arm shown):
===
ifeq ($(TARGET_ARCH),arm)
OPTIMIZATION+=-fstrict-aliasing
CPU_LDFLAGS-$(ARCH_LITTLE_ENDIAN)+=-EL
CPU_LDFLAGS-$(ARCH_BIG_ENDIAN)+=-EB
CPU_CFLAGS-$(ARCH_LITTLE_ENDIAN)+=-mlittle-endian
CPU_CFLAGS-$(ARCH_BIG_ENDIAN)+=-mbig-endian
CPU_CFLAGS-$(CONFIG_GENERIC_ARM)+=
CPU_CFLAGS-$(CONFIG_ARM610)+=-mtune=arm610 -march=armv3
CPU_CFLAGS-$(CONFIG_ARM710)+=-mtune=arm710 -march=armv3
CPU_CFLAGS-$(CONFIG_ARM7TDMI)+=-mtune=arm7tdmi -march=armv4t
CPU_CFLAGS-$(CONFIG_ARM720T)+=-mtune=arm7tdmi -march=armv4t
CPU_CFLAGS-$(CONFIG_ARM920T)+=-mtune=arm9tdmi -march=armv4t
CPU_CFLAGS-$(CONFIG_ARM922T)+=-mtune=arm9tdmi -march=armv4t
CPU_CFLAGS-$(CONFIG_ARM926T)+=-mtune=arm9tdmi -march=armv5t
CPU_CFLAGS-$(CONFIG_ARM10T)+=-mtune=arm10tdmi -march=armv5t
CPU_CFLAGS-$(CONFIG_ARM1136JF_S)+=-mtune=arm1136jf-s -march=armv6
CPU_CFLAGS-$(CONFIG_ARM1176JZ_S)+=-mtune=arm1176jz-s -march=armv6
CPU_CFLAGS-$(CONFIG_ARM1176JZF_S)+=-mtune=arm1176jzf-s -march=armv6
CPU_CFLAGS-$(CONFIG_ARM_SA110)+=-mtune=strongarm110 -march=armv4
CPU_CFLAGS-$(CONFIG_ARM_SA1100)+=-mtune=strongarm1100 -march=armv4
CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=$(call check_gcc,-mtune=xscale,-mtune=strongarm110)
CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=-march=armv5te -Wa,-mcpu=xscale
CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt -mabi=iwmmxt
endif
===
That's bad, because my native compiler, for x86-64, understands none of those,
and building the headers bombs out with:
===
cc1: error: unrecognized command line option "-mbig-endian"
:0: error: bad value (armv5te) for -march= switch
cc1: error: unrecognized command line option "-mbig-endian"
:0: error: bad value (armv5te) for -mtune= switch
:0: error: bad value (armv5te) for -march= switch
:0: error: bad value (armv5te) for -mtune= switch
===
The build seems OK, but IMHO that's ugly.
Shouldn't we add each of those {gcc,as,ld} options using call_{gcc,as,ld) ?
Comments?
Regards,
Yann E. MORIN.
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +0/33 662376056 | Software Designer | \ / CAMPAIGN | ^ |
| --==< °_° >==-- °------------.-------: X AGAINST | /e\ There is no |
| http://ymorin.is-a-geek.org/ | (*_*) | / \ HTML MAIL | """ conspiracy. |
°------------------------------°-------°------------------°--------------------°
More information about the uClibc
mailing list