-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
115 lines (96 loc) · 3.15 KB
/
Copy pathMakefile
File metadata and controls
115 lines (96 loc) · 3.15 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
106
107
108
109
110
111
112
113
114
115
.PHONY: help install test clean lint install-minimal install-standard install-gaming install-full gui update
# Default target
help:
@echo "WindowsBridge Makefile Commands"
@echo "=================================="
@echo ""
@echo "Installation:"
@echo " make install-minimal - Minimal setup (Wine basics)"
@echo " make install-standard - Standard setup (Wine + Runtimes)"
@echo " make install-gaming - Gaming setup (Standard + Gaming)"
@echo " make install-full - Full setup (Everything)"
@echo " make gui - Launch GUI installer"
@echo ""
@echo "Testing & Validation:"
@echo " make test - Run all tests"
@echo " make test-system - Run system tests only"
@echo " make test-wine - Run wine tests only"
@echo " make test-gaming - Run gaming tests only"
@echo " make lint - Check code quality"
@echo ""
@echo "Maintenance:"
@echo " make update - Check for updates"
@echo " make clean - Clean local logs"
@echo " make version - Show version"
@echo ""
# Installation targets
install-minimal:
@echo "Starting minimal installation..."
sudo bash installer.sh --profile minimal --verbose
install-standard:
@echo "Starting standard installation..."
sudo bash installer.sh --profile standard --verbose
install-gaming:
@echo "Starting gaming installation..."
sudo bash installer.sh --profile gaming --verbose
install-full:
@echo "Starting full installation..."
sudo bash installer.sh --profile full --verbose
install: install-gaming
@echo "Installation complete!"
# GUI target
gui:
@echo "Launching GUI installer..."
python3 modules/gui_launcher.py
# Test targets
test:
@echo "Running all tests..."
bash run_all_tests.sh --verbose
test-system:
@echo "Running system tests..."
bash modules/test_system.sh --verbose
test-wine:
@echo "Running wine tests..."
bash modules/test_wine.sh --verbose
test-gaming:
@echo "Running gaming tests..."
bash modules/test_gaming.sh --verbose
# Maintenance
lint:
@echo "Checking code quality..."
@for file in modules/*.sh run_all_tests.sh installer.sh; do \
echo "Checking $$file..."; \
bash -n $$file || echo "ERROR in $$file"; \
done
@echo "Bash syntax check complete!"
update:
@echo "Checking for updates..."
sudo bash modules/updater.sh --check-only
clean:
@echo "Cleaning up logs..."
rm -f ~/.config/windowsbridge/*.log 2>/dev/null
@echo "Logs cleaned!"
version:
@echo "WindowsBridge v$$(cat VERSION)"
# Development targets
.PHONY: dev-test dev-lint docs
dev-test: lint test
@echo "Development testing complete!"
docs:
@echo "Available documentation:"
@ls -1 *.md docs/*.md 2>/dev/null | sed 's/^/ /'
# Help extended
help-extended:
@echo "WindowsBridge - Extended Help"
@echo "=============================="
@echo ""
@echo "For more information, see:"
@echo " QUICKSTART.md - 5-minute quick start guide"
@echo " README.md - Project overview"
@echo " docs/ - Full documentation"
@echo ""
@echo "Examples:"
@echo " make install-gaming - Install for gaming"
@echo " make test - Run test suite"
@echo " make gui - Start GUI launcher"
@echo ""