Skip to content

Commit

Permalink
fix Makefile
Browse files Browse the repository at this point in the history
  • Loading branch information
liuguangw committed Dec 16, 2021
1 parent 7d4a95c commit 2864ef7
Show file tree
Hide file tree
Showing 3 changed files with 49 additions and 36 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/publish_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
uses: softprops/action-gh-release@v1
with:
files: |
release-*.tar.gz
billing-release-*.tar.gz
draft: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
43 changes: 24 additions & 19 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,38 +1,43 @@
appVersion ?= 0.0.0
appVersion ?= 1.3.3
appBuildTime ?= $(shell TZ=Asia/Shanghai date "+%F %T GMT%:z")
appGitCommitHash ?= $(shell git rev-parse HEAD)
projectName ?= go_app
projectName ?= billing
appModuleName = github.com/liuguangw/billing_go/services
buildLdFlags =-X $(appModuleName).appVersion=$(appVersion)
buildLdFlags += -X '$(appModuleName).appBuildTime=$(appBuildTime)'
buildLdFlags += -X $(appModuleName).gitCommitHash=$(appGitCommitHash)
CGO_ENABLED ?= 0
GO_BUILD=go build -v -ldflags "-w -s $(buildLdFlags)"
GO_BUILD=go build -ldflags "-w -s $(buildLdFlags)"
EXTRA_FILES = config.yaml LICENSE README.md
releasePath ?= ./release
releasePath = ./release

define build_app
mkdir -p $(releasePath)
echo "build $(projectName)\(linux/$(2)\)"
define release_app
@echo build for $(2)
@mkdir -p $(releasePath)
@echo "build $(projectName) (linux/$(2))"
@GOOS=linux GOARCH=$(1) $(GO_BUILD) -o $(releasePath)/$(projectName)
echo "build $(projectName)\(windows/$(2)\)"
@echo "build $(projectName) (windows/$(2))"
@GOOS=windows GOARCH=$(1) $(GO_BUILD) -o $(releasePath)/$(projectName).exe
cp $(EXTRA_FILES) $(releasePath)/
mv $(releasePath) ./$(projectName)-$(2)
tar -zcvf $(projectName)-$(2).tar.gz ./$(projectName)-$(2)
rm -rf ./$(projectName)-$(2)
@cp $(EXTRA_FILES) $(releasePath)/
@mv $(releasePath) ./$(projectName)-release-$(2)
@tar -zcf $(projectName)-release-$(2).tar.gz $(projectName)-release-$(2)
@rm -rf ./$(projectName)-release-$(2)
@echo output path: $(projectName)-release-$(2).tar.gz
endef

build:
@$(GO_BUILD) -o $(projectName)
@echo build $(projectName) ok

all:
#build for x32
$(call build_app,386,x32)
#build for x64
$(call build_app,amd64,x64)
x32:
$(call release_app,386,x32)

x64:
$(call release_app,amd64,x64)

all:x32 x64

clean:
rm -rf ./*.tar.gz
@rm -rf ./billing*

.PHONY: build all clean
.PHONY: build x32 x64 all clean
40 changes: 24 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,22 +19,30 @@
### 2.手工编译
如果你想亲自进行编译,需要确保你的操作系统满足以下条件

- 设备已连接网络

- 已安装Git

- 已安装Go 1.17或者更高版本

#### Windows环境下编译

在Windows下编译,只需要双击项目目录下的`build.bat`即可

#### Linux环境下编译

```bash
# 切换到项目目录下执行下面的命令
go build -o billing
```
- Linux系统环境
- 设备已连接网络
- 已安装Git
- 已安装make
- 已安装Go 1.17或者更高版本

```bash
# make命令说明

# 构建
make

# 清理
make clean

# 构建并且打包32位
make x32

# 构建并且打包64位
make x64

# 构建并且打包所有架构
make all
```

## 相关文件说明

Expand Down

0 comments on commit 2864ef7

Please sign in to comment.