Files
nexus/Makefile
andy 9fda602b82 fix: resolve build — move main.go to root, fix Makefile wails path, update Wails to v2.12.0
- Moved main.go from cmd/app/ to project root (Wails convention)
- Makefile now resolves wails binary via GOPATH/bin fallback
- Updated wails/v2 dependency from v2.9.2 to v2.12.0
- Fixed preferences round-trip bug (store as single JSON blob)
- Fixed import strategy test (needs non-empty profile data)
2026-04-15 00:00:00 +01:00

63 lines
1.6 KiB
Makefile

.PHONY: all build dev clean test test-cover lint install deps frontend-deps run package help
# Resolve the Wails binary. Prefer wails on PATH; fall back to GOPATH/bin.
WAILS := $(or $(shell which wails 2>/dev/null),$(shell go env GOPATH)/bin/wails)
# Default target
all: build
# Install all dependencies
deps: frontend-deps
go mod download
# Install frontend dependencies
frontend-deps:
cd frontend && npm install
# Development mode with hot reload
dev: deps
$(WAILS) dev
# Production build
build: deps
$(WAILS) build
# Run tests
test:
go test ./... -v -count=1
# Run tests with coverage
test-cover:
go test ./... -v -count=1 -coverprofile=coverage.out
go tool cover -html=coverage.out -o coverage.html
# Clean build artefacts
clean:
rm -rf build/bin
rm -rf frontend/node_modules
rm -rf frontend/src/js/lib
rm -rf frontend/src/css/lib
go clean -testcache
# Lint (requires golangci-lint)
lint:
golangci-lint run ./...
# Package for distribution
package: build
@echo "Binary built at build/bin/"
# Help
help:
@echo "Nexus Terminal — Build Targets"
@echo ""
@echo " make deps — Install all dependencies"
@echo " make dev — Run in development mode with hot reload"
@echo " make build — Production build"
@echo " make test — Run tests"
@echo " make test-cover — Run tests with coverage report"
@echo " make clean — Clean build artefacts"
@echo " make lint — Run linter (requires golangci-lint)"
@echo " make package — Build and package for distribution"
@echo " make help — Show this help"