diff options
author | Alexey Neyman <stilor@att.net> | 2017-03-17 00:33:52 -0700 |
---|---|---|
committer | Alexey Neyman <stilor@att.net> | 2017-03-17 14:31:17 -0700 |
commit | 63b2a19de4b33f304b236850028b6c6f32ce51e2 (patch) | |
tree | 745e4b106b22b26b68281492af6552fe244c2b5d /config/target.in | |
parent | 1ca65187f72b963f9558d6505e78b5117b677ece (diff) | |
download | crosstool-ng-63b2a19de4b33f304b236850028b6c6f32ce51e2.tar.gz crosstool-ng-63b2a19de4b33f304b236850028b6c6f32ce51e2.tar.bz2 crosstool-ng-63b2a19de4b33f304b236850028b6c6f32ce51e2.zip |
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.in | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/config/target.in b/config/target.in index a905b239..485c5876 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 |