45 lines
759 B
Makefile
45 lines
759 B
Makefile
# main StreamGoose build flow
|
|
|
|
SRC = src
|
|
DIST = out
|
|
CROSSPREFIX=x86_64-w64-mingw32
|
|
CROSSCC = $(CROSSPREFIX)-gcc
|
|
CROSSCXX = $(CROSSPREFIX)-g++
|
|
GOBIN ?= go
|
|
GOMODTIDY ?= $(GOBIN) mod tidy
|
|
MFLAGS = -C $(SRC) GOBIN="$(GOBIN)" GOMODTIDY="$(GOMODTIDY)"
|
|
|
|
.PHONY: all test clean
|
|
|
|
all:
|
|
$(MAKE) $(MFLAGS) unix
|
|
$(MAKE) dist
|
|
|
|
headless:
|
|
$(MAKE) $(MFLAGS) unix-headless
|
|
$(MAKE) dist
|
|
|
|
win64:
|
|
$(MAKE) $(MFLAGS) win64
|
|
$(MAKE) dist
|
|
|
|
win64-cross:
|
|
$(MAKE) $(MFLAGS) CGO_ENABLED=1 CC=$(CROSSCC) CXX=$(CROSSCXX) win64
|
|
$(MAKE) dist
|
|
|
|
win64-headless:
|
|
$(MAKE) $(MFLAGS) win64-headless
|
|
$(MAKE) dist
|
|
|
|
dist:
|
|
mkdir -p $(DIST)
|
|
mv $(SRC)/streamgoose* $(DIST)/
|
|
cp -r webroot $(DIST)/
|
|
cp -r auth $(DIST)/
|
|
cp -r external $(DIST)/
|
|
cp config.json $(DIST)/
|
|
|
|
clean:
|
|
rm -rf $(DIST)
|
|
|