summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/binutils/binutils.in.22
-rw-r--r--config/debug/gdb.in.gdbserver19
-rw-r--r--config/debug/gdb.in.native17
-rw-r--r--config/libc/mingw.in35
-rw-r--r--config/target.in23
5 files changed, 90 insertions, 6 deletions
diff --git a/config/binutils/binutils.in.2 b/config/binutils/binutils.in.2
index 47ae94c..f913355 100644
--- a/config/binutils/binutils.in.2
+++ b/config/binutils/binutils.in.2
@@ -35,7 +35,7 @@ if ELF2FLT_GIT
config ELF2FLT_GIT_CSET
string
prompt "git cset"
- default "a8bc69b882a55b1f1e437b50e33d3db8414eb68e"
+ default "6d80ab6c93409e796f85da404bde84b841231531"
help
Enter the git changeset to use.
diff --git a/config/debug/gdb.in.gdbserver b/config/debug/gdb.in.gdbserver
index 2f5576b..07e6e13 100644
--- a/config/debug/gdb.in.gdbserver
+++ b/config/debug/gdb.in.gdbserver
@@ -15,15 +15,30 @@ config GDB_GDBSERVER_HAS_IPA_LIB
depends on GDB_7_2_or_later
default y
+# gdbserver is then linked with "-static -Wl,--dynamic-list=..." which
config GDB_GDBSERVER_STATIC
bool
prompt "Build a static gdbserver"
- depends on CONFIGURE_has_static_link
- default y
+ depends on EXPERIMENTAL
help
In case you have trouble with dynamic loading of shared libraries,
you will find that a static gdbserver comes in handy.
+ However, it has been noticed at least on x86 that enabling this
+ option produces an invalid gdbserver binary. It is linked with
+ "-static -Wl,--dynamic-list=..." which
+ # (a) requests invalid program interpreter
+ # (b) crashes glibc/uClibc-ng and does not work with musl
+ # See https://sourceware.org/ml/libc-alpha/2017-03/msg00267.html
+
+ It is possible it would work with other architectures, hence it is
+ not completely removed. Use with care and report to the mailing list
+ if the resulting gdbserver works.
+
+ For further details, see:
+ https://sourceware.org/bugzilla/show_bug.cgi?id=19617
+ https://sourceware.org/bugzilla/show_bug.cgi?id=21086
+
config GDB_GDBSERVER_BUILD_IPA_LIB
bool
prompt "Build the IPA library"
diff --git a/config/debug/gdb.in.native b/config/debug/gdb.in.native
index 915debd..8684c05 100644
--- a/config/debug/gdb.in.native
+++ b/config/debug/gdb.in.native
@@ -15,9 +15,24 @@ if GDB_NATIVE
config GDB_NATIVE_STATIC
bool
prompt "Build a static native gdb"
- depends on CONFIGURE_has_static_link
+ depends on EXPERIMENTAL
help
In case you have trouble with dynamic loading of shared libraries,
you will find that a static gdb comes in handy.
+ However, it has been noticed at least on x86 that enabling this
+ option produces an invalid gdb binary. It is linked with
+ "-static -Wl,--dynamic-list=..." which
+ # (a) requests invalid program interpreter
+ # (b) crashes glibc/uClibc-ng and does not work with musl
+ # See https://sourceware.org/ml/libc-alpha/2017-03/msg00267.html
+
+ It is possible it would work with other architectures, hence it is
+ not completely removed. Use with care and report to the mailing list
+ if the resulting gdbserver works.
+
+ For further details, see:
+ https://sourceware.org/bugzilla/show_bug.cgi?id=19617
+ https://sourceware.org/bugzilla/show_bug.cgi?id=21086
+
endif # GDB_NATIVE
diff --git a/config/libc/mingw.in b/config/libc/mingw.in
index 62e7a46..936fd67 100644
--- a/config/libc/mingw.in
+++ b/config/libc/mingw.in
@@ -28,9 +28,19 @@ config WINAPI_V_5_0_0
prompt "5.0.0 (OBSOLETE)"
depends on OBSOLETE
+config WINAPI_V_4_0_6
+ bool
+ prompt "4.0.6"
+
+config WINAPI_V_4_0_5
+ bool
+ prompt "4.0.5 (OBSOLETE)"
+ depends on OBSOLETE
+
config WINAPI_V_4_0_4
bool
- prompt "4.0.4"
+ prompt "4.0.4 (OBSOLETE)"
+ depends on OBSOLETE
config WINAPI_V_4_0_2
bool
@@ -47,15 +57,31 @@ config WINAPI_V_4_0_0
prompt "4.0.0 (OBSOLETE)"
depends on OBSOLETE
+config WINAPI_V_3_3_0
+ bool
+ prompt "3.3.0 (OBSOLETE)"
+ depends on OBSOLETE
+
+config WINAPI_V_3_2_0
+ bool
+ prompt "3.2.0 (OBSOLETE)"
+ depends on OBSOLETE
+
config WINAPI_V_3_1_0
bool
- prompt "3.1.0"
+ prompt "3.1.0 (OBSOLETE)"
+ depends on OBSOLETE
config WINAPI_V_3_0_0
bool
prompt "3.0.0 (OBSOLETE)"
depends on OBSOLETE
+config WINAPI_V_2_0_9
+ bool
+ prompt "2.0.9 (OBSOLETE)"
+ depends on OBSOLETE
+
config WINAPI_V_2_0_8
bool
prompt "2.0.8 (OBSOLETE)"
@@ -86,12 +112,17 @@ config WINAPI_VERSION
# CT_INSERT_VERSION_STRING_BELOW
default "5.0.1" if WINAPI_V_5_0_1
default "5.0.0" if WINAPI_V_5_0_0
+ default "4.0.6" if WINAPI_V_4_0_6
+ default "4.0.5" if WINAPI_V_4_0_5
default "4.0.4" if WINAPI_V_4_0_4
default "4.0.2" if WINAPI_V_4_0_2
default "4.0.1" if WINAPI_V_4_0_1
default "4.0.0" if WINAPI_V_4_0_0
+ default "3.3.0" if WINAPI_V_3_3_0
+ default "3.2.0" if WINAPI_V_3_2_0
default "3.1.0" if WINAPI_V_3_1_0
default "3.0.0" if WINAPI_V_3_0_0
+ default "2.0.9" if WINAPI_V_2_0_9
default "2.0.8" if WINAPI_V_2_0_8
default "2.0.7" if WINAPI_V_2_0_7
help
diff --git a/config/target.in b/config/target.in
index a905b23..485c587 100644
--- a/config/target.in
+++ b/config/target.in
@@ -51,6 +51,29 @@ config MULTILIB
NOTE: The multilib feature in crosstool-NG is not well-tested.
Use at your own risk, and report success and/or failure.
+config DEMULTILIB
+ bool "Attempt to combine libraries into a single directory"
+ default y if !MULTILIB
+ depends on !MULTILIB || EXPERIMENTAL
+ help
+ Normally, Crosstool-NG installs the libraries into the directories
+ as the configure for these libraries determines appropriate. For
+ example, for AArch64 glibc wants to install the libraries into
+ /lib64 but the default dynamic linker path is /lib/ld-linux-aarch64.so.1
+ (which is installed as a symlink to ../lib64/ld-VER.so).
+
+ However, not all consumers of the toolchain can handle the libraries
+ residing in multiple directories. To appease them, crosstool-NG can
+ attempt to combine the libraries back into a single /lib directory and
+ create all other directories as symlinks to /lib. This requires all
+ the library names to be unique within each sysroot.
+
+ Note that GCC may also use separate sysroots for different multilibs.
+ Hence it may make sense to enable this option even for multilib toolchains.
+ However, separate roots are rare (any other architecture aside from
+ SuperH using them?) and hence not well tested in crosstool-NG; therefore,
+ this option is experimental when MULTILIB is enabled.
+
#--------------------------------------
config ARCH_SUPPORTS_BOTH_MMU
bool