snengame/Makefile

28 lines
924 B
Makefile

GAMEFILES=$(wildcard internal/game/*.go)
COORDFILEs=$(wildcard internal/coordinator/*.go)
#set variables
GIT_COMMIT := $(shell git rev-list -1 HEAD)
ifeq ($(PREFIX),) # PREFIX is environment variable, but if it is not set, then set default value
PREFIX := /usr/local
endif
all: client client2 server engine
client: $(GAMEFILES) $(wildcard cmd/client/*.go)
go build -ldflags "-X main.GitCommit=$(GIT_COMMIT)" ./cmd/client
client2: $(GAMEFILES) $(wildcard cmd/client2/*.go)
go build -ldflags "-X main.GitCommit=$(GIT_COMMIT)" ./cmd/client2
server: $(GAMEFILES) $(COORDFILEs) $(wildcard cmd/server/*.go)
go build -ldflags "-X main.GitCommit=$(GIT_COMMIT)" ./cmd/server
engine: $(GAMEFILES)
go build -ldflags "-X main.GitCommit=$(GIT_COMMIT)" ./cmd/engine
clean:
rm -f client server engine
run: engine
./engine
install: $(SNENGAME)
install -d $(DESTDIR)$(PREFIX)/bin
install -m 755 $(PROG) $(DESTDIR)$(PREFIX)/bin