305 lines
13 KiB
RPMSpec
305 lines
13 KiB
RPMSpec
Name: python-sphinx
|
|
Summary: Python documentation generator
|
|
Version: 1.7.6
|
|
Release: 6
|
|
Epoch: 1
|
|
License: BSD and Public Domain and Python and (MIT or GPLv2)
|
|
URL: http://sphinx-doc.org/
|
|
Source0: https://files.pythonhosted.org/packages/source/S/Sphinx/Sphinx-%{version}.tar.gz
|
|
Source1: default-sphinx-command.in
|
|
Patch0001: xfail-test_latex_remote_images.patch
|
|
Patch0002: sphinx-test_theming.diff
|
|
BuildArch: noarch
|
|
BuildRequires: python2-devel >= 2.4 python2-babel python2-setuptools python2-docutils python2-jinja2 python2-pygments >= 2.0
|
|
BuildRequires: python2-six python2-sphinx_rtd_theme python2-sphinx-theme-alabaster python2-imagesize python2-requests
|
|
BuildRequires: python2-packaging python2-typing dos2unix python2-sphinxcontrib-websupport python2-html5lib python2-whoosh
|
|
BuildRequires: python2-nose python2-pytest python2-pytest-cov gettext texinfo graphviz python2-sqlalchemy texlive-dvipng
|
|
BuildRequires: python2-mock python2-html5lib python2-whoosh python2-snowballstemmer python2-enum34 texlive-dvisvgm texlive-ucs
|
|
BuildRequires: python2-snowballstemmer python2-enum34 texlive-collection-fontsrecommended texlive-collection-latex
|
|
BuildRequires: tex(cmap.sty) tex(ecrm1000.tfm) tex(footnote.sty) tex(framed.sty) tex(multirow.sty) tex(parskip.sty)
|
|
BuildRequires: tex(threeparttable.sty) tex(upquote.sty) tex(wrapfig.sty) tex(capt-of.sty) tex(needspace.sty) tex(eqparbox.sty)
|
|
BuildRequires: tex(amsmath.sty) tex(amsthm.sty) tex(amssymb.sty) tex(amsfonts.sty) tex(bm.sty) tex(palatino.sty) tex(multirow.sty)
|
|
BuildRequires: tex(eqparbox.sty) tex(atbegshi.sty) tex(anyfontsize.sty) tex(luatex85.sty) tex(fncychap.sty)
|
|
BuildRequires: tex(tabulary.sty) tex(polyglossia.sty) tex(ctablestack.sty) tex(eu1enc.def) tex(titlesec.sty)
|
|
BuildRequires: python3-devel python3-babel python3-setuptools python3-docutils python3-jinja2 python3-pygments
|
|
BuildRequires: python3-six python3-sphinx_rtd_theme python3-sphinx-theme-alabaster python3-packaging python3-imagesize
|
|
BuildRequires: python3-requests python3-sphinxcontrib-websupport python3-nose python3-pytest python3-pytest-cov
|
|
BuildRequires: python3-sqlalchemy python3-mock python3-html5lib python3-whoosh python3-snowballstemmer
|
|
|
|
%description
|
|
Sphinx is a tool that makes it easy to create intelligent and
|
|
beautiful documentation for Python projects (or other documents
|
|
consisting of multiple reStructuredText sources), written by Georg
|
|
Brandl. It was originally created to translate the new Python
|
|
documentation, but has now been cleaned up in the hope that it will be
|
|
useful to many other projects.
|
|
|
|
Sphinx uses reStructuredText as its markup language, and many of its
|
|
strengths come from the power and straightforwardness of
|
|
reStructuredText and its parsing and translating suite, the Docutils.
|
|
|
|
Although it is still under constant development, the following
|
|
features are already present, work fine and can be seen "in action" in
|
|
the Python docs:
|
|
|
|
* Output formats: HTML (including Windows HTML Help) and LaTeX,
|
|
for printable PDF versions
|
|
* Extensive cross-references: semantic markup and automatic links
|
|
for functions, classes, glossary terms and similar pieces of
|
|
information
|
|
* Hierarchical structure: easy definition of a document tree, with
|
|
automatic links to siblings, parents and children
|
|
* Automatic indices: general index as well as a module index
|
|
* Code handling: automatic highlighting using the Pygments highlighter
|
|
* Various extensions are available, e.g. for automatic testing of
|
|
snippets and inclusion of appropriately formatted docstrings.
|
|
|
|
|
|
%package -n python2-sphinx
|
|
Summary: Python documentation generator
|
|
|
|
Requires: python-sphinx-locale = %{?epoch}:%{version}-%{release}
|
|
Requires: python2-babel python2-docutils python2-jinja2 python2-pygments python2-mock
|
|
Requires: python2-snowballstemmer python2-sphinx_rtd_theme python2-sphinx-theme-alabaster
|
|
Requires: python2-six python2-imagesize python2-requests python2-packaging python2-typing
|
|
Requires: python2-sphinxcontrib-websupport environment(modules)
|
|
Requires(pre): /usr/sbin/alternatives
|
|
Recommends: graphviz ImageMagick
|
|
|
|
Obsoletes: python-sphinx <= 1.2.3 python-sphinxcontrib-napoleon < 0.5 python2-Sphinx <= 1.3.1-4
|
|
Provides: python-sphinxcontrib-napoleon = %{?epoch}:%{version}-%{release}
|
|
Provides: python2-Sphinx = %{?epoch}:%{version}-%{release}
|
|
Provides: python(Sphinx) = %{?epoch}:%{version}-%{release}
|
|
Conflicts: python3-sphinx < %{?epoch}:%{version}-%{release}
|
|
%{?python_provide:%python_provide python2-sphinx}
|
|
|
|
%description -n python2-sphinx
|
|
Sphinx is a tool that makes it easy to create intelligent and
|
|
beautiful documentation for Python projects (or other documents
|
|
consisting of multiple reStructuredText sources), written by Georg
|
|
Brandl. It was originally created to translate the new Python
|
|
documentation, but has now been cleaned up in the hope that it will be
|
|
useful to many other projects.
|
|
|
|
Sphinx uses reStructuredText as its markup language, and many of its
|
|
strengths come from the power and straightforwardness of
|
|
reStructuredText and its parsing and translating suite, the Docutils.
|
|
|
|
Although it is still under constant development, the following
|
|
features are already present, work fine and can be seen "in action" in
|
|
the Python docs:
|
|
|
|
* Output formats: HTML (including Windows HTML Help) and LaTeX,
|
|
for printable PDF versions
|
|
* Extensive cross-references: semantic markup and automatic links
|
|
for functions, classes, glossary terms and similar pieces of
|
|
information
|
|
* Hierarchical structure: easy definition of a document tree, with
|
|
automatic links to siblings, parents and children
|
|
* Automatic indices: general index as well as a module index
|
|
* Code handling: automatic highlighting using the Pygments highlighter
|
|
* Various extensions are available, e.g. for automatic testing of
|
|
snippets and inclusion of appropriately formatted docstrings.
|
|
|
|
%package -n python3-sphinx
|
|
Summary: Python documentation generator
|
|
|
|
Requires: python-sphinx-locale = %{?epoch}:%{version}-%{release}
|
|
Requires: python3-babel python3-docutils python3-jinja2 python3-pygments
|
|
Requires: python3-snowballstemmer python3-sphinx_rtd_theme python3-sphinx-theme-alabaster
|
|
Requires: python3-imagesize python3-requests python3-six python3-packaging
|
|
Requires: environment(modules) python3-sphinxcontrib-websupport python3-mock
|
|
Requires(pre): /usr/sbin/alternatives
|
|
Recommends: graphviz ImageMagick
|
|
|
|
Obsoletes: python3-sphinxcontrib-napoleon < 0.3.0
|
|
Provides: python3-sphinxcontrib-napoleon = %{?epoch}:%{version}-%{release}
|
|
Provides: python(Sphinx) = %{?epoch}:%{version}-%{release}
|
|
Conflicts: python2-Sphinx < %{?epoch}:%{version}-%{release}
|
|
%{?python_provide:%python_provide python3-sphinx}
|
|
|
|
%description -n python3-sphinx
|
|
Sphinx is a tool that makes it easy to create intelligent and
|
|
beautiful documentation for Python projects (or other documents
|
|
consisting of multiple reStructuredText sources), written by Georg
|
|
Brandl. It was originally created to translate the new Python
|
|
documentation, but has now been cleaned up in the hope that it will be
|
|
useful to many other projects.
|
|
|
|
Sphinx uses reStructuredText as its markup language, and many of its
|
|
strengths come from the power and straightforwardness of
|
|
reStructuredText and its parsing and translating suite, the Docutils.
|
|
|
|
Although it is still under constant development, the following
|
|
features are already present, work fine and can be seen "in action" in
|
|
the Python docs:
|
|
|
|
* Output formats: HTML (including Windows HTML Help) and LaTeX,
|
|
for printable PDF versions
|
|
* Extensive cross-references: semantic markup and automatic links
|
|
for functions, classes, glossary terms and similar pieces of
|
|
information
|
|
* Hierarchical structure: easy definition of a document tree, with
|
|
automatic links to siblings, parents and children
|
|
* Automatic indices: general index as well as a module index
|
|
* Code handling: automatic highlighting using the Pygments highlighter
|
|
* Various extensions are available, e.g. for automatic testing of
|
|
snippets and inclusion of appropriately formatted docstrings.
|
|
|
|
%package help
|
|
Summary: Documentation for %{name}
|
|
Requires: python(Sphinx) = %{?epoch}:%{version}-%{release}
|
|
Provides: python-sphinx-doc python-sphinx-latex
|
|
Obsoletes: python-sphinx-doc < %{?epoch}:%{version}-%{release}
|
|
Obsoletes: python-sphinx-latex < %{?epoch}:%{version}-%{release}
|
|
|
|
%description help
|
|
This package contains help documentation in reST and HTML formats.
|
|
|
|
%package locale
|
|
Summary: Locale files for python-sphinx
|
|
|
|
%description locale
|
|
This package contains locale files for Sphinx.
|
|
|
|
%prep
|
|
%autosetup -n Sphinx-%{version} -p1
|
|
|
|
dos2unix -k ./sphinx/themes/basic/static/jquery.js
|
|
rm tests/test_ext_imgconverter.py
|
|
rm -rf %{py3dir}
|
|
cp -a . %{py3dir}
|
|
|
|
%build
|
|
%py2_build
|
|
%py3_build
|
|
|
|
export PYTHONPATH=$PWD
|
|
cd doc
|
|
export SPHINXBUILD="%{__python3} ../sphinx/cmd/build.py"
|
|
|
|
make html SPHINXBUILD="$SPHINXBUILD"
|
|
make man SPHINXBUILD="$SPHINXBUILD"
|
|
rm -rf _build/html/.buildinfo
|
|
mv _build/html ..
|
|
|
|
%install
|
|
rm -rf %{buildroot}/*
|
|
%py3_install
|
|
install -d %{buildroot}%{_libexecdir}/python3-sphinx
|
|
for i in sphinx-{apidoc,autogen,build,quickstart}; do
|
|
mv %{buildroot}%{_bindir}/$i %{buildroot}%{_bindir}/$i-%{python3_version}
|
|
ln -s $i-%{python3_version} %{buildroot}%{_bindir}/$i-3
|
|
ln -s %{_bindir}/$i-3 %{buildroot}%{_libexecdir}/python3-sphinx/$i
|
|
done
|
|
|
|
%py2_install
|
|
install -d %{buildroot}%{_libexecdir}/python2-sphinx
|
|
for i in sphinx-{apidoc,autogen,build,quickstart}; do
|
|
mv %{buildroot}%{_bindir}/$i %{buildroot}%{_bindir}/$i-%{python2_version}
|
|
ln -s $i-%{python2_version} %{buildroot}%{_bindir}/$i-2
|
|
ln -s %{_bindir}/$i-2 %{buildroot}%{_libexecdir}/python2-sphinx/$i
|
|
done
|
|
|
|
pushd doc
|
|
install -d %{buildroot}%{_mandir}/man1
|
|
for f in _build/man/sphinx-*.1;
|
|
do
|
|
cp -p $f %{buildroot}%{_mandir}/man1/$(basename $f)
|
|
cp -p $f %{buildroot}%{_mandir}/man1/$(basename $f | sed -e "s|.1$|-%{python2_version}.1|")
|
|
cp -p $f %{buildroot}%{_mandir}/man1/$(basename $f | sed -e "s|.1$|-%{python3_version}.1|")
|
|
done
|
|
|
|
find %{buildroot}%{python3_sitelib}/sphinx/locale -maxdepth 1 -mindepth 1 -type d -not -path '*/\.*' -exec rm -rf '{}' \;
|
|
popd
|
|
|
|
rm -f %{buildroot}%{python2_sitelib}/sphinx/locale/.DS_Store
|
|
rm -f %{buildroot}%{python3_sitelib}/sphinx/locale/.DS_Store
|
|
rm -rf %{buildroot}%{python2_sitelib}/sphinx/locale/.tx
|
|
rm -rf %{buildroot}%{python3_sitelib}/sphinx/locale/.tx
|
|
rm -rf doc/_build
|
|
sed -i 's|python ../sphinx-build.py|/usr/bin/sphinx-build|' doc/Makefile
|
|
mv doc reST
|
|
|
|
pushd %{buildroot}%{python2_sitelib}
|
|
|
|
for lang in `find sphinx/locale -maxdepth 1 -mindepth 1 -type d -not -path '*/\.*' -printf "%f "`;
|
|
do
|
|
install -d %{buildroot}%{_datadir}/sphinx/locale/$lang
|
|
install -d %{buildroot}%{_datadir}/locale/$lang/LC_MESSAGES
|
|
mv sphinx/locale/$lang/LC_MESSAGES/sphinx.js \
|
|
%{buildroot}%{_datadir}/sphinx/locale/$lang/
|
|
mv sphinx/locale/$lang/LC_MESSAGES/sphinx.mo \
|
|
%{buildroot}%{_datadir}/locale/$lang/LC_MESSAGES/
|
|
rm -rf sphinx/locale/$lang
|
|
done
|
|
popd
|
|
|
|
install -d %{buildroot}%{_modulesdir}/python-sphinx
|
|
sed 's/@PYTHONVER@/3/' < %{SOURCE1} > %{buildroot}%{_modulesdir}/python-sphinx/.version
|
|
|
|
for filename in sphinx-{build,apidoc,autogen,quickstart} ; do
|
|
ln -s %{_libexecdir}/python3-sphinx/$filename %{buildroot}%{_bindir}/$filename
|
|
done
|
|
|
|
%find_lang sphinx
|
|
|
|
(cd %{buildroot} && find . -name 'sphinx.js') | sed -e 's|^.||' | sed -e \
|
|
's:\(.*/locale/\)\([^/_]\+\)\(.*\.js$\):%lang(\2) \1\2\3:' \
|
|
>> sphinx.lang
|
|
|
|
|
|
%check
|
|
%if %{with check}
|
|
export PYTHONPATH=$PWD
|
|
rm tests/test_build_linkcheck.py
|
|
LANG=en_US.UTF-8 %{__python2} -m pytest -v --ignore=tests/test_api_translator.py
|
|
cd %{py3dir}
|
|
rm tests/test_build_linkcheck.py
|
|
LANG=en_US.UTF-8 PYTHON=python3 make test
|
|
%endif
|
|
|
|
%files locale -f sphinx.lang
|
|
%license LICENSE
|
|
%dir %{_datadir}/sphinx/
|
|
%dir %{_datadir}/sphinx/locale
|
|
%dir %{_datadir}/sphinx/locale/*
|
|
|
|
%files -n python2-sphinx
|
|
%license LICENSE
|
|
%doc AUTHORS CHANGES EXAMPLES README.rst
|
|
%{_bindir}/sphinx-*-2*
|
|
%{python2_sitelib}/sphinx/
|
|
%{python2_sitelib}/Sphinx-%{version}-py%{python2_version}.egg-info/
|
|
%{_libexecdir}/python2-sphinx/
|
|
|
|
%files -n python3-sphinx
|
|
%license LICENSE
|
|
%doc AUTHORS CHANGES EXAMPLES README.rst
|
|
%{_bindir}/sphinx-*-3*
|
|
%{_bindir}/sphinx-build
|
|
%{_bindir}/sphinx-apidoc
|
|
%{_bindir}/sphinx-autogen
|
|
%{_bindir}/sphinx-quickstart
|
|
%{python3_sitelib}/sphinx/
|
|
%{python3_sitelib}/Sphinx-%{version}-py%{python3_version}.egg-info/
|
|
%{_libexecdir}/python3-sphinx/
|
|
%{_modulesdir}/python-sphinx/.version
|
|
|
|
%files help
|
|
%doc html reST
|
|
%{_mandir}/man1/*
|
|
|
|
%changelog
|
|
* Thu Feb 20 2020 Lijin Yang <yanglijin@huawei.com> - 1:1.7.6-6
|
|
- delete useless files
|
|
|
|
* Thu Feb 20 2020 Lijin Yang <yanglijin@huawei.com> - 1:1.7.6-5
|
|
- Type: enhancement
|
|
- ID: NA
|
|
- SUG: NA
|
|
- DESC: make sphinx-build enable
|
|
|
|
* Thu Nov 14 2019 Lijin Yang <yanglijin@huawei.com> - 1:1.7.6-4
|
|
- init package
|