55 lines
1.2 KiB
Makefile
55 lines
1.2 KiB
Makefile
|
SHELL = bash
|
||
|
|
||
|
BUILD_DIR = build
|
||
|
DEVEL_BUILD_DIR = $(BUILD_DIR)/devel
|
||
|
PROD_BUILD_DIR = $(BUILD_DIR)/prod
|
||
|
|
||
|
FRONTEND_BUILD_DIR = frontend
|
||
|
FRONTEND_DEVEL_BUILD_DIR = $(FRONTEND_BUILD_DIR)/$(DEVEL_BUILD_DIR)
|
||
|
FRONTEND_PROD_BUILD_DIR = $(FRONTEND_BUILD_DIR)/$(PROD_BUILD_DIR)
|
||
|
|
||
|
API_BUILD_DIR = api
|
||
|
API_DEVEL_BUILD_DIR = $(API_BUILD_DIR)/$(DEVEL_BUILD_DIR)
|
||
|
API_PROD_BUILD_DIR = $(API_BUILD_DIR)/$(PROD_BUILD_DIR)
|
||
|
|
||
|
devel: frontend api devel-copy
|
||
|
|
||
|
prod: frontend api prod-copy
|
||
|
|
||
|
.PHONY: frontend
|
||
|
frontend:
|
||
|
cd frontend && $(MAKE) $(MAKECMDGOALS)
|
||
|
|
||
|
.PHONY: api
|
||
|
api:
|
||
|
cd api && $(MAKE) $(MAKECMDGOALS)
|
||
|
|
||
|
devel-copy: devel-copy-frontend devel-copy-api
|
||
|
|
||
|
prod-copy: prod-copy-frontend prod-copy-api
|
||
|
|
||
|
devel-copy-frontend:
|
||
|
cp -r $(FRONTEND_DEVEL_BUILD_DIR)/* $(DEVEL_BUILD_DIR)
|
||
|
|
||
|
devel-copy-api:
|
||
|
cp -r $(API_DEVEL_BUILD_DIR)/* $(DEVEL_BUILD_DIR)
|
||
|
|
||
|
prod-copy-frontend:
|
||
|
cp -r $(FRONTEND_PROD_BUILD_DIR)/* $(PROD_BUILD_DIR)
|
||
|
|
||
|
prod-copy-api:
|
||
|
cp -r $(API_PROD_BUILD_DIR)/* $(PROD_BUILD_DIR)
|
||
|
|
||
|
clean: clean-root clean-frontend clean-api
|
||
|
|
||
|
clean-root:
|
||
|
rm -rf build
|
||
|
|
||
|
clean-frontend:
|
||
|
cd frontend && $(MAKE) $(MAKECMDGOALS)
|
||
|
|
||
|
clean-api:
|
||
|
cd api && $(MAKE) $(MAKECMDGOALS)
|
||
|
|
||
|
$(shell mkdir -p $(DEVEL_BUILD_DIR) $(PROD_BUILD_DIR))
|