golang is causing odd linker errors on these platforms: FreeBSD 13: go build -o /tmp/cirrus-ci-build/plugins/golang/examples/disk/nbdkit-godisk-plugin.so -buildmode=c-shared # main /usr/local/go119/pkg/tool/freebsd_amd64/link: running cc failed: exit status 1 ld: error: /lib/libc.so.7: undefined reference to environ [--no-allow-shlib-undefined] ld: error: /lib/libc.so.7: undefined reference to __progname [--no-allow-shlib-undefined] cc: error: linker command failed with exit code 1 (use -v to see invocation) gmake[3]: *** [Makefile:1097: examples/disk/nbdkit-godisk-plugin.so] Error 2
MacOS 12: go build -o /private/var/folders/76/zy5ktkns50v6gt5g8r0sf6sc0000gn/T/cirrus-ci-build/plugins/golang/examples/disk/nbdkit-godisk-plugin.so -buildmode=c-shared # main /opt/homebrew/Cellar/go/1.20.1/libexec/pkg/tool/darwin_arm64/link: running clang failed: exit status 1 ld: unknown option: --unresolved-symbols=ignore-in-object-files clang: error: linker command failed with exit code 1 (use -v to see invocation) gmake[3]: *** [Makefile:1097: examples/disk/nbdkit-godisk-plugin.so] Error 1 It's easier to just ignore golang on these platforms than to worry about why the Go community is playing weird games with the linker. --- ci/gitlab/builds.yml | 5 ++++- ci/manifest.yml | 14 +++++++++++--- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/ci/gitlab/builds.yml b/ci/gitlab/builds.yml index 2db78e23..1772f882 100644 --- a/ci/gitlab/builds.yml +++ b/ci/gitlab/builds.yml @@ -374,6 +374,7 @@ x86_64-freebsd-13: CIRRUS_VM_IMAGE_NAME: freebsd-13-1 CIRRUS_VM_IMAGE_SELECTOR: image_family CIRRUS_VM_INSTANCE_TYPE: freebsd_instance + GOLANG: skip INSTALL_COMMAND: pkg install -y NAME: freebsd-13 UPDATE_COMMAND: pkg update @@ -388,6 +389,7 @@ x86_64-freebsd-current: CIRRUS_VM_IMAGE_NAME: freebsd-13-0-snap CIRRUS_VM_IMAGE_SELECTOR: image_family CIRRUS_VM_INSTANCE_TYPE: freebsd_instance + GOLANG: skip INSTALL_COMMAND: pkg install -y NAME: freebsd-current UPDATE_COMMAND: pkg update @@ -397,11 +399,12 @@ x86_64-freebsd-current: aarch64-macos-12: extends: .cirrus_build_job needs: [] - allow_failure: true + allow_failure: false variables: CIRRUS_VM_IMAGE_NAME: ghcr.io/cirruslabs/macos-monterey-base:latest CIRRUS_VM_IMAGE_SELECTOR: image CIRRUS_VM_INSTANCE_TYPE: macos_instance + GOLANG: skip INSTALL_COMMAND: brew install NAME: macos-12 PATH_EXTRA: /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin:/usr/local/opt/rpcgen/bin diff --git a/ci/manifest.yml b/ci/manifest.yml index 4ad070d7..554641b6 100644 --- a/ci/manifest.yml +++ b/ci/manifest.yml @@ -82,9 +82,17 @@ targets: freebsd-12: x86_64 - freebsd-13: x86_64 + freebsd-13: + jobs: + - arch: x86_64 + variables: + GOLANG: skip - freebsd-current: x86_64 + freebsd-current: + jobs: + - arch: x86_64 + variables: + GOLANG: skip opensuse-leap-153: x86_64 @@ -95,10 +103,10 @@ targets: macos-12: jobs: - arch: aarch64 - allow-failure: true variables: PATH_EXTRA: /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin:/usr/local/opt/rpcgen/bin PKG_CONFIG_PATH: /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig:/opt/homebrew/opt/e2fsprogs/lib/pkgconfig RUST: skip + GOLANG: skip ubuntu-2004: x86_64 -- 2.39.2 _______________________________________________ Libguestfs mailing list Libguestfs@redhat.com https://listman.redhat.com/mailman/listinfo/libguestfs