| export PATH := $(PATH):$(shell go env GOPATH)/bin |
| |
| comma:= , |
| empty:= |
| space:= $(empty) $(empty) |
| comma-separate = $(subst ${space},${comma},$1) |
| |
| # Files under configs/defs/ |
| CONFIG_DEFS = $(call comma-separate,$(wildcard configs/defs/*.textproto)) |
| # Files under configs/reduced/*/ |
| REDUCED_CONFIGS = $(call comma-separate,$(wildcard configs/reduced/*/*.textproto)) |
| # Full configs go under configs/full/*/ |
| FULL_CONFIGS = $(subst /reduced/,/full/,${REDUCED_CONFIGS}) |
| |
| localtoast: protos |
| go build localtoast.go |
| |
| localtoast_sql: protos |
| cd localtoast_sql && go build localtoast_sql.go |
| |
| test: protos |
| go test ./... |
| |
| configs: protos |
| mkdir -p configs/full && cp -rf configs/reduced/* configs/full |
| go build configs/genfullconfig/gen_full_config.go |
| ./gen_full_config --in=$(REDUCED_CONFIGS),$(CONFIG_DEFS) --out=$(FULL_CONFIGS) --omit-descriptions |
| |
| protos: |
| ./build_protos.sh |
| |
| clean: |
| rm -rf scannerlib/proto/*_go_proto |
| rm -rf scannerlib/proto/v1 |
| rm -f localtoast |
| rm -f localtoast_sql/localtoast_sql |
| rm -rf configs/full |
| rm -f gen_full_config |