-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
105 lines (76 loc) · 2.62 KB
/
Makefile
File metadata and controls
105 lines (76 loc) · 2.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
# Gorev Project Root Makefile
# Manages both gorev-mcpserver (Go) and gorev-vscode (TypeScript) modules
.PHONY: all build clean test run install lint fmt deps server-build server-test server-run extension-build extension-test help
# Default target
all: deps build test
help:
@echo "Available targets:"
@echo " all - Download deps, build both modules, run tests"
@echo " build - Build both server and extension"
@echo " test - Run all tests (server + extension)"
@echo " clean - Clean build artifacts"
@echo " deps - Download and install dependencies"
@echo " fmt - Format code (Go + TypeScript)"
@echo " lint - Run linters on both modules"
@echo ""
@echo "Server specific:"
@echo " server-build - Build Go server"
@echo " server-test - Run Go tests"
@echo " server-run - Build and run server"
@echo ""
@echo "Extension specific:"
@echo " extension-build - Compile TypeScript extension"
@echo " extension-test - Run extension tests"
@echo " extension-package - Package extension for marketplace"
# Combined targets
build: server-build extension-build
test: server-test extension-test
clean: server-clean extension-clean
deps: server-deps extension-deps
fmt: server-fmt extension-fmt
lint: server-lint extension-lint
# Server targets (Go)
server-build:
cd gorev-mcpserver && make build
server-test:
cd gorev-mcpserver && make test
server-run:
cd gorev-mcpserver && make run
server-clean:
cd gorev-mcpserver && make clean
server-deps:
cd gorev-mcpserver && make deps
server-fmt:
cd gorev-mcpserver && make fmt
server-lint:
cd gorev-mcpserver && make lint
server-coverage:
cd gorev-mcpserver && make test-coverage
# Extension targets (TypeScript)
extension-deps:
cd gorev-vscode && npm install --no-bin-links
extension-build:
cd gorev-vscode && npm run compile
extension-test:
cd gorev-vscode && npm test
extension-clean:
cd gorev-vscode && rm -rf out/ && rm -rf node_modules/
extension-fmt:
cd gorev-vscode && npm run format || echo "Format script not available"
extension-lint:
cd gorev-vscode && npm run lint || echo "Lint script not available"
extension-package:
cd gorev-vscode && npm run package || echo "Package script not available"
# Release targets
release-build:
cd gorev-mcpserver && make build-all
install: server-build
cd gorev-mcpserver && make install
# Development convenience
dev-server:
cd gorev-mcpserver && ./gorev serve --debug
dev-extension:
@echo "To develop extension: Open gorev-vscode in VS Code and press F5"
# Quality checks before commit
pre-commit: fmt lint test
@echo "✅ Pre-commit checks passed!"