forked from pool/python-Sphinx
Accepting request 512790 from home:TheBlackCat:branches:devel:languages:python
- Split documentation into subpackage to avoid dependency loops. - Only require python3-typing for python3 < 3.5 OBS-URL: https://build.opensuse.org/request/show/512790 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Sphinx?expand=0&rev=85
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
#
|
||||
# spec file for package python-Sphinx
|
||||
# spec file for package python-Sphinx-doc
|
||||
#
|
||||
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
@@ -31,35 +31,13 @@ Url: http://sphinx-doc.org
|
||||
Summary: Python documentation generator
|
||||
License: BSD-2-Clause
|
||||
Group: Development/Languages/Python
|
||||
Source: https://pypi.io/packages/source/S/Sphinx/Sphinx-%{version}.tar.gz
|
||||
Source: https://files.pythonhosted.org/packages/source/S/Sphinx/Sphinx-%{version}.tar.gz
|
||||
Patch1: disable-test.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildRequires: %{python_module devel}
|
||||
BuildRequires: %{python_module setuptools}
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: python-rpm-macros
|
||||
# SECTION documentation requirements
|
||||
BuildRequires: %{python_module Babel >= 1.3}
|
||||
BuildRequires: %{python_module Jinja2 >= 2.3}
|
||||
BuildRequires: %{python_module Pygments >= 2.0}
|
||||
BuildRequires: %{python_module alabaster >= 0.7}
|
||||
BuildRequires: %{python_module docutils >= 0.11}
|
||||
BuildRequires: %{python_module imagesize}
|
||||
BuildRequires: %{python_module requests >= 2.0.0}
|
||||
BuildRequires: %{python_module six >= 1.5}
|
||||
BuildRequires: %{python_module snowballstemmer >= 1.1}
|
||||
BuildRequires: %{python_module sphinx_rtd_theme}
|
||||
BuildRequires: %{python_module sphinxcontrib-websupport}
|
||||
BuildRequires: %{python_module typing}
|
||||
# ENDSECTION doc requirements
|
||||
# SECTION testsuite requirements
|
||||
BuildRequires: %{python_module html5lib}
|
||||
BuildRequires: %{python_module mock}
|
||||
BuildRequires: %{python_module pytest}
|
||||
BuildRequires: ImageMagick
|
||||
# ENDSECTION
|
||||
# for python 2 only:
|
||||
BuildRequires: python-enum34
|
||||
Requires: python-Babel >= 1.3
|
||||
Requires: python-Jinja2 >= 2.3
|
||||
Requires: python-Pygments >= 2.0
|
||||
@@ -71,7 +49,18 @@ Requires: python-six >= 1.5
|
||||
Requires: python-snowballstemmer >= 1.1
|
||||
Requires: python-sphinx_rtd_theme
|
||||
Requires: python-sphinxcontrib-websupport
|
||||
Recommends: python-SQLAlchemy >= 0.9
|
||||
Recommends: python-Whoosh >= 2.0
|
||||
Recommends: %{name}-doc-man
|
||||
%ifpython2
|
||||
Requires: python-enum34
|
||||
Requires: python-typing
|
||||
%endif
|
||||
%ifpython3
|
||||
%if %{python3_version_nodots} < 35
|
||||
Requires: python-typing
|
||||
%endif
|
||||
%endif
|
||||
Requires(post): update-alternatives
|
||||
Requires(postun): update-alternatives
|
||||
|
||||
@@ -101,23 +90,6 @@ 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.
|
||||
|
||||
%package -n %{name}-doc
|
||||
Summary: Documentation for %{name}
|
||||
Group: Documentation/Other
|
||||
Provides: %{python_module Sphinx-doc = %{version}}
|
||||
|
||||
%description -n %{name}-doc
|
||||
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
|
||||
for the new Python documentation, and has excellent facilities for Python
|
||||
project documentation, but C/C++ is supported as well, and more languages are
|
||||
planned.
|
||||
|
||||
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.
|
||||
|
||||
%package latex
|
||||
Summary: Sphinx packages for LaTeX
|
||||
Group: Productivity/Publishing/TeX/Base
|
||||
@@ -204,47 +176,20 @@ sed -i '/#\!/d' sphinx/pycode/pgen2/token.py # Fix non-excutable-script warning
|
||||
sed -i 's/\r$//' sphinx/themes/basic/static/jquery.js # Fix wrong end-of-line encoding
|
||||
|
||||
%build
|
||||
# build library
|
||||
%python_build
|
||||
|
||||
# build documentation
|
||||
%{_python_use_flavor python3}
|
||||
mkdir build.doc
|
||||
%__python3 setup.py build_sphinx && rm build/sphinx/html/.buildinfo
|
||||
%__python3 setup.py build_sphinx -b man
|
||||
mv build/sphinx/{html,man} build.doc
|
||||
|
||||
%install
|
||||
%python_install
|
||||
|
||||
install -d %{buildroot}%{_mandir}/man1/
|
||||
|
||||
mv build.doc/man/sphinx-all.1 %{buildroot}%{_mandir}/man1/sphinx-all.1
|
||||
mv build.doc/man/sphinx-apidoc.1 %{buildroot}%{_mandir}/man1/sphinx-apidoc.1
|
||||
mv build.doc/man/sphinx-build.1 %{buildroot}%{_mandir}/man1/sphinx-build.1
|
||||
mv build.doc/man/sphinx-quickstart.1 %{buildroot}%{_mandir}/man1/sphinx-quickstart.1
|
||||
|
||||
%python_clone -a %{buildroot}%{_bindir}/sphinx-apidoc
|
||||
%python_clone -a %{buildroot}%{_bindir}/sphinx-autogen
|
||||
%python_clone -a %{buildroot}%{_bindir}/sphinx-build
|
||||
%python_clone -a %{buildroot}%{_bindir}/sphinx-quickstart
|
||||
|
||||
%python_clone -a %{buildroot}%{_mandir}/man1/sphinx-all.1
|
||||
%python_clone -a %{buildroot}%{_mandir}/man1/sphinx-apidoc.1
|
||||
%python_clone -a %{buildroot}%{_mandir}/man1/sphinx-build.1
|
||||
%python_clone -a %{buildroot}%{_mandir}/man1/sphinx-quickstart.1
|
||||
|
||||
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
||||
|
||||
%check
|
||||
export PYTHONPATH=$PWD
|
||||
export LANG=en_US.UTF-8
|
||||
# exclude online-only linkcheck test
|
||||
export EXCLUDES="--ignore=test_build_linkcheck.py"
|
||||
%{python_expand make test PYTHON=%__$python TEST="$EXCLUDES"}
|
||||
|
||||
%post
|
||||
%{python_install_alternative sphinx-apidoc sphinx-autogen sphinx-build sphinx-quickstart sphinx-all.1%ext_man sphinx-apidoc.1%ext_man sphinx-build.1%ext_man sphinx-quickstart.1%ext_man}
|
||||
%{python_install_alternative sphinx-apidoc sphinx-autogen sphinx-build sphinx-quickstart}
|
||||
|
||||
%postun
|
||||
%python_uninstall_alternative sphinx-apidoc
|
||||
@@ -256,21 +201,12 @@ export EXCLUDES="--ignore=test_build_linkcheck.py"
|
||||
%python_alternative %{_bindir}/sphinx-autogen
|
||||
%python_alternative %{_bindir}/sphinx-build
|
||||
%python_alternative %{_bindir}/sphinx-quickstart
|
||||
%python_alternative %{_mandir}/man1/sphinx-all.1%ext_man
|
||||
%python_alternative %{_mandir}/man1/sphinx-apidoc.1%ext_man
|
||||
%python_alternative %{_mandir}/man1/sphinx-build.1%ext_man
|
||||
%python_alternative %{_mandir}/man1/sphinx-quickstart.1%ext_man
|
||||
%{python_sitelib}/sphinx/
|
||||
%if %{with latex}
|
||||
%exclude %{python_sitelib}/sphinx/texinputs/
|
||||
%endif
|
||||
%{python_sitelib}/Sphinx-%{version}-py*.egg-info
|
||||
|
||||
%files -n %{name}-doc
|
||||
%defattr(-,root,root,-)
|
||||
%doc AUTHORS LICENSE EXAMPLES
|
||||
%doc build.doc/html/
|
||||
|
||||
# Requirements are not available on SLES
|
||||
%if %{with latex}
|
||||
%files %{python_files latex}
|
||||
|
Reference in New Issue
Block a user