diff options
Diffstat (limited to 'elements/gnu-toolchain/stage2-glibc.bst')
-rw-r--r-- | elements/gnu-toolchain/stage2-glibc.bst | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/elements/gnu-toolchain/stage2-glibc.bst b/elements/gnu-toolchain/stage2-glibc.bst index 1c3745e1..043dccb4 100644 --- a/elements/gnu-toolchain/stage2-glibc.bst +++ b/elements/gnu-toolchain/stage2-glibc.bst @@ -3,8 +3,8 @@ kind: manual sources: - kind: git url: upstream:glibc - track: release/2.22/master - ref: b995d95a5943785be3ab862b2d3276f3b4a22481 + track: release/2.25/master + ref: 49f97e641e4e84a42246655d30adbc4756e67114 depends: - filename: gnu-toolchain/stage1.bst @@ -31,7 +31,7 @@ config: # 4. Force configuration values of certain things that can't be detected # in a cross-compile. - | - case "%{bst-arch}" in + case "%{bst-target-arch}" in armv7*) ARCH_FLAGS="--without-fp" ;; esac @@ -100,17 +100,23 @@ config: # Install a symlink for the program interpreter (ld.so) so that binaries # built in stage 3 before the stage 3 glibc is built can use it. - # FIXME: get a better way of finding the name of the loader. The lib64 - # path is hardcoded into glibc in the file - # sysdeps/unix/sysv/linux/configure. + # + # The name of the dynamic loader is hardcoded in GCC during its 'configure' + # stage, but the file is actually provided by the libc (usually GLIBC). It + # would be better if we could ask GCC or GLIBC what the expected name of the + # ld.so is for the given platform rather than figuring it out - install -d %{install-root}/lib - | - case "%{bst-arch}" in + case "%{bst-target-arch}" in x86_64) install -d "%{install-root}/lib64" ln -s "%{prefix}/lib/ld-linux-x86-64.so.2" \ "%{install-root}/lib64/ld-linux-x86-64.so.2" ;; - ppc64) + ppc64l) + install -d "%{install-root}/lib64" + ln -s "%{prefix}/lib/ld64.so.2" \ + "%{install-root}/lib64/ld64.so.2" ;; + ppc64b) install -d "%{install-root}/lib64" ln -s "%{prefix}/lib/ld64.so.1" \ "%{install-root}/lib64/ld64.so.1" ;; |