release: build portable static binaries

This commit is contained in:
geekjourneyx
2026-07-23 12:58:09 +00:00
parent c61fb29b66
commit 25bf9a5c90
2 changed files with 12 additions and 6 deletions
+7 -1
View File
@@ -66,7 +66,9 @@ jobs:
output="$3"
echo "Building ${output} for ${os}/${arch}..."
GOOS="${os}" GOARCH="${arch}" go build -trimpath -ldflags="${LDFLAGS}" -o "${bundle_dir}/${output}" ./cmd/md2wechat
CGO_ENABLED=0 GOOS="${os}" GOARCH="${arch}" \
go build -trimpath -ldflags="${LDFLAGS}" \
-o "${bundle_dir}/${output}" ./cmd/md2wechat
echo "✓ ${output}"
}
@@ -151,6 +153,10 @@ jobs:
output="$("$binary" version --json)"
printf '%s\n' "$output"
echo "$output" | grep -q "\"version\":\"${VERSION}\""
file "${bundle_dir}/md2wechat-linux-amd64" |
grep -q 'statically linked'
file "${bundle_dir}/md2wechat-linux-arm64" |
grep -q 'statically linked'
- name: Smoke Homebrew archive from same artifact
env:
+5 -5
View File
@@ -15,19 +15,19 @@ release:
@echo "Version: $(VERSION)"
@echo ""
@echo "📦 Building for Linux amd64..."
@GOOS=linux GOARCH=amd64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-linux-amd64 ./cmd/md2wechat
@CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-linux-amd64 ./cmd/md2wechat
@echo "✓ Linux amd64"
@echo "📦 Building for Linux arm64..."
@GOOS=linux GOARCH=arm64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-linux-arm64 ./cmd/md2wechat
@CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-linux-arm64 ./cmd/md2wechat
@echo "✓ Linux arm64"
@echo "📦 Building for macOS amd64 (Intel)..."
@GOOS=darwin GOARCH=amd64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-darwin-amd64 ./cmd/md2wechat
@CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-darwin-amd64 ./cmd/md2wechat
@echo "✓ macOS amd64"
@echo "📦 Building for macOS arm64 (Apple Silicon)..."
@GOOS=darwin GOARCH=arm64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-darwin-arm64 ./cmd/md2wechat
@CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-darwin-arm64 ./cmd/md2wechat
@echo "✓ macOS arm64"
@echo "📦 Building for Windows amd64..."
@GOOS=windows GOARCH=amd64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-windows-amd64.exe ./cmd/md2wechat
@CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -trimpath -ldflags="$(LDFLAGS)" -o bin/md2wechat-windows-amd64.exe ./cmd/md2wechat
@echo "✓ Windows amd64"
@echo ""
@chmod +x bin/*-linux* bin/*-darwin* 2>/dev/null || true