diff --git a/Makefile.local b/Makefile.local --- a/Makefile.local +++ b/Makefile.local @@ -1,3 +1,9 @@ check-mypy: @echo "no op - swh-docs does not need typechecking, skipping" + +all: + @echo Building the whole documentation from source code repositories + @echo available in ../ via tox. This can take a while. + @echo Please be patient. + tox -r -e sphinx-dev diff --git a/docs/Makefile b/docs/Makefile --- a/docs/Makefile +++ b/docs/Makefile @@ -3,7 +3,7 @@ SOURCEDIR = . BUILDDIR = _build HTMLDIR = $(BUILDDIR)/html -SWHPKGDIR = sources/swh/ +SWHPKGDIR ?= sources/swh/ INSTALL_HOST = pergamon.internal.softwareheritage.org INSTALL_DIR = /srv/softwareheritage/docs/webroot/devel @@ -21,14 +21,10 @@ html: sphinx/html -sphinx/html: links-stamp apidoc-stamp images-stamp rec-build-stamp - -links-stamp: - bin/ln-sphinx-subprojects - touch $@ +sphinx/html: apidoc-stamp images-stamp rec-build-stamp apidoc: apidoc-stamp -apidoc-stamp: links-stamp images-stamp +apidoc-stamp: images-stamp $(SPHINXAPIDOC) --implicit-namespaces $(APIDOC_OPTS) -o $(APIDOC_DIR) $(SWHPKGDIR) $(APIDOC_SWH_EXCLUDES) touch $@ @@ -44,7 +40,6 @@ touch $@ clean: sphinx/clean - bin/ln-sphinx-subprojects --remove $(MAKE) -C images clean rm -f *-stamp rm -f $(APIDOC_DIR)/* diff --git a/docs/bin/ln-sphinx-subprojects b/docs/bin/ln-sphinx-subprojects deleted file mode 100755 --- a/docs/bin/ln-sphinx-subprojects +++ /dev/null @@ -1,35 +0,0 @@ -#!/bin/bash -set -e - -create_links () { - mkdir -p sources - for pymodule in $(cd ../../ && bin/ls-py-modules) ; do - if [ "$pymodule" = 'swh-docs' ] ; then - continue - fi - if [ ! -e "$pymodule" -a -d "../../${pymodule}/docs" ] ; then - ln -s "../../${pymodule}/docs" "$pymodule" - fi - if [ -d "../../${pymodule}/swh" ] ; then - rsync -a --include='*.py' --include='*/' --exclude='*' --prune-empty-dirs "../../${pymodule}/swh" "sources/" - fi - done -} - -remove_links () { - for pymodule in $(cd ../../ && bin/ls-py-modules) ; do - if [ "$pymodule" = 'swh-docs' ] ; then - continue - fi - if [ -L "$pymodule" ] ; then - rm "$pymodule" - fi - done - rm -rf sources -} - -if [ "$1" = "--remove" ] ; then - remove_links -else - create_links -fi diff --git a/requirements-swh-dev.txt b/requirements-swh-dev.txt --- a/requirements-swh-dev.txt +++ b/requirements-swh-dev.txt @@ -1,23 +1,23 @@ # Add here internal Software Heritage dependencies, one per line. # Dependencies need to be ordered in a way that ensure only # development versions will be used (not the release ones hosted on PyPI). --e ../swh-core[http,db,logging] --e ../swh-model --e ../swh-objstorage[testing] --e ../swh-storage[schemata] --e ../swh-journal --e ../swh-scheduler --e ../swh-deposit --e ../swh-graph --e ../swh-icinga-plugins --e ../swh-indexer --e ../swh-lister --e ../swh-loader-core --e ../swh-loader-git --e ../swh-loader-mercurial --e ../swh-loader-svn --e ../swh-search --e ../swh-vault --e ../swh-web --e ../swh-web-client --e ../swh-scanner +../swh-core[http,db,logging] +../swh-model +../swh-journal +../swh-objstorage[testing] +../swh-storage[schemata] +../swh-scheduler +../swh-deposit +../swh-graph +../swh-icinga-plugins +../swh-indexer +../swh-lister +../swh-loader-core +../swh-loader-git +../swh-loader-mercurial +../swh-loader-svn +../swh-search +../swh-vault +../swh-web +../swh-web-client +../swh-scanner diff --git a/tox.ini b/tox.ini --- a/tox.ini +++ b/tox.ini @@ -9,14 +9,16 @@ extras = building deps = - django < 2 + django pifpaf commands = {envpython} -m pifpaf run postgresql -- make -C docs {posargs:html} [testenv:sphinx-dev] +setenv = + SWHPKGDIR = {envsitepackagesdir}/swh deps = - django < 2 + django -rrequirements-swh-dev.txt pifpaf commands =