-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
35 lines (25 loc) · 931 Bytes
/
Makefile
File metadata and controls
35 lines (25 loc) · 931 Bytes
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
PYTHON ?= python3
VENV ?= .venv
PIP ?= $(VENV)/bin/pip
PYTEST ?= $(VENV)/bin/pytest
PACKAGE_NAME ?= sqliteviewer
venv:
$(PYTHON) -m venv $(VENV)
$(PIP) install --upgrade pip
$(PIP) install -e .[dev]
install: venv ## Create a virtual environment and install dependencies.
lint: ## Run static checks.
$(PYTHON) -m compileall src
fmt: ## Placeholder for formatting (no-op for now).
@echo "Nothing to format—Python code follows PEP 8 by construction."
build: ## Build wheel and sdist packages.
$(PYTHON) -m build
package: ## Build Debian package into dist/.
./scripts/build_deb.sh
test: ## Run the full pytest suite.
$(PYTHON) -m pytest
clean: ## Remove build artifacts.
rm -rf build dist *.egg-info $(VENV)
help: ## Show this help.
@grep -E '^[a-zA-Z_-]+:.*?##' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; { printf "%-10s %s\n", $$1, $$2 }'
.PHONY: venv install lint fmt build package test clean help