# Minimal makefile for Sphinx documentation
DOCS_DIR := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))
SPHINX_OPTS ?=
SPHINX_BUILD ?= sphinx-build
SPHINX_LIVE_BUILD ?= sphinx-autobuild
SOURCE_DIR = $(DOCS_DIR)/source
BUILD_DIR = $(DOCS_DIR)/build
PYTHON_API_DIR = $(SOURCE_DIR)/python-api

default: html

create-venv:
	python3 -m venv venv

install:
	pip install -r requirements.txt

clean:
	rm -rf $(BUILD_DIR)/*
	rm -rf $(PYTHON_API_DIR)/*

simplepdf: clean
	@$(SPHINX_BUILD) -M $@ "$(SOURCE_DIR)" "$(BUILD_DIR)" $(SPHINX_OPTS) $(O)

html: clean
	@$(SPHINX_BUILD) -M $@ "$(SOURCE_DIR)" "$(BUILD_DIR)" $(SPHINX_OPTS) $(O)

live-html: clean
	@$(SPHINX_LIVE_BUILD) "$(SOURCE_DIR)" "$(BUILD_DIR)" $(SPHINX_OPTS) $(O) --ignore=$(PYTHON_API_DIR)/*

.PHONY: default install clean simplepdf html live-html
