.PHONY: clean test build build-all # 构建目标 BINARY := gofirewall # 默认构建 build: @echo "Building for current platform..." go build -o $(BINARY) # 清理构建产物 clean: @echo "Cleaning build artifacts..." @rm -f $(BINARY) $(BINARY)-* # 运行测试 test: @echo "Running tests..." go test ./... # 多平台构建 build-all: clean test @echo "Building for all platforms..." GOOS=linux GOARCH=amd64 go build -o $(BINARY)-linux-amd64 GOOS=linux GOARCH=arm64 go build -o $(BINARY)-linux-arm64 GOOS=windows GOARCH=amd64 go build -o $(BINARY)-windows-amd64.exe GOOS=darwin GOARCH=amd64 go build -o $(BINARY)-darwin-amd64 GOOS=darwin GOARCH=arm64 go build -o $(BINARY)-darwin-arm64