Files

32 lines
937 B
Bash
Executable File

#!/usr/bin/env bash
# 构建带版本号的 Windows exe。
#
# 用法:./scripts/build-windows.sh [amd64|arm64]
# 产物:build/bin/huya-gui-v<版本>.exe
#
# 版本号从 internal/version/version.go 读取,保证 exe 文件名、编译进去的版本号
# 与界面显示三者一致,不需要在多个地方手改。
set -euo pipefail
cd "$(dirname "$0")/.."
ARCH="${1:-amd64}"
VERSION="$(sed -n 's/^var Version = "\(.*\)"$/\1/p' internal/version/version.go)"
if [ -z "${VERSION}" ]; then
echo "无法从 internal/version/version.go 读取版本号" >&2
exit 1
fi
OUT="huya-gui-v${VERSION}.exe"
echo "构建 windows/${ARCH} -> build/bin/${OUT} (版本 v${VERSION})"
# -nopackage:交叉编译时不生成 NSIS 安装包,只产出 exe。
wails build \
-platform "windows/${ARCH}" \
-clean \
-nopackage \
-o "${OUT}" \
-ldflags "-X huya-go/internal/version.Version=${VERSION}"
echo "完成: build/bin/${OUT}"