WEED := ./weed VEC := ./weed-vector WORKER_MANIFEST := ../../rust/sw-vector-distributed/Cargo.toml ifneq ($(wildcard $(WORKER_MANIFEST)),) WORKER := ./weed-vector-worker endif VOLUME := ./weed-volume CARGO_PROFILE ?= release CARGO_TARGET_DIR ?= $(abspath ../../seaweed-vector/target) CARGO_OUTPUT := $(CARGO_TARGET_DIR)/$(if $(filter dev,$(CARGO_PROFILE)),debug,$(CARGO_PROFILE)) export CARGO_TARGET_DIR .PHONY: all test build clean FORCE all: test $(WEED): FORCE go build -o $(WEED) ../../weed $(VEC): FORCE cargo build --locked --profile $(CARGO_PROFILE) --manifest-path ../../seaweed-vector/Cargo.toml -p weed-vector-server cp $(CARGO_OUTPUT)/weed-vector $(VEC) ifneq ($(WORKER),) $(WORKER): $(VEC) FORCE cargo build --locked --profile $(CARGO_PROFILE) --manifest-path ../../rust/Cargo.toml -p sw-vector-distributed --bin weed-vector cp $(CARGO_OUTPUT)/weed-vector $(WORKER) endif $(VOLUME): $(VEC) $(WORKER) FORCE cargo build --locked --profile $(CARGO_PROFILE) --manifest-path ../../seaweed-volume/Cargo.toml --bin weed-volume cp $(CARGO_OUTPUT)/weed-volume $(VOLUME) FORCE: build: $(WEED) $(VEC) $(WORKER) $(VOLUME) test: build ./run_test.sh clean: rm -f $(WEED) $(VEC) ./weed-vector-worker $(VOLUME)