# SPDX-FileCopyrightText: 2024 Phil Höfer <phil@suma-ev.de> # SPDX-License-Identifier: AGPL-3.0-only # Rust project name PROJECT_NAME := Suggestible # Directories SRC_DIR := src DOC_DIR := doc TARGET_DIR := target # Binary name BIN_NAME := $(PROJECT_NAME) # Binary paths BIN_PATH := $(TARGET_DIR)/debug/$(BIN_NAME) RELEASE_BIN_PATH := $(TARGET_DIR)/release/$(BIN_NAME) # Compilation commands RUSTC := rustc CARGO := cargo # Documentation commands MDBOOK := mdbook # Targets .PHONY: all clean doc all: $(BIN_PATH) release: $(RELEASE_BIN_PATH) $(BIN_PATH): $(SRC_DIR)/*.rs $(CARGO) build $(RELEASE_BIN_PATH): $(SRC_DIR)/*.rs $(CARGO) build --release doc: $(CARGO) doc --no-deps cp -r target/doc/* doc/dev/rustdoc $(MDBOOK) build clean: $(CARGO) clean $(MDBOOK) clean