-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathMakefile
More file actions
55 lines (46 loc) · 1.96 KB
/
Makefile
File metadata and controls
55 lines (46 loc) · 1.96 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
.PHONY: help build test lint format clean docs-preview docs-build docs-clean
# Default target
help:
@echo "Available targets:"
@echo " build - Build the package"
@echo " test - Run tests with code coverage"
@echo " lint - Run linting and formatting checks (strict mode)"
@echo " format - Format code only (no linting)"
@echo " clean - Clean build artifacts"
@echo " docs-preview - Preview documentation with auto-rebuild"
@echo " docs-build - Build documentation without preview server"
@echo " docs-clean - Clean documentation build artifacts"
@echo " help - Show this help message"
# Build the package
build:
@echo "🔨 Building SundialKit..."
@swift build
# Run tests
test:
@echo "🧪 Running tests with code coverage..."
@swift test --enable-code-coverage
# Run linting in strict mode
lint:
@echo "🔍 Running linting in strict mode..."
@LINT_MODE=STRICT ./Scripts/lint.sh
# Format code only
format:
@echo "✨ Formatting code..."
@FORMAT_ONLY=1 ./Scripts/lint.sh
# Clean build artifacts
clean:
@echo "🧹 Cleaning build artifacts..."
@swift package clean
@rm -rf .build
# Preview documentation with auto-rebuild
docs-preview:
@echo "📖 Starting documentation preview..."
@./Scripts/preview-docs.sh Sources/SundialKit/SundialKit.docc Sources/SundialKitCore/SundialKitCore.docc Sources/SundialKitNetwork/SundialKitNetwork.docc Sources/SundialKitConnectivity/SundialKitConnectivity.docc
# Build documentation without preview server
docs-build:
@echo "📚 Building documentation..."
@./Scripts/preview-docs.sh Sources/SundialKit/SundialKit.docc Sources/SundialKitCore/SundialKitCore.docc Sources/SundialKitNetwork/SundialKitNetwork.docc Sources/SundialKitConnectivity/SundialKitConnectivity.docc --no-server --no-watch
# Clean documentation build artifacts
docs-clean:
@echo "🧹 Cleaning documentation artifacts..."
@rm -rf .build/docs .build/docs-preview .build/symbol-graphs .build/docc