Blob Blame History Raw
Summary:        Python wrapper for the Blosc high performance compressor
Name:           python-blosc
Version:        1.8.1
Release:        %autorelease
License:        MIT
URL:            https://github.com/Blosc/python-blosc
Source0:        https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz

# https://github.com/Blosc/python-blosc/pull/200
Patch1:         0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch
Patch2:         0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch
Patch3:         0003-setup.py-catch-import-error-for-cpuinfo.patch
# https://github.com/Blosc/python-blosc/pull/202
Patch4:         0004-Read-os-release-instead-of-using-platform.linux_dist.patch
# Fix Python 3.9 compatibility
# https://github.com/Blosc/python-blosc/pull/218
Patch5:         0005-fix-python-3.9-compatibility.patch

BuildRequires:  gcc
BuildRequires:  blosc-devel >= 1.16.0
BuildRequires:  python%{python3_pkgversion}-devel
BuildRequires:  python%{python3_pkgversion}-numpy
BuildRequires:  python%{python3_pkgversion}-psutil
BuildRequires:  python%{python3_pkgversion}-cpuinfo

%description
%{summary}.

%package -n python%{python3_pkgversion}-blosc
Summary:        Python wrapper for the blosc high performance compressor
Requires:       blosc%{_isa} >= 1.16.0

%{?python_provide:%python_provide python%{python3_pkgversion}-blosc}
%{?fedora:Recommends: python%{python3_pkgversion}-numpy}

%description -n python%{python3_pkgversion}-blosc
%{summary}.

%prep
%autosetup -p1
# Remove bundled copy
rm cpuinfo.py

%build
export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}"
export DISABLE_BLOSC_AVX2=1
%py3_build

%install
%py3_install

%check
cd / # avoid interference with build dir
PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys.exit(blosc.test())'

%files -n python%{python3_pkgversion}-blosc
%{python3_sitearch}/blosc/
%{python3_sitearch}/blosc-%{version}*-py*.egg-info
%license LICENSES/PYTHON-BLOSC.txt
%doc README.rst RELEASE_NOTES.rst

%changelog
%autochangelog