From 9b594611b03ce554425c04014b961ac6d55325ce Mon Sep 17 00:00:00 2001 From: "Alexander A. Klimov" Date: Tue, 19 Sep 2023 19:47:13 +0200 Subject: [PATCH] GHA: build with Go 1.20 (as in current OpenBSD) --- .github/workflows/go.yml | 134 +++++++++++++++++++++++++++++++++++++++ hardening.go | 2 +- hardening_js.go | 7 ++ 3 files changed, 142 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/go.yml create mode 100644 hardening_js.go diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml new file mode 100644 index 0000000..0b08e96 --- /dev/null +++ b/.github/workflows/go.yml @@ -0,0 +1,134 @@ +# SPDX-License-Identifier: GPL-3.0-or-later + +name: Go + +on: + push: + branches: + - master + pull_request: { } + +jobs: + build: + name: Build + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + go: + - '1.20' + + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-go@v4 + with: + go-version: ${{ matrix.go }} + + - run: CGO_ENABLED=0 GOOS=aix GOARCH=ppc64 GOPPC64=power8 go build ./... + - run: CGO_ENABLED=0 GOOS=aix GOARCH=ppc64 GOPPC64=power9 go build ./... + # /usr/bin/ld: cannot find -lgcc + #- run: CGO_ENABLED=0 GOOS=android GOARCH=386 GO386=softfloat go build ./... + #- run: CGO_ENABLED=0 GOOS=android GOARCH=386 GO386=sse2 go build ./... + #- run: CGO_ENABLED=0 GOOS=android GOARCH=amd64 GOAMD64=v1 go build ./... + #- run: CGO_ENABLED=0 GOOS=android GOARCH=amd64 GOAMD64=v2 go build ./... + #- run: CGO_ENABLED=0 GOOS=android GOARCH=amd64 GOAMD64=v3 go build ./... + #- run: CGO_ENABLED=0 GOOS=android GOARCH=amd64 GOAMD64=v4 go build ./... + #- run: CGO_ENABLED=0 GOOS=android GOARCH=arm GOARM=5 go build ./... + #- run: CGO_ENABLED=0 GOOS=android GOARCH=arm GOARM=6 go build ./... + #- run: CGO_ENABLED=0 GOOS=android GOARCH=arm GOARM=7 go build ./... + #- run: CGO_ENABLED=0 GOOS=android GOARCH=arm64 go build ./... + - run: CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 GOAMD64=v4 go build ./... + - run: CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build ./... + - run: CGO_ENABLED=0 GOOS=dragonfly GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=dragonfly GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=dragonfly GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=dragonfly GOARCH=amd64 GOAMD64=v4 go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=386 GO386=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=386 GO386=sse2 go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 GOAMD64=v4 go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=arm GOARM=5 go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=arm GOARM=6 go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=arm GOARM=7 go build ./... + - run: CGO_ENABLED=0 GOOS=freebsd GOARCH=riscv64 go build ./... + - run: CGO_ENABLED=0 GOOS=illumos GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=illumos GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=illumos GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=illumos GOARCH=amd64 GOAMD64=v4 go build ./... + # gcc: error: unrecognized command-line option '-framework' + #- run: CGO_ENABLED=0 GOOS=ios GOARCH=arm64 go build ./... + - run: CGO_ENABLED=0 GOOS=js GOARCH=wasm go build ./... + - run: CGO_ENABLED=0 GOOS=js GOARCH=wasm GOWASM=satconv go build ./... + - run: CGO_ENABLED=0 GOOS=js GOARCH=wasm GOWASM=signext go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=386 GO386=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=386 GO386=sse2 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GOAMD64=v4 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=5 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=6 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=loong64 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=mips GOMIPS=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=mips GOMIPS=hardfloat go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=mipsle GOMIPS=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=mipsle GOMIPS=hardfloat go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=mips64 GOMIPS64=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=mips64 GOMIPS64=hardfloat go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=mips64le GOMIPS64=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=mips64le GOMIPS64=hardfloat go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=ppc64 GOPPC64=power8 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=ppc64 GOPPC64=power9 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le GOPPC64=power8 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=ppc64le GOPPC64=power9 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=riscv64 go build ./... + - run: CGO_ENABLED=0 GOOS=linux GOARCH=s390x go build ./... + - run: CGO_ENABLED=0 GOOS=netbsd GOARCH=386 GO386=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=netbsd GOARCH=386 GO386=sse2 go build ./... + - run: CGO_ENABLED=0 GOOS=netbsd GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=netbsd GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=netbsd GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=netbsd GOARCH=amd64 GOAMD64=v4 go build ./... + - run: CGO_ENABLED=0 GOOS=netbsd GOARCH=arm GOARM=5 go build ./... + - run: CGO_ENABLED=0 GOOS=netbsd GOARCH=arm GOARM=6 go build ./... + - run: CGO_ENABLED=0 GOOS=netbsd GOARCH=arm GOARM=7 go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=386 GO386=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=386 GO386=sse2 go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=amd64 GOAMD64=v4 go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=arm GOARM=5 go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=arm GOARM=6 go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=arm GOARM=7 go build ./... + - run: CGO_ENABLED=0 GOOS=openbsd GOARCH=arm64 go build ./... + - run: CGO_ENABLED=0 GOOS=plan9 GOARCH=386 GO386=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=plan9 GOARCH=386 GO386=sse2 go build ./... + - run: CGO_ENABLED=0 GOOS=plan9 GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=plan9 GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=plan9 GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=plan9 GOARCH=amd64 GOAMD64=v4 go build ./... + - run: CGO_ENABLED=0 GOOS=plan9 GOARCH=arm GOARM=5 go build ./... + - run: CGO_ENABLED=0 GOOS=plan9 GOARCH=arm GOARM=6 go build ./... + - run: CGO_ENABLED=0 GOOS=plan9 GOARCH=arm GOARM=7 go build ./... + - run: CGO_ENABLED=0 GOOS=solaris GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=solaris GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=solaris GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=solaris GOARCH=amd64 GOAMD64=v4 go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=386 GO386=softfloat go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=386 GO386=sse2 go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=amd64 GOAMD64=v1 go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=amd64 GOAMD64=v2 go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=amd64 GOAMD64=v3 go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=amd64 GOAMD64=v4 go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=arm GOARM=5 go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=arm GOARM=6 go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=arm GOARM=7 go build ./... + - run: CGO_ENABLED=0 GOOS=windows GOARCH=arm64 go build ./... diff --git a/hardening.go b/hardening.go index 6e72ea4..1fa3dfb 100644 --- a/hardening.go +++ b/hardening.go @@ -1,5 +1,5 @@ // SPDX-License-Identifier: GPL-3.0-or-later -//go:build !openbsd +//go:build !js && !openbsd package main diff --git a/hardening_js.go b/hardening_js.go new file mode 100644 index 0000000..853a31c --- /dev/null +++ b/hardening_js.go @@ -0,0 +1,7 @@ +// SPDX-License-Identifier: GPL-3.0-or-later +//go:build js + +package main + +func hardening(bool, string) { +}