%__sphinx3_dir   /usr/lib/python3/site-packages/sphinx

# Номер текущего релиза Grammar файла
%sphinx3_rel @REL@

# Адрес Grammar файла
%sphinx3_Grammar_file %__sphinx3_dir/pycode/Grammar%sphinx3_rel.pickle

# Подготовка окружения для работы Sphinx без выхода в интернет за инвентарём объектов:
# копирование objects.inv в каталог, указанный в параметре.
# Копирует также conf.py (конфигурационный файл для Sphinx)
# для случая, когда планируется применять макрос generate_pickles()
%prepare_sphinx3() install -pm644 %_datadir/python-sphinx/objects.inv %1/ \
	[ -e %1/conf.py ] || \
		cp -u %__sphinx3_dir/conf.py.template %1/conf.py

# Генерирует pickles в пакетах, где такого функционала нет.
# первый параметр - верхний каталог исходников, либо, если процесс установки
#   уже прошёл, %buildroot%python_sitelibdir, скопировав во второй (не забыть
#   после генерации удалить) conf.py
# второй параметр - каталог с HTML файлами
# третий параметр - имя модуля (например, numpy для python-module-numpy)
# Результатом является подкаталог pickle текущего каталога, готовый к
# упаковке
%generate_pickles3() mkdir -p %buildroot%python3_sitelibdir/%3/pickle \
	mkdir -p doctrees pickle _static \
	for i in environment searchindex globalcontext; do \
		cp -f %__sphinx3_dir/pickle/$i.pickle %buildroot%python3_sitelibdir/%3/pickle/ \
	done \
	export PYTHONPATH=$PYTHONPATH:%1 \
	sphinx-build-3 -E -a -b pickle -c %1 -d doctrees %2 pickle

