summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <walsimou@walsimou.com>2009-11-14 10:55:30 +0100
committerAbdoulaye Walsimou Gaye <walsimou@walsimou.com>2009-11-14 10:55:30 +0100
commit7d92760ad705b217505cad802075436cf8716aae (patch)
tree0d65b30af525af1b121a0c80839a9c7d82777fa4
parent422a321ee4e9a629ba5db591ce9fd686e149e335 (diff)
downloadembtoolkit-7d92760ad705b217505cad802075436cf8716aae.tar.gz
embtoolkit-7d92760ad705b217505cad802075436cf8716aae.tar.bz2
embtoolkit-7d92760ad705b217505cad802075436cf8716aae.tar.xz
Toolchain: gcc: introduce patch infrastructure in the build process
Signed-off-by: Abdoulaye Walsimou Gaye <walsimou@walsimou.com>
-rw-r--r--kconfig/gcc.kconfig3
-rw-r--r--mk/gcc.mk10
2 files changed, 13 insertions, 0 deletions
diff --git a/kconfig/gcc.kconfig b/kconfig/gcc.kconfig
index 52db324..68ea8e3 100644
--- a/kconfig/gcc.kconfig
+++ b/kconfig/gcc.kconfig
@@ -45,6 +45,9 @@ choice
bool "gcc-4.1.2"
endchoice
+config EMBTK_GCC_NEED_PATCH
+ bool
+
config EMBTK_GCC_HAVE_MIRROR
bool "Use a gcc mirror"
help
diff --git a/mk/gcc.mk b/mk/gcc.mk
index a9b4e99..c4fbe71 100644
--- a/mk/gcc.mk
+++ b/mk/gcc.mk
@@ -28,6 +28,7 @@ GCC_SITE := $(subst ",,$(strip $(CONFIG_EMBTK_GCC_HAVE_MIRROR_SITE)))
else
GCC_SITE := ftp://ftp.gnu.org/gnu/gcc/gcc-$(GCC_VERSION)
endif
+GCC_PATCH_SITE := ftp://ftp.embtoolkit.org/embtoolkit.org/gcc
GCC_PACKAGE := gcc-$(GCC_VERSION).tar.bz2
GCC1_BUILD_DIR := $(TOOLS_BUILD)/gcc1
GCC2_BUILD_DIR := $(TOOLS_BUILD)/gcc2
@@ -78,10 +79,19 @@ $(GCC1_BUILD_DIR)/.built: download_gcc $(GCC1_BUILD_DIR)/.decompressed \
download_gcc:
@test -e $(DOWNLOAD_DIR)/$(GCC_PACKAGE) || \
wget -O $(DOWNLOAD_DIR)/$(GCC_PACKAGE) $(GCC_SITE)/$(GCC_PACKAGE)
+ifeq ($(CONFIG_EMBTK_GCC_NEED_PATCH),y)
+ @test -e $(DOWNLOAD_DIR)/gcc-$(GCC_VERSION).patch || \
+ wget -O $(DOWNLOAD_DIR)/gcc-$(GCC_VERSION).patch \
+ $(GCC_PATCH_SITE)/gcc-$(GCC_VERSION)-*.patch
+endif
$(GCC1_BUILD_DIR)/.decompressed:
$(call DECOMPRESS_MESSAGE,$(GCC_PACKAGE))
@tar -C $(TOOLS_BUILD) -xjf $(DOWNLOAD_DIR)/$(GCC_PACKAGE)
+ifeq ($(CONFIG_EMBTK_GCC_NEED_PATCH),y)
+ cd $(TOOLS_BUILD)/gcc-$(GCC_VERSION); \
+ patch -p1 < $(DOWNLOAD_DIR)/gcc-$(GCC_VERSION).patch
+endif
@mkdir -p $(GCC1_BUILD_DIR)
@touch $@