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