summaryrefslogtreecommitdiff
path: root/config/target.in
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2017-03-17 07:33:52 (GMT)
committerAlexey Neyman <stilor@att.net>2017-03-17 21:31:17 (GMT)
commit63b2a19de4b33f304b236850028b6c6f32ce51e2 (patch)
tree745e4b106b22b26b68281492af6552fe244c2b5d /config/target.in
parent1ca65187f72b963f9558d6505e78b5117b677ece (diff)
Add an option to "demultilib"
It turns out buildroot does not currently accept a toolchain where a dynamic linker does not reside in the multi-os-directory. Unfortunately this is how glibc installs itself on AArch64 without any extra tricks. So, provide an option to force everything into /lib or /usr/lib; patch to buildroot will be worked on separately. Signed-off-by: Alexey Neyman <stilor@att.net>
Diffstat (limited to 'config/target.in')
-rw-r--r--config/target.in23
1 files changed, 23 insertions, 0 deletions
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