Files

72 lines
1.7 KiB
Makefile
Raw Permalink Normal View History

2024-09-14 14:41:59 +03:00
# main StreamGoose build flow
SRC = src
DIST = out
2024-09-30 20:21:33 +03:00
CONFIGBINNAME = streamgoose-config
TCLDIR = tcldep
CROSSPREFIX=x86_64-w64-mingw32
CROSSCC = $(CROSSPREFIX)-gcc
CROSSCXX = $(CROSSPREFIX)-g++
2024-09-15 19:21:45 +03:00
GOBIN ?= go
2024-09-16 08:49:22 +03:00
GOMODTIDY ?= $(GOBIN) mod tidy
MFLAGS = -C $(SRC) GOBIN="$(GOBIN)" GOMODTIDY="$(GOMODTIDY)"
2024-09-14 14:41:59 +03:00
.PHONY: all test clean
all:
2024-09-16 08:49:22 +03:00
$(MAKE) $(MFLAGS) unix
$(MAKE) dist
2024-09-15 18:49:42 +03:00
headless:
2024-09-16 08:49:22 +03:00
$(MAKE) $(MFLAGS) unix-headless
2024-09-15 18:49:42 +03:00
$(MAKE) dist
win64:
2024-09-16 08:49:22 +03:00
$(MAKE) $(MFLAGS) win64
$(MAKE) dist
win64-cross:
2024-09-16 08:49:22 +03:00
$(MAKE) $(MFLAGS) CGO_ENABLED=1 CC=$(CROSSCC) CXX=$(CROSSCXX) win64
$(MAKE) dist
2024-09-15 18:49:42 +03:00
win64-headless:
2024-09-16 08:49:22 +03:00
$(MAKE) $(MFLAGS) win64-headless
2024-09-15 18:49:42 +03:00
$(MAKE) dist
2024-09-30 20:21:33 +03:00
config-linux:
cp $(SRC)/conf.tcl $(TCLDIR)/conf.tcl
cp $(TCLDIR)/tclkit-linux64 $(TCLDIR)/tclruntime
cd $(TCLDIR) && ./tclkit-linux64 ./sdx.kit qwrap conf.tcl -runtime tclruntime
mkdir -p $(DIST)
mv $(TCLDIR)/conf $(DIST)/$(CONFIGBINNAME)
2024-09-30 20:22:49 +03:00
rm $(TCLDIR)/tclruntime $(TCLDIR)/conf.tcl
2024-09-30 20:21:33 +03:00
config-win64:
cp $(SRC)/conf.tcl $(TCLDIR)/conf.tcl
cp $(TCLDIR)/tclkit-win64.exe $(TCLDIR)/tclruntime.exe
cd $(TCLDIR) && ./tclkit-win64.exe ./sdx.kit qwrap conf.tcl -runtime tclruntime.exe
mkdir -p $(DIST)
mv $(TCLDIR)/conf $(DIST)/$(CONFIGBINNAME).exe
2024-09-30 20:22:49 +03:00
rm $(TCLDIR)/tclruntime.exe $(TCLDIR)/conf.tcl
2024-09-30 20:21:33 +03:00
config-win64-cross:
cp $(SRC)/conf.tcl $(TCLDIR)/conf.tcl
cp $(TCLDIR)/tclkit-win64.exe $(TCLDIR)/tclruntime.exe
cd $(TCLDIR) && ./tclkit-linux64 ./sdx.kit qwrap conf.tcl -runtime tclruntime.exe
mkdir -p $(DIST)
mv $(TCLDIR)/conf $(DIST)/$(CONFIGBINNAME).exe
2024-09-30 20:22:49 +03:00
rm $(TCLDIR)/tclruntime.exe $(TCLDIR)/conf.tcl
2024-09-30 20:21:33 +03:00
dist:
2024-09-14 14:41:59 +03:00
mkdir -p $(DIST)
mv $(SRC)/streamgoose* $(DIST)/
2024-09-14 14:41:59 +03:00
cp -r webroot $(DIST)/
cp -r auth $(DIST)/
cp -r external $(DIST)/
cp config.json $(DIST)/
2024-09-30 20:21:33 +03:00
cp labels.ini $(DIST)/
2024-09-14 14:41:59 +03:00
clean:
rm -rf $(DIST)