81 lines
2.5 KiB
Makefile
81 lines
2.5 KiB
Makefile
|
|
# MCP Server Makefile
|
||
|
|
# Copyright (C) 2026 Moko Consulting <hello@mokoconsulting.tech>
|
||
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
||
|
|
|
||
|
|
# ==============================================================================
|
||
|
|
# CONFIGURATION
|
||
|
|
# ==============================================================================
|
||
|
|
|
||
|
|
PROJECT_NAME := dolibarr-api-mcp
|
||
|
|
PROJECT_VERSION := 1.0.0
|
||
|
|
|
||
|
|
SRC_DIR := src
|
||
|
|
DIST_DIR := dist
|
||
|
|
DOCS_DIR := docs
|
||
|
|
|
||
|
|
NPM := npm
|
||
|
|
NODE := node
|
||
|
|
|
||
|
|
# Colors for output
|
||
|
|
COLOR_RESET := \033[0m
|
||
|
|
COLOR_GREEN := \033[32m
|
||
|
|
COLOR_YELLOW := \033[33m
|
||
|
|
COLOR_BLUE := \033[34m
|
||
|
|
COLOR_RED := \033[31m
|
||
|
|
|
||
|
|
# ==============================================================================
|
||
|
|
# TARGETS
|
||
|
|
# ==============================================================================
|
||
|
|
|
||
|
|
.PHONY: help
|
||
|
|
help: ## Show this help message
|
||
|
|
@echo "$(COLOR_BLUE)╔════════════════════════════════════════════════════════════╗$(COLOR_RESET)"
|
||
|
|
@echo "$(COLOR_BLUE)║ dolibarr-api-mcp Makefile ║$(COLOR_RESET)"
|
||
|
|
@echo "$(COLOR_BLUE)╚════════════════════════════════════════════════════════════╝$(COLOR_RESET)"
|
||
|
|
@echo ""
|
||
|
|
@echo "Project: $(PROJECT_NAME) v$(PROJECT_VERSION)"
|
||
|
|
@echo ""
|
||
|
|
@echo "$(COLOR_GREEN)Available targets:$(COLOR_RESET)"
|
||
|
|
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf " $(COLOR_BLUE)%-20s$(COLOR_RESET) %s\n", $$1, $$2}'
|
||
|
|
@echo ""
|
||
|
|
|
||
|
|
.PHONY: install-deps
|
||
|
|
install-deps: ## Install dependencies
|
||
|
|
@echo "$(COLOR_BLUE)Installing dependencies...$(COLOR_RESET)"
|
||
|
|
@$(NPM) install
|
||
|
|
@echo "$(COLOR_GREEN)✓ Dependencies installed$(COLOR_RESET)"
|
||
|
|
|
||
|
|
.PHONY: build
|
||
|
|
build: ## Build TypeScript
|
||
|
|
@echo "$(COLOR_BLUE)Building...$(COLOR_RESET)"
|
||
|
|
@$(NPM) run build
|
||
|
|
@echo "$(COLOR_GREEN)✓ Build complete$(COLOR_RESET)"
|
||
|
|
|
||
|
|
.PHONY: dev
|
||
|
|
dev: ## Watch and rebuild on changes
|
||
|
|
@$(NPM) run dev
|
||
|
|
|
||
|
|
.PHONY: clean
|
||
|
|
clean: ## Clean build artifacts
|
||
|
|
@echo "$(COLOR_BLUE)Cleaning...$(COLOR_RESET)"
|
||
|
|
@rm -rf $(DIST_DIR)
|
||
|
|
@echo "$(COLOR_GREEN)✓ Cleaned$(COLOR_RESET)"
|
||
|
|
|
||
|
|
.PHONY: setup
|
||
|
|
setup: ## Run interactive setup wizard
|
||
|
|
@$(NPM) run setup
|
||
|
|
|
||
|
|
.PHONY: start
|
||
|
|
start: ## Start the MCP server
|
||
|
|
@$(NPM) run start
|
||
|
|
|
||
|
|
.PHONY: lint
|
||
|
|
lint: ## Run linter
|
||
|
|
@$(NPM) run lint
|
||
|
|
|
||
|
|
.PHONY: ci
|
||
|
|
ci: install-deps build ## Run CI pipeline
|
||
|
|
@echo "$(COLOR_GREEN)✓ CI pipeline complete$(COLOR_RESET)"
|
||
|
|
|
||
|
|
.DEFAULT_GOAL := help
|