summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--toolchain/Config.in4
-rw-r--r--toolchain/external-toolchain/Config.in.25
-rw-r--r--toolchain/external-toolchain/ext-tool.mk1
-rw-r--r--toolchain/gcc/gcc-uclibc-4.x.mk18
4 files changed, 26 insertions, 2 deletions
diff --git a/toolchain/Config.in b/toolchain/Config.in
index d66ce1d38..f0f9f74ec 100644
--- a/toolchain/Config.in
+++ b/toolchain/Config.in
@@ -26,6 +26,8 @@ config BR2_TOOLCHAIN_SOURCE
default y if BR2_TOOLCHAIN_BUILDROOT || BR2_TOOLCHAIN_EXTERNAL_SOURCE
default n if BR2_TOOLCHAIN_EXTERNAL
+source "toolchain/external-toolchain/Config.in.2"
+
source "target/device/Config.in.toolchain"
source "toolchain/Config.in.1"
@@ -38,6 +40,6 @@ source "toolchain/gdb/Config.in"
comment "Common Toolchain Options"
source "toolchain/Config.in.2"
-source "toolchain/external-toolchain/Config.in.2"
endmenu
+
diff --git a/toolchain/external-toolchain/Config.in.2 b/toolchain/external-toolchain/Config.in.2
index 489558c0f..bf3f75dd4 100644
--- a/toolchain/external-toolchain/Config.in.2
+++ b/toolchain/external-toolchain/Config.in.2
@@ -3,9 +3,12 @@
if BR2_TOOLCHAIN_EXTERNAL
config BR2_TOOLCHAIN_EXTERNAL_PATH
string "External toolchain path"
- default "/path/to/staging_dir/usr"
+ default "$(GCCROOT)"
help
Path to where the external toolchain is installed.
+ Either define GCCROOT in your environment
+ or an absolute path like:
+ "/path/to/staging_dir/usr"
config BR2_TOOLCHAIN_EXTERNAL_PREFIX
string "External toolchain prefix"
diff --git a/toolchain/external-toolchain/ext-tool.mk b/toolchain/external-toolchain/ext-tool.mk
index 1c9197b95..857dec3af 100644
--- a/toolchain/external-toolchain/ext-tool.mk
+++ b/toolchain/external-toolchain/ext-tool.mk
@@ -60,3 +60,4 @@ $(TARGET_DIR)/lib/$(strip $(subst ",, $(BR2_TOOLCHAIN_EXTERNAL_LIB_C))):
$(call copy_toolchain_lib_root, $$libs, /lib, $(BR2_TOOLCHAIN_EXTERNAL_STRIP)); \
done
$(call copy_toolchain_sysroot)
+
diff --git a/toolchain/gcc/gcc-uclibc-4.x.mk b/toolchain/gcc/gcc-uclibc-4.x.mk
index c4ef41a9d..fe1002f41 100644
--- a/toolchain/gcc/gcc-uclibc-4.x.mk
+++ b/toolchain/gcc/gcc-uclibc-4.x.mk
@@ -498,5 +498,23 @@ gcc-status:
@echo GCC_PATCH_DIR=$(GCC_PATCH_DIR)
@echo GCC_SITE=$(GCC_SITE)
+GCCSCRIPT=$(ARCH)-uclibc-gcc-$(BR2_GCC_VERSION).sh
+
+gccscript:
+ @rm -f $(GCCSCRIPT)
+ @rm -f gcc.sh
+ @echo "#!/bin/sh" > $(GCCSCRIPT)
+ @echo "# $(ARCH) cross compiler toolchain created $(DATE)" >> $(GCCSCRIPT)
+ @echo "# gcc-$(BR2_GCC_VERSION)" >> $(GCCSCRIPT)
+ @echo "# binutils-$(BR2_BINUTILS_VERSION)" >> $(GCCSCRIPT)
+ @echo "# uClibc-$(UCLIBC_VER)" >> $(GCCSCRIPT)
+ @echo "export GCCROOT=$(BR2_STAGING_DIR)/usr" >> $(GCCSCRIPT)
+ @echo "export PATH=\$$GCCROOT/bin:\$$PATH" >> $(GCCSCRIPT)
+ @echo "export GCCPREFIX=$(ARCH)-linux" >> $(GCCSCRIPT)
+ @echo "export CROSS_COMPILE=\$$GCCPREFIX-" >> $(GCCSCRIPT)
+ @chmod a+x $(GCCSCRIPT)
+ @ln -s $(GCCSCRIPT) gcc.sh
+ @echo "$(GCCSCRIPT) created"
+ @more $(GCCSCRIPT)
endif
# gcc-4.x only