# Build the moonbit_version_cli CLI binary
# MoonBit compiles .mbt → .c, then we manually link with probe.c

BUILD_DIR = _build/native/debug/build
OUT = build/moonbit_version_cli

all: $(OUT)

$(OUT): probe.c moonbit_version_cli.mbt cmd/main/main.mbt
	mkdir -p build
	-moon build --target native 2>&1
	cc -o $(OUT) \
		-I$(HOME)/.moon/include -g -fwrapv -fno-strict-aliasing -Og \
		$(HOME)/.moon/lib/libmoonbitrun.o \
		$(BUILD_DIR)/cmd/main/main.c \
		probe.c \
		$(BUILD_DIR)/runtime.o \
		-lm $(HOME)/.moon/lib/libbacktrace.a

run: $(OUT)
	./$(OUT)

clean:
	rm -rf build _build

.PHONY: all run clean
