Enable python3 subpackage

This commit is contained in:
Michel Alexandre Salim 2011-12-08 18:46:16 +01:00
parent f55dc614d6
commit 7f502fb34d
2 changed files with 103 additions and 7 deletions

3
.gitignore vendored
View File

@ -1,4 +1 @@
/Sphinx-1.0.4.tar.gz
/Sphinx-1.0.6.tar.gz
/Sphinx-1.0.7.tar.gz
/Sphinx-1.1.2.tar.gz

View File

@ -1,12 +1,15 @@
%if ! (0%{?fedora} > 12 || 0%{?rhel} > 5)
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%if 0%{?fedora} || 0%{?rhel} > 6
%global with_python3 1
%{!?python3_version: %global python3_version %(%{__python3} -c "import sys; sys.stdout.write(sys.version[:3])")}
%else
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print (get_python_lib())")}
%endif
%global upstream_name Sphinx
Name: python-sphinx
Version: 1.1.2
Release: 1%{?dist}
Release: 2%{?dist}
Summary: Python documentation generator
Group: Development/Tools
@ -28,6 +31,17 @@ BuildRequires: python-nose
Requires: python-docutils
Requires: python-jinja2
Requires: python-pygments
%if 0%{?with_python3}
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-docutils
BuildRequires: python3-jinja2
BuildRequires: python3-pygments
BuildRequires: python3-nose
Requires: python3-docutils
Requires: python3-jinja2
Requires: python3-pygments
%endif # with_python3
%description
@ -59,6 +73,41 @@ the Python docs:
snippets and inclusion of appropriately formatted docstrings.
%if 0%{?with_python3}
%package -n python3-sphinx
Summary: Python documentation generator
Group: Development/Tools
%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.
%endif # with_python3
%package doc
Summary: Documentation for %{name}
Group: Documentation
@ -81,8 +130,20 @@ This package contains documentation in reST and HTML formats.
%setup -q -n %{upstream_name}-%{version}%{?prerel}
sed '1d' -i sphinx/pycode/pgen2/token.py
%if 0%{?with_python3}
rm -rf %{py3dir}
cp -a . %{py3dir}
%endif # with_python3
%build
%{__python} setup.py build
%if 0%{?with_python3}
pushd %{py3dir}
%{__python3} setup.py build
popd
%endif # with_python3
pushd doc
make html
make man
@ -94,13 +155,31 @@ popd
%install
rm -rf %{buildroot}
%{__python} setup.py install --skip-build --root %{buildroot}
# Must do the python3 install first because the scripts in /usr/bin are
# overwritten with every setup.py install (and we want the python2 version
# to be the default for now).
%if 0%{?with_python3}
pushd %{py3dir}
%{__python3} setup.py install --skip-build --root %{buildroot}
for f in %{buildroot}%{_bindir}/sphinx-*;
do
mv $f $f-%{python3_version}
done
popd
%endif # with_python3
%{__python} setup.py install --skip-build --root %{buildroot}
pushd doc
# Deliver man pages
install -d %{buildroot}%{_mandir}/man1
mv _build/man/sphinx-*.1 %{buildroot}%{_mandir}/man1/
%if 0%{?with_python3}
for f in %{buildroot}%{_mandir}/man1/sphinx-*.1;
do
cp -p $f $(echo $f | sed -e "s|.1$|-%{python3_version}.1|")
done
%endif # with_python3
popd
# Deliver rst files
@ -134,6 +213,11 @@ popd
%check
make test
%if 0%{?with_python3}
pushd %{py3dir}
make test
popd
%endif # with_python3
%files -f sphinx.lang
@ -144,14 +228,29 @@ make test
%dir %{_datadir}/sphinx/
%dir %{_datadir}/sphinx/locale
%dir %{_datadir}/sphinx/locale/*
%exclude %{_mandir}/man1/sphinx-*-%{python3_version}.1*
%{_mandir}/man1/*
%if 0%{?with_python3}
%files -n python3-sphinx
%doc AUTHORS CHANGES EXAMPLES LICENSE README TODO
%{_bindir}/sphinx-*-%{python3_version}
%{python3_sitelib}/*
%dir %{_datadir}/sphinx/
%dir %{_datadir}/sphinx/locale
%dir %{_datadir}/sphinx/locale/*
%{_mandir}/man1/sphinx-*-%{python3_version}.1*
%endif # with_python3
%files doc
%defattr(-,root,root,-)
%doc html reST
%changelog
* Thu Dec 8 2011 Michel Salim <salimma@fedoraproject.org> - 1.1.2-2
- Enable python3 subpackage
* Mon Nov 28 2011 Toshio Kuratomi <toshio@fedoraproject.org> - 1.1.2-1
- Update to upstream 1.1.2