# # spec file for package python-Sphinx # # Copyright (c) 2013 SUSE LINUX Products 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 http://bugs.opensuse.org/ # Name: python-Sphinx Version: 1.2b3 Release: 0 Url: http://sphinx.pocoo.org Summary: Python documentation generator License: BSD-2-Clause Group: Development/Languages/Python Source: http://pypi.python.org/packages/source/S/Sphinx/Sphinx-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: python-devel BuildRequires: python-setuptools # Documentation requirements: BuildRequires: python-Jinja2 >= 2.3 BuildRequires: python-docutils >= 0.7 # Testsuite requirements: BuildRequires: python-Pygments >= 1.2 BuildRequires: python-nose Requires(post): update-alternatives Requires(postun): update-alternatives Requires: python-Jinja2 >= 2.3 Requires: python-Pygments >= 1.2 Requires: python-docutils >= 0.7 Suggests: python-rst2pdf Provides: python-sphinx = %{version} Obsoletes: python-sphinx < %{version} %if 0%{?suse_version} && 0%{?suse_version} <= 1110 %{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} %else BuildArch: noarch %endif %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 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 doc Summary: Documentation for %{name} Group: Documentation/Other Requires: %{name} = %{version} %description 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. %prep %setup -q -n Sphinx-%{version} sed -i '/#\!/d' sphinx/pycode/pgen2/token.py # Fix non-excutable-script warning # Add Interpreter version suffix to entrypoints (and thus /usr/bin binaries) to # allow for update-alternatives later on: sed -i 's/\(sphinx-.*\) =/\1-%{py_ver} =/' setup.py %build python setup.py build python setup.py build_sphinx && rm build/sphinx/html/.buildinfo python setup.py build_sphinx -b man %install python setup.py install --prefix=%{_prefix} --root=%{buildroot} for B in apidoc autogen build quickstart ; do ln -s %{_bindir}/sphinx-$B-%{py_ver} %{buildroot}%{_bindir}/sphinx-$B done install -d %{buildroot}%{_mandir}/man1/ for M in all apidoc build quickstart ; do install -m 644 build/sphinx/man/sphinx-$M.1 %{buildroot}%{_mandir}/man1/sphinx-$M-%{py_ver}.1 ln -s %{_mandir}/man1/sphinx-$M-%{py_ver}.1 %{buildroot}%{_mandir}/man1/sphinx-$M.1 done %find_lang sphinx %check PYTHONPATH=$PWD make test %pre # Since /usr/bin/sphinx-* became ghosted to be used with update-alternatives, we have # to get rid of the old binary resulting from the non-update-alternativies-ified package: [[ ! -L %{_bindir}/sphinx-apidoc ]] && rm -f %{_bindir}/sphinx-apidoc [[ ! -L %{_bindir}/sphinx-build ]] && rm -f %{_bindir}/sphinx-build [[ ! -L %{_bindir}/sphinx-autogen ]] && rm -f %{_bindir}/sphinx-autogen [[ ! -L %{_bindir}/sphinx-quickstart ]] && rm -f %{_bindir}/sphinx-quickstart [[ ! -L %{_mandir}/man1/sphinx-all.1.gz ]] && rm -f %{_mandir}/man1/sphinx-all.1.gz [[ ! -L %{_mandir}/man1/sphinx-apidoc.1.gz ]] && rm -f %{_mandir}/man1/sphinx-apidoc.1.gz [[ ! -L %{_mandir}/man1/sphinx-build.1.gz ]] && rm -f %{_mandir}/man1/sphinx-build.1.gz [[ ! -L %{_mandir}/man1/sphinx-quickstart.1.gz ]] && rm -f %{_mandir}/man1/sphinx-quickstart.1.gz exit 0 %post update-alternatives \ --install %{_bindir}/sphinx-apidoc sphinx-apidoc %{_bindir}/sphinx-apidoc-%{py_ver} 20 \ --slave %{_bindir}/sphinx-build sphinx-build %{_bindir}/sphinx-build-%{py_ver} \ --slave %{_bindir}/sphinx-autogen sphinx-autogen %{_bindir}/sphinx-autogen-%{py_ver} \ --slave %{_bindir}/sphinx-quickstart sphinx-quickstart %{_bindir}/sphinx-quickstart-%{py_ver} \ --slave %{_mandir}/man1/sphinx-all.1.gz sphinx-all.1 %{_mandir}/sphinx-all-%{py_ver}.1.gz \ --slave %{_mandir}/man1/sphinx-apidoc.1.gz sphinx-apidoc.1 %{_mandir}/sphinx-apidoc-%{py_ver}.1.gz \ --slave %{_mandir}/man1/sphinx-build.1.gz sphinx-build.1 %{_mandir}/sphinx-build-%{py_ver}.1.gz \ --slave %{_mandir}/man1/sphinx-quickstart.1.gz sphinx-quickstart.1 %{_mandir}/sphinx-quickstart-%{py_ver}.1.gz \ %preun if [ $1 -eq 0 ] ; then update-alternatives --remove sphinx-build %{_bindir}/sphinx-apidoc-%{py_ver} fi %files -f sphinx.lang %defattr(-,root,root,-) %doc AUTHORS CHANGES LICENSE README.rst %ghost %{_bindir}/sphinx-apidoc %ghost %{_sysconfdir}/alternatives/sphinx-apidoc %{_bindir}/sphinx-apidoc-%{py_ver} %ghost %{_bindir}/sphinx-autogen %ghost %{_sysconfdir}/alternatives/sphinx-autogen %{_bindir}/sphinx-autogen-%{py_ver} %ghost %{_bindir}/sphinx-build %ghost %{_sysconfdir}/alternatives/sphinx-build %{_bindir}/sphinx-build-%{py_ver} %ghost %{_bindir}/sphinx-quickstart %ghost %{_sysconfdir}/alternatives/sphinx-quickstart %{_bindir}/sphinx-quickstart-%{py_ver} %ghost %{_mandir}/man1/sphinx-all.1.gz %ghost %{_sysconfdir}/alternatives/sphinx-all.1.gz %{_mandir}/man1/sphinx-all-%{py_ver}.1.gz %ghost %{_mandir}/man1/sphinx-apidoc.1.gz %ghost %{_sysconfdir}/alternatives/sphinx-apidoc.1.gz %{_mandir}/man1/sphinx-apidoc-%{py_ver}.1.gz %ghost %{_mandir}/man1/sphinx-build.1.gz %ghost %{_sysconfdir}/alternatives/sphinx-build.1.gz %{_mandir}/man1/sphinx-build-%{py_ver}.1.gz %ghost %{_mandir}/man1/sphinx-quickstart.1.gz %ghost %{_sysconfdir}/alternatives/sphinx-quickstart.1.gz %{_mandir}/man1/sphinx-quickstart-%{py_ver}.1.gz %{python_sitelib}/sphinx/ %{python_sitelib}/Sphinx-%{version}-py%{py_ver}.egg-info %files doc %defattr(-,root,root,-) %doc EXAMPLES build/sphinx/html %changelog