home » zplus/dokk.git
ID: 4cc30d5218e950139eb4ff4acff1b4c826ed50c3
80 lines — 2K — View raw


SHELL = /bin/bash

REPOSITORY = https://github.com/pypa/setuptools.git

check_env_vars:
ifdef OUTPUT_PATH
OUTPUT_PATH := ${OUTPUT_PATH}/python-setuptools
else
	$(error OUTPUT_PATH is undefined)
endif

venv:
	python3 -m venv venv

venv-3.7:
	export PYENV_VERSION=3.7
	python3 -m venv venv

repository:
	git clone ${REPOSITORY} repository

v68.2.2 v69.0.3: check_env_vars venv repository
	source venv/bin/activate
	cd repository
	git checkout tags/$@
	pip install .[docs]
	# MUST change directory because it looks for some files in "../"
	cd docs
	mkdir --parents "${OUTPUT_PATH}"
	sphinx-build -b dirhtml . "${OUTPUT_PATH}/$@"

v67.8.0: check_env_vars venv repository
	source venv/bin/activate
	cd repository
	git checkout tags/$@
	# Lock Sphinx version because there is an ImportError with sphinx 7.2
	pip install .[docs] "sphinx < 7.2"
	# MUST change directory because it looks for some files in "../"
	cd docs
	mkdir --parents "${OUTPUT_PATH}"
	sphinx-build -b dirhtml . "${OUTPUT_PATH}/$@"

v63.4.3 v64.0.3 v65.7.0 v66.1.1: check_env_vars venv repository
	source venv/bin/activate
	cd repository
	git checkout tags/$@
	# Lock Sphinx version because there is an ImportError with sphinx 7.2
	# Lock sphinx-favicon because "Between v0.2 and v1.0, the module name of the extension
	# changed (from sphinx-favicon to sphinx_favicon) to conform with Python standards. The
	# documentation uses sphinx-favicon and it won't find sphinx_favicon.
	pip install .[docs] "sphinx < 7.2" "sphinx-favicon < 1"
	cd docs
	mkdir --parents "${OUTPUT_PATH}"
	sphinx-build -b dirhtml . "${OUTPUT_PATH}/$@"

v59.8.0: check_env_vars venv-3.7 repository
	source venv/bin/activate
	cd repository
	git checkout tags/$@
	# Lock sphinx because there's a regexp error with Sphinx 6
	pip install .[docs] "sphinx < 6"
	cd docs
	mkdir --parents "${OUTPUT_PATH}"
	sphinx-build -b dirhtml . "${OUTPUT_PATH}/$@"

v49.6.0: check_env_vars venv-3.7 repository
	source venv/bin/activate
	cd repository
	git checkout tags/$@
	python bootstrap.py
	pip install -r docs/requirements.txt
	pip install .[docs]
	cd docs
	mkdir --parents "${OUTPUT_PATH}"
	sphinx-build -b dirhtml . "${OUTPUT_PATH}/$@"

.ONESHELL:
.SUFFIXES:
.PHONY:
.DELETE_ON_ERROR: