2012-09-12 19:46:52 +00:00
|
|
|
%if 0%{?fedora} > 12 || 0%{?rhel} > 6
|
|
|
|
%global with_python3 1
|
|
|
|
%else
|
|
|
|
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%global srcname distribute
|
|
|
|
|
|
|
|
Name: netcdf4-python
|
|
|
|
Version: 1.0
|
2012-09-12 21:30:21 +00:00
|
|
|
Release: 2.fix1%{?dist}
|
2012-09-12 19:46:52 +00:00
|
|
|
Summary: Python/numpy interface to netCDF
|
|
|
|
|
|
|
|
Group: Development/Languages
|
|
|
|
License: MIT
|
|
|
|
URL: http://code.google.com/p/netcdf4-python/
|
|
|
|
Source0: http://netcdf4-python.googlecode.com/files/netCDF4-%{version}fix1.tar.gz
|
|
|
|
# No rpath for library
|
|
|
|
Patch0: netcdf4-python-norpath.patch
|
2012-09-12 21:30:21 +00:00
|
|
|
# Don't link against hdf5 and z libraries
|
|
|
|
Patch1: netcdf4-python-libs.patch
|
2012-09-12 19:46:52 +00:00
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
|
|
|
|
|
BuildRequires: python2-devel
|
|
|
|
BuildRequires: numpy
|
|
|
|
%if 0%{?with_python3}
|
|
|
|
BuildRequires: python3-devel
|
|
|
|
BuildRequires: python3-numpy
|
|
|
|
%endif # if with_python3
|
|
|
|
BuildRequires: netcdf-devel
|
|
|
|
|
|
|
|
Requires: numpy
|
|
|
|
|
|
|
|
# we don't want to provide private python extension libs
|
|
|
|
%{?filter_setup:
|
|
|
|
%filter_provides_in %{python_sitearch}/.*\.so$
|
|
|
|
%if 0%{?with_python3}
|
|
|
|
%filter_provides_in %{python3_sitearch}/.*\.so$
|
|
|
|
%endif # if with_python3
|
|
|
|
%filter_setup
|
|
|
|
}
|
|
|
|
|
|
|
|
%description
|
|
|
|
netCDF version 4 has many features not found in earlier versions of the
|
|
|
|
library and is implemented on top of HDF5. This module can read and write
|
|
|
|
files in both the new netCDF 4 and the old netCDF 3 format, and can create
|
|
|
|
files that are readable by HDF5 clients. The API modeled after
|
|
|
|
Scientific.IO.NetCDF, and should be familiar to users of that module.
|
|
|
|
|
|
|
|
Most new features of netCDF 4 are implemented, such as multiple unlimited
|
|
|
|
dimensions, groups and zlib data compression. All the new numeric data types
|
|
|
|
(such as 64 bit and unsigned integer types) are implemented. Compound and
|
|
|
|
variable length (vlen) data types are supported, but the enum and opaque data
|
|
|
|
types are not. Mixtures of compound and vlen data types (compound types
|
|
|
|
containing vlens, and vlens containing compound types) are not supported.
|
|
|
|
|
|
|
|
|
|
|
|
%if 0%{?with_python3}
|
|
|
|
%package -n netcdf4-python3
|
|
|
|
Summary: Python/numpy interface to netCDF
|
|
|
|
Group: Development/Languages
|
|
|
|
Requires: python3-numpy
|
|
|
|
|
|
|
|
%description -n netcdf4-python3
|
|
|
|
netCDF version 4 has many features not found in earlier versions of the
|
|
|
|
library and is implemented on top of HDF5. This module can read and write
|
|
|
|
files in both the new netCDF 4 and the old netCDF 3 format, and can create
|
|
|
|
files that are readable by HDF5 clients. The API modeled after
|
|
|
|
Scientific.IO.NetCDF, and should be familiar to users of that module.
|
|
|
|
|
|
|
|
Most new features of netCDF 4 are implemented, such as multiple unlimited
|
|
|
|
dimensions, groups and zlib data compression. All the new numeric data types
|
|
|
|
(such as 64 bit and unsigned integer types) are implemented. Compound and
|
|
|
|
variable length (vlen) data types are supported, but the enum and opaque data
|
|
|
|
types are not. Mixtures of compound and vlen data types (compound types
|
|
|
|
containing vlens, and vlens containing compound types) are not supported.
|
|
|
|
%endif # with_python3
|
|
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
%setup -q -n netCDF4-%{version}
|
|
|
|
%patch0 -p1 -b .norpath
|
2012-09-12 21:30:21 +00:00
|
|
|
%patch1 -p1 -b .libs
|
2012-09-12 19:46:52 +00:00
|
|
|
|
|
|
|
%if 0%{?with_python3}
|
|
|
|
rm -rf %{py3dir}
|
|
|
|
cp -a . %{py3dir}
|
|
|
|
find %{py3dir} -name '*.py' | xargs sed -i '1s|^#!python|#!%{__python3}|'
|
|
|
|
%endif # with_python3
|
|
|
|
|
|
|
|
find -name '*.py' | xargs sed -i '1s|^#!python|#!%{__python}|'
|
|
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
CFLAGS="$RPM_OPT_FLAGS" %{__python} setup.py build
|
|
|
|
|
|
|
|
%if 0%{?with_python3}
|
|
|
|
pushd %{py3dir}
|
|
|
|
CFLAGS="$RPM_OPT_FLAGS" %{__python3} setup.py build
|
|
|
|
popd
|
|
|
|
%endif # with_python3
|
|
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
# 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 $RPM_BUILD_ROOT
|
|
|
|
rm $RPM_BUILD_ROOT%{_bindir}/*
|
|
|
|
popd
|
|
|
|
%endif # with_python3
|
|
|
|
|
|
|
|
%{__python} setup.py install --skip-build --root $RPM_BUILD_ROOT
|
|
|
|
|
|
|
|
|
|
|
|
%clean
|
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
|
|
|
|
|
|
|
|
%files
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%doc Changelog COPYING docs examples README
|
|
|
|
%{_bindir}/nc3tonc4
|
|
|
|
%{_bindir}/nc4tonc3
|
|
|
|
%{python_sitearch}/*
|
|
|
|
|
|
|
|
%if 0%{?with_python3}
|
|
|
|
%files -n netcdf4-python3
|
|
|
|
%doc Changelog COPYING docs examples README
|
|
|
|
%{python3_sitearch}/*
|
|
|
|
%endif # with_python3
|
|
|
|
|
|
|
|
|
|
|
|
%changelog
|
2012-09-12 21:30:21 +00:00
|
|
|
* Wed Sep 12 2012 Orion Poplawski <orion@cora.nwra.com> - 1.0-2.fix1
|
|
|
|
- Add patch to link only against netcdf
|
|
|
|
|
2012-09-12 19:46:52 +00:00
|
|
|
* Thu May 24 2012 Orion Poplawski <orion@cora.nwra.com> - 1.0-1.fix1
|
|
|
|
- Update to 1.0fix1
|
|
|
|
|
|
|
|
* Thu Apr 5 2012 Orion Poplawski <orion@cora.nwra.com> - 0.9.9-1
|
|
|
|
- Update to 0.9.9
|
|
|
|
|
|
|
|
* Thu Sep 8 2011 Orion Poplawski <orion@cora.nwra.com> - 0.9.7-1
|
|
|
|
- Initial package
|