proofmode 0.8.4

Capture, share, and preserve verifiable photos and videos
# Makefile wrapper for cargo make commands
# This allows running 'make <target>' instead of 'cargo make <target>'

.PHONY: help
help:
	@echo "ProofMode Rust - Makefile wrapper for cargo make"
	@echo ""
	@echo "Setup and Environment:"
	@echo "  make setup          - Setup development environment"
	@echo "  make clean          - Clean all build artifacts"
	@echo ""
	@echo "Building:"
	@echo "  make build          - Build Rust CLI (fast)"
	@echo "  make build-all      - Build everything (Rust, WASM, mobile - slow)"
	@echo "  make build-rust     - Build Rust CLI in release mode"
	@echo "  make build-android  - Build Android libraries"
	@echo "  make build-ios      - Build iOS libraries"
	@echo "  make wasm-pack      - Build WebAssembly package (default target)"
	@echo "  make wasm-pack-web  - Build WASM for web browsers"
	@echo "  make wasm-pack-node - Build WASM for Node.js"
	@echo "  make wasm-pack-all  - Build WASM for all targets"
	@echo "  make mobile         - Build all mobile targets"
	@echo ""
	@echo "Testing:"
	@echo "  make test           - Run Rust tests"
	@echo "  make test-cli       - Test all CLI implementations"
	@echo "  make test-all       - Run all tests"
	@echo "  make test-node-cli  - Test Node.js CLI specifically"
	@echo "  make quick-test     - Quick test suite for development"
	@echo ""
	@echo "Bindings:"
	@echo "  make generate-bindings - Generate UniFFI bindings"
	@echo ""
	@echo "Distribution:"
	@echo "  make dist           - Create distribution packages"
	@echo "  make docs           - Generate documentation"
	@echo ""
	@echo "Docker:"
	@echo "  make docker-build   - Build Docker image"
	@echo "  make docker-test    - Test Docker image"
	@echo "  make docker-run     - Run Docker container interactively"
	@echo "  make docker-examples - Run Docker examples"
	@echo ""
	@echo "Web Development:"
	@echo "  make web-dev        - Start web development server"
	@echo "  make web-build      - Build web application"
	@echo "  make web-test       - Test web application"
	@echo ""
	@echo "Development Workflows:"
	@echo "  make dev-web        - Full web development setup"
	@echo "  make dev-cli        - CLI development setup"
	@echo "  make dev-mobile     - Mobile development setup"
	@echo ""
	@echo "Utilities:"
	@echo "  make fmt            - Format code"
	@echo "  make clippy         - Run linter"
	@echo "  make size           - Show binary sizes"
	@echo "  make verify-setup   - Verify development setup"
	@echo "  make ci             - Run full CI pipeline"

# Default target
.DEFAULT_GOAL := help

# Setup and Environment
.PHONY: setup
setup:
	cargo make setup

.PHONY: clean
clean:
	cargo make clean

# Building targets
.PHONY: build
build:
	cargo make build

.PHONY: build-all
build-all:
	cargo make build-all

.PHONY: build-rust
build-rust:
	cargo make build-rust

.PHONY: build-android
build-android:
	cargo make build-android

.PHONY: build-ios
build-ios:
	cargo make build-ios

.PHONY: wasm-pack
wasm-pack:
	cargo make wasm-pack

.PHONY: wasm-pack-web
wasm-pack-web:
	cargo make wasm-pack-web

.PHONY: wasm-pack-node
wasm-pack-node:
	cargo make wasm-pack-node

.PHONY: wasm-pack-all
wasm-pack-all:
	cargo make wasm-pack-all

.PHONY: mobile
mobile:
	cargo make mobile

# Testing targets
.PHONY: test
test:
	cargo make test

.PHONY: test-cli
test-cli:
	cargo make test-cli

.PHONY: test-all
test-all:
	cargo make test-all

.PHONY: test-node-cli
test-node-cli:
	cargo make test-node-cli

.PHONY: quick-test
quick-test:
	cargo make quick-test

# Bindings
.PHONY: generate-bindings
generate-bindings:
	cargo make generate-bindings

# Distribution
.PHONY: dist
dist:
	cargo make dist

.PHONY: docs
docs:
	cargo make docs

# Docker targets
.PHONY: docker-build
docker-build:
	cargo make docker-build

.PHONY: docker-test
docker-test:
	cargo make docker-test

.PHONY: docker-run
docker-run:
	cargo make docker-run

.PHONY: docker-examples
docker-examples:
	cargo make docker-examples

# Code quality
.PHONY: fmt
fmt:
	cargo make fmt

.PHONY: clippy
clippy:
	cargo make clippy

.PHONY: lint
lint:
	cargo make lint

# Utilities
.PHONY: size
size:
	cargo make size

.PHONY: verify-setup
verify-setup:
	cargo make verify-setup

.PHONY: ci
ci:
	cargo make ci

# Web Development targets
.PHONY: web-dev
web-dev:
	cargo make web-dev

.PHONY: web-build
web-build:
	cargo make web-build

.PHONY: web-test
web-test:
	cargo make web-test

# Development workflow targets
.PHONY: dev-web
dev-web:
	cargo make dev-web

.PHONY: dev-cli
dev-cli:
	cargo make dev-cli

.PHONY: dev-mobile
dev-mobile:
	cargo make dev-mobile

# Clean specific targets
.PHONY: clean-rust
clean-rust:
	cargo make clean-rust

.PHONY: clean-mobile
clean-mobile:
	cargo make clean-mobile

.PHONY: clean-wasm
clean-wasm:
	cargo make clean-wasm

# Shortcuts
.PHONY: b
b: build

.PHONY: t
t: test

.PHONY: c
c: clean

# Install cargo-make if not present
.PHONY: install-cargo-make
install-cargo-make:
	@which cargo-make > /dev/null || cargo install cargo-make