summaryrefslogtreecommitdiff
path: root/toolchain
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain')
-rw-r--r--toolchain/Config.in21
-rw-r--r--toolchain/Config.in.22
-rw-r--r--toolchain/binutils/binutils.mk10
-rw-r--r--toolchain/external-toolchain/Config.in7
-rw-r--r--toolchain/gcc/Config.in34
-rw-r--r--toolchain/gcc/gcc-uclibc-3.x.mk13
-rw-r--r--toolchain/gcc/gcc-uclibc-4.x.mk11
-rw-r--r--toolchain/gdb/Config.in3
-rw-r--r--toolchain/gdb/gdb.mk6
-rw-r--r--toolchain/uClibc/uclibc.mk7
10 files changed, 43 insertions, 71 deletions
diff --git a/toolchain/Config.in b/toolchain/Config.in
index 10a1be92d..21f7f0d54 100644
--- a/toolchain/Config.in
+++ b/toolchain/Config.in
@@ -1,18 +1,31 @@
menu "Toolchain"
choice
prompt "Toolchain type"
- default BR2_TOOLCHAIN_BUILDROOT
+ default BR2_TOOLCHAIN_BUILDROOT if !BR2_avr32
+ default BR2_TOOLCHAIN_EXTERNAL_SOURCE if BR2_avr32
help
- Select whether to use the toolchain built by the buildroot
- system or an external pre-built toolchain.
+ Select whether to use the toolchain provided by buildroot
+ or an external toolchain.
+
+ Some vendors provide toolchains in binary form, some in
+ source form.
config BR2_TOOLCHAIN_BUILDROOT
bool "Buildroot toolchain"
+ depends on !BR2_avr32
config BR2_TOOLCHAIN_EXTERNAL
- bool "External toolchain"
+ bool "External binary toolchain"
+
+config BR2_TOOLCHAIN_EXTERNAL_SOURCE
+ bool "External source toolchain"
endchoice
+config BR2_TOOLCHAIN_SOURCE
+ bool
+ default y if BR2_TOOLCHAIN_BUILDROOT || BR2_TOOLCHAIN_EXTERNAL_SOURCE
+ default n if BR2_TOOLCHAIN_EXTERNAL
+
source "target/device/Toolchain.in"
source "toolchain/Config.in.2"
diff --git a/toolchain/Config.in.2 b/toolchain/Config.in.2
index c3bada025..e509af134 100644
--- a/toolchain/Config.in.2
+++ b/toolchain/Config.in.2
@@ -1,6 +1,6 @@
#
-if BR2_TOOLCHAIN_BUILDROOT
+if BR2_TOOLCHAIN_SOURCE
source "toolchain/kernel-headers/Config.in"
source "toolchain/uClibc/Config.in"
source "toolchain/binutils/Config.in"
diff --git a/toolchain/binutils/binutils.mk b/toolchain/binutils/binutils.mk
index d0546d457..ab69cbc06 100644
--- a/toolchain/binutils/binutils.mk
+++ b/toolchain/binutils/binutils.mk
@@ -65,15 +65,11 @@ BINUTILS_TARGET_CONFIG_OPTIONS=--with-gmp="$(GMP_TARGET_DIR)"
BINUTILS_TARGET_CONFIG_OPTIONS+=--with-mpfr="$(MPFR_TARGET_DIR)"
endif
-ifeq ($(BR2_TOOLCHAIN_NORMAL),)
-BINUTILS_SITE:=$(VENDOR_SITE)
-endif
-
BINUTILS_OFFICIAL_VERSION:=$(BINUTILS_VERSION)$(VENDOR_SUFFIX)$(VENDOR_BINUTILS_RELEASE)
-
-ifeq ($(BR2_TOOLCHAIN_NORMAL),y)
+ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
BINUTILS_PATCH_DIR:=toolchain/binutils/$(BINUTILS_VERSION)
-else
+else # ifeq ($(BR2_TOOLCHAIN_EXTERNAL_SOURCE),)
+BINUTILS_SITE:=$(VENDOR_SITE)
BINUTILS_PATCH_DIR:=$(VENDOR_PATCH_DIR)/binutils-$(BINUTILS_OFFICIAL_VERSION)
endif
diff --git a/toolchain/external-toolchain/Config.in b/toolchain/external-toolchain/Config.in
index c3a96f713..18da9795a 100644
--- a/toolchain/external-toolchain/Config.in
+++ b/toolchain/external-toolchain/Config.in
@@ -1,7 +1,8 @@
#
-menu "External Toolchain Options"
- depends on BR2_TOOLCHAIN_EXTERNAL
+if BR2_TOOLCHAIN_EXTERNAL
+comment "External Toolchain Options"
+
config BR2_TOOLCHAIN_EXTERNAL_LIB_C
string "The core C library from the external toolchain"
@@ -104,4 +105,4 @@ config BR2_TARGET_OPTIMIZATION
help
Optimizations to use when building for the target host.
-endmenu
+endif
diff --git a/toolchain/gcc/Config.in b/toolchain/gcc/Config.in
index 07cea045c..93c7a4de5 100644
--- a/toolchain/gcc/Config.in
+++ b/toolchain/gcc/Config.in
@@ -69,40 +69,6 @@ config BR2_GCC_VERSION
default "4.2.1" if BR2_GCC_VERSION_4_2_1
default "4.3" if BR2_GCC_VERSION_4_3
-choice
- prompt "Target ABI"
- depends BR2_arm || BR2_armeb
- default BR2_ARM_OABI
- help
- Application Binary Interface to use
-
-config BR2_ARM_OABI
- bool "OABI"
-config BR2_ARM_EABI
- bool "EABI"
-endchoice
-
-config BR2_GCC_TARGET_ABI
- string
- default apcs-gnu if BR2_arm_dunno
- default atpcs if BR2_arm_dunno
- default aapcs if BR2_arm_dunno
- default aapcs-linux if BR2_arm_dunno
- default iwmmxt if BR2_iwmmxt
- default 32 if BR2_mipsel && BR2_OABI
- default n32 if BR2_mipsel && BR2_EABI
- default o64 if BR2_mips && BR2_OABI
- default 64 if BR2_mips && BR2_ABI64
- default eabi if BR2_mips && BR2_EABI
- default mmixware if BR2_mmix && BR2_ABI_native
- default gnu if BR2_mmix && !BR2_ABI_native
- default altivec if BR2_powerpc && BR2_ABI_altivec
- default no-altivec if BR2_powerpc && BR2_ABI_no-altivec
- default spe if BR2_powerpc && BR2_ABI_spe
- default no-spe if BR2_powerpc && BR2_ABI_no-spe
- default ibmlongdouble if BR2_powerpc && BR2_ABI_ibmlongdouble
- default ieeelongdouble if BR2_powerpc && BR2_ABI_ieeelongdouble
-
config BR2_TOOLCHAIN_SYSROOT
bool "Enable toolchain with --sysroot support"
depends on BR2_GCC_SUPPORTS_SYSROOT
diff --git a/toolchain/gcc/gcc-uclibc-3.x.mk b/toolchain/gcc/gcc-uclibc-3.x.mk
index bb34797be..cc56cafe3 100644
--- a/toolchain/gcc/gcc-uclibc-3.x.mk
+++ b/toolchain/gcc/gcc-uclibc-3.x.mk
@@ -17,7 +17,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
+ifeq ($(BR2_TOOLCHAIN_SOURCE),y)
# without sysroot support. Sysroot toolchain is gcc-uclibc-4.x.mk
ifneq ($(BR2_TOOLCHAIN_SYSROOT),y)
@@ -33,15 +33,16 @@ endif
# redefine if using an external prepatched gcc source
-ifeq ($(BR2_TOOLCHAIN_NORMAL),)
+ifneq ($(BR2_TOOLCHAIN_BUILDROOT),y)
GCC_SITE:=$(VENDOR_SITE)
GCC_OFFICIAL_VER:=$(GCC_VERSION)$(VENDOR_SUFFIX)$(VENDOR_GCC_RELEASE)
+GCC_PATCH_DIR:=$(VENDOR_PATCH_DIR)/gcc-$(GCC_OFFICIAL_VER)
endif
GCC_SOURCE:=gcc-$(GCC_OFFICIAL_VER).tar.bz2
GCC_DIR:=$(TOOL_BUILD_DIR)/gcc-$(GCC_OFFICIAL_VER)
-ifeq ($(BR2_TOOLCHAIN_NORMAL),y)
+ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
ifeq ($(GCC_SNAP_DATE),)
GCC_PATCH_DIR:=toolchain/gcc/$(GCC_VERSION)
else
@@ -51,16 +52,12 @@ else
GCC_PATCH_DIR:=toolchain/gcc/$(GCC_VERSION)
endif
endif
-else
-GCC_PATCH_DIR:=$(VENDOR_PATCH_DIR)/gcc-$(GCC_OFFICIAL_VER)
endif
-
GCC_CAT:=$(BZCAT)
GCC_STRIP_HOST_BINARIES:=true
-
-ifeq ($(findstring 3.,$(GCC_VERSION)),3.)
+ifeq ($(findstring x3.,x$(GCC_VERSION)),x3.)
GCC_NO_MPFR:=y
else
ifneq ($(BR2_INSTALL_FORTRAN),y)
diff --git a/toolchain/gcc/gcc-uclibc-4.x.mk b/toolchain/gcc/gcc-uclibc-4.x.mk
index 7b6ceb032..59b9a7e07 100644
--- a/toolchain/gcc/gcc-uclibc-4.x.mk
+++ b/toolchain/gcc/gcc-uclibc-4.x.mk
@@ -30,13 +30,14 @@ GCC_SITE:=ftp://sources.redhat.com/pub/gcc/snapshots/$(GCC_OFFICIAL_VER)
endif
# redefine if using an external prepatched gcc source
-ifeq ($(BR2_TOOLCHAIN_NORMAL),)
+ifneq ($(BR2_TOOLCHAIN_BUILDROOT),y)
GCC_SITE:=$(VENDOR_SITE)
GCC_OFFICIAL_VER:=$(GCC_VERSION)$(VENDOR_SUFFIX)$(VENDOR_GCC_RELEASE)
-endif
+GCC_PATCH_DIR:=$(VENDOR_PATCH_DIR)/gcc-$(GCC_OFFICIAL_VER)
+endif #!BR2_TOOLCHAIN_BUILDROOT
# define patch location
-ifeq ($(BR2_TOOLCHAIN_NORMAL),y) # Normal toolchain
+ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y) # Normal toolchain
ifeq ($(GCC_SNAP_DATE),) # Not a snapshot
GCC_PATCH_DIR:=toolchain/gcc/$(GCC_VERSION)
else # Is a snapshot
@@ -47,9 +48,7 @@ else # Normal patch to snapshot
GCC_PATCH_DIR:=toolchain/gcc/$(GCC_VERSION)
endif # Snapshot patch
endif # Not a snapshot
-else # Prepatched toolchain
-GCC_PATCH_DIR:=$(VENDOR_PATCH_DIR)/gcc-$(GCC_OFFICIAL_VER)
-endif # Normal toolchain
+endif # BR2_TOOLCHAIN_BUILDROOT
GCC_SOURCE:=gcc-$(GCC_OFFICIAL_VER).tar.bz2
GCC_DIR:=$(TOOL_BUILD_DIR)/gcc-$(GCC_OFFICIAL_VER)
diff --git a/toolchain/gdb/Config.in b/toolchain/gdb/Config.in
index 31aeca989..802624f77 100644
--- a/toolchain/gdb/Config.in
+++ b/toolchain/gdb/Config.in
@@ -22,7 +22,8 @@ config BR2_PACKAGE_GDB_HOST
choice
prompt "GDB debugger Version"
- default BR2_GDB_VERSION_6_6
+ default BR2_GDB_VERSION_6_6 if !BR2_avr32
+ default BR2_GDB_VERSION_6_4 if BR2_avr32
depends on BR2_PACKAGE_GDB || BR2_PACKAGE_GDB_SERVER || BR2_PACKAGE_GDB_HOST
help
Select the version of gdb you wish to use.
diff --git a/toolchain/gdb/gdb.mk b/toolchain/gdb/gdb.mk
index 6486f874b..58934b846 100644
--- a/toolchain/gdb/gdb.mk
+++ b/toolchain/gdb/gdb.mk
@@ -3,7 +3,7 @@
# gdb
#
######################################################################
-ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
+ifeq ($(BR2_TOOLCHAIN_SOURCE),y)
GDB_VERSION:=$(strip $(subst ",, $(BR2_GDB_VERSION)))
#"))
else
@@ -20,7 +20,7 @@ GDB_DIR:=$(TOOL_BUILD_DIR)/gdb-$(GDB_VERSION)
GDB_PATCH_DIR:=toolchain/gdb/$(GDB_VERSION)
else
-ifeq ($(BR2_TOOLCHAIN_NORMAL),y)
+ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
GDB_SITE:=http://ftp.gnu.org/gnu/gdb
else
GDB_SITE:=$(VENDOR_SITE)
@@ -31,7 +31,7 @@ GDB_OFFICIAL_VERSION:=$(GDB_VERSION)$(VENDOR_SUFFIX)$(VENDOR_GDB_RELEASE)
GDB_SOURCE:=gdb-$(GDB_OFFICIAL_VERSION).tar.bz2
GDB_CAT:=$(BZCAT)
-ifeq ($(BR2_TOOLCHAIN_NORMAL),y)
+ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
GDB_PATCH_DIR:=toolchain/gdb/$(GDB_OFFICIAL_VERSION)
else
GDB_PATCH_DIR:=$(VENDOR_PATCH_DIR)/gdb-$(GDB_OFFICIAL_VERSION)
diff --git a/toolchain/uClibc/uclibc.mk b/toolchain/uClibc/uclibc.mk
index 5a3e54845..0bb5f5b03 100644
--- a/toolchain/uClibc/uclibc.mk
+++ b/toolchain/uClibc/uclibc.mk
@@ -4,7 +4,7 @@
#
#############################################################
-ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
+ifeq ($(BR2_TOOLCHAIN_SOURCE),y)
# specifying UCLIBC_CONFIG_FILE on the command-line overrides the .config
# setting.
@@ -34,14 +34,13 @@ UCLIBC_VER:=0.9.28
endif
UCLIBC_SITE:=http://www.uclibc.org/downloads
-ifeq ($(BR2_TOOLCHAIN_NORMAL),)
+ifeq ($(BR2_TOOLCHAIN_EXTERNAL_SOURCE),y)
UCLIBC_SITE:=$(VENDOR_SITE)
endif
UCLIBC_OFFICIAL_VERSION:=$(UCLIBC_VER)$(VENDOR_SUFFIX)$(VENDOR_UCLIBC_RELEASE)
-
-ifeq ($(BR2_TOOLCHAIN_NORMAL),y)
+ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y)
UCLIBC_PATCH_DIR:=toolchain/uClibc/
else
UCLIBC_PATCH_DIR:=$(VENDOR_PATCH_DIR)/uClibc-$(UCLIBC_OFFICIAL_VERSION)