From e2eee4959971e3656148f405d85227b8530a3ba7 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Dec 04 2020 15:12:50 +0000 Subject: general clean-up and remove grib_api workarounds since upstream no longer supports grib_api; also remove support for architectures not supported by eccodes. --- diff --git a/pygrib.spec b/pygrib.spec index a2df189..d64bfab 100644 --- a/pygrib.spec +++ b/pygrib.spec @@ -1,15 +1,6 @@ # avoid providing the private libs: %global __provides_exclude_from ^(%{python3_sitearch})/.*\\.so.*$ -# use grib_api for i686, ppc64, s390x. armv7hl -# and eccodes for the other archs since eccodes -# does not yet build for these 4 archs. -%ifarch i686 ppc64 s390x armv7hl - %global use_eccodes 0 -%else - %global use_eccodes 1 -%endif - Name: pygrib Version: 2.1.1 Release: 1%{?dist} @@ -22,44 +13,24 @@ Source0: https://files.pythonhosted.org/packages/source/p/%{name}/%{name}-%{v # Adapt setup.py to add a missing "import glob" command Patch1: %{name}-build.patch -# general BR -# note: build requires are global for the whole spec file -# but the python BR packages have been sorted anyway for readibility +# exclude architectures not supported by eccodes +# as explained in bugzilla #1562066 +ExcludeArch: i686 +# as explained in bugzilla #1562076 +ExcludeArch: s390x +# as explained in bugzilla #1562084 +ExcludeArch: armv7hl + BuildRequires: gcc -%if 0%{?use_eccodes} +BuildRequires: make BuildRequires: eccodes-devel -%else -BuildRequires: grib_api-devel -%endif - -# no longer needed ??? -# BuildRequires: openjpeg-devel -# BuildRequires: libpng12-devel +BuildRequires: python3-devel BuildRequires: python3-numpy - -# a note on the build requirements: -# pygrib installation instructions mention these requirements: -# $GRIBAPI_DIR, $JASPER_DIR, $OPENJPEG_DIR, $PNG_DIR and $ZLIB_DIR -# (see https://jswhit.github.io/pygrib/docs/index.html) -# -# grib_api-devel is mentioned above. -# g2clib-devel is included in the pygrib sources, but has been removed -# to comply to Fedora policy, so has been added as requirement -# jasper-devel is BR by grib_api-devel -# libpng-devel and jasper-devel are BR for g2clib-devel -# (since pygrib 2.0.5 is seems needed to use the -# old libpng12 otherwise it gives runtime errors.) -# jasper-devel BRs libjpeg-devel and others -# libpng-devel BRs zlib-devel -# However, pygrib does not need header files from these packages -# during the build, therefore no explicit BuildRequires is needed -# for jasper, openjpeg, png or zlib -# -# in addition python3-pyproj has been added as BR -# below since it is needed to run the test.py script in the check stage +BuildRequires: python3-Cython +BuildRequires: python3-pyproj %global _description \ -Cython wrapper to provide a high-level interface to the ECWMF eccodes \ +Cython wrapper to provide a high-level interface to the ECMWF eccodes \ C library for handling GRIB files. \ \ GRIB is the the World Meteorological Organization (WMO) standard for \ @@ -68,14 +39,9 @@ This module contains python interfaces for reading and modifying GRIB files \ using the ECMWF ECCODES C library, \ as well as command-line utilities for listing and re-packing GRIB files. \ \ -There are for now limited capabilities for writing GRIB files \ -(you can modify the contents of an existing file, \ -but you can't create one from scratch). \ - \ -Warning: on architectures that eccodes does not support \ -(i686 ppc64 s390x armv7hl) the old grib_api library is used as replacement. \ -Please note that this library is no longer maintained by ECMWF \ -and may not be compatible to more recent grib files. +There are for now limited capabilities for writing GRIB files, i.e. \ +you can modify the contents of an existing file, \ +but you can't create one from scratch. %description %_description @@ -83,27 +49,12 @@ and may not be compatible to more recent grib files. Summary: %summary -# python3 specific -BuildRequires: python3-devel -BuildRequires: python3-numpy -BuildRequires: python3-Cython -BuildRequires: python3-pyproj -BuildRequires: make - # this requirement is not automatically resolved and needs to be # inserted manually (see bug #996834) -%if 0%{?use_eccodes} Requires: eccodes -%else -Requires: grib_api -%endif - Requires: python3-pyproj -# specifying this is not needed. rpmbuild figures it out without help -# Requires: jasper-libs openjpeg-libs libpng zlib - -# ensure python provides are provided when python3 becomes the default runtime +# ensure python provides are provided %{?python_provide:%python_provide python3-%{name}} %description -n python3-%{name} %_description @@ -113,17 +64,6 @@ Requires: python3-pyproj %build -#export JASPER_DIR="%%{_usr}/" -## export PNG_DIR="%%{_usr}/" -#export PNG_LIBDIR="%%{_usr}/lib64/" -#export PNG_INCDIR="%%{_usr}/include/libpng12" - -%if 0%{?use_eccodes} -# nothing to do since v2.0.3 -%else -echo "grib_api_libname = grib_api" >> setup.cfg -%endif - %py3_build %install @@ -165,6 +105,9 @@ export PYTHONPATH=%{buildroot}/%{python3_sitearch} %changelog * Fri Dec 04 2020 Jos de Kloe 2.1.1-1 - update to new upstream version 2.1.1 +- general clean-up and remove grib_api workarounds since upstream + no longer supports grib_api +- remove support for architectures not supported by eccodes * Wed Nov 25 2020 Jos de Kloe 2.0.5-1 - update to new upstream version 2.0.5