File python-Sphinx.spec of Package python-Sphinx.openSUSE_Leap_15.1_Update

#
# spec file for package python-Sphinx
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define oldpython python
%if 0%{?suse_version} != 1315
%bcond_without latex
%else
%bcond_with latex
%endif
Name:           python-Sphinx
Version:        1.7.6
Release:        0
Summary:        Python documentation generator
License:        BSD-2-Clause
Group:          Development/Languages/Python
URL:            http://sphinx-doc.org
Source:         https://files.pythonhosted.org/packages/source/S/Sphinx/Sphinx-%{version}.tar.gz
Patch1:         disable-test.patch
# PATCH-FIX-UPSTREAM (https://github.com/sphinx-doc/sphinxcontrib-qthelp/commit/6233326c914145ff0334d680b7e11e37afb12ec1)
Patch2:         fix-keyword-escaping.patch
BuildRequires:  %{python_module base}
BuildRequires:  %{python_module setuptools}
BuildRequires:  fdupes
BuildRequires:  python-rpm-macros
# workaround for suboptimal CentOS-7 project config
#!BuildIgnore:  texinfo
Requires:       python-Babel >= 1.3
Requires:       python-Jinja2 >= 2.3
Requires:       python-Pygments >= 2.0
Requires:       python-alabaster >= 0.7
Requires:       python-docutils >= 0.11
Requires:       python-imagesize
Requires:       python-requests >= 2.0.0
Requires:       python-six >= 1.5
Requires:       python-snowballstemmer >= 1.1
Requires:       python-sphinx_rtd_theme
Requires:       python-sphinxcontrib-websupport
Requires:       python-packaging
Requires(post): update-alternatives
Requires(postun): update-alternatives
BuildArch:      noarch
%if 0%{?suse_version} >= 1000 || 0%{?fedora_version} >= 24
Recommends:     %{name}-doc-man
Recommends:     python-SQLAlchemy >= 0.9
Recommends:     python-Whoosh >= 2.0
%endif
%ifpython2
Requires:       python-enum34
Requires:       python-typing
%endif
%ifpython3
%if %{python3_version_nodots} < 35
Requires:       python-typing
%endif
%endif
%if 0%{?suse_version}
Recommends:     python-rst2pdf
%endif
%ifpython2
Obsoletes:      %{oldpython}-sphinx < %{version}
Provides:       %{oldpython}-sphinx = %{version}
%endif
%python_subpackages

%description
Sphinx is a tool that facilitates creating documentation for Python
projects (or other documents consisting of multiple reStructuredText
sources). It was originally created for the Python documentation, and
supports Python project documentation well, but C/C++ is likewise
supported.

Sphinx uses reStructuredText as its markup language. Sphinx draws from
the parsing and translating suite, the Docutils.

%package latex
Summary:        Sphinx packages for LaTeX
Group:          Productivity/Publishing/TeX/Base
Requires:       %{name} = %{version}
Requires:       texlive-latex
Requires:       texlive-metafont
Requires:       texlive-pdftex
Requires:       tex(8r.enc)
Requires:       tex(alltt.sty)
Requires:       tex(amsfonts.sty)
Requires:       tex(amsmath.sty)
Requires:       tex(amssymb.sty)
Requires:       tex(amsthm.sty)
Requires:       tex(anyfontsize.sty)
Requires:       tex(array.sty)
Requires:       tex(article.cls)
Requires:       tex(atbegshi.sty)
Requires:       tex(babel.sty)
Requires:       tex(bm.sty)
Requires:       tex(capt-of.sty)
Requires:       tex(cmap.sty)
Requires:       tex(color.sty)
Requires:       tex(colortbl.sty)
Requires:       tex(dvipdfmx.def)
Requires:       tex(english.ldf)
Requires:       tex(eqparbox.sty)
Requires:       tex(fancybox.sty)
Requires:       tex(fancyhdr.sty)
Requires:       tex(fancyvrb.sty)
Requires:       tex(float.sty)
Requires:       tex(fncychap.sty)
Requires:       tex(fontenc.sty)
Requires:       tex(footnote.sty)
Requires:       tex(framed.sty)
Requires:       tex(graphics.sty)
Requires:       tex(graphicx.sty)
Requires:       tex(hypcap.sty)
Requires:       tex(hyperref.sty)
Requires:       tex(ifthen.sty)
Requires:       tex(inputenc.sty)
Requires:       tex(longtable.sty)
Requires:       tex(makeidx.sty)
Requires:       tex(multirow.sty)
Requires:       tex(needspace.sty)
Requires:       tex(newfloat.sty)
Requires:       tex(palatino.sty)
Requires:       tex(parskip.sty)
Requires:       tex(pcrr.tfm)
Requires:       tex(pdftex.def)
Requires:       tex(pdftex.map)
Requires:       tex(phvr.tfm)
Requires:       tex(polyglossia.sty)
Requires:       tex(pplr.tfm)
Requires:       tex(preview.sty)
Requires:       tex(ptmr.tfm)
Requires:       tex(pzcmi.tfm)
Requires:       tex(tabulary.sty)
Requires:       tex(textcomp.sty)
Requires:       tex(threeparttable.sty)
Requires:       tex(times.sty)
Requires:       tex(titlesec.sty)
Requires:       tex(upquote.sty)
Requires:       tex(utf8.def)
Requires:       tex(utf8x.def)
Requires:       tex(wrapfig.sty)
%if 0%{?suse_version} > 1320
Requires:       texlive-latexmk
Requires:       texlive-makeindex
Requires:       tex(varwidth.sty)
%endif

%description    latex
Sphinx is a tool that facilitates creating documentation for Python
projects (or other documents consisting of multiple reStructuredText
sources).

This package contains the LaTeX components for %{name}.

%prep
%autosetup -p1 -n Sphinx-%{version}

sed -i 's/\r$//' sphinx/themes/basic/static/jquery.js # Fix wrong end-of-line encoding

%build
%python_build

%install
%python_install

%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_expand mkdir -p %{buildroot}%{$python_sitelib}/sphinxcontrib
%python_expand %fdupes %{buildroot}%{$python_sitelib}

%post
%{python_install_alternative sphinx-apidoc sphinx-autogen sphinx-build sphinx-quickstart}

%postun
%python_uninstall_alternative sphinx-apidoc

%files %{python_files}
%license LICENSE
%doc AUTHORS CHANGES README.rst
%python_alternative %{_bindir}/sphinx-apidoc
%python_alternative %{_bindir}/sphinx-autogen
%python_alternative %{_bindir}/sphinx-build
%python_alternative %{_bindir}/sphinx-quickstart
%{python_sitelib}/sphinx/
%if %{with latex}
%exclude %{python_sitelib}/sphinx/texinputs/
%endif
%{python_sitelib}/Sphinx-%{version}-py*.egg-info
%dir %{python_sitelib}/sphinxcontrib

# Requirements are not available on SLES
%if %{with latex}
%files %{python_files latex}
%license LICENSE
%doc AUTHORS
%{python_sitelib}/sphinx/texinputs/
%endif

%changelog
openSUSE Build Service is sponsored by