%global owner tk0miya
%global srcname nwdiag
%global tag %{version}
%global commit 8e6ff6bf2dd1279f863f19ca27d7e35ad0393f6a
%global shortcommit %(c=%{commit}; echo ${c:0:12})
Name: python-%{srcname}
Version: 1.0.0
Release: 4%{?dist}
Summary: nwdiag generates network-diagram images from text
License: ASL 2.0
URL: http://blockdiag.com/
Source0: https://bitbucket.org/%{owner}/%{srcname}/get/%{tag}.tar.gz
Source1: description-%{srcname}.txt
# Fix flake8 violations that make tests fail with Python 3.4
# https://bitbucket.org/blockdiag/nwdiag/commits/905c37512004458924676fa0c92bdd580081be51
Patch0: %{name}-fix-flake8-violations.patch
BuildArch: noarch
BuildRequires: python2-devel
BuildRequires: python-blockdiag-devel
BuildRequires: python-docutils
BuildRequires: python-nose
BuildRequires: python-pep8
BuildRequires: python-pillow
BuildRequires: python-setuptools
BuildRequires: python3-blockdiag-devel
BuildRequires: python3-devel
BuildRequires: python3-docutils
BuildRequires: python3-nose
BuildRequires: python3-pep8
BuildRequires: python3-pillow
BuildRequires: python3-setuptools
Requires: python-blockdiag
%description
%(cat %{SOURCE1})
%package -n python3-%{srcname}
Summary: %{summary}
Requires: python3-blockdiag
%description -n python3-%{srcname}
%(cat %{SOURCE1})
This package installs the %{srcname} module for Python 3.
%prep
%setup -qn %{owner}-%{srcname}-%{shortcommit}
# we need to use --binary to keep crlf line endings in patch, but RPM doesn't allow that
patch -p1 --binary < %{PATCH0}
rm -rf %{py3dir}
cp -a . %{py3dir}
find %{py3dir} -name '*.py' | xargs sed -i '1s|^#!python|#!%{__python3}|'
find -name '*.py' | xargs sed -i '1s|^#!python|#!%{__python}|'
%build
%{__python2} setup.py build
pushd %{py3dir}
%{__python3} setup.py build
popd
%install
pushd %{py3dir}
%{__python3} setup.py install -O1 --skip-build --root %{buildroot}
mv %{buildroot}%{_bindir}/%{srcname} %{buildroot}%{_bindir}/%{srcname}-%{python3_version}
mv %{buildroot}%{_bindir}/packetdiag %{buildroot}%{_bindir}/packetdiag-%{python3_version}
mv %{buildroot}%{_bindir}/rackdiag %{buildroot}%{_bindir}/rackdiag-%{python3_version}
install -m 0644 -D %{srcname}.1 %{buildroot}%{_mandir}/man1/%{srcname}-%{python3_version}.1
install -m 0644 -D packetdiag.1 %{buildroot}%{_mandir}/man1/packetdiag-%{python3_version}.1
install -m 0644 -D rackdiag.1 %{buildroot}%{_mandir}/man1/rackdiag-%{python3_version}.1
popd
%{__python2} setup.py install -O1 --skip-build --root %{buildroot}
install -m 0644 -D %{srcname}.1 %{buildroot}%{_mandir}/man1/%{srcname}.1
install -m 0644 -D packetdiag.1 %{buildroot}%{_mandir}/man1/packetdiag.1
install -m 0644 -D rackdiag.1 %{buildroot}%{_mandir}/man1/rackdiag.1
%check
%{__python} setup.py test
pushd %{py3dir}
%{__python3} setup.py test
popd
%files
%doc LICENSE
%{_bindir}/*diag
%{_mandir}/man1/*diag.1*
%{python2_sitelib}/*
%exclude %{python2_sitelib}/*/tests
%files -n python3-%{srcname}
%{_pkgdocdir}
%{_bindir}/*-%{python3_version}
%{_mandir}/man1/*-%{python3_version}.1*
%{python3_sitelib}/__pycache__/*
%{python3_sitelib}/*diag*
%exclude %{python3_sitelib}/*/tests
%changelog
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon May 19 2014 Bohuslav Kabrda <bkabrda@redhat.com> - 1.0.0-3
- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4
* Tue Mar 04 2014 Dridi Boukelmoune <dridi.boukelmoune@gmail.com> - 1.0.0-2
- Fixed changelog format.
- Fixed man page permissions.
- Added missing man pages.
- Avoid co-ownership of %%{python3_sitelib}/__pycache__/.
* Sun Mar 02 2014 Dridi Boukelmoune <dridi.boukelmoune@gmail.com> - 1.0.0-1
- Initial version.