Skip to content

Commit 331af9f

Browse files
committed
Fix 32-bit MIPS musl targets.
1 parent 810f0f8 commit 331af9f

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

docker/musl-symlink.sh

+13
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,19 @@ main() {
4949
fi
5050
done
5151

52+
# despite using a completely static build, the 32-bit MIPS targets
53+
# link to libgcc_s, the shared libgcc, erroneously.
54+
if [[ "${arch}" == "mips-sf" ]] || [[ "${arch}" == "mipsel-sf" ]]; then
55+
local toolchain=
56+
local gcc_lib=
57+
local gcc_ver=
58+
toolchain=$(basename "${sysroot}")
59+
gcc_lib="/usr/local/lib/gcc/${toolchain}"
60+
# shellcheck disable=SC2012
61+
gcc_ver=$(ls -1 "${gcc_lib}" | head -n 1)
62+
ln -s "${gcc_lib}/${gcc_ver}/libgcc.a" "${gcc_lib}/${gcc_ver}/libgcc_s.a"
63+
fi
64+
5265
echo "${sysroot}/lib" >> "/etc/ld-musl-${arch}.path"
5366

5467
rm -rf "${0}"

0 commit comments

Comments
 (0)