From 0c52bbea72e5958659d63f1db75c97b14c5b563d Mon Sep 17 00:00:00 2001 From: e1732a364fed <75717694+e1732a364fed@users.noreply.github.com> Date: Sat, 1 Jan 2000 00:00:00 +0000 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0vsc=E7=BC=96=E8=AF=91?= =?UTF-8?q?=E7=9A=84workflow;=E4=BF=AE=E8=AE=A2Makefile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build_release_extra.yml | 36 +++++++++++++++++++++++ cmd/verysimple/Makefile_r_vsc | 4 +-- 2 files changed, 38 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build_release_extra.yml b/.github/workflows/build_release_extra.yml index d8df6e3..32bc28b 100644 --- a/.github/workflows/build_release_extra.yml +++ b/.github/workflows/build_release_extra.yml @@ -8,6 +8,42 @@ on: required: true jobs: + xgo: + runs-on: ubuntu-latest + steps: + - + name: Checkout + uses: actions/checkout@v3 + - + name: Build vsc(verysimple client) + uses: crazy-max/ghaction-xgo@v2 + with: + xgo_version: latest + go_version: 1.19 + dest: build + prefix: vsc + targets: windows/amd64,windows/arm64,linux/amd64,linux/arm64,darwin/amd64,darwin/arm64 + v: true + x: false + race: false + ldflags: -s -w -ldflags "-X 'main.Version=${{ github.event.inputs.tagName }}' -buildid=" + buildmode: default + trimpath: true + working_dir: cmd/verysimple + tags: "vcs" + + - name: create xz archive + shell: bash + run: | + cd cmd/verysimple/ && for i in vsc*; do tar -cJf $i.tar.xz $i -C ../../ examples/; done && touch -mt $(date +%Y01010000) *.tar.xz + + - name: Upload binaries to release + uses: svenstaro/upload-release-action@v2 + with: + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: cmd/verysimple/vsc*.tar.xz + tag: ${{ github.event.inputs.tagName }} + file_glob: true build: runs-on: ubuntu-latest diff --git a/cmd/verysimple/Makefile_r_vsc b/cmd/verysimple/Makefile_r_vsc index 6e66bb5..a2f963f 100644 --- a/cmd/verysimple/Makefile_r_vsc +++ b/cmd/verysimple/Makefile_r_vsc @@ -1,7 +1,7 @@ # 本文件的一些解释请参考 Makefile_release. # 本文件用于编译客户端版本的verysimple。vsc = verysimple client # 该版本使用cgo。 -# vsc因为开启了cgo,是较难交叉编译的,建议在目标平台上编译。 +# vsc因为开启了cgo,是较难交叉编译的,建议在目标平台上编译。或者搜索一下 "xgo" prefix :=vsc @@ -26,7 +26,7 @@ else ifeq ($(detected_OS),Windows) define compile - set CGO_ENABLED=1&& set GOOS=$(2)&& set GOARCH=$(3)&& $(cmd) $(1)$(4) + set CGO_ENABLED=1&& set GOOS=$(2)&& set GOARCH=$(3)&& $(cmd) ${prefix}_$(1)$(4) endef else