# Variables BINARY_NAME=yuzaki BINARY_BUILD_PATH=bin/$(BINARY_NAME) MAIN_PATH=yuzaki/main.go ENV_FILE=.env .PHONY: all build clean dev run setup setup: @echo "Setting up environment..." @if [ ! -f $(ENV_FILE) ]; then \ cp .env.example $(ENV_FILE); \ echo "Created .env file from example"; \ fi go install github.com/air-verse/air@latest go mod download build: @echo "Building binary..." go build -o $(BINARY_BUILD_PATH) $(MAIN_PATH) clean: @echo "Cleaning up..." rm -rf bin dev: @echo "Running with air in development mode..." air run: @echo "Checking if binary exists..." @if [ ! -f $(BINARY_BUILD_PATH) ]; then \ make build; \ fi @echo "Running binary..." $(BINARY_BUILD_PATH) all: clean setup build @echo "Build complete!"
