| # gcc has a bunch of options that need to be shared with |
| # both gcc-uclibc-4.x.mk, and are use by other packages... |
| # So include them in this file and arrange to include it |
| # soon after invoking make from the top level. |
| |
| GCC_VERSION:=$(call qstrip,$(BR2_GCC_VERSION)) |
| TARGET_OPTIMIZATION:=$(call qstrip,$(BR2_TARGET_OPTIMIZATION)) |
| EXTRA_GCC_CONFIG_OPTIONS:=$(call qstrip,$(BR2_EXTRA_GCC_CONFIG_OPTIONS)) |
| |
| ifeq ($(call qstrip,$(BR2_GCC_VERSION_SNAP)),y) |
| GCC_SNAP_DATE:=$(call qstrip,$(BR2_GCC_SNAP_DATE)) |
| else |
| GCC_SNAP_DATE:= |
| endif |
| |
| ifeq ($(BR2_SOFT_FLOAT),y) |
| SOFT_FLOAT_CONFIG_OPTION:=--with-float=soft |
| ifeq ($(BR2_arm)$(BR2_armeb),y) # only set float-abi for arm |
| TARGET_SOFT_FLOAT:=-mfloat-abi=soft |
| else |
| TARGET_SOFT_FLOAT:=-msoft-float |
| endif |
| ARCH_FPU_SUFFIX:=_nofpu |
| else # no softfloat support |
| SOFT_FLOAT_CONFIG_OPTION:= |
| TARGET_SOFT_FLOAT:= |
| ARCH_FPU_SUFFIX:= |
| endif |
| |
| # some additional defaults |
| ifneq ($(call qstrip,$(BR2_GCC_TARGET_ARCH)),) |
| GCC_WITH_ARCH:=--with-arch=$(BR2_GCC_TARGET_ARCH) |
| endif |
| ifneq ($(call qstrip,$(BR2_GCC_TARGET_TUNE)),) |
| GCC_WITH_TUNE:=--with-tune=$(BR2_GCC_TARGET_TUNE) |
| endif |
| ifneq ($(call qstrip,$(BR2_GCC_TARGET_ABI)),) |
| GCC_WITH_ABI:=--with-abi=$(BR2_GCC_TARGET_ABI) |
| endif |
| ifneq ($(call qstrip,$(BR2_GCC_TARGET_CPU)),) |
| GCC_WITH_CPU:=--with-cpu=$(BR2_GCC_TARGET_CPU) |
| endif |
| |
| # AVR32 GCC configuration |
| ifeq ($(BR2_avr32),y) |
| EXTRA_GCC_CONFIG_OPTIONS+=--disable-libmudflap |
| SOFT_FLOAT_CONFIG_OPTION:= |
| endif |
| |
| # Disable mudflap and enable proper double/long double for SPE ABI |
| ifeq ($(BR2_powerpc_SPE),y) |
| EXTRA_GCC_CONFIG_OPTIONS+=--disable-libmudflap --enable-e500_double --with-long-double-128 |
| endif |
| |
| ifeq ($(BR2_PACKAGE_GCC_TARGET),y) |
| EXTRA_TARGET_GCC_CONFIG_OPTIONS:= |
| |
| # AVR32 target GCC configuration |
| ifeq ($(BR2_avr32),y) |
| EXTRA_TARGET_GCC_CONFIG_OPTIONS+=--disable-libmudflap |
| EXTRA_TARGET_GCC_CONFIG_OPTIONS+=--with-build-time-tools=$(STAGING_DIR)/$(REAL_GNU_TARGET_NAME)/bin \ |
| EXTRA_TARGET_GCC_CONFIG_OPTIONS+=--with-as=$(TARGET_CROSS)as |
| endif |
| |
| |
| # and finally pull in config opts from the user |
| EXTRA_TARGET_GCC_CONFIG_OPTIONS+=$(call qstrip,$(BR2_EXTRA_TARGET_GCC_CONFIG_OPTIONS)) |
| |
| TARGETS+=gcc_target |
| endif |