summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/binutils/binutils.in18
-rw-r--r--config/binutils/binutils.in.23
-rw-r--r--config/debug/gdb.in.gdbserver2
-rw-r--r--config/debug/gdb.in.native1
-rw-r--r--config/libc/glibc.in.22
5 files changed, 16 insertions, 10 deletions
diff --git a/config/binutils/binutils.in b/config/binutils/binutils.in
index e66c972..695256a 100644
--- a/config/binutils/binutils.in
+++ b/config/binutils/binutils.in
@@ -178,10 +178,14 @@ config BINUTILS_HAS_PLUGINS
config BINUTILS_HAS_PKGVERSION_BUGURL
bool
-# Force using the BFD linker if needed
-# This is the case for some C libraries (eg. glibc at least) and affected
-# components can select this
-config BINUTILS_FORCE_LD_BFD
+# Force using the BFD linker if needed. There are two options:
+# - For some C libraries (eg. glibc at least), BFD ld must be
+# built and be selected by default.
+# - For elf2flt, BFD ld must be the only linker built.
+config BINUTILS_FORCE_LD_BFD_DEFAULT
+ bool
+
+config BINUTILS_FORCE_LD_BFD_ONLY
bool
choice
@@ -198,7 +202,7 @@ config BINUTILS_LINKER_GOLD
bool
prompt "gold"
depends on BINUTILS_GOLD_SUPPORT
- depends on ! BINUTILS_FORCE_LD_BFD
+ depends on !BINUTILS_FORCE_LD_BFD_DEFAULT && !BINUTILS_FORCE_LD_BFD_ONLY
select BINUTILS_GOLD_INSTALLED
help
gold is a new, optimised, multi-threaded linker with support
@@ -209,6 +213,7 @@ config BINUTILS_LINKER_GOLD
config BINUTILS_LINKER_LD_GOLD
bool
prompt "ld, gold"
+ depends on !BINUTILS_FORCE_LD_BFD_ONLY
depends on BINUTILS_GOLD_SUPPORT
select BINUTILS_GOLD_INSTALLED
select BINUTILS_LINKER_BOTH
@@ -221,10 +226,11 @@ config BINUTILS_LINKER_LD_GOLD
config BINUTILS_LINKER_GOLD_LD
bool
prompt "gold, ld"
+ depends on !BINUTILS_FORCE_LD_BFD_ONLY
depends on BINUTILS_GOLD_SUPPORT
select BINUTILS_GOLD_INSTALLED
select BINUTILS_LINKER_BOTH
- select BINUTILS_LD_WRAPPER if BINUTILS_FORCE_LD_BFD
+ select BINUTILS_LD_WRAPPER if BINUTILS_FORCE_LD_BFD_DEFAULT
help
Both the historical ld and the new gold linkers will be
installed, with gold being the default linker used.
diff --git a/config/binutils/binutils.in.2 b/config/binutils/binutils.in.2
index 78c2a88..227f3d8 100644
--- a/config/binutils/binutils.in.2
+++ b/config/binutils/binutils.in.2
@@ -2,9 +2,10 @@
if ARCH_BINFMT_FLAT
-config ELF2FLT_REQUIRES_ZLIB
+config ELF2FLT_REQUIRES
def_bool y
select ZLIB
+ select BINUTILS_FORCE_LD_BFD_ONLY
comment "elf2flt"
diff --git a/config/debug/gdb.in.gdbserver b/config/debug/gdb.in.gdbserver
index feb3a0d..2f5576b 100644
--- a/config/debug/gdb.in.gdbserver
+++ b/config/debug/gdb.in.gdbserver
@@ -3,8 +3,8 @@
config GDB_GDBSERVER
bool
prompt "gdbserver"
+ default y
depends on ! BARE_METAL
- depends on CC_LANG_CXX || !GDB_7_12_or_later
help
Build and install a gdbserver for the target, to run on the target.
diff --git a/config/debug/gdb.in.native b/config/debug/gdb.in.native
index 634b13b..915debd 100644
--- a/config/debug/gdb.in.native
+++ b/config/debug/gdb.in.native
@@ -5,7 +5,6 @@ config GDB_NATIVE
prompt "Native gdb"
depends on ! BARE_METAL
depends on ! BACKEND
- depends on CC_LANG_CXX || !GDB_7_12_or_later
select EXPAT_TARGET
select NCURSES_TARGET
help
diff --git a/config/libc/glibc.in.2 b/config/libc/glibc.in.2
index 8c8bb82..9d3c2e1 100644
--- a/config/libc/glibc.in.2
+++ b/config/libc/glibc.in.2
@@ -23,7 +23,7 @@ config LIBC_GLIBC_USE_PORTS
config LIBC_glibc_family
bool
default y
- select BINUTILS_FORCE_LD_BFD
+ select BINUTILS_FORCE_LD_BFD_DEFAULT
config LIBC_GLIBC_EXTRA_CONFIG_ARRAY
string