mirror of
https://github.com/net-byte/vtun
synced 2024-03-14 10:50:03 +08:00
40 lines
1015 B
Bash
Executable File
40 lines
1015 B
Bash
Executable File
#!/bin/bash
|
|
RELEASE_BIN_DIR='./bin/'
|
|
RELEASE_NAME='vtun'
|
|
PACKAGE_NAME='github.com/net-byte/vtun/common'
|
|
|
|
# create dir
|
|
function create_dir() {
|
|
if [ ! -d $1 ];then
|
|
mkdir $1
|
|
fi
|
|
}
|
|
|
|
# build
|
|
function go_build() {
|
|
suffix=''
|
|
if [[ "$1" == "windows" ]]; then
|
|
suffix='.exe'
|
|
fi
|
|
CGO_ENABLED=0 GOOS=$1 GOARCH=$2 go build -o "${RELEASE_BIN_DIR}${RELEASE_NAME}-$1-$2${suffix}" -ldflags "-w -s -X '${PACKAGE_NAME}.Version=v1.8.$(date +%Y%m%d)' -X '${PACKAGE_NAME}.GoVersion=$(go version)' -X '${PACKAGE_NAME}.GitHash=$(git show -s --format=%H)' -X '${PACKAGE_NAME}.BuildTime=$(git show -s --format=%cd)'" ./main.go
|
|
}
|
|
|
|
# main
|
|
function main() {
|
|
rm -rf $RELEASE_BIN_DIR
|
|
go clean
|
|
go mod tidy
|
|
create_dir $RELEASE_BIN_DIR
|
|
go_build linux 386
|
|
go_build linux amd64
|
|
go_build linux arm
|
|
go_build linux arm64
|
|
go_build darwin arm64
|
|
go_build darwin amd64
|
|
go_build windows 386
|
|
go_build windows amd64
|
|
go_build windows arm
|
|
go_build windows arm64
|
|
}
|
|
|
|
main |