%global pypi_name csvkit
%global project_owner onyxfish
%global github_name csvkit
%global commit bf18815796a306d34171422f1445323b526ba14f
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global sum Suite of utilities for converting to and working with CSV
%global desc csvkit is a suite of utilities for converting to and working with CSV, the king \
of tabular file formats.
Name: python-%{pypi_name}
Version: 0.9.1
Release: 6.git%{shortcommit}%{?dist}
Summary: %{sum}
License: MIT
URL: https://pypi.python.org/pypi/%{pypi_name}
Source0: https://github.com/%{project_owner}/%{github_name}/archive/%{commit}/%{github_name}-%{commit}.tar.gz
# Plans to improve deps and their version: https://github.com/onyxfish/csvkit/issues/490
Patch0: correct-requires.patch
# See https://github.com/onyxfish/csvkit/issues/469
Patch1: correct-build-on-koji.patch
BuildArch: noarch
%description
%{desc}
%package -n python2-%{pypi_name}
BuildRequires: python2-devel
BuildRequires: python-nose
BuildRequires: python-xlrd >= 0.7.1
BuildRequires: python-sqlalchemy
BuildRequires: python2-openpyxl
BuildRequires: python-six
BuildRequires: python-dateutil
BuildRequires: python2-dbf
BuildRequires: python-enum34
Requires: python-xlrd >= 0.7.1
Requires: python-sqlalchemy
Requires: python2-openpyxl
Requires: python-six
Requires: python-dateutil
Requires: python2-dbf
Requires: python-enum34
Summary: %{sum}
%{?python_provide:%python_provide python2-%{pypi_name}}
%description -n python2-%{pypi_name}
%{desc}
%package -n python3-%{pypi_name}
Summary: %{sum}
BuildRequires: python3-devel
BuildRequires: python3-nose
BuildRequires: python3-xlrd >= 0.7.1
BuildRequires: python3-sqlalchemy
BuildRequires: python3-openpyxl
BuildRequires: python3-six
BuildRequires: python3-dateutil
Requires: python3-xlrd >= 0.7.1
Requires: python3-sqlalchemy
Requires: python3-openpyxl
Requires: python3-six
Requires: python3-dateutil
%{?python_provide:%python_provide python3-%{pypi_name}}
%description -n python3-%{pypi_name}
%{desc}
%package doc
BuildRequires: python-sphinx-doc
BuildRequires: python-sphinx_rtd_theme
Summary: %{sum}
%description doc
%{desc}
Documentation package
%prep
%setup -q -n %{github_name}-%{commit}
rm -rf *.egg-info
# Fix non-executable-script
find csvkit -name \*.py -type f | xargs sed -i '1{\@^#!/usr/bin/env python@d}'
%patch0 -p1
%patch1 -p1
%build
%py2_build
%py3_build
cd docs
make html
make man
%install
# install python3 first to have unversioned binaries for python 3
%py3_install
pushd %{buildroot}%{_bindir} # Enter buildroot bindir to ease symlink creation
bins=($(ls *))
for bin in ${bins[@]}; do
mv "${bin}" "${bin}-%{python3_version}"
name=${bin##*/}
ln -s "${name}-%{python3_version}" "${bin}-3"
done
popd
%py2_install
pushd %{buildroot}%{_bindir}
for bin in ${bins[@]}; do
name=${bin##*/}
ln -s "${name}" "${bin}-2"
ln -s "${name}" "${bin}-%{python2_version}"
done
popd
mkdir -p %{buildroot}%{_mandir}/man1
for file in docs/_build/man/*.1; do
install -p -m0644 ${file} %{buildroot}%{_mandir}/man1/
done
# Remove useful files in doc
rm docs/_build/html/.buildinfo
# Correct permissions in doc
chmod -x examples/realdata/census_2000/VROUTFSJ.TXt
%check
export LC_ALL='en_US.utf8'
nosetests-%{python2_version} tests -v
nosetests-%{python3_version} tests -v
%files -n python2-%{pypi_name}
%license COPYING
%doc README CHANGELOG AUTHORS
%exclude %{_bindir}/*-3
%exclude %{_bindir}/*-%{python3_version}
%{_bindir}/*
%{_mandir}/man1/*
%{python2_sitelib}/%{pypi_name}-%{version}-py%{python2_version}.egg-info/
%{python2_sitelib}/%{pypi_name}/
%files -n python3-%{pypi_name}
%license COPYING
%doc README CHANGELOG AUTHORS
%{_bindir}/*-3
%{_bindir}/*-%{python3_version}
%{python3_sitelib}/%{pypi_name}-%{version}-py%{python3_version}.egg-info/
%{python3_sitelib}/%{pypi_name}/
%files doc
%license COPYING
%doc README CHANGELOG AUTHORS docs/_build/html examples
%changelog
* Mon Jul 11 2016 Julien Enselme <jujens@jujens.eu> - 0.9.1-6.gitbf18815
- Correct typo in comment
* Sat Feb 6 2016 Julien Enselme <jujens@jujens.eu> - 0.9.1-5.gitbf18815
- Correct some rpmlint warnings
* Sun Jan 24 2016 Julien Enselme <jujens@jujens.eu> - 0.9.1-4.gitbf18815
- Correct build on rawhide.
* Sun Jan 24 2016 Julien Enselme <jujens@jujens.eu> - 0.9.1-3.gitbf18815
- Move unversionned binaries to python2 subpackage.
* Wed Nov 25 2015 Julien Enselme <jujens@jujens.eu> - 0.9.1-2.gitbf18815
- Add python-enum34 to the Requires for python 2 subpackage
* Mon Nov 9 2015 Julien Enselme <jujens@jujens.eu> - 0.9.1-1.gitbf18815
- Inital package