63 lines
No EOL
1.4 KiB
Makefile
63 lines
No EOL
1.4 KiB
Makefile
include Makefile.common
|
|
include Makefile.sthrift
|
|
include Makefile.autogen
|
|
|
|
# use zig cc/c++ to statically link deps
|
|
TARGET_TRIPLE := x86_64-linux
|
|
|
|
|
|
TAG ?= dev
|
|
IMAGE := infra-ctl-registry.obj.my.id/study-dumps/wpw-final:$(TAG)
|
|
|
|
CFLAGS ?=
|
|
CFLAGS += -target $(TARGET_TRIPLE)
|
|
|
|
CXXFLAGS ?=
|
|
CXXFLAGS += -target $(TARGET_TRIPLE)
|
|
|
|
GOFLAGS ?=
|
|
GOFLAGS += -x -trimpath -o docker/server
|
|
|
|
all:
|
|
gen: gen-backend-thrift gen-frontend-thrift
|
|
|
|
clean: clean-public
|
|
rm docker/server
|
|
|
|
clean-public:
|
|
rm -r public/
|
|
mkdir public
|
|
echo "$$_G_PUBLIC_EXPORTER" > public/public.go
|
|
|
|
build: frontend-build backend-build
|
|
build-dev: frontend-debug backend-build
|
|
build.docker: build
|
|
"docker" build -t $(IMAGE) docker/
|
|
|
|
publish:
|
|
"docker" push $(IMAGE)
|
|
|
|
backend-dev:
|
|
go run github.com/ii64/go-dlv-manager@latest
|
|
backend-build: clean-public
|
|
CC="zig cc $(CFLAGS)" CXX="zig c++ $(CXXFLAGS)" go build $(GOFLAGS) wpw-common/cmd/server
|
|
|
|
frontend-dev:
|
|
$(MAKE) -C frontend dev
|
|
frontend-debug: clean-public
|
|
$(MAKE) -C frontend build ENV=dev
|
|
frontend-build: clean-public
|
|
$(MAKE) -C frontend build ENV=production
|
|
frontend-preview:
|
|
$(MAKE) -C frontend preview
|
|
|
|
gen-backend-thrift:
|
|
$(MAKE) gen-idl \
|
|
THRIFT_DIR_SRC=$(THRIFT_IDL_DIR) \
|
|
THRIFT_DIR_OUT=$(THRIFT_GEN_DIR)
|
|
gen-frontend-thrift:
|
|
$(MAKE) gen-idl \
|
|
THRIFT=thrift \
|
|
THRIFTGO_GEN=js:"node,ts,es6" \
|
|
THRIFT_DIR_SRC=$(THRIFT_IDL_DIR) \
|
|
THRIFT_DIR_OUT=$(FRONTEND_THRIFT_GEN_DIR)
|