X-Git-Url: http://git.ozo.com/?p=openwrt-10.03%2F.git;a=blobdiff_plain;f=toolchain%2Fgcc%2FMakefile;h=955248e81df9a76d22466695d2e843323a06cb22;hp=0970b2f9859127e5917db97fb00b25b03e66303f;hb=db196bcbf961bcc074d5e74fd58add2d0aa06d4c;hpb=7188f2daaf10264c4020622353aac12780946a90
diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile
index 0970b2f98..955248e81 100644
--- a/toolchain/gcc/Makefile
+++ b/toolchain/gcc/Makefile
@@ -90,6 +90,7 @@ GCC_CONFIGURE:= \
--disable-libmudflap \
--disable-multilib \
--disable-nls \
+ $(if $(CONFIG_GCC_USE_GRAPHITE),--with-host-libstdcxx=-lstdc++) \
$(SOFT_FLOAT_CONFIG_OPTION) \
$(call qstrip,$(CONFIG_EXTRA_GCC_CONFIG_OPTIONS)) \
$(if $(CONFIG_mips64)$(CONFIG_mips64el),--with-arch=mips64 --with-abi=64) \
@@ -151,6 +152,10 @@ GCC_CONFIGURE_STAGE2:= \
--disable-tls \
--with-slibdir=$(TOOLCHAIN_DIR)/lib \
+ifdef CONFIG_powerpc
+ TARGET_CFLAGS := $(patsubst -Os,-O2,$(TARGET_CFLAGS))
+endif
+
GCC_MAKE:= \
export SHELL="$(BASH)"; \
$(MAKE) \
@@ -241,6 +246,8 @@ define Stage2/Install
$(GCC_MAKE) -C $(HOST_BUILD_DIR2) install
# Set up the symlinks to enable lying about target name.
set -e; \
+ $(CP) ./files/wrapper.sh $(TOOLCHAIN_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-wrapper.sh
+ chmod +x $(TOOLCHAIN_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-wrapper.sh
(cd $(TOOLCHAIN_DIR)/usr; \
ln -sf $(REAL_GNU_TARGET_NAME) $(GNU_TARGET_NAME); \
cd bin; \
@@ -248,18 +255,26 @@ define Stage2/Install
ln -sf $$$${app} \
$(GNU_TARGET_NAME)$$$${app##$(REAL_GNU_TARGET_NAME)}; \
done; \
+ for app in cc gcc g++ c++ cpp ld as ; do \
+ [ -f $(REAL_GNU_TARGET_NAME)-$$$${app} ] && mv $(REAL_GNU_TARGET_NAME)-$$$${app} $(REAL_GNU_TARGET_NAME)-$$$${app}.bin ; \
+ ln -sf $(REAL_GNU_TARGET_NAME)-wrapper.sh $(REAL_GNU_TARGET_NAME)-$$$${app} ; \
+ done; \
);
$(if $(CONFIG_EXTRA_TARGET_ARCH),$(call SetupExtraArch))
endef
+BUGURL=https://dev.openwrt.org/
+
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_BUILD_DIR)/
+ $(SED) 's,^MULTILIB_OSDIRNAMES,# MULTILIB_OSDIRNAMES,' $(HOST_BUILD_DIR)/gcc/config/*/t-*
$(SED) 's,\(version_string.. = "[0-9\.]*\).*\(";\),\1 (OpenWrt-2.0)\2,' $(HOST_BUILD_DIR)/gcc/version.c
- $(SED) 's,\(bug_report_url.. = "\).*\(";\),\1\2,' $(HOST_BUILD_DIR)/gcc/version.c
+ $(SED) 's,\(bug_report_url.. = "\).*\(";\),\1\2,' $(HOST_BUILD_DIR)/gcc/version.c
+ $(SED) 's,http://gcc.gnu.org/bugs.html,$(BUGURL),' $(HOST_BUILD_DIR)/gcc/configure
#(cd $(HOST_BUILD_DIR)/libstdc++-v3; autoconf;);
$(SED) 's,gcc_no_link=yes,gcc_no_link=no,' $(HOST_BUILD_DIR)/libstdc++-v3/configure
$(call Stage0/Configure)