From 698e4aed71d282e20cf54086034acbbdb2ad61d5 Mon Sep 17 00:00:00 2001 From: Sam Thursfield Date: Wed, 5 Jul 2017 16:39:37 +0000 Subject: gnu-toolchain: Add /lib64 -> /usr/lib64 symlink on 64-bit arches This is required at least for armv8l64, otherwise the glibc.bst element installs a symlink in /usr/lib/ld-linux-aarch64.so.2 that points to a missing file (it expects /usr/lib64/ld-linux-aarch64.so.2 to exist, but if /lib64 is a directory rather than a symlink then that file ends up only in the /lib64/ directory). This also makes our filesystem hierarchy more consistent with other GNU/Linux operating systems. --- elements/gnu-toolchain/stage2-glibc.bst | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'elements/gnu-toolchain/stage2-glibc.bst') diff --git a/elements/gnu-toolchain/stage2-glibc.bst b/elements/gnu-toolchain/stage2-glibc.bst index 809803fa..8c75e788 100644 --- a/elements/gnu-toolchain/stage2-glibc.bst +++ b/elements/gnu-toolchain/stage2-glibc.bst @@ -109,17 +109,20 @@ config: - | case "%{bst-target-arch}" in x86_64) - install -d "%{install-root}/lib64" + install -d "%{install-root}/usr/lib64" + ln -s "/usr/lib64" "%{install-root}/lib64" ln -s "%{prefix}/lib/ld-linux-x86-64.so.2" \ - "%{install-root}/lib64/ld-linux-x86-64.so.2" ;; + "%{install-root}/usr/lib64/ld-linux-x86-64.so.2" ;; ppc64l) - install -d "%{install-root}/lib64" + install -d "%{install-root}/usr/lib64" + ln -s "/usr/lib64" "%{install-root}/lib64" ln -s "%{prefix}/lib/ld64.so.2" \ - "%{install-root}/lib64/ld64.so.2" ;; + "%{install-root}/usr/lib64/ld64.so.2" ;; ppc64b) - install -d "%{install-root}/lib64" + install -d "%{install-root}/usr/lib64" + ln -s "/usr/lib64" "%{install-root}/lib64" ln -s "%{prefix}/lib/ld64.so.1" \ - "%{install-root}/lib64/ld64.so.1" ;; + "%{install-root}/usr/lib64/ld64.so.1" ;; *) loader=$(basename $(ls "%{install-root}%{prefix}"/lib/ld-linux*)) [ -z $loader ] && loader=$(basename $(ls "%{install-root}%{prefix}"/lib/ld.so*)) -- cgit v1.2.1