GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — devguide/Makefile at main · python/devguide Expand file tree/ Copy pathMakefileMore file actions 124 lines (108 loc) · 3.85 KB / Copy pathMakefileFile metadata and controls124 lines (108 loc) · 3.85 KB 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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 # Makefile for Sphinx documentation # # You can set these variables from the command line. PYTHON = python3 VENVDIR = ./venv UV = uv SPHINXBUILD = $(VENVDIR)/bin/sphinx-build # Temporary: while we are using ..include:: to show the reorganization, # there are duplicate labels. These cause warnings, which prevent the # build from finishing. Turn off --fail-on-warning so we can see the # finished results. #SPHINXOPTS = --fail-on-warning SPHINXOPTS = BUILDDIR = _build BUILDER = html JOBS = auto SPHINXLINT = $(VENVDIR)/bin/sphinx-lint REQUIREMENTS = requirements.txt # Internal variables. _ALL_SPHINX_OPTS = --jobs $(JOBS) $(SPHINXOPTS) _RELEASE_CYCLE = include/branches.csv \ include/end-of-life.csv \ _static/release-cycle-all.svg \ _static/release-cycle.svg .PHONY: help help: @echo "Please use \`make <target>' where <target> is one of" @echo " venv to create a venv with necessary tools" @echo " html to make standalone HTML files" @echo " linkcheck to check all external links for integrity" @echo " htmlview to open the index page built by the html target in your browser" @echo " htmllive to rebuild and reload HTML files in your browser" @echo " clean to remove the venv and build files" @echo " check to run a check for frequent markup errors" @echo " lint to lint all the files" .PHONY: clean clean: clean-venv -rm -rf $(BUILDDIR)/* -rm -rf $(_RELEASE_CYCLE) .PHONY: clean-venv clean-venv: rm -rf $(VENVDIR) .PHONY: venv venv: @if [ -d $(VENVDIR) ] ; then \ echo "venv already exists."; \ echo "To recreate it, remove it first with \`make clean-venv'."; \ else \ $(MAKE) ensure-venv; \ fi .PHONY: ensure-venv ensure-venv: @if [ ! -d $(VENVDIR) ] ; then \ set -e; \ echo "Creating venv in $(VENVDIR)"; \ if $(UV) --version >/dev/null 2>&1; then \ $(UV) venv --python=$(PYTHON) $(VENVDIR); \ VIRTUAL_ENV=$(VENVDIR) $(UV) pip install -r $(REQUIREMENTS); \ else \ $(PYTHON) -m venv $(VENVDIR); \ $(VENVDIR)/bin/python3 -m pip install --upgrade pip; \ $(VENVDIR)/bin/python3 -m pip install -r $(REQUIREMENTS); \ fi; \ echo "The venv has been created in the $(VENVDIR) directory"; \ fi .PHONY: htmlview htmlview: html $(PYTHON) -c "import os, webbrowser; webbrowser.open('file://' + os.path.realpath('_build/html/index.html'))" .PHONY: htmllive htmllive: SPHINXBUILD = $(VENVDIR)/bin/sphinx-autobuild # Arbitrarily selected ephemeral port between 49152–65535 # to avoid conflicts with other processes: htmllive: SPHINXOPTS = --open-browser --delay 0 --port 55301 htmllive: html .PHONY: check check: ensure-venv # Ignore the tools and venv dirs and check that the default role is not used. $(SPHINXLINT) -i tools -i $(VENVDIR) --enable default-role .PHONY: _ensure-package _ensure-package: venv if $(UV) --version >/dev/null 2>&1; then \ VIRTUAL_ENV=$(VENVDIR) $(UV) pip install $(PACKAGE); \ else \ $(VENVDIR)/bin/python3 -m pip install $(PACKAGE); \ fi .PHONY: _ensure-pre-commit _ensure-pre-commit: make _ensure-package PACKAGE=pre-commit .PHONY: lint lint: _ensure-pre-commit $(VENVDIR)/bin/python3 -m pre_commit run --all-files # Generate all release cycle files together with a single script invocation # Use branches.csv as the primary target, others depend on it include/branches.csv: $(VENVDIR)/bin/python3 _tools/generate_release_cycle.py @echo Release cycle data generated. # Other files are generated together with branches.csv include/end-of-life.csv: include/branches.csv @: _static/release-cycle-all.svg: include/branches.csv @: _static/release-cycle.svg: include/branches.csv @: # Catch-all target: route all unknown targets to Sphinx using the new # "make mode" option. .PHONY: Makefile %: Makefile ensure-venv $(_RELEASE_CYCLE) $(SPHINXBUILD) -M $@ "." "$(BUILDDIR)" $(_ALL_SPHINX_OPTS) |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |