X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fstaging%2Fyousong.git;a=blobdiff_plain;f=toolchain%2Fgcc%2Fcommon.mk;h=4220cf54f3ccbd039cc5ac4245e3f47961f23f51;hp=e1580cf8c503fecbc9093aecd9c1adb6f2d5e0b5;hb=360fd10ac9cb92425709c76ded0cd418662e121e;hpb=5168d43b16658db0bf17db9798715e4363fdf2bc diff --git a/toolchain/gcc/common.mk b/toolchain/gcc/common.mk index e1580cf8c5..4220cf54f3 100644 --- a/toolchain/gcc/common.mk +++ b/toolchain/gcc/common.mk @@ -1,7 +1,7 @@ # # Copyright (C) 2002-2003 Erik Andersen # Copyright (C) 2004 Manuel Novoa III -# Copyright (C) 2005-2006 Felix Fietkau +# Copyright (C) 2005-2006 Felix Fietkau # Copyright (C) 2006-2014 OpenWrt.org # # This program is free software; you can redistribute it and/or modify @@ -28,28 +28,28 @@ GCC_DIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_SOURCE_URL:=@GNU/gcc/gcc-$(PKG_VERSION) PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 -ifeq ($(PKG_VERSION),5.3.0) - PKG_MD5SUM:=c9616fd448f980259c31de613e575719 +ifeq ($(PKG_VERSION),5.4.0) + PKG_MD5SUM:=4c626ac2a83ef30dfb9260e6f59c2b30 +endif + +ifeq ($(PKG_VERSION),6.1.0) + PKG_MD5SUM:=8fb6cb98b8459f5863328380fbf06bd1 endif ifneq ($(CONFIG_GCC_VERSION_4_8_ARC),) - PKG_VERSION:=4.8.4 - PKG_SOURCE_URL:=https://github.com/foss-for-synopsys-dwc-arc-processors/gcc/archive/arc-2015.06 + PKG_VERSION:=4.8.5 + PKG_SOURCE_URL:=https://github.com/foss-for-synopsys-dwc-arc-processors/gcc/archive/arc-2016.03 PKG_SOURCE:=$(PKG_NAME)-$(GCC_VERSION).tar.gz - PKG_MD5SUM:=25007ebb02a5f6c32532b103bb5984a0 - PKG_REV:=2015.06 + PKG_MD5SUM:=ca59c8140d6efd07b97a18869bddbb53 + PKG_REV:=2016.03 GCC_DIR:=gcc-arc-$(PKG_REV) HOST_BUILD_DIR = $(BUILD_DIR_HOST)/$(PKG_NAME)-$(GCC_VERSION) endif PATCH_DIR=../patches/$(GCC_VERSION) -BUGURL=https://dev.openwrt.org/ -ifeq ($(findstring linaro, $(CONFIG_GCC_VERSION)),linaro) - PKGVERSION=OpenWrt/Linaro GCC $(PKG_REV) $(REVISION) -else - PKGVERSION=OpenWrt GCC $(PKG_VERSION) $(REVISION) -endif +BUGURL=http://www.lede-project.org/bugs/ +PKGVERSION=LEDE GCC $(PKG_VERSION) $(REVISION) HOST_BUILD_PARALLEL:=1 @@ -69,12 +69,15 @@ HOST_STAMP_CONFIGURED:=$(GCC_BUILD_DIR)/.configured HOST_STAMP_INSTALLED:=$(STAGING_DIR_HOST)/stamp/.gcc_$(GCC_VARIANT)_installed SEP:=, -TARGET_LANGUAGES:="c,c++$(if $(CONFIG_INSTALL_LIBGCJ),$(SEP)java)$(if $(CONFIG_INSTALL_GFORTRAN),$(SEP)fortran)" +TARGET_LANGUAGES:="c,c++$(if $(CONFIG_INSTALL_LIBGCJ),$(SEP)java)$(if $(CONFIG_INSTALL_GFORTRAN),$(SEP)fortran)$(if $(CONFIG_INSTALL_GCCGO),$(SEP)go)" export libgcc_cv_fixed_point=no ifdef CONFIG_USE_UCLIBC export glibcxx_cv_c99_math_tr1=no endif +ifdef CONFIG_INSTALL_GCCGO + export libgo_cv_c_split_stack_supported=no +endif ifdef CONFIG_GCC_USE_GRAPHITE ifdef CONFIG_GCC_VERSION_4_8 @@ -104,6 +107,7 @@ GCC_CONFIGURE:= \ --disable-libgomp \ --disable-libmudflap \ --disable-multilib \ + --disable-libmpx \ --disable-nls \ $(GRAPHITE_CONFIGURE) \ --with-host-libstdcxx=-lstdc++ \ @@ -163,17 +167,42 @@ ifneq ($(CONFIG_SOFT_FLOAT),y) endif endif +ifeq ($(CONFIG_TARGET_x86)$(CONFIG_USE_GLIBC)$(CONFIG_INSTALL_GCCGO),yyy) + TARGET_CFLAGS+=-fno-split-stack +endif + GCC_MAKE:= \ export SHELL="$(BASH)"; \ $(MAKE) \ CFLAGS="$(HOST_CFLAGS)" \ CFLAGS_FOR_TARGET="$(TARGET_CFLAGS)" \ - CXXFLAGS_FOR_TARGET="$(TARGET_CFLAGS)" + CXXFLAGS_FOR_TARGET="$(TARGET_CFLAGS)" \ + GOCFLAGS_FOR_TARGET="$(TARGET_CFLAGS)" -define Host/Prepare - mkdir -p $(GCC_BUILD_DIR) +define Host/SetToolchainInfo + $(SED) 's,TARGET_CROSS=.*,TARGET_CROSS=$(REAL_GNU_TARGET_NAME)-,' $(TOOLCHAIN_DIR)/info.mk + $(SED) 's,GCC_VERSION=.*,GCC_VERSION=$(GCC_VERSION),' $(TOOLCHAIN_DIR)/info.mk endef +ifneq ($(GCC_PREPARE),) + define Host/Prepare + $(call Host/SetToolchainInfo) + $(call Host/Prepare/Default) + ln -snf $(GCC_DIR) $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME) + $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(HOST_SOURCE_DIR)/ + $(SED) 's,^MULTILIB_OSDIRNAMES,# MULTILIB_OSDIRNAMES,' $(HOST_SOURCE_DIR)/gcc/config/*/t-* + $(SED) 'd' $(HOST_SOURCE_DIR)/gcc/DEV-PHASE + $(SED) 's, DATESTAMP,,' $(HOST_SOURCE_DIR)/gcc/version.c + #(cd $(HOST_SOURCE_DIR)/libstdc++-v3; autoconf;); + $(SED) 's,gcc_no_link=yes,gcc_no_link=no,' $(HOST_SOURCE_DIR)/libstdc++-v3/configure + mkdir -p $(GCC_BUILD_DIR) + endef +else + define Host/Prepare + mkdir -p $(GCC_BUILD_DIR) + endef +endif + define Host/Configure (cd $(GCC_BUILD_DIR) && rm -f config.cache; \ $(GCC_CONFIGURE) \ @@ -181,7 +210,7 @@ define Host/Configure endef define Host/Clean - rm -rf \ + rm -rf $(if $(GCC_PREPARE),$(HOST_SOURCE_DIR)) \ $(STAGING_DIR_HOST)/stamp/.gcc_* \ $(STAGING_DIR_HOST)/stamp/.binutils_* \ $(GCC_BUILD_DIR) \