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 /Sphinx-1.1.2.tar.gz

View File

@ -1,4 +1,7 @@
%if ! (0%{?fedora} > 12 || 0%{?rhel} > 5) %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())")} %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print (get_python_lib())")}
%endif %endif
@ -6,7 +9,7 @@
Name: python-sphinx Name: python-sphinx
Version: 1.1.2 Version: 1.1.2
Release: 1%{?dist} Release: 2%{?dist}
Summary: Python documentation generator Summary: Python documentation generator
Group: Development/Tools Group: Development/Tools
@ -28,6 +31,17 @@ BuildRequires: python-nose
Requires: python-docutils Requires: python-docutils
Requires: python-jinja2 Requires: python-jinja2
Requires: python-pygments 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 %description
@ -59,6 +73,41 @@ the Python docs:
snippets and inclusion of appropriately formatted docstrings. 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 %package doc
Summary: Documentation for %{name} Summary: Documentation for %{name}
Group: Documentation Group: Documentation
@ -81,8 +130,20 @@ This package contains documentation in reST and HTML formats.
%setup -q -n %{upstream_name}-%{version}%{?prerel} %setup -q -n %{upstream_name}-%{version}%{?prerel}
sed '1d' -i sphinx/pycode/pgen2/token.py sed '1d' -i sphinx/pycode/pgen2/token.py
%if 0%{?with_python3}
rm -rf %{py3dir}
cp -a . %{py3dir}
%endif # with_python3
%build %build
%{__python} setup.py build %{__python} setup.py build
%if 0%{?with_python3}
pushd %{py3dir}
%{__python3} setup.py build
popd
%endif # with_python3
pushd doc pushd doc
make html make html
make man make man
@ -94,13 +155,31 @@ popd
%install %install
rm -rf %{buildroot} 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 pushd doc
# Deliver man pages # Deliver man pages
install -d %{buildroot}%{_mandir}/man1 install -d %{buildroot}%{_mandir}/man1
mv _build/man/sphinx-*.1 %{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 popd
# Deliver rst files # Deliver rst files
@ -134,6 +213,11 @@ popd
%check %check
make test make test
%if 0%{?with_python3}
pushd %{py3dir}
make test
popd
%endif # with_python3
%files -f sphinx.lang %files -f sphinx.lang
@ -144,14 +228,29 @@ make test
%dir %{_datadir}/sphinx/ %dir %{_datadir}/sphinx/
%dir %{_datadir}/sphinx/locale %dir %{_datadir}/sphinx/locale
%dir %{_datadir}/sphinx/locale/* %dir %{_datadir}/sphinx/locale/*
%exclude %{_mandir}/man1/sphinx-*-%{python3_version}.1*
%{_mandir}/man1/* %{_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 %files doc
%defattr(-,root,root,-) %defattr(-,root,root,-)
%doc html reST %doc html reST
%changelog %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 * Mon Nov 28 2011 Toshio Kuratomi <toshio@fedoraproject.org> - 1.1.2-1
- Update to upstream 1.1.2 - Update to upstream 1.1.2