summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Korsgaard <jacmet@sunsite.dk>2008-12-15 15:28:48 +0000
committerPeter Korsgaard <jacmet@sunsite.dk>2008-12-15 15:28:48 +0000
commite2e4950b2d9334e6380e32cf30c7c7968747ccc0 (patch)
treec2d61eb791929dadfeaaade08db87c2551d6d51f
parent060dca08f9d90d78415dd1a7ce693e92d66f0d6b (diff)
toolchain: use same gdb Config.in for internal/external toolchains
We used to use different gdb configs for internal and external toolchains because mconf won't source the same file twice. This works, but is kind of sub optimal, as people forget to keep them in sync. Fix it to use the same file for both situations by shuffling around the config options a bit. Should work identical to before (except for the newer gdb versions available for ext).
-rw-r--r--toolchain/Config.in11
-rw-r--r--toolchain/Config.in.19
-rw-r--r--toolchain/Config.in.29
-rw-r--r--toolchain/external-toolchain/Config.in81
-rw-r--r--toolchain/external-toolchain/Config.in.277
-rw-r--r--toolchain/gdb/Config.in.254
-rw-r--r--toolchain/gdb/gdb.mk5
7 files changed, 96 insertions, 150 deletions
diff --git a/toolchain/Config.in b/toolchain/Config.in
index ccea8c5e7..d66ce1d38 100644
--- a/toolchain/Config.in
+++ b/toolchain/Config.in
@@ -28,7 +28,16 @@ config BR2_TOOLCHAIN_SOURCE
source "target/device/Config.in.toolchain"
-source "toolchain/Config.in.2"
+source "toolchain/Config.in.1"
source "toolchain/external-toolchain/Config.in"
+# we want gdb config in the middle of both source and external
+# toolchains, but mconf won't let us source the same file twice,
+# so put it here instead
+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/Config.in.1 b/toolchain/Config.in.1
new file mode 100644
index 000000000..83bc710b6
--- /dev/null
+++ b/toolchain/Config.in.1
@@ -0,0 +1,9 @@
+#
+
+if BR2_TOOLCHAIN_SOURCE
+source "toolchain/kernel-headers/Config.in"
+source "toolchain/uClibc/Config.in"
+source "toolchain/binutils/Config.in"
+source "toolchain/gcc/Config.in"
+source "toolchain/ccache/Config.in"
+endif
diff --git a/toolchain/Config.in.2 b/toolchain/Config.in.2
index c1733e96e..b8c151506 100644
--- a/toolchain/Config.in.2
+++ b/toolchain/Config.in.2
@@ -1,15 +1,6 @@
#
if BR2_TOOLCHAIN_SOURCE
-source "toolchain/kernel-headers/Config.in"
-source "toolchain/uClibc/Config.in"
-source "toolchain/binutils/Config.in"
-source "toolchain/gcc/Config.in"
-source "toolchain/ccache/Config.in"
-source "toolchain/gdb/Config.in"
-
-comment "Common Toolchain Options"
-
source "toolchain/elf2flt/Config.in"
source "toolchain/mklibs/Config.in"
source "toolchain/sstrip/Config.in"
diff --git a/toolchain/external-toolchain/Config.in b/toolchain/external-toolchain/Config.in
index 6c957bc9b..71dad0d76 100644
--- a/toolchain/external-toolchain/Config.in
+++ b/toolchain/external-toolchain/Config.in
@@ -1,9 +1,6 @@
#
if BR2_TOOLCHAIN_EXTERNAL
-comment "External Toolchain Options"
-
-
config BR2_TOOLCHAIN_EXTERNAL_LIB_C
string "The core C library from the external toolchain"
default "libc.so.0"
@@ -27,82 +24,4 @@ config BR2_TOOLCHAIN_EXTERNAL_STRIP
prompt "Strip shared libraries"
help
Strip shared libraries copied from the external toolchain.
-
-comment "Common Toolchain Options"
-
-source "toolchain/gdb/Config.in.2"
-
-config BR2_TOOLCHAIN_EXTERNAL_PATH
- string "External toolchain path"
- default "/path/to/staging_dir/usr"
- help
- Path to where the external toolchain is installed.
-
-config BR2_TOOLCHAIN_EXTERNAL_PREFIX
- string "External toolchain prefix"
- default "$(ARCH)-linux"
- help
- This the the external toolchain prefix. For example:
- armeb-unknown-linux-gnu, mipsel-unknown-linux-gnu, etc.
-
-choice
- prompt "Thread library implementation"
- default BR2_EXT_PTHREADS_OLD
- help
- Select the version of libpthreads used in the external toolchain.
-
- config BR2_EXT_PTHREADS_NONE
- bool
- prompt "none"
-
- config BR2_EXT_PTHREADS
- bool
- prompt "linuxthreads"
-
- config BR2_EXT_PTHREADS_OLD
- bool
- prompt "linuxthreads (stable/old)"
-
- config BR2_EXT_PTHREADS_NATIVE
- bool
- prompt "Native POSIX Threading (NPTL)"
-endchoice
-
-config BR2_LARGEFILE
- bool "Toolchain supports large files (> 2 GB) ?"
- depends on !BR2_cris
- default y
- help
- Set this option if the external toolchain supports large
- files (> 2 GB)
-
-
-config BR2_INET_IPV6
- bool "Toolchain supports IPv6 ?"
- help
- Set this option if the external toolchain supports IPv6.
-
-config BR2_INET_RPC
- bool "Toolchain supports RPC ?"
- help
- Set this option if the external toolchain supports RPC.
-
-config BR2_SOFT_FLOAT
- bool "Toolchain supports soft float ?"
- depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_powerpc
- help
- Set this option if the external toolchain supports soft float.
-
-config BR2_GCC_CROSS_CXX
- bool "Toolchain has C++ cross-compiler ?"
- help
- Set this option if the external toolchain has a C++
- cross-compiler.
-
-config BR2_TARGET_OPTIMIZATION
- string "Target Optimizations"
- default "-Os -pipe"
- help
- Optimizations to use when building for the target host.
-
endif
diff --git a/toolchain/external-toolchain/Config.in.2 b/toolchain/external-toolchain/Config.in.2
new file mode 100644
index 000000000..6d17455b1
--- /dev/null
+++ b/toolchain/external-toolchain/Config.in.2
@@ -0,0 +1,77 @@
+#
+
+if BR2_TOOLCHAIN_EXTERNAL
+config BR2_TOOLCHAIN_EXTERNAL_PATH
+ string "External toolchain path"
+ default "/path/to/staging_dir/usr"
+ help
+ Path to where the external toolchain is installed.
+
+config BR2_TOOLCHAIN_EXTERNAL_PREFIX
+ string "External toolchain prefix"
+ default "$(ARCH)-linux"
+ help
+ This the the external toolchain prefix. For example:
+ armeb-unknown-linux-gnu, mipsel-unknown-linux-gnu, etc.
+
+choice
+ prompt "Thread library implementation"
+ default BR2_EXT_PTHREADS_OLD
+ help
+ Select the version of libpthreads used in the external toolchain.
+
+ config BR2_EXT_PTHREADS_NONE
+ bool
+ prompt "none"
+
+ config BR2_EXT_PTHREADS
+ bool
+ prompt "linuxthreads"
+
+ config BR2_EXT_PTHREADS_OLD
+ bool
+ prompt "linuxthreads (stable/old)"
+
+ config BR2_EXT_PTHREADS_NATIVE
+ bool
+ prompt "Native POSIX Threading (NPTL)"
+endchoice
+
+config BR2_LARGEFILE
+ bool "Toolchain supports large files (> 2 GB) ?"
+ depends on !BR2_cris
+ default y
+ help
+ Set this option if the external toolchain supports large
+ files (> 2 GB)
+
+
+config BR2_INET_IPV6
+ bool "Toolchain supports IPv6 ?"
+ help
+ Set this option if the external toolchain supports IPv6.
+
+config BR2_INET_RPC
+ bool "Toolchain supports RPC ?"
+ help
+ Set this option if the external toolchain supports RPC.
+
+config BR2_SOFT_FLOAT
+ bool "Toolchain supports soft float ?"
+ depends on BR2_arm || BR2_armeb || BR2_mips || BR2_mipsel || BR2_powerpc
+ help
+ Set this option if the external toolchain supports soft float.
+
+config BR2_GCC_CROSS_CXX
+ bool "Toolchain has C++ cross-compiler ?"
+ help
+ Set this option if the external toolchain has a C++
+ cross-compiler.
+
+config BR2_TARGET_OPTIMIZATION
+ string "Target Optimizations"
+ default "-Os -pipe"
+ help
+ Optimizations to use when building for the target host.
+
+endif
diff --git a/toolchain/gdb/Config.in.2 b/toolchain/gdb/Config.in.2
deleted file mode 100644
index 6eafa6079..000000000
--- a/toolchain/gdb/Config.in.2
+++ /dev/null
@@ -1,54 +0,0 @@
-# Keep this in sync with Config.in
-# Why don't you use Config.in in the first place?
-
-comment "Gdb Options"
-
-config BR2_PACKAGE_GDB
- bool "Build gdb debugger for the Target"
- select BR2_PACKAGE_NCURSES
- help
- Build the full gdb debugger to run on the target.
-
-config BR2_PACKAGE_GDB_SERVER
- bool "Build gdb server for the Target"
- help
- Build the gdbserver stub to run on the target.
- A full gdb is needed to debug the progam.
-
-config BR2_PACKAGE_GDB_HOST
- bool "Build gdb for the Host"
- help
- Build gdb to run on the host to debug programs run on the target.
-
-choice
- prompt "GDB debugger Version"
- default BR2_GDB_VERSION_6_3
- depends on BR2_PACKAGE_GDB || BR2_PACKAGE_GDB_SERVER || BR2_PACKAGE_GDB_HOST
- help
- Select the version of gdb you wish to use.
-
- config BR2_EXT_GDB_VERSION_6_2_1
- bool "gdb 6.2.1"
-
- config BR2_EXT_GDB_VERSION_6_3
- bool "gdb 6.3"
-
- config BR2_EXT_GDB_VERSION_6_4
- bool "gdb 6.4"
-
- config BR2_EXT_GDB_VERSION_6_5
- bool "gdb 6.5"
-
- config BR2_EXT_GDB_VERSION_SNAPSHOT
- bool "gdb snapshot"
-
-endchoice
-
-config BR2_EXT_GDB_VERSION
- string
- default "6.2.1" if BR2_EXT_GDB_VERSION_6_2_1
- default "6.3" if BR2_EXT_GDB_VERSION_6_3
- default "6.4" if BR2_EXT_GDB_VERSION_6_4
- default "6.5" if BR2_EXT_GDB_VERSION_6_5
- default "6.6" if BR2_EXT_GDB_VERSION_6_6
- default "snapshot" if BR2_EXT_GDB_VERSION_SNAPSHOT
diff --git a/toolchain/gdb/gdb.mk b/toolchain/gdb/gdb.mk
index 66e0b4179..f239dba01 100644
--- a/toolchain/gdb/gdb.mk
+++ b/toolchain/gdb/gdb.mk
@@ -3,13 +3,8 @@
# gdb
#
######################################################################
-ifeq ($(BR2_TOOLCHAIN_SOURCE),y)
GDB_VERSION:=$(strip $(subst ",, $(BR2_GDB_VERSION)))
#"))
-else
-GDB_VERSION:=$(strip $(subst ",, $(BR2_EXT_GDB_VERSION)))
-#"))
-endif
ifeq ($(GDB_VERSION),snapshot)
# Be aware that this changes daily....