diff --git a/meta-oniro-core/recipes-devtools/go/go_%.bbappend b/meta-oniro-core/recipes-devtools/go/go_%.bbappend new file mode 100644 index 0000000000000000000000000000000000000000..12f2ae9bb7cfd171316f10d25356daad30b20da9 --- /dev/null +++ b/meta-oniro-core/recipes-devtools/go/go_%.bbappend @@ -0,0 +1,25 @@ +# SPDX-FileCopyrightText: Huawei Inc. +# +# SPDX-License-Identifier: Apache-2.0 + +do_configure:prepend () { + # FIXME quick and dirty workaround for + # https://github.com/golang/go/issues/51790 + # until we've fixed this properly + + if [ "${@d.getVar("TARGET_LIBC")}" = "musl" ]; then + sed -i -e 's,ld-linux-x86-64.so.2,ld-musl-x86_64.so.1,' ${S}/src/cmd/link/internal/amd64/obj.go + if echo ${@d.getVar("TARGET_FPU")} | grep -q soft; then + sed -i -e 's,ld-linux.so.3,ld-musl-arm.so.1,' ${S}/src/cmd/link/internal/arm/obj.go + else + sed -i -e 's,ld-linux.so.3,ld-musl-armhf.so.1,' ${S}/src/cmd/link/internal/arm/obj.go + fi + sed -i -e 's,ld-linux-aarch64.so.1,ld-musl-aarch64.so.1,' ${S}/src/cmd/link/internal/arm64/obj.go + sed -i -e 's,ld.so.1,ld-musl-mips.so.1,' ${S}/src/cmd/link/internal/mips/obj.go + sed -i -e 's,ld64.so.1,ld-musl-mips64.so.1,' ${S}/src/cmd/link/internal/mips64/obj.go + sed -i -e 's,ld64.so.1,ld-musl-powerpc64.so.1,' ${S}/src/cmd/link/internal/ppc64/obj.go + sed -i -e 's,ld.so.1,ld-musl-riscv64.so.1,' ${S}/src/cmd/link/internal/riscv64/obj.go + sed -i -e 's,ld64.so.1,ld-musl-s390x.so.1,' ${S}/src/cmd/link/internal/s390x/obj.go + sed -i -e 's,ld-linux.so.2,ld-musl-i386.so.1,' ${S}/src/cmd/link/internal/x86/obj.go + fi +}