From d760bc31421a9b14896901d4a49916c994a02452 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 22 Mar 2018 10:56:46 +0100 Subject: [PATCH 001/147] import spec file and patches --- eccodes-32bit.patch | 32 ++++ eccodes-fortran-check.patch | 20 ++ eccodes-rpath.patch | 13 ++ eccodes-soversion.patch | 25 +++ eccodes.spec | 352 ++++++++++++++++++++++++++++++++++++ 5 files changed, 442 insertions(+) create mode 100644 eccodes-32bit.patch create mode 100644 eccodes-fortran-check.patch create mode 100644 eccodes-rpath.patch create mode 100644 eccodes-soversion.patch create mode 100644 eccodes.spec diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch new file mode 100644 index 0000000..dbf5d56 --- /dev/null +++ b/eccodes-32bit.patch @@ -0,0 +1,32 @@ +--- eccodes-2.7.0-Source.orig/src/grib_api_prototypes.h 2018-03-02 10:52:20.000000000 +0100 ++++ eccodes-2.7.0-Source/src/grib_api_prototypes.h 2018-03-10 10:03:31.661896844 +0100 +@@ -868,8 +868,8 @@ double grib_ieeefloat_error(double x); + double grib_long_to_ieee(unsigned long x); + int grib_nearest_smaller_ieee_float(double a, double *x); + unsigned long grib_ieee_to_long(double x); +-unsigned long grib_ieee64_to_long(double x); +-double grib_long_to_ieee64(unsigned long x); ++uint64_t grib_ieee64_to_long(double x); ++double grib_long_to_ieee64(uint64_t x); + int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); + int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); + int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); +--- eccodes-2.7.0-Source.orig/src/grib_ieeefloat.c 2018-03-02 10:52:20.000000000 +0100 ++++ eccodes-2.7.0-Source/src/grib_ieeefloat.c 2018-03-10 10:12:28.773274523 +0100 +@@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x + * grib_encode_unsigned_long. + */ + +-unsigned long grib_ieee64_to_long(double x) ++uint64_t grib_ieee64_to_long(double x) + { + unsigned long lval; + memcpy(&lval,&x,8); + return lval; + } + +-double grib_long_to_ieee64 (unsigned long x) ++double grib_long_to_ieee64(uint64_t x) + { + double dval; + memcpy(&dval,&x,8); diff --git a/eccodes-fortran-check.patch b/eccodes-fortran-check.patch new file mode 100644 index 0000000..96ff5e4 --- /dev/null +++ b/eccodes-fortran-check.patch @@ -0,0 +1,20 @@ +--- eccodes-2.7.0-Source.orig/tests/bufr_dump_encode_fortran.sh 2018-03-02 10:52:20.000000000 +0100 ++++ eccodes-2.7.0-Source/tests/bufr_dump_encode_fortran.sh 2018-03-10 10:16:43.857822252 +0100 +@@ -41,6 +41,7 @@ if command -v pkg-config >/dev/null 2>&1 + INSTALL_DIR=`grep -w CMAKE_INSTALL_PREFIX $CACHE_FILE | cut -d'=' -f2` + FLAGS_LINKER=`echo $FLAGS_LINKER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` + FLAGS_COMPILER=`echo $FLAGS_COMPILER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` ++ FLAGS_COMPILER="${FLAGS_COMPILER} -I${BUILD_DIR}/include" + + # TODO: For now only support when shared libs enabled + SHARED_LIBS=`grep -w BUILD_SHARED_LIBS $CACHE_FILE | cut -d'=' -f2` +--- eccodes-2.7.0-Source.orig/tests/bufr_dump_decode_fortran.sh 2018-03-02 10:52:20.000000000 +0100 ++++ eccodes-2.7.0-Source/tests/bufr_dump_decode_fortran.sh 2018-03-10 10:16:43.857822252 +0100 +@@ -41,6 +41,7 @@ if command -v pkg-config >/dev/null 2>&1 + INSTALL_DIR=`grep -w CMAKE_INSTALL_PREFIX $CACHE_FILE | cut -d'=' -f2` + FLAGS_LINKER=`echo $FLAGS_LINKER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` + FLAGS_COMPILER=`echo $FLAGS_COMPILER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` ++ FLAGS_COMPILER="${FLAGS_COMPILER} -I${BUILD_DIR}/include" + + # TODO: For now only support when shared libs enabled + SHARED_LIBS=`grep -w BUILD_SHARED_LIBS $CACHE_FILE | cut -d'=' -f2` diff --git a/eccodes-rpath.patch b/eccodes-rpath.patch new file mode 100644 index 0000000..c459067 --- /dev/null +++ b/eccodes-rpath.patch @@ -0,0 +1,13 @@ +--- eccodes-2.7.0-Source.orig/cmake/pkg-config.pc.in 2018-03-02 10:52:15.000000000 +0100 ++++ eccodes-2.7.0-Source/cmake/pkg-config.pc.in 2018-03-10 10:16:43.852822378 +0100 +@@ -14,9 +14,7 @@ CC=@CMAKE_C_COMPILER@ + CXX=@CMAKE_CXX_COMPILER@ + FC=@CMAKE_Fortran_COMPILER@ + +-rpath=@RPATH_FLAG@${libdir} +- +-libs=-L${libdir} ${rpath} @PKGCONFIG_LIBS@ ++libs=-L${libdir} @PKGCONFIG_LIBS@ + + libs_private=@PKGCONFIG_LIBS_PRIVATE@ + diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch new file mode 100644 index 0000000..e91210e --- /dev/null +++ b/eccodes-soversion.patch @@ -0,0 +1,25 @@ +--- eccodes-2.7.0-Source.orig/fortran/CMakeLists.txt 2018-03-02 10:52:20.000000000 +0100 ++++ eccodes-2.7.0-Source/fortran/CMakeLists.txt 2018-03-10 10:16:43.847822505 +0100 +@@ -43,7 +43,8 @@ if( HAVE_FORTRAN ) + ecbuild_add_library( TARGET eccodes_f90 + SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h + GENERATED grib_f90.f90 eccodes_f90.f90 +- LIBS eccodes ) ++ LIBS eccodes ++ SOVERSION ${ECCODES_SOVERSION_F90}) + add_custom_command( TARGET eccodes_f90 POST_BUILD + COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/include + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_Fortran_MODULE_DIRECTORY}/${CMAKE_CFG_INTDIR}/eccodes.mod ${CMAKE_BINARY_DIR}/include +--- eccodes-2.7.0-Source.orig/src/CMakeLists.txt 2018-03-02 10:52:20.000000000 +0100 ++++ eccodes-2.7.0-Source/src/CMakeLists.txt 2018-03-10 10:16:43.848822480 +0100 +@@ -435,8 +435,8 @@ ecbuild_add_library(TARGET eccodes + ${grib_api_srcs} + GENERATED grib_api_version.c + LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} +- TEMPLATES ${grib_api_extra_srcs}) +- ++ TEMPLATES ${grib_api_extra_srcs} ++ SOVERSION ${ECCODES_SOVERSION}) + + install( FILES grib_api.h eccodes.h eccodes_windef.h DESTINATION ${INSTALL_INCLUDE_DIR} ) + install( FILES ${CMAKE_CURRENT_BINARY_DIR}/eccodes_version.h DESTINATION ${INSTALL_INCLUDE_DIR} ) diff --git a/eccodes.spec b/eccodes.spec new file mode 100644 index 0000000..e93edbf --- /dev/null +++ b/eccodes.spec @@ -0,0 +1,352 @@ +Name: eccodes +Version: 2.7.0 +Release: 1%{?dist} +Summary: WMO data format decoding and encoding + +# force the shared libraries to have these so versions +%global so_version 0.1 +%global so_version_f90 0.1 + +# latest rawhide grib_api version is 1.25.0-4 +# but this version number is to be updated as soon as we know +# what the final release of grib_api by upstream will be. +%global final_grib_api_version 1.25.0-4 + +# license remarks: +# most of eccodes is licensed ASL 2.0 but some special cases must be noted. +# these 2 files: +# src/grib_yacc.c +# src/grib_yacc.h +# contain a special exception clause that allows them to be +# relicensed if they are included in a larger project +# and these 3 files: +# src/grib_accessor_class_bufr_data_element.c +# src/grib_accessor_class_pack_bufr_values.c +# src/grib_accessor_class_unpack_bufr_values.c +# are LGPL licensed. +# It seems this is a mistake upstream. +# I reported this at: +# https://software.ecmwf.int/issues/browse/SUP-2387 +# (unfortunately this issue is not yet public) +# and they confirm this, and have fixed this for their next release 2.8.0. + +License: ASL 2.0 + +URL: https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home +Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-%{version}-Source.tar.gz +# note: this data package is unversioned upstream but still it is updated +# now and then. The current copy was downloaded 03-Jan-2018 +Source1: http://download.ecmwf.org/test-data/grib_api/eccodes_test_data.tar.gz +# Support 32-bit +# https://software.ecmwf.int/issues/browse/SUP-1813 +# (unfortunately this issue is not public) +Patch1: eccodes-32bit.patch +# Add soversion to the shared libraries, since upstream refuses to do so +# https://software.ecmwf.int/issues/browse/SUP-1809 +Patch2: eccodes-soversion.patch +# remove rpath from cmake/pkg-config.pc.in +Patch3: eccodes-rpath.patch +# fix compile flags in fortran checks +# https://software.ecmwf.int/issues/browse/SUP-1812 +# (unfortunately this issue is not public) +Patch4: eccodes-fortran-check.patch + +# note that the requests to make the other issues public are filed here: +# https://software.ecmwf.int/issues/browse/SUP-2073 +# (and again, unfortunately this issue is not public) + +BuildRequires: cmake3 +BuildRequires: gcc +BuildRequires: gcc-gfortran +BuildRequires: /usr/bin/git +BuildRequires: jasper-devel +BuildRequires: libjpeg-devel +BuildRequires: libpng-devel +BuildRequires: netcdf-devel +BuildRequires: numpy +BuildRequires: openjpeg2-devel +BuildRequires: python2-devel + +# For tests +BuildRequires: perl(Getopt::Long) +BuildRequires: perl(Test::More) + +# the data is needed by the library and all tools provided in the main package +# the other way arpund, the data package could be installed without +# installing the base package. It will probably be pretty useless, +# unless a user wishes to read and study all these grib and bufr +# file format definitions. +Requires: %{name}-data = %{version}-%{release} + +# NOTE: upstream writes: +# """ +# For GRIB encoding and decoding, the GRIB-API functionality is provided +# fully in ecCodes with only minor interface and behaviour changes. +# Interfaces for C, Fortran 90 and Python are all maintained as in GRIB-API. +# However, the GRIB-API Fortran 77 interface is no longer available. +# """ +# Therefore, since the library name and pkg-config file content changes +# and fortran77 support was removed, this replacement package cannot be +# considered compatible enough and no Provides can be defined. +# +# Furthermore, upstream writes: +# "Please note that GRIB-API support is being discontinued at the end of 2018." +# So the old grib_api will need to be obsoleted. + +Obsoletes: grib_api < %{final_grib_api_version} + +%description +ecCodes is a package developed by ECMWF which provides an application +programming interface and a set of tools for decoding and encoding messages +in the following formats: + + * WMO FM-92 GRIB edition 1 and edition 2 + * WMO FM-94 BUFR edition 3 and edition 4 + * WMO GTS abbreviated header (only decoding). + +A useful set of command line tools provide quick access to the messages. C, +Fortran 90 and Python interfaces provide access to the main ecCodes +functionality. + +ecCodes is an evolution of GRIB-API. It is designed to provide the user with +a simple set of functions to access data from several formats with a key/value +approach. + +For GRIB encoding and decoding, the GRIB-API functionality is provided fully +in ecCodes with only minor interface and behaviour changes. Interfaces for C, +Fortran 90 and Python are all maintained as in GRIB-API. However, the +GRIB-API Fortran 77 interface is no longer available. + +In addition, a new set of functions with the prefix "codes_" is provided to +operate on all the supported message formats. These functions have the same +interface and behaviour as the "grib_" functions. + +A selection of GRIB-API tools has been included in ecCodes (ecCodes GRIB +tools), while new tools are available for the BUFR (ecCodes BUFR tools) and +GTS formats. The new tools have been developed to be as similar as possible +to the existing GRIB-API tools maintaining, where possible, the same options +and behaviour. A significant difference compared with GRIB-API tools is that +bufr_dump produces output in JSON format suitable for many web based +applications. + + +%package devel +Summary: Contains ecCodes development files +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: gcc-gfortran%{?_isa} +Requires: jasper-devel%{?_isa} + +Obsoletes: grib_api-devel < %{final_grib_api_version} + +%description devel +Header files and libraries for ecCodes. + +# note: python3 is not yet supported by eccodes +%package -n python2-%{name} +Summary: A python2 interface to ecCodes +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: gcc-gfortran%{?_isa} +Requires: jasper-devel%{?_isa} + +# a sub package python2-grib_api did not exist +# so no obsoletes needed here + +%description -n python2-%{name} +A python2 interface to ecCodes. Also a legacy interface to gribapi is provided. + +%package data +Summary: Data needed by the eccodes library and tools +BuildArch: noarch + +%description data +This package provides all tables and definitions needed +to encode and decode grib and bufr files, and includes +both the official WMO tables and a number of often used +local definitions by ECMWF and other meteorological centers. + +%package doc +Summary: Documentation and example code +BuildArch: noarch + +# a sub package grib_api-doc did not exist +# so no obsoletes needed here + +%description doc +This package contains the html documentation for ecCodes +and a fair number of example programs and scripts to use it +in C, Fortran 90, and Python. + +%prep +%autosetup -n %{name}-%{version}-Source -p1 + +# unpack the test data below build +mkdir build +cd build +tar xf %SOURCE1 + +# remove executable permissions from c files +cd .. +chmod 644 tigge/*.c +chmod 644 tools/*.c + +# remove executable permissions from the authors and license file +chmod 644 AUTHORS LICENSE + +%build +cd build + +#-- The following features are disabled by default and not switched on: +# +# * AEC , support for Adaptive Entropy Coding +# * MEMFS , Memory based access to definitions/samples +# * MEMORY_MANAGEMENT , enable memory management +# * ALIGN_MEMORY , enable memory alignment +# * GRIB_TIMER , enable timer +# * ECCODES_THREADS , enable POSIX threads +# +#-- The following features are disabled by default and switched on: +# * PNG , support for PNG decoding/encoding +# * ECCODES_OMP_THREADS , enable OMP threads +# * EXTRA_TESTS , enable extended regression testing +# +#-- Also add an explicit option to not use rpath +# +# Note: -DINSTALL_LIB_DIR=%%{_lib} is needed because otherwise +# the library so files get installed in /usr/lib in stead +# of /usr/lib64 on x86_64. +# Note: -DPYTHON_EXECUTABLE was added to prevent deprecation warnings +# during running of tests which breaks +# Test #184: eccodes_p_grib_keys_iterator_test + +%cmake3 -DINSTALL_LIB_DIR=%{_lib} \ + -DENABLE_ECCODES_OMP_THREADS=ON \ + -DENABLE_EXTRA_TESTS=ON \ + -DENABLE_PNG=ON \ + -DCMAKE_SKIP_RPATH=TRUE \ + -DECCODES_SOVERSION=%{so_version} \ + -DECCODES_SOVERSION_F90=%{so_version_f90} \ + -DPYTHON_EXECUTABLE=%{_bindir}/python2 \ + .. + +%make_build + +# copy some include files to the build dir +# that are otherwise not found when creating the debugsource subpackage +cd .. +cp fortran/eccodes_constants.h build/fortran/ +cp fortran/grib_api_constants.h build/fortran/ + +%install +%make_install -C build +mkdir -p %{buildroot}%{_fmoddir} +mv %{buildroot}%{_includedir}/*.mod %{buildroot}%{_fmoddir}/ + +# remove a script that does not belong in the doc section +# and triggers an rpmlint error +rm %{buildroot}%{_datadir}/%{name}/definitions/installDefinitions.sh +# by the way, is there a way in the files section to include a directory +# but exclude a given file in it? I could not find such a trick. + +# copy the html documentation to the install directory +mkdir -p %{buildroot}%{_datadir}/doc/%{name}/ +cp -r html %{buildroot}%{_datadir}/doc/%{name}/ +# and remove an unneeded Makefile from the html directory +rm %{buildroot}%{_datadir}/doc/%{name}/html/Makefile.am + +# copy the example scripts/programs to the install directory +# but dont copy the shell scripts and Makefiles, since these +# are part of the cmake test setup and not usefull as example. +# Use %%{_datadir}/doc/%%{name}/ rather than %%{_datadir}/%%{name}/ +# otherwise the rpmbuild will create a lot off unnecessary +# pyc and pyo files. + +mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/C +cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C +mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 +cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 +mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/python +cp examples/python/*.py %{buildroot}%{_datadir}/doc/%{name}/examples/python +cp examples/python/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/python +cp examples/python/*.csv %{buildroot}%{_datadir}/doc/%{name}/examples/python + +# adapt a shebang to make it point explicitely to python2 +sed -i -e 's/\/bin\/env python/\/usr\/bin\/python2/' \ + %{buildroot}%{_datadir}/doc/%{name}/examples/python/high_level_api.py + +# move the sample files into /usr/share/doc/eccodes +mv %{buildroot}%{_datadir}/%{name}/ifs_samples/ %{buildroot}%{_datadir}/doc/%{name}/ +mv %{buildroot}%{_datadir}/%{name}/samples/ %{buildroot}%{_datadir}/doc/%{name}/ + +# move cmake files to the cmake folder below libdir +# as suggested in the review request +mkdir -p %{buildroot}%{_libdir}/cmake/%{name}/ +mv %{buildroot}%{_datadir}/%{name}/cmake/* %{buildroot}%{_libdir}/cmake/%{name}/ + +%ldconfig_scriptlets + +%check +cd build + +# notes: +# * the LD_LIBRARY_PATH setting is required to let the tests +# run inside the build dir, otherwise they are broken due to +# the removal of rpath +# * the LIBRARY_PATH setting is needed te let the +# 'eccodes_t_bufr_dump_(de|en)code_C' tests run. +# These tests compile on the fly generated C code, and +# without this setting the loader does not find the libraries. +# +# These fail due to build flag issues, i.e. the test script does a +# test build of some on the fly generated fortran code, but cannot +# find the necessary *.mod fortran module definition files. +# There is no easy way to define this as environment setting, +# so a patch has been added to solve this for now. +# See: https://software.ecmwf.int/issues/browse/SUP-1812 +# (unfortunately this issue is not public) +LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +LIBRARY_PATH=%{buildroot}/%{_libdir} \ +ctest -V %{?_smp_mflags} + +%files +%license LICENSE +%doc README ChangeLog AUTHORS +%{_bindir}/* +%{_libdir}/*.so.* + +%files -n python2-%{name} +%{python2_sitearch}/%{name} +%{python2_sitearch}/%{name}-*-py*.egg-info +%{python2_sitearch}/gribapi + +%files devel +%{_includedir}/* +%{_fmoddir}/%{name}.mod +%{_fmoddir}/grib_api.mod +%{_libdir}/pkgconfig/%{name}.pc +%{_libdir}/pkgconfig/%{name}_f90.pc +%{_libdir}/*.so +%dir %{_libdir}/cmake/%{name} +%{_libdir}/cmake/%{name}/* + +%files data +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/definitions/ + +%files doc +%doc %{_datadir}/doc/%{name}/ + +%changelog +* Thu Mar 22 2018 Jos de Kloe - 2.7.0-1 +- Upgrade to version 2.7.0 +- Fix rpath and some permission issues +- Remove Provides, add post/postun sections, add LD_LIBRARY_PATH +- Fix failing tests in check section +- Implement so version because upstream refuses to do so +- Add fix for test failure 184 and ldconfig_scriptlets + and move unversioned so file to devel package + as suggested by Robert-AndrĂ© Mauchin +- Add a documentation and a data sub-package +- Change the license and add a note explaining why this was done + +* Fri Mar 24 2017 Orion Poplawski - 2.2.0-1 +- Initial Fedora package From 58f6bde3c3d75d354776f33fbc67d80a563f83b5 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 22 Mar 2018 11:05:28 +0100 Subject: [PATCH 002/147] add source tar file --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) create mode 100644 .gitignore create mode 100644 sources diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7f8f7a0 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/eccodes-2.7.0-Source.tar.gz diff --git a/sources b/sources new file mode 100644 index 0000000..25e3309 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (eccodes-2.7.0-Source.tar.gz) = 6b65902e0e82a038e6c705c68a5947ceef4f6950d83bdfcc78ec83b60bdcbc2b56a62971c5aa40c91b749c224ffa8ef120e9b72bf168032ffef9096207234103 From 7f9a70b452b5f37713cd26607131e8b4e408e821 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 22 Mar 2018 11:29:01 +0100 Subject: [PATCH 003/147] import test data tar file --- .gitignore | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 7f8f7a0..d15f2b0 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /eccodes-2.7.0-Source.tar.gz +/eccodes_test_data.tar.gz diff --git a/sources b/sources index 25e3309..8b2fcfc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (eccodes-2.7.0-Source.tar.gz) = 6b65902e0e82a038e6c705c68a5947ceef4f6950d83bdfcc78ec83b60bdcbc2b56a62971c5aa40c91b749c224ffa8ef120e9b72bf168032ffef9096207234103 +SHA512 (eccodes_test_data.tar.gz) = b0baa0867ac583ec9000e21b2653d11c26333a50bb817a41cad0ebc30b445fc9295f7b5cbc6908364aed502bfc4786929f2dcd0526b6540b26c1c024c90ede6a From 82da9bccd710bae40ac7c97c63c9a548c7fe91ff Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 22 Mar 2018 11:55:12 +0100 Subject: [PATCH 004/147] add source tar file again, since it seemed lost when committing the test data tar file. --- sources | 1 + 1 file changed, 1 insertion(+) diff --git a/sources b/sources index 8b2fcfc..27a0e6e 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ +SHA512 (eccodes-2.7.0-Source.tar.gz) = 6b65902e0e82a038e6c705c68a5947ceef4f6950d83bdfcc78ec83b60bdcbc2b56a62971c5aa40c91b749c224ffa8ef120e9b72bf168032ffef9096207234103 SHA512 (eccodes_test_data.tar.gz) = b0baa0867ac583ec9000e21b2653d11c26333a50bb817a41cad0ebc30b445fc9295f7b5cbc6908364aed502bfc4786929f2dcd0526b6540b26c1c024c90ede6a From ebe8fef4650fb0ad2d3234e35490cdc217be239e Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 29 Mar 2018 16:16:01 +0200 Subject: [PATCH 005/147] added ExcludeArch to suppress failing builds on some architectures --- eccodes.spec | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index e93edbf..0ccf629 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.7.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -95,6 +95,15 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} +# as explained in bugzilla #1562066 +ExcludeArch: i686 +# as explained in bugzilla #1562071 +ExcludeArch: ppc64 +# as explained in bugzilla #1562076 +ExcludeArch: s390x +# as explained in bugzilla #1562084 +ExcludeArch: armv7hl + %description ecCodes is a package developed by ECMWF which provides an application programming interface and a set of tools for decoding and encoding messages @@ -336,6 +345,9 @@ ctest -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Mar 29 2018 Jos de Kloe - 2.7.0-2 +- added ExcludeArch statements for the failing architectures + * Thu Mar 22 2018 Jos de Kloe - 2.7.0-1 - Upgrade to version 2.7.0 - Fix rpath and some permission issues From 9c52eec8a7ff51b07c10e93cca3c1a367041541e Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 19 Apr 2018 15:51:14 +0200 Subject: [PATCH 006/147] add running some problematic tests in verbose mode --- eccodes.spec | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/eccodes.spec b/eccodes.spec index 0ccf629..7b0e536 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -236,6 +236,7 @@ cd build -DECCODES_SOVERSION_F90=%{so_version_f90} \ -DPYTHON_EXECUTABLE=%{_bindir}/python2 \ .. +# or: -DCMAKE_SKIP_RPATH=ON ?? %make_build @@ -316,6 +317,22 @@ LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ LIBRARY_PATH=%{buildroot}/%{_libdir} \ ctest -V %{?_smp_mflags} +# manually run some problematic tests for ppc64: +echo "=================================" +echo "=================================" +echo "=================================" +echo "output for: ctest -VV -R t_optimize_scaling_sh" +echo "=================================" +ctest -VV -R t_optimize_scaling_sh +echo "=================================" +echo "=================================" +echo "=================================" +echo "output for: ctest -VV -R t_bufr_dump_encode_fortran" +ctest -VV -R t_bufr_dump_encode_fortran +echo "=================================" +echo "=================================" +echo "=================================" + %files %license LICENSE %doc README ChangeLog AUTHORS From 33d19907f1b1f28d060caad5d81266f47b35ea10 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 19 Apr 2018 16:01:20 +0200 Subject: [PATCH 007/147] undo the ppc64 exclude --- eccodes.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 7b0e536..3c23d94 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -98,7 +98,7 @@ Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 ExcludeArch: i686 # as explained in bugzilla #1562071 -ExcludeArch: ppc64 +# ExcludeArch: ppc64 # as explained in bugzilla #1562076 ExcludeArch: s390x # as explained in bugzilla #1562084 From c7b500b2a0ff17eeaf39c0ecd58fbb9cb26ad684 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 19 Apr 2018 16:22:37 +0200 Subject: [PATCH 008/147] add echo statements behind the failing tests to let the code continue --- eccodes.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 3c23d94..a8404c4 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -315,7 +315,7 @@ cd build # (unfortunately this issue is not public) LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ LIBRARY_PATH=%{buildroot}/%{_libdir} \ -ctest -V %{?_smp_mflags} +ctest -V %{?_smp_mflags}; echo 'dummy' # manually run some problematic tests for ppc64: echo "=================================" @@ -323,12 +323,12 @@ echo "=================================" echo "=================================" echo "output for: ctest -VV -R t_optimize_scaling_sh" echo "=================================" -ctest -VV -R t_optimize_scaling_sh +ctest -VV -R t_optimize_scaling_sh; echo 'dummy' echo "=================================" echo "=================================" echo "=================================" echo "output for: ctest -VV -R t_bufr_dump_encode_fortran" -ctest -VV -R t_bufr_dump_encode_fortran +ctest -VV -R t_bufr_dump_encode_fortran; echo 'dummy' echo "=================================" echo "=================================" echo "=================================" From 8f492aa41e94be95db7ed691f711f04584409ead Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 19 Apr 2018 16:40:19 +0200 Subject: [PATCH 009/147] disable the full test suite, since otherwise the individual tests are not executed --- eccodes.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index a8404c4..c9c017a 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -315,7 +315,7 @@ cd build # (unfortunately this issue is not public) LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ LIBRARY_PATH=%{buildroot}/%{_libdir} \ -ctest -V %{?_smp_mflags}; echo 'dummy' +# ctest -V %{?_smp_mflags} # manually run some problematic tests for ppc64: echo "=================================" From 2c7cee4496dbf037422cc52b76eadd7201d8d990 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 19 Apr 2018 16:53:57 +0200 Subject: [PATCH 010/147] correct stupid library path mistake --- eccodes.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index c9c017a..246aafc 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -313,8 +313,8 @@ cd build # so a patch has been added to solve this for now. # See: https://software.ecmwf.int/issues/browse/SUP-1812 # (unfortunately this issue is not public) -LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ -LIBRARY_PATH=%{buildroot}/%{_libdir} \ +#LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +#LIBRARY_PATH=%{buildroot}/%{_libdir} \ # ctest -V %{?_smp_mflags} # manually run some problematic tests for ppc64: @@ -323,11 +323,15 @@ echo "=================================" echo "=================================" echo "output for: ctest -VV -R t_optimize_scaling_sh" echo "=================================" +LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +LIBRARY_PATH=%{buildroot}/%{_libdir} \ ctest -VV -R t_optimize_scaling_sh; echo 'dummy' echo "=================================" echo "=================================" echo "=================================" echo "output for: ctest -VV -R t_bufr_dump_encode_fortran" +LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +LIBRARY_PATH=%{buildroot}/%{_libdir} \ ctest -VV -R t_bufr_dump_encode_fortran; echo 'dummy' echo "=================================" echo "=================================" From c1a58927ef8d1c24cbea38b1673c6a8912df14e8 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 19 Apr 2018 17:11:34 +0200 Subject: [PATCH 011/147] now run the second failing ppc test case --- eccodes.spec | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 246aafc..48678b0 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -318,21 +318,21 @@ cd build # ctest -V %{?_smp_mflags} # manually run some problematic tests for ppc64: -echo "=================================" -echo "=================================" -echo "=================================" -echo "output for: ctest -VV -R t_optimize_scaling_sh" -echo "=================================" -LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ -LIBRARY_PATH=%{buildroot}/%{_libdir} \ -ctest -VV -R t_optimize_scaling_sh; echo 'dummy' +#echo "=================================" +#echo "=================================" +#echo "=================================" +#echo "output for: ctest -VV -R t_optimize_scaling_sh" +#echo "=================================" +#LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +#LIBRARY_PATH=%{buildroot}/%{_libdir} \ +#ctest -VV -R t_optimize_scaling_sh echo "=================================" echo "=================================" echo "=================================" echo "output for: ctest -VV -R t_bufr_dump_encode_fortran" LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ LIBRARY_PATH=%{buildroot}/%{_libdir} \ -ctest -VV -R t_bufr_dump_encode_fortran; echo 'dummy' +ctest -VV -R t_bufr_dump_encode_fortran echo "=================================" echo "=================================" echo "=================================" From 56ad6fdf070973d3705c549a7f99e02b3d0cee01 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Mon, 23 Apr 2018 09:36:05 +0200 Subject: [PATCH 012/147] add rpmlintrc and disable manual test runs --- eccodes.rpmlintrc | 56 +++++++++++++++++++++++++++++++++++++++++++++++ eccodes.spec | 25 ++------------------- 2 files changed, 58 insertions(+), 23 deletions(-) create mode 100644 eccodes.rpmlintrc diff --git a/eccodes.rpmlintrc b/eccodes.rpmlintrc new file mode 100644 index 0000000..60064d2 --- /dev/null +++ b/eccodes.rpmlintrc @@ -0,0 +1,56 @@ +# use like this: +# rpmlint --file eccodes.rpmlintrc *.rpm +# example: addFilter ("^foo-.*regex-match-for-rpmlint-warning") + +# these are invalid spelling warnings. GRIB and BUFR are correct, since these are +# the names of the data files that this software handles. +# the description itself is a 1-to-1 copy of what the (UK-based) upstream +# writes, and I am not going to translate this to US spelling ... +addFilter ("W: spelling-error %description -l en_US behaviour -> behavior") +addFilter ("W: spelling-error %description -l en_US grib ->") +addFilter ("W: spelling-error %description -l en_US bufr ->") + +# this data file with wrong line ending has been added to the software on purpose +# for testing purposes, so this is no mistake +addFilter ("eccodes-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/eccodes/examples/python/flight_data.csv") + +# these data files are no scripts. The dataformat just has an unfortunate first line +# starting with #! so it resembles a shebang line. +# see also comment #3 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 +addFilter ("^eccodes-data.noarch: E: wrong-script-interpreter /usr/share/eccodes/definitions/grib1/local.82.0.def") +addFilter ("^eccodes-data.noarch: E: non-executable-script /usr/share/eccodes/definitions/grib1/local.82.0.def") +addFilter ("^eccodes-data.noarch: E: wrong-script-interpreter /usr/share/eccodes/definitions/grib1/local.82.83.def") +addFilter ("^eccodes-data.noarch: E: non-executable-script /usr/share/eccodes/definitions/grib1/local.82.83.def") + +# this is a false error (its an rpmlint bug). +# the spec file now uses %ldconfig_scriptlets in stead of the old ldconfig-postin/postun +# see also comment #18 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 +addFilter ("^eccodes.x86_64: E: library-without-ldconfig-postin /usr/lib64/libeccodes.so.0.1") +addFilter ("^eccodes.x86_64: E: library-without-ldconfig-postun /usr/lib64/libeccodes.so.0.1") +addFilter ("^eccodes.x86_64: E: library-without-ldconfig-postin /usr/lib64/libeccodes_f90.so.0.1") +addFilter ("^eccodes.x86_64: E: library-without-ldconfig-postun /usr/lib64/libeccodes_f90.so.0.1") + +# this is an rpmlint bug +# see also comment #8 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 +addFilter ("eccodes-debuginfo.x86_64: E: useless-provides debuginfo\(build-id\)") + +# there is no full compatibility between the old grib_api and the new eccodes +# so only obsoletes can be used bu no provides. +# see also comment #21 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 +addFilter ("^eccodes.x86_64: W: obsolete-not-provided grib_api") +addFilter ("^eccodes-devel.x86_64: W: obsolete-not-provided grib_api-devel") +addFilter ("^eccodes-devel.x86_64: W: only-non-binary-in-usr-lib") + +# documentation is in a dedicated doc subpackage, +# so these warnings have no merit +addFilter ("python2-eccodes.x86_64: W: no-documentation") +addFilter ("eccodes-debugsource.x86_64: W: no-documentation") +addFilter ("eccodes-devel.x86_64: W: no-documentation") +addFilter ("eccodes-data.noarch: W: no-documentation") + +# temporary disable the man page warning, since it obscures other problems that +# may be more important, and it has already been reported upstream +# see also comment #3 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 +addFilter ("eccodes.x86_64: W: no-manual-page-for-binary") + +# addFilter ("") diff --git a/eccodes.spec b/eccodes.spec index 48678b0..0ccf629 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -98,7 +98,7 @@ Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 ExcludeArch: i686 # as explained in bugzilla #1562071 -# ExcludeArch: ppc64 +ExcludeArch: ppc64 # as explained in bugzilla #1562076 ExcludeArch: s390x # as explained in bugzilla #1562084 @@ -236,7 +236,6 @@ cd build -DECCODES_SOVERSION_F90=%{so_version_f90} \ -DPYTHON_EXECUTABLE=%{_bindir}/python2 \ .. -# or: -DCMAKE_SKIP_RPATH=ON ?? %make_build @@ -313,29 +312,9 @@ cd build # so a patch has been added to solve this for now. # See: https://software.ecmwf.int/issues/browse/SUP-1812 # (unfortunately this issue is not public) -#LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ -#LIBRARY_PATH=%{buildroot}/%{_libdir} \ -# ctest -V %{?_smp_mflags} - -# manually run some problematic tests for ppc64: -#echo "=================================" -#echo "=================================" -#echo "=================================" -#echo "output for: ctest -VV -R t_optimize_scaling_sh" -#echo "=================================" -#LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ -#LIBRARY_PATH=%{buildroot}/%{_libdir} \ -#ctest -VV -R t_optimize_scaling_sh -echo "=================================" -echo "=================================" -echo "=================================" -echo "output for: ctest -VV -R t_bufr_dump_encode_fortran" LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ LIBRARY_PATH=%{buildroot}/%{_libdir} \ -ctest -VV -R t_bufr_dump_encode_fortran -echo "=================================" -echo "=================================" -echo "=================================" +ctest -V %{?_smp_mflags} %files %license LICENSE From 9cab2c2bc3bb59f3a04a624da6ca4d03e60731b2 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 9 May 2018 11:35:07 +0200 Subject: [PATCH 013/147] upgrade to version 2.7.3 --- eccodes.spec | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 0ccf629..fa49e86 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,16 +1,17 @@ Name: eccodes -Version: 2.7.0 -Release: 2%{?dist} +Version: 2.7.3 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions %global so_version 0.1 %global so_version_f90 0.1 -# latest rawhide grib_api version is 1.25.0-4 +# latest rawhide grib_api version is 1.26.1-1 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. -%global final_grib_api_version 1.25.0-4 +# latest upstream grib_api release is 1.26.1 (08-May-2018) +%global final_grib_api_version 1.26.1-1 # license remarks: # most of eccodes is licensed ASL 2.0 but some special cases must be noted. @@ -36,6 +37,7 @@ URL: https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-%{version}-Source.tar.gz # note: this data package is unversioned upstream but still it is updated # now and then. The current copy was downloaded 03-Jan-2018 +# (it was still the same on 08-May-2018) Source1: http://download.ecmwf.org/test-data/grib_api/eccodes_test_data.tar.gz # Support 32-bit # https://software.ecmwf.int/issues/browse/SUP-1813 @@ -96,13 +98,13 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562071 -ExcludeArch: ppc64 +#ExcludeArch: ppc64 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application @@ -138,7 +140,7 @@ and behaviour. A significant difference compared with GRIB-API tools is that bufr_dump produces output in JSON format suitable for many web based applications. - +##################################################### %package devel Summary: Contains ecCodes development files Requires: %{name}%{?_isa} = %{version}-%{release} @@ -150,7 +152,7 @@ Obsoletes: grib_api-devel < %{final_grib_api_version} %description devel Header files and libraries for ecCodes. -# note: python3 is not yet supported by eccodes +##################################################### %package -n python2-%{name} Summary: A python2 interface to ecCodes Requires: %{name}%{?_isa} = %{version}-%{release} @@ -163,6 +165,10 @@ Requires: jasper-devel%{?_isa} %description -n python2-%{name} A python2 interface to ecCodes. Also a legacy interface to gribapi is provided. +##################################################### +# note: python3 is not yet supported by eccodes + +##################################################### %package data Summary: Data needed by the eccodes library and tools BuildArch: noarch @@ -173,6 +179,7 @@ to encode and decode grib and bufr files, and includes both the official WMO tables and a number of often used local definitions by ECMWF and other meteorological centers. +##################################################### %package doc Summary: Documentation and example code BuildArch: noarch @@ -185,6 +192,7 @@ This package contains the html documentation for ecCodes and a fair number of example programs and scripts to use it in C, Fortran 90, and Python. +##################################################### %prep %autosetup -n %{name}-%{version}-Source -p1 @@ -345,6 +353,11 @@ ctest -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Tue May 08 2018 Jos de Kloe - 2.7.3-1 +- Upgrade to version 2.7.3 +- adjust latest grib_api version to 1.26.1-1 +- for now, try to disable ExcludeArch statements to see what happens + * Thu Mar 29 2018 Jos de Kloe - 2.7.0-2 - added ExcludeArch statements for the failing architectures From 75a9b2b9f9f068c17aecdf52f8dfc194888ca420 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 9 May 2018 11:39:41 +0200 Subject: [PATCH 014/147] add tar file for updated version 2.7.3 --- .gitignore | 1 + sources | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index d15f2b0..c9bee99 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /eccodes-2.7.0-Source.tar.gz /eccodes_test_data.tar.gz +/eccodes-2.7.3-Source.tar.gz diff --git a/sources b/sources index 27a0e6e..f1bdd17 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (eccodes-2.7.0-Source.tar.gz) = 6b65902e0e82a038e6c705c68a5947ceef4f6950d83bdfcc78ec83b60bdcbc2b56a62971c5aa40c91b749c224ffa8ef120e9b72bf168032ffef9096207234103 -SHA512 (eccodes_test_data.tar.gz) = b0baa0867ac583ec9000e21b2653d11c26333a50bb817a41cad0ebc30b445fc9295f7b5cbc6908364aed502bfc4786929f2dcd0526b6540b26c1c024c90ede6a +SHA512 (eccodes-2.7.3-Source.tar.gz) = a6ac6dae5a785a14e2b69ecc698e72f4173c96655c8944f6e6f1c530e72a078036c2fd76d77473e17b33be606ec36f8236a0efa22afc8b4d7760d88a053902f4 From d241e7e09088ee86f24ee566e232823e65b6d87a Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 9 May 2018 12:04:28 +0200 Subject: [PATCH 015/147] reinsert the data package in the sources list --- sources | 1 + 1 file changed, 1 insertion(+) diff --git a/sources b/sources index f1bdd17..1449418 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ SHA512 (eccodes-2.7.3-Source.tar.gz) = a6ac6dae5a785a14e2b69ecc698e72f4173c96655c8944f6e6f1c530e72a078036c2fd76d77473e17b33be606ec36f8236a0efa22afc8b4d7760d88a053902f4 +SHA512 (eccodes_test_data.tar.gz) = b0baa0867ac583ec9000e21b2653d11c26333a50bb817a41cad0ebc30b445fc9295f7b5cbc6908364aed502bfc4786929f2dcd0526b6540b26c1c024c90ede6a From 9b16b23603aad46f5206650db104ace47b38c097 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 9 May 2018 13:07:10 +0200 Subject: [PATCH 016/147] reactivate the excludearch lines --- eccodes.spec | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index fa49e86..3f03f0f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -98,13 +98,13 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562071 -#ExcludeArch: ppc64 +ExcludeArch: ppc64 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application @@ -356,7 +356,6 @@ ctest -V %{?_smp_mflags} * Tue May 08 2018 Jos de Kloe - 2.7.3-1 - Upgrade to version 2.7.3 - adjust latest grib_api version to 1.26.1-1 -- for now, try to disable ExcludeArch statements to see what happens * Thu Mar 29 2018 Jos de Kloe - 2.7.0-2 - added ExcludeArch statements for the failing architectures From 8164a378ba60996c7151fe07c3ef6f8777fdc570 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 5 Jul 2018 14:14:39 +0200 Subject: [PATCH 017/147] Upgrade to version 2.8.0 (and disable excludearch switches for testing) --- .gitignore | 1 + eccodes-32bit.patch | 10 +++++----- eccodes.spec | 28 ++++++++++------------------ sources | 4 ++-- 4 files changed, 18 insertions(+), 25 deletions(-) diff --git a/.gitignore b/.gitignore index c9bee99..5cd40f8 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /eccodes-2.7.0-Source.tar.gz /eccodes_test_data.tar.gz /eccodes-2.7.3-Source.tar.gz +/eccodes-2.8.0-Source.tar.gz diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index dbf5d56..1e6495d 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,6 +1,6 @@ ---- eccodes-2.7.0-Source.orig/src/grib_api_prototypes.h 2018-03-02 10:52:20.000000000 +0100 -+++ eccodes-2.7.0-Source/src/grib_api_prototypes.h 2018-03-10 10:03:31.661896844 +0100 -@@ -868,8 +868,8 @@ double grib_ieeefloat_error(double x); +--- eccodes-2.8.0-Source.orig/src/grib_api_prototypes.h 2018-06-12 13:50:54.000000000 +0200 ++++ eccodes-2.8.0-Source/src/grib_api_prototypes.h 2018-06-28 14:58:28.302344717 +0200 +@@ -869,8 +869,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double *x); unsigned long grib_ieee_to_long(double x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.7.0-Source.orig/src/grib_ieeefloat.c 2018-03-02 10:52:20.000000000 +0100 -+++ eccodes-2.7.0-Source/src/grib_ieeefloat.c 2018-03-10 10:12:28.773274523 +0100 +--- eccodes-2.8.0-Source.orig/src/grib_ieeefloat.c 2018-06-12 13:50:54.000000000 +0200 ++++ eccodes-2.8.0-Source/src/grib_ieeefloat.c 2018-06-28 14:58:28.303344693 +0200 @@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes.spec b/eccodes.spec index 3f03f0f..1b12a63 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.7.3 +Version: 2.8.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -14,30 +14,19 @@ Summary: WMO data format decoding and encoding %global final_grib_api_version 1.26.1-1 # license remarks: -# most of eccodes is licensed ASL 2.0 but some special cases must be noted. +# most of eccodes is licensed ASL 2.0 but a special case must be noted. # these 2 files: # src/grib_yacc.c # src/grib_yacc.h # contain a special exception clause that allows them to be # relicensed if they are included in a larger project -# and these 3 files: -# src/grib_accessor_class_bufr_data_element.c -# src/grib_accessor_class_pack_bufr_values.c -# src/grib_accessor_class_unpack_bufr_values.c -# are LGPL licensed. -# It seems this is a mistake upstream. -# I reported this at: -# https://software.ecmwf.int/issues/browse/SUP-2387 -# (unfortunately this issue is not yet public) -# and they confirm this, and have fixed this for their next release 2.8.0. License: ASL 2.0 URL: https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-%{version}-Source.tar.gz # note: this data package is unversioned upstream but still it is updated -# now and then. The current copy was downloaded 03-Jan-2018 -# (it was still the same on 08-May-2018) +# now and then. The current copy was downloaded 05-Jul-2018 Source1: http://download.ecmwf.org/test-data/grib_api/eccodes_test_data.tar.gz # Support 32-bit # https://software.ecmwf.int/issues/browse/SUP-1813 @@ -98,13 +87,13 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562071 -ExcludeArch: ppc64 +#ExcludeArch: ppc64 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application @@ -353,6 +342,9 @@ ctest -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Jul 5 2018 Jos de Kloe - 2.8.0-1 +- Upgrade to version 2.8.0 + * Tue May 08 2018 Jos de Kloe - 2.7.3-1 - Upgrade to version 2.7.3 - adjust latest grib_api version to 1.26.1-1 diff --git a/sources b/sources index 1449418..0bca58c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (eccodes-2.7.3-Source.tar.gz) = a6ac6dae5a785a14e2b69ecc698e72f4173c96655c8944f6e6f1c530e72a078036c2fd76d77473e17b33be606ec36f8236a0efa22afc8b4d7760d88a053902f4 -SHA512 (eccodes_test_data.tar.gz) = b0baa0867ac583ec9000e21b2653d11c26333a50bb817a41cad0ebc30b445fc9295f7b5cbc6908364aed502bfc4786929f2dcd0526b6540b26c1c024c90ede6a +SHA512 (eccodes-2.8.0-Source.tar.gz) = c915d5e5f5856caf219101c42225a4846e61c523cb313b369fb7dd2d32ee556088fba79d7091befa29aec0795660e3aa671be8e0c1ea4bd0badd75152bf484a8 +SHA512 (eccodes_test_data.tar.gz) = 0f13137584525f12e184068501cc13a58fb8bb16ada680ca7f1575c6066fd2bc5995ec7afffb175c38958e71d991cea4b3972ad01402b54d2550e442241ffc7b From 6fa3919fb3db98a4499793eb763c32c47a3e41c1 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 5 Jul 2018 15:48:04 +0200 Subject: [PATCH 018/147] add excludearch statements again and a todo on the datapack --- eccodes.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 1b12a63..0b50cea 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -6,6 +6,7 @@ Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions %global so_version 0.1 %global so_version_f90 0.1 +%global datapack_date 20180705 # latest rawhide grib_api version is 1.26.1-1 # but this version number is to be updated as soon as we know @@ -27,6 +28,8 @@ URL: https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-%{version}-Source.tar.gz # note: this data package is unversioned upstream but still it is updated # now and then. The current copy was downloaded 05-Jul-2018 +# todo: rename the datapack using the download date to make it versioned +# in fedora and figure out how to insert this in this Source1 entry Source1: http://download.ecmwf.org/test-data/grib_api/eccodes_test_data.tar.gz # Support 32-bit # https://software.ecmwf.int/issues/browse/SUP-1813 @@ -87,13 +90,13 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562071 -#ExcludeArch: ppc64 +ExcludeArch: ppc64 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application From 6377a151282661c1d45f69c468dffebd83a3893e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 12 Jul 2018 23:30:56 +0000 Subject: [PATCH 019/147] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 0b50cea..9d7b833 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.8.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -345,6 +345,9 @@ ctest -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Jul 12 2018 Fedora Release Engineering - 2.8.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Thu Jul 5 2018 Jos de Kloe - 2.8.0-1 - Upgrade to version 2.8.0 From bae9ce7f42f074a8609ba692b603fd6e84c7a943 Mon Sep 17 00:00:00 2001 From: Matthew Krupcale Date: Tue, 14 Aug 2018 13:55:16 -0400 Subject: [PATCH 020/147] Keep samples in default upstream location There are several reasons to prefer keeping the upstream default location for the samples files: * Consistency with upstream * The current location, /usr/share/doc/eccodes/, places the samples (which are binary files) into the -doc subpackage - The -doc subpackage is not Required by the eccodes package, so the sample files which are required by e.g. `src/grib_handle.c:grib_external_template_path`, will fail to load by default and cause an ECCODES error - Even if the user manually installs the -doc subpackage, because the build was not configured with this alternative path using `-DECCODES_SAMPLES_PATH`, the user will also have to set the environment variable `ECCODES_SAMPLES_PATH` to this alternative path. See `/usr/bin/codes_info` for the configured paths. Note that this issue does not show up in the testing of eccodes itself because the test sets `ECCODES_SAMPLES_PATH` to the build directory samples directory (see `tests/include.ctest.sh.in`). --- eccodes.spec | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 3f03f0f..955d41f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -290,10 +290,6 @@ cp examples/python/*.csv %{buildroot}%{_datadir}/doc/%{name}/examples/python sed -i -e 's/\/bin\/env python/\/usr\/bin\/python2/' \ %{buildroot}%{_datadir}/doc/%{name}/examples/python/high_level_api.py -# move the sample files into /usr/share/doc/eccodes -mv %{buildroot}%{_datadir}/%{name}/ifs_samples/ %{buildroot}%{_datadir}/doc/%{name}/ -mv %{buildroot}%{_datadir}/%{name}/samples/ %{buildroot}%{_datadir}/doc/%{name}/ - # move cmake files to the cmake folder below libdir # as suggested in the review request mkdir -p %{buildroot}%{_libdir}/cmake/%{name}/ @@ -348,6 +344,8 @@ ctest -V %{?_smp_mflags} %files data %dir %{_datadir}/%{name} %{_datadir}/%{name}/definitions/ +%{_datadir}/%{name}/samples/ +%{_datadir}/%{name}/ifs_samples/ %files doc %doc %{_datadir}/doc/%{name}/ From feee39cc4e59e8531ded1096e7f56917b42cb941 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Fri, 17 Aug 2018 15:59:10 +0200 Subject: [PATCH 021/147] add changelog entry for patch to put sample files in correct location, as submitted by Matthew Krupcale for f28 --- eccodes.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 67232ae..05f79fd 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.8.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -343,6 +343,10 @@ ctest -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog + +* Fri Aug 17 2018 Jos de Kloe - 2.8.0-3 +- rebuild with patch provided by Matthew Krupcale for f28 + * Thu Jul 12 2018 Fedora Release Engineering - 2.8.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From 44ae809acdc90d9c5ab5b159b6b43608fdcc10f7 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 9 Sep 2018 12:19:33 +0200 Subject: [PATCH 022/147] add new upstream version --- .gitignore | 1 + sources | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 5cd40f8..1517312 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /eccodes_test_data.tar.gz /eccodes-2.7.3-Source.tar.gz /eccodes-2.8.0-Source.tar.gz +/eccodes-2.8.2-Source.tar.gz diff --git a/sources b/sources index 0bca58c..ca1c6cd 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (eccodes-2.8.0-Source.tar.gz) = c915d5e5f5856caf219101c42225a4846e61c523cb313b369fb7dd2d32ee556088fba79d7091befa29aec0795660e3aa671be8e0c1ea4bd0badd75152bf484a8 -SHA512 (eccodes_test_data.tar.gz) = 0f13137584525f12e184068501cc13a58fb8bb16ada680ca7f1575c6066fd2bc5995ec7afffb175c38958e71d991cea4b3972ad01402b54d2550e442241ffc7b +SHA512 (eccodes-2.8.2-Source.tar.gz) = 942de24390df9de64a768e2f351c9acef5b0550a59695016b9753b22fbff260f8a6f9780240dbb2402bec372ee4c8224a68f3d70699a5df42b23c0a4c073114d From 76b0b8d3f8ffe5982c11155e3ef501b25abc772b Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 9 Sep 2018 12:21:41 +0200 Subject: [PATCH 023/147] update to new upstream version 2.8.2 and disable ExcludeArch to test what happens in a scratch build --- eccodes-32bit.patch | 10 +++++----- eccodes.spec | 27 +++++++++++++++------------ 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index 1e6495d..4ef204e 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,6 +1,6 @@ ---- eccodes-2.8.0-Source.orig/src/grib_api_prototypes.h 2018-06-12 13:50:54.000000000 +0200 -+++ eccodes-2.8.0-Source/src/grib_api_prototypes.h 2018-06-28 14:58:28.302344717 +0200 -@@ -869,8 +869,8 @@ double grib_ieeefloat_error(double x); +--- eccodes-2.8.2-Source.orig/src/grib_api_prototypes.h 2018-08-06 11:45:33.000000000 +0200 ++++ eccodes-2.8.2-Source/src/grib_api_prototypes.h 2018-09-09 12:06:18.628509429 +0200 +@@ -871,8 +871,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double *x); unsigned long grib_ieee_to_long(double x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.8.0-Source.orig/src/grib_ieeefloat.c 2018-06-12 13:50:54.000000000 +0200 -+++ eccodes-2.8.0-Source/src/grib_ieeefloat.c 2018-06-28 14:58:28.303344693 +0200 +--- eccodes-2.8.2-Source.orig/src/grib_ieeefloat.c 2018-08-06 11:45:33.000000000 +0200 ++++ eccodes-2.8.2-Source/src/grib_ieeefloat.c 2018-09-09 12:06:18.628509429 +0200 @@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes.spec b/eccodes.spec index 05f79fd..b59e5ea 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.8.0 -Release: 3%{?dist} +Version: 2.8.2 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -8,11 +8,11 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20180705 -# latest rawhide grib_api version is 1.26.1-1 +# latest rawhide grib_api version is 1.27.0-1 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. -# latest upstream grib_api release is 1.26.1 (08-May-2018) -%global final_grib_api_version 1.26.1-1 +# latest upstream grib_api release is 1.27.0 (09-Sep-2018) +%global final_grib_api_version 1.27.0-1 # license remarks: # most of eccodes is licensed ASL 2.0 but a special case must be noted. @@ -30,7 +30,7 @@ Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/ec # now and then. The current copy was downloaded 05-Jul-2018 # todo: rename the datapack using the download date to make it versioned # in fedora and figure out how to insert this in this Source1 entry -Source1: http://download.ecmwf.org/test-data/grib_api/eccodes_test_data.tar.gz +Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz # Support 32-bit # https://software.ecmwf.int/issues/browse/SUP-1813 # (unfortunately this issue is not public) @@ -41,8 +41,7 @@ Patch2: eccodes-soversion.patch # remove rpath from cmake/pkg-config.pc.in Patch3: eccodes-rpath.patch # fix compile flags in fortran checks -# https://software.ecmwf.int/issues/browse/SUP-1812 -# (unfortunately this issue is not public) +# this is needed due to rpath removal Patch4: eccodes-fortran-check.patch # note that the requests to make the other issues public are filed here: @@ -90,13 +89,13 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562071 -ExcludeArch: ppc64 +#ExcludeArch: ppc64 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application @@ -159,6 +158,7 @@ A python2 interface to ecCodes. Also a legacy interface to gribapi is provided. ##################################################### # note: python3 is not yet supported by eccodes +# but upstream intents to make it available before the end of 2018 ##################################################### %package data @@ -344,6 +344,9 @@ ctest -V %{?_smp_mflags} %changelog +* Sun Sep 9 2018 Jos de Kloe - 2.8.2-1 +- Upgrade to version 2.8.2 + * Fri Aug 17 2018 Jos de Kloe - 2.8.0-3 - rebuild with patch provided by Matthew Krupcale for f28 From 91dca9f2cffd7209126f3597ab5d673aa0f917cd Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 9 Sep 2018 12:30:56 +0200 Subject: [PATCH 024/147] re-add SHA512 for eccodes_test_data.tar.gz (again ...) --- sources | 1 + 1 file changed, 1 insertion(+) diff --git a/sources b/sources index ca1c6cd..aabef93 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ SHA512 (eccodes-2.8.2-Source.tar.gz) = 942de24390df9de64a768e2f351c9acef5b0550a59695016b9753b22fbff260f8a6f9780240dbb2402bec372ee4c8224a68f3d70699a5df42b23c0a4c073114d +SHA512 (eccodes_test_data.tar.gz) = 0f13137584525f12e184068501cc13a58fb8bb16ada680ca7f1575c6066fd2bc5995ec7afffb175c38958e71d991cea4b3972ad01402b54d2550e442241ffc7b From 797fa5158c5b4a206550f1cb54f6c46db405a9b4 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 9 Sep 2018 13:17:30 +0200 Subject: [PATCH 025/147] activate the 3 remaining ExcludeArch commands again --- eccodes.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index b59e5ea..97628a6 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -30,6 +30,7 @@ Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/ec # now and then. The current copy was downloaded 05-Jul-2018 # todo: rename the datapack using the download date to make it versioned # in fedora and figure out how to insert this in this Source1 entry +# (next time it changes) Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz # Support 32-bit # https://software.ecmwf.int/issues/browse/SUP-1813 @@ -89,13 +90,14 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562071 +# note: this is no longer part of fc30/rawhide #ExcludeArch: ppc64 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application From 8f44920b9d2c87396d2fed54e3f673ae41cbad2f Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 13 Sep 2018 11:20:05 +0200 Subject: [PATCH 026/147] Remove python2 sub-package as per Mass Python 2 Package Removal for f30 --- eccodes.spec | 69 ++++++++++++++++++++++++++++++++-------------------- 1 file changed, 42 insertions(+), 27 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 97628a6..b57131b 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.8.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -59,7 +59,7 @@ BuildRequires: libpng-devel BuildRequires: netcdf-devel BuildRequires: numpy BuildRequires: openjpeg2-devel -BuildRequires: python2-devel +# BuildRequires: python2-devel # For tests BuildRequires: perl(Getopt::Long) @@ -109,7 +109,7 @@ in the following formats: * WMO GTS abbreviated header (only decoding). A useful set of command line tools provide quick access to the messages. C, -Fortran 90 and Python interfaces provide access to the main ecCodes +Fortran 90 and Python (1) interfaces provide access to the main ecCodes functionality. ecCodes is an evolution of GRIB-API. It is designed to provide the user with @@ -118,7 +118,7 @@ approach. For GRIB encoding and decoding, the GRIB-API functionality is provided fully in ecCodes with only minor interface and behaviour changes. Interfaces for C, -Fortran 90 and Python are all maintained as in GRIB-API. However, the +Fortran 90 and Python (1) are all maintained as in GRIB-API. However, the GRIB-API Fortran 77 interface is no longer available. In addition, a new set of functions with the prefix "codes_" is provided to @@ -133,6 +133,12 @@ and behaviour. A significant difference compared with GRIB-API tools is that bufr_dump produces output in JSON format suitable for many web based applications. +(1) Note: for now only a python2 interface is provided by upstream, +and since Fedora is phasing out python2 this interface has +been removed from this package starting with Fedora 30. +As soon as upstream provides a python3 interface that one will +be added here. + ##################################################### %package devel Summary: Contains ecCodes development files @@ -146,17 +152,17 @@ Obsoletes: grib_api-devel < %{final_grib_api_version} Header files and libraries for ecCodes. ##################################################### -%package -n python2-%{name} -Summary: A python2 interface to ecCodes -Requires: %{name}%{?_isa} = %{version}-%{release} -Requires: gcc-gfortran%{?_isa} -Requires: jasper-devel%{?_isa} - -# a sub package python2-grib_api did not exist -# so no obsoletes needed here - -%description -n python2-%{name} -A python2 interface to ecCodes. Also a legacy interface to gribapi is provided. +#%%package -n python2-%%{name} +#Summary: A python2 interface to ecCodes +#Requires: %%{name}%%{?_isa} = %%{version}-%%{release} +#Requires: gcc-gfortran%%{?_isa} +#Requires: jasper-devel%%{?_isa} +# +## a sub package python2-grib_api did not exist +## so no obsoletes needed here +# +#%%description -n python2-%%{name} +#A python2 interface to ecCodes. Also a legacy interface to gribapi is provided. ##################################################### # note: python3 is not yet supported by eccodes @@ -184,7 +190,13 @@ BuildArch: noarch %description doc This package contains the html documentation for ecCodes and a fair number of example programs and scripts to use it -in C, Fortran 90, and Python. +in C, Fortran 90, and Python (1). + +(1) Note: for now only a python2 interface is provided by upstream, +and since Fedora is phasing out python2 this interface has +been removed from this package starting with Fedora 30. +As soon as upstream provides a python3 interface that one will +be added here. ##################################################### %prep @@ -236,8 +248,8 @@ cd build -DCMAKE_SKIP_RPATH=TRUE \ -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ - -DPYTHON_EXECUTABLE=%{_bindir}/python2 \ .. +# -DPYTHON_EXECUTABLE=%%{_bindir}/python2 \ %make_build @@ -275,14 +287,14 @@ mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/C cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 -mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/python -cp examples/python/*.py %{buildroot}%{_datadir}/doc/%{name}/examples/python -cp examples/python/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/python -cp examples/python/*.csv %{buildroot}%{_datadir}/doc/%{name}/examples/python +#mkdir -p %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python +#cp examples/python/*.py %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python +#cp examples/python/*.c %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python +#cp examples/python/*.csv %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python # adapt a shebang to make it point explicitely to python2 -sed -i -e 's/\/bin\/env python/\/usr\/bin\/python2/' \ - %{buildroot}%{_datadir}/doc/%{name}/examples/python/high_level_api.py +#sed -i -e 's/\/bin\/env python/\/usr\/bin\/python2/' \ +# %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python/high_level_api.py # move cmake files to the cmake folder below libdir # as suggested in the review request @@ -320,10 +332,10 @@ ctest -V %{?_smp_mflags} %{_bindir}/* %{_libdir}/*.so.* -%files -n python2-%{name} -%{python2_sitearch}/%{name} -%{python2_sitearch}/%{name}-*-py*.egg-info -%{python2_sitearch}/gribapi +#%%files -n python2-%%{name} +#%%{python2_sitearch}/%%{name} +#%%{python2_sitearch}/%%{name}-*-py*.egg-info +#%%{python2_sitearch}/gribapi %files devel %{_includedir}/* @@ -346,6 +358,9 @@ ctest -V %{?_smp_mflags} %changelog +* Thu Sep 13 2018 Jos de Kloe - 2.8.2-2 +- Remove python2 sub-package as per Mass Python 2 Package Removal for f30 + * Sun Sep 9 2018 Jos de Kloe - 2.8.2-1 - Upgrade to version 2.8.2 From 2c01a295cd80213e78a103094f78191da4380eaf Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 15 Sep 2018 15:18:41 +0200 Subject: [PATCH 027/147] ensure the build runs on EPEL-7 as well --- eccodes.spec | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index b57131b..da8790f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.8.2 -Release: 2%{?dist} +Release: 3%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -248,6 +248,7 @@ cd build -DCMAKE_SKIP_RPATH=TRUE \ -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ + -DENABLE_PYTHON=OFF \ .. # -DPYTHON_EXECUTABLE=%%{_bindir}/python2 \ @@ -324,7 +325,7 @@ cd build # (unfortunately this issue is not public) LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ LIBRARY_PATH=%{buildroot}/%{_libdir} \ -ctest -V %{?_smp_mflags} +ctest3 -V %{?_smp_mflags} %files %license LICENSE @@ -358,6 +359,10 @@ ctest -V %{?_smp_mflags} %changelog +* Sat Sep 15 2018 Jos de Kloe - 2.8.2-3 +- Explicitely disable python in cmake call and use ctest3 rather than ctest + to ensure the build runs on EPEL-7 as well + * Thu Sep 13 2018 Jos de Kloe - 2.8.2-2 - Remove python2 sub-package as per Mass Python 2 Package Removal for f30 From 5c68a9b619e0f52769afe6920bdde306429bda67 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 15 Sep 2018 16:12:18 +0200 Subject: [PATCH 028/147] add ExcludeArch: aarch64 since the build fails for that one --- eccodes.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index da8790f..2536851 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -93,12 +93,20 @@ Obsoletes: grib_api < %{final_grib_api_version} ExcludeArch: i686 # as explained in bugzilla #1562071 # note: this is no longer part of fc30/rawhide -#ExcludeArch: ppc64 +# but the exclude is still needed for EPEL-7 +ExcludeArch: ppc64 # as explained in bugzilla #1562076 ExcludeArch: s390x # as explained in bugzilla #1562084 ExcludeArch: armv7hl +%if 0%{?rhel} >= 7 +%ifarch aarch64 +# as explained in bugzilla #1629377 +ExcludeArch: aarch64 +%endif +%endif + %description ecCodes is a package developed by ECMWF which provides an application programming interface and a set of tools for decoding and encoding messages From 5784bcd6ba03ca206db4f7fce76e372531c9995f Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 15 Sep 2018 16:15:35 +0200 Subject: [PATCH 029/147] add Excludearch for aarch64 on epel7 --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 2536851..9681385 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.8.2 -Release: 3%{?dist} +Release: 4%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -367,6 +367,9 @@ ctest3 -V %{?_smp_mflags} %changelog +* Sat Sep 15 2018 Jos de Kloe - 2.8.2-4 +- add Excludearch for aarch64 on epel7 + * Sat Sep 15 2018 Jos de Kloe - 2.8.2-3 - Explicitely disable python in cmake call and use ctest3 rather than ctest to ensure the build runs on EPEL-7 as well From 43bec0d8e72f3a6853175f889b46d65a40d395f0 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 15 Sep 2018 17:02:21 +0200 Subject: [PATCH 030/147] remove one layer of it-then --- eccodes.spec | 2 -- 1 file changed, 2 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 9681385..483b989 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -101,11 +101,9 @@ ExcludeArch: s390x ExcludeArch: armv7hl %if 0%{?rhel} >= 7 -%ifarch aarch64 # as explained in bugzilla #1629377 ExcludeArch: aarch64 %endif -%endif %description ecCodes is a package developed by ECMWF which provides an application From 5cb37b9fd3a12d09c303add8802d090c9f2c7b96 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 10 Oct 2018 20:13:56 +0200 Subject: [PATCH 031/147] upload new sources --- .gitignore | 2 ++ sources | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index 1517312..91716f8 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,5 @@ /eccodes-2.7.3-Source.tar.gz /eccodes-2.8.0-Source.tar.gz /eccodes-2.8.2-Source.tar.gz +/eccodes-2.9.0-Source.tar.gz +/eccodes_test_data_20181010.tar.gz diff --git a/sources b/sources index aabef93..960e39b 100644 --- a/sources +++ b/sources @@ -1,2 +1,4 @@ SHA512 (eccodes-2.8.2-Source.tar.gz) = 942de24390df9de64a768e2f351c9acef5b0550a59695016b9753b22fbff260f8a6f9780240dbb2402bec372ee4c8224a68f3d70699a5df42b23c0a4c073114d SHA512 (eccodes_test_data.tar.gz) = 0f13137584525f12e184068501cc13a58fb8bb16ada680ca7f1575c6066fd2bc5995ec7afffb175c38958e71d991cea4b3972ad01402b54d2550e442241ffc7b +SHA512 (eccodes-2.9.0-Source.tar.gz) = c485255d85d78600fbb4828d9d6eaf2e03a425b7eb8fe5cb1a5f5f822df8b830eddeaa06013327ca1f7247b0012e1ee78814a164a5ccf4b1e90c1a62a35431ea +SHA512 (eccodes_test_data_20181010.tar.gz) = 24c24ec9e01d230cf542abe5c131f05b8e627dd9d170c666628bb5fd8f7b1a6aa11a35456b8d742c59f54c6aabac78658efd68b0c50779d466aba3d35b4a0231 From a5ffadf6c3d404bad5191a85b26925bd75b117cf Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 10 Oct 2018 20:15:18 +0200 Subject: [PATCH 032/147] update to new upstream version --- eccodes-32bit.patch | 10 +++++----- eccodes.spec | 21 +++++++++++---------- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index 4ef204e..25cdda3 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,6 +1,6 @@ ---- eccodes-2.8.2-Source.orig/src/grib_api_prototypes.h 2018-08-06 11:45:33.000000000 +0200 -+++ eccodes-2.8.2-Source/src/grib_api_prototypes.h 2018-09-09 12:06:18.628509429 +0200 -@@ -871,8 +871,8 @@ double grib_ieeefloat_error(double x); +--- eccodes-2.9.0-Source.orig/src/grib_api_prototypes.h 2018-09-27 15:34:35.000000000 +0200 ++++ eccodes-2.9.0-Source/src/grib_api_prototypes.h 2018-10-07 14:26:19.551765319 +0200 +@@ -870,8 +870,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double *x); unsigned long grib_ieee_to_long(double x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.8.2-Source.orig/src/grib_ieeefloat.c 2018-08-06 11:45:33.000000000 +0200 -+++ eccodes-2.8.2-Source/src/grib_ieeefloat.c 2018-09-09 12:06:18.628509429 +0200 +--- eccodes-2.9.0-Source.orig/src/grib_ieeefloat.c 2018-09-27 15:34:35.000000000 +0200 ++++ eccodes-2.9.0-Source/src/grib_ieeefloat.c 2018-10-07 14:26:19.553765269 +0200 @@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes.spec b/eccodes.spec index 483b989..0fca661 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,18 +1,18 @@ Name: eccodes -Version: 2.8.2 -Release: 4%{?dist} +Version: 2.9.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions %global so_version 0.1 %global so_version_f90 0.1 -%global datapack_date 20180705 +%global datapack_date 20181010 -# latest rawhide grib_api version is 1.27.0-1 +# latest rawhide grib_api version is 1.27.0-2 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.27.0 (09-Sep-2018) -%global final_grib_api_version 1.27.0-1 +%global final_grib_api_version 1.27.0-2 # license remarks: # most of eccodes is licensed ASL 2.0 but a special case must be noted. @@ -27,11 +27,9 @@ License: ASL 2.0 URL: https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-%{version}-Source.tar.gz # note: this data package is unversioned upstream but still it is updated -# now and then. The current copy was downloaded 05-Jul-2018 -# todo: rename the datapack using the download date to make it versioned -# in fedora and figure out how to insert this in this Source1 entry -# (next time it changes) -Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz +# now and then so rename the datapack using the download date +# to make it versioned in fedora +Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz # Support 32-bit # https://software.ecmwf.int/issues/browse/SUP-1813 # (unfortunately this issue is not public) @@ -365,6 +363,9 @@ ctest3 -V %{?_smp_mflags} %changelog +* Sun Oct 7 2018 Jos de Kloe - 2.9.0-1 +- Upgrade to upstream version 2.9.0 + * Sat Sep 15 2018 Jos de Kloe - 2.8.2-4 - add Excludearch for aarch64 on epel7 From ea19539846690cb1176795769b8529ce9389532a Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 10 Oct 2018 20:16:16 +0200 Subject: [PATCH 033/147] disable ExcludeArch for fedora testing --- eccodes.spec | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 0fca661..d1ef81f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -87,16 +87,16 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} -# as explained in bugzilla #1562066 -ExcludeArch: i686 -# as explained in bugzilla #1562071 -# note: this is no longer part of fc30/rawhide -# but the exclude is still needed for EPEL-7 -ExcludeArch: ppc64 -# as explained in bugzilla #1562076 -ExcludeArch: s390x -# as explained in bugzilla #1562084 -ExcludeArch: armv7hl +## as explained in bugzilla #1562066 +#ExcludeArch: i686 +## as explained in bugzilla #1562071 +## note: this is no longer part of fc30/rawhide +## but the exclude is still needed for EPEL-7 +#ExcludeArch: ppc64 +## as explained in bugzilla #1562076 +#ExcludeArch: s390x +## as explained in bugzilla #1562084 +#ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 From 59ad77e5991b6e774f48278bdfe45bb6d5bb6692 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 10 Oct 2018 21:23:25 +0200 Subject: [PATCH 034/147] enable ExcludeArch again --- eccodes.spec | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index d1ef81f..0fca661 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -87,16 +87,16 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} -## as explained in bugzilla #1562066 -#ExcludeArch: i686 -## as explained in bugzilla #1562071 -## note: this is no longer part of fc30/rawhide -## but the exclude is still needed for EPEL-7 -#ExcludeArch: ppc64 -## as explained in bugzilla #1562076 -#ExcludeArch: s390x -## as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +# as explained in bugzilla #1562066 +ExcludeArch: i686 +# as explained in bugzilla #1562071 +# note: this is no longer part of fc30/rawhide +# but the exclude is still needed for EPEL-7 +ExcludeArch: ppc64 +# as explained in bugzilla #1562076 +ExcludeArch: s390x +# as explained in bugzilla #1562084 +ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 From 8a814362ca97350e77928bdb8d5648085d4f6e68 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 24 Nov 2018 17:15:59 +0100 Subject: [PATCH 035/147] new sources for release 2.9.2 --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 91716f8..ffbff0a 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /eccodes-2.8.2-Source.tar.gz /eccodes-2.9.0-Source.tar.gz /eccodes_test_data_20181010.tar.gz +/eccodes-2.9.2-Source.tar.gz diff --git a/sources b/sources index 960e39b..7b2c40f 100644 --- a/sources +++ b/sources @@ -2,3 +2,4 @@ SHA512 (eccodes-2.8.2-Source.tar.gz) = 942de24390df9de64a768e2f351c9acef5b0550a5 SHA512 (eccodes_test_data.tar.gz) = 0f13137584525f12e184068501cc13a58fb8bb16ada680ca7f1575c6066fd2bc5995ec7afffb175c38958e71d991cea4b3972ad01402b54d2550e442241ffc7b SHA512 (eccodes-2.9.0-Source.tar.gz) = c485255d85d78600fbb4828d9d6eaf2e03a425b7eb8fe5cb1a5f5f822df8b830eddeaa06013327ca1f7247b0012e1ee78814a164a5ccf4b1e90c1a62a35431ea SHA512 (eccodes_test_data_20181010.tar.gz) = 24c24ec9e01d230cf542abe5c131f05b8e627dd9d170c666628bb5fd8f7b1a6aa11a35456b8d742c59f54c6aabac78658efd68b0c50779d466aba3d35b4a0231 +SHA512 (eccodes-2.9.2-Source.tar.gz) = 94d077bb0f348c4d64883a4f0877439c123786c73d2b64e4bdfb3f7eb28e445ff1e0eeb57140261906b8aef8e22fd3d614528f1821877ebe6bcb9d38393921d9 From 67628b19831e5a98f4cfa5c2a61f674072b83b7a Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 24 Nov 2018 17:20:39 +0100 Subject: [PATCH 036/147] update to new upstream version, and remove ExcludeArch statements for testing --- eccodes-32bit.patch | 10 +++++----- eccodes-fortran-check.patch | 12 ++++++------ eccodes.spec | 13 ++++++++----- 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index 25cdda3..76fbedf 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,6 +1,6 @@ ---- eccodes-2.9.0-Source.orig/src/grib_api_prototypes.h 2018-09-27 15:34:35.000000000 +0200 -+++ eccodes-2.9.0-Source/src/grib_api_prototypes.h 2018-10-07 14:26:19.551765319 +0200 -@@ -870,8 +870,8 @@ double grib_ieeefloat_error(double x); +--- eccodes-2.9.2-Source.orig/src/grib_api_prototypes.h 2018-11-09 15:55:26.000000000 +0100 ++++ eccodes-2.9.2-Source/src/grib_api_prototypes.h 2018-11-24 15:06:47.892920252 +0100 +@@ -869,8 +869,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double *x); unsigned long grib_ieee_to_long(double x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.9.0-Source.orig/src/grib_ieeefloat.c 2018-09-27 15:34:35.000000000 +0200 -+++ eccodes-2.9.0-Source/src/grib_ieeefloat.c 2018-10-07 14:26:19.553765269 +0200 +--- eccodes-2.9.2-Source.orig/src/grib_ieeefloat.c 2018-11-09 15:55:26.000000000 +0100 ++++ eccodes-2.9.2-Source/src/grib_ieeefloat.c 2018-11-24 15:06:47.892920252 +0100 @@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes-fortran-check.patch b/eccodes-fortran-check.patch index 96ff5e4..c2d6892 100644 --- a/eccodes-fortran-check.patch +++ b/eccodes-fortran-check.patch @@ -1,5 +1,5 @@ ---- eccodes-2.7.0-Source.orig/tests/bufr_dump_encode_fortran.sh 2018-03-02 10:52:20.000000000 +0100 -+++ eccodes-2.7.0-Source/tests/bufr_dump_encode_fortran.sh 2018-03-10 10:16:43.857822252 +0100 +--- eccodes-2.9.2-Source.orig/tests/bufr_dump_encode_fortran.sh 2018-11-09 15:55:26.000000000 +0100 ++++ eccodes-2.9.2-Source/tests/bufr_dump_encode_fortran.sh 2018-11-24 15:07:09.396354719 +0100 @@ -41,6 +41,7 @@ if command -v pkg-config >/dev/null 2>&1 INSTALL_DIR=`grep -w CMAKE_INSTALL_PREFIX $CACHE_FILE | cut -d'=' -f2` FLAGS_LINKER=`echo $FLAGS_LINKER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` @@ -7,9 +7,9 @@ + FLAGS_COMPILER="${FLAGS_COMPILER} -I${BUILD_DIR}/include" # TODO: For now only support when shared libs enabled - SHARED_LIBS=`grep -w BUILD_SHARED_LIBS $CACHE_FILE | cut -d'=' -f2` ---- eccodes-2.7.0-Source.orig/tests/bufr_dump_decode_fortran.sh 2018-03-02 10:52:20.000000000 +0100 -+++ eccodes-2.7.0-Source/tests/bufr_dump_decode_fortran.sh 2018-03-10 10:16:43.857822252 +0100 + #SHARED_LIBS=`grep -w BUILD_SHARED_LIBS $CACHE_FILE | cut -d'=' -f2` +--- eccodes-2.9.2-Source.orig/tests/bufr_dump_decode_fortran.sh 2018-11-09 15:55:26.000000000 +0100 ++++ eccodes-2.9.2-Source/tests/bufr_dump_decode_fortran.sh 2018-11-24 15:07:09.397354693 +0100 @@ -41,6 +41,7 @@ if command -v pkg-config >/dev/null 2>&1 INSTALL_DIR=`grep -w CMAKE_INSTALL_PREFIX $CACHE_FILE | cut -d'=' -f2` FLAGS_LINKER=`echo $FLAGS_LINKER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` @@ -17,4 +17,4 @@ + FLAGS_COMPILER="${FLAGS_COMPILER} -I${BUILD_DIR}/include" # TODO: For now only support when shared libs enabled - SHARED_LIBS=`grep -w BUILD_SHARED_LIBS $CACHE_FILE | cut -d'=' -f2` + #SHARED_LIBS=`grep -w BUILD_SHARED_LIBS $CACHE_FILE | cut -d'=' -f2` diff --git a/eccodes.spec b/eccodes.spec index 0fca661..90baa50 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.9.0 +Version: 2.9.2 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -88,15 +88,15 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562071 # note: this is no longer part of fc30/rawhide # but the exclude is still needed for EPEL-7 -ExcludeArch: ppc64 +#ExcludeArch: ppc64 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 @@ -363,6 +363,9 @@ ctest3 -V %{?_smp_mflags} %changelog +* Sat Nov 24 2018 Jos de Kloe - 2.9.2-1 +- Upgrade to upstream version 2.9.2 + * Sun Oct 7 2018 Jos de Kloe - 2.9.0-1 - Upgrade to upstream version 2.9.0 From 2d44599987576ddc258e903a600e18cf0a0d615a Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 24 Nov 2018 17:42:49 +0100 Subject: [PATCH 037/147] add the ExcludeArch statements again, they are still needed --- eccodes.spec | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 90baa50..adf3704 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -88,15 +88,15 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562071 # note: this is no longer part of fc30/rawhide # but the exclude is still needed for EPEL-7 -#ExcludeArch: ppc64 +ExcludeArch: ppc64 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 From 6960b9776dd708225b6786d1be8c7ad7aa25da3d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 31 Jan 2019 18:09:43 +0000 Subject: [PATCH 038/147] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index adf3704..3ea576c 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.9.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -362,6 +362,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Jan 31 2019 Fedora Release Engineering - 2.9.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Sat Nov 24 2018 Jos de Kloe - 2.9.2-1 - Upgrade to upstream version 2.9.2 From 704887a134d46f6e67185d32efb49f7a8b4101ee Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 17 Feb 2019 20:36:47 +0100 Subject: [PATCH 039/147] upgrade to version 2.12.0 --- .gitignore | 1 + eccodes-32bit.patch | 10 +++++----- eccodes-rpath.patch | 4 ++-- eccodes-soversion.patch | 10 +++++----- eccodes.spec | 39 ++++++++++++++++++++------------------- sources | 5 +---- 6 files changed, 34 insertions(+), 35 deletions(-) diff --git a/.gitignore b/.gitignore index ffbff0a..a918987 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ /eccodes-2.9.0-Source.tar.gz /eccodes_test_data_20181010.tar.gz /eccodes-2.9.2-Source.tar.gz +/eccodes-2.12.0-Source.tar.gz diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index 76fbedf..0732acf 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,6 +1,6 @@ ---- eccodes-2.9.2-Source.orig/src/grib_api_prototypes.h 2018-11-09 15:55:26.000000000 +0100 -+++ eccodes-2.9.2-Source/src/grib_api_prototypes.h 2018-11-24 15:06:47.892920252 +0100 -@@ -869,8 +869,8 @@ double grib_ieeefloat_error(double x); +--- eccodes-2.12.0-Source.orig/src/grib_api_prototypes.h 2019-02-15 10:44:55.000000000 +0100 ++++ eccodes-2.12.0-Source/src/grib_api_prototypes.h 2019-02-17 17:16:20.867656748 +0100 +@@ -871,8 +871,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double *x); unsigned long grib_ieee_to_long(double x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.9.2-Source.orig/src/grib_ieeefloat.c 2018-11-09 15:55:26.000000000 +0100 -+++ eccodes-2.9.2-Source/src/grib_ieeefloat.c 2018-11-24 15:06:47.892920252 +0100 +--- eccodes-2.12.0-Source.orig/src/grib_ieeefloat.c 2019-02-15 10:44:55.000000000 +0100 ++++ eccodes-2.12.0-Source/src/grib_ieeefloat.c 2019-02-17 17:16:20.868656722 +0100 @@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes-rpath.patch b/eccodes-rpath.patch index c459067..bf7fc90 100644 --- a/eccodes-rpath.patch +++ b/eccodes-rpath.patch @@ -1,5 +1,5 @@ ---- eccodes-2.7.0-Source.orig/cmake/pkg-config.pc.in 2018-03-02 10:52:15.000000000 +0100 -+++ eccodes-2.7.0-Source/cmake/pkg-config.pc.in 2018-03-10 10:16:43.852822378 +0100 +--- eccodes-2.12.0-Source.orig/cmake/pkg-config.pc.in 2019-02-15 10:44:50.000000000 +0100 ++++ eccodes-2.12.0-Source/cmake/pkg-config.pc.in 2019-02-17 17:16:25.490537820 +0100 @@ -14,9 +14,7 @@ CC=@CMAKE_C_COMPILER@ CXX=@CMAKE_CXX_COMPILER@ FC=@CMAKE_Fortran_COMPILER@ diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index e91210e..9ef6c43 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.7.0-Source.orig/fortran/CMakeLists.txt 2018-03-02 10:52:20.000000000 +0100 -+++ eccodes-2.7.0-Source/fortran/CMakeLists.txt 2018-03-10 10:16:43.847822505 +0100 +--- eccodes-2.12.0-Source.orig/fortran/CMakeLists.txt 2019-02-15 10:44:55.000000000 +0100 ++++ eccodes-2.12.0-Source/fortran/CMakeLists.txt 2019-02-17 17:16:23.108599099 +0100 @@ -43,7 +43,8 @@ if( HAVE_FORTRAN ) ecbuild_add_library( TARGET eccodes_f90 SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h @@ -10,9 +10,9 @@ add_custom_command( TARGET eccodes_f90 POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/include COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_Fortran_MODULE_DIRECTORY}/${CMAKE_CFG_INTDIR}/eccodes.mod ${CMAKE_BINARY_DIR}/include ---- eccodes-2.7.0-Source.orig/src/CMakeLists.txt 2018-03-02 10:52:20.000000000 +0100 -+++ eccodes-2.7.0-Source/src/CMakeLists.txt 2018-03-10 10:16:43.848822480 +0100 -@@ -435,8 +435,8 @@ ecbuild_add_library(TARGET eccodes +--- eccodes-2.12.0-Source.orig/src/CMakeLists.txt 2019-02-15 10:44:55.000000000 +0100 ++++ eccodes-2.12.0-Source/src/CMakeLists.txt 2019-02-17 17:16:23.109599073 +0100 +@@ -436,8 +436,8 @@ ecbuild_add_library(TARGET eccodes ${grib_api_srcs} GENERATED grib_api_version.c LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} diff --git a/eccodes.spec b/eccodes.spec index 3ea576c..6157e0c 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.9.2 -Release: 2%{?dist} +Version: 2.12.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -39,9 +39,11 @@ Patch1: eccodes-32bit.patch Patch2: eccodes-soversion.patch # remove rpath from cmake/pkg-config.pc.in Patch3: eccodes-rpath.patch + +# disabled # fix compile flags in fortran checks # this is needed due to rpath removal -Patch4: eccodes-fortran-check.patch +#Patch4: eccodes-fortran-check.patch # note that the requests to make the other issues public are filed here: # https://software.ecmwf.int/issues/browse/SUP-2073 @@ -87,16 +89,17 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} +# disabled for my first scratch build as usual, to see what happens # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562071 # note: this is no longer part of fc30/rawhide # but the exclude is still needed for EPEL-7 -ExcludeArch: ppc64 +#ExcludeArch: ppc64 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 @@ -137,11 +140,9 @@ and behaviour. A significant difference compared with GRIB-API tools is that bufr_dump produces output in JSON format suitable for many web based applications. -(1) Note: for now only a python2 interface is provided by upstream, -and since Fedora is phasing out python2 this interface has -been removed from this package starting with Fedora 30. -As soon as upstream provides a python3 interface that one will -be added here. +(1) Note: the python3 interface is provided by upstream, +but it fails unittesting, so it has been disabled for now. +As soon as this is fixed by upstream it will be added here. ##################################################### %package devel @@ -196,11 +197,9 @@ This package contains the html documentation for ecCodes and a fair number of example programs and scripts to use it in C, Fortran 90, and Python (1). -(1) Note: for now only a python2 interface is provided by upstream, -and since Fedora is phasing out python2 this interface has -been removed from this package starting with Fedora 30. -As soon as upstream provides a python3 interface that one will -be added here. +(1) Note: the python3 interface is provided by upstream, +but it fails unittesting, so it has been disabled for now. +As soon as this is fixed by upstream it will be added here. ##################################################### %prep @@ -333,7 +332,7 @@ ctest3 -V %{?_smp_mflags} %files %license LICENSE -%doc README ChangeLog AUTHORS +%doc README.md ChangeLog AUTHORS NEWS NOTICE %{_bindir}/* %{_libdir}/*.so.* @@ -362,10 +361,12 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Feb 17 2019 Jos de Kloe - 2.12.0-1 +- Upgrade to upstream version 2.12.0 + * Thu Jan 31 2019 Fedora Release Engineering - 2.9.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - * Sat Nov 24 2018 Jos de Kloe - 2.9.2-1 - Upgrade to upstream version 2.9.2 diff --git a/sources b/sources index 7b2c40f..1747407 100644 --- a/sources +++ b/sources @@ -1,5 +1,2 @@ -SHA512 (eccodes-2.8.2-Source.tar.gz) = 942de24390df9de64a768e2f351c9acef5b0550a59695016b9753b22fbff260f8a6f9780240dbb2402bec372ee4c8224a68f3d70699a5df42b23c0a4c073114d -SHA512 (eccodes_test_data.tar.gz) = 0f13137584525f12e184068501cc13a58fb8bb16ada680ca7f1575c6066fd2bc5995ec7afffb175c38958e71d991cea4b3972ad01402b54d2550e442241ffc7b -SHA512 (eccodes-2.9.0-Source.tar.gz) = c485255d85d78600fbb4828d9d6eaf2e03a425b7eb8fe5cb1a5f5f822df8b830eddeaa06013327ca1f7247b0012e1ee78814a164a5ccf4b1e90c1a62a35431ea SHA512 (eccodes_test_data_20181010.tar.gz) = 24c24ec9e01d230cf542abe5c131f05b8e627dd9d170c666628bb5fd8f7b1a6aa11a35456b8d742c59f54c6aabac78658efd68b0c50779d466aba3d35b4a0231 -SHA512 (eccodes-2.9.2-Source.tar.gz) = 94d077bb0f348c4d64883a4f0877439c123786c73d2b64e4bdfb3f7eb28e445ff1e0eeb57140261906b8aef8e22fd3d614528f1821877ebe6bcb9d38393921d9 +SHA512 (eccodes-2.12.0-Source.tar.gz) = 3dc876bde2a6c81a43bcc64ecb12969f28eae3cfbc8fed7da7797fc722dc8b446ac7be5178f55b7d395653e0718437b842296a7d4d11b372b8692404c76aa4ad From 714bef2c698abeb68fc00c62df911774c98b9ead Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 17 Feb 2019 20:57:21 +0100 Subject: [PATCH 040/147] reactivate the ExcludeArch for the 3 failing architectures and add a little text in the README.md file --- README.md | 13 ++++++++++++- eccodes.spec | 9 ++++----- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index df5cd52..035f9e0 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,14 @@ # eccodes -The eccodes package \ No newline at end of file +The eccodes package. + +EcCodes is a package developed by ECMWF which provides an application +programming interface and a set of tools for decoding and encoding +messages in the following formats: + + * WMO FM-92 GRIB edition 1 and edition 2 + * WMO FM-94 BUFR edition 3 and edition 4 + * WMO GTS abbreviated header (only decoding). + +For further details see: +https://confluence.ecmwf.int/display/ECC/What+is+ecCodes diff --git a/eccodes.spec b/eccodes.spec index 6157e0c..41ad818 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -89,17 +89,16 @@ Requires: %{name}-data = %{version}-%{release} Obsoletes: grib_api < %{final_grib_api_version} -# disabled for my first scratch build as usual, to see what happens # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562071 # note: this is no longer part of fc30/rawhide # but the exclude is still needed for EPEL-7 -#ExcludeArch: ppc64 +ExcludeArch: ppc64 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 From a11af18778ee7f88a6ff914ec2d593a6e0faa3f7 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 21 Feb 2019 09:00:35 +0100 Subject: [PATCH 041/147] bump final_grib_api_version global variable to 1.27.1 --- eccodes.spec | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 41ad818..7f94e3f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.12.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -8,11 +8,17 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20181010 -# latest rawhide grib_api version is 1.27.0-2 +# latest rawhide grib_api version is 1.27.0-3 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.27.0 (09-Sep-2018) -%global final_grib_api_version 1.27.0-2 +%global final_grib_api_version 1.27.1-1%{?dist} + +%ifarch i686 ppc64 s390x armv7hl + %global obsolete_grib_api 0 +%else + %global obsolete_grib_api 1 +%endif # license remarks: # most of eccodes is licensed ASL 2.0 but a special case must be noted. @@ -87,7 +93,10 @@ Requires: %{name}-data = %{version}-%{release} # "Please note that GRIB-API support is being discontinued at the end of 2018." # So the old grib_api will need to be obsoleted. +%if 0%{obsolete_grib_api} +Provides: grib_api = %{final_grib_api_version} Obsoletes: grib_api < %{final_grib_api_version} +%endif # as explained in bugzilla #1562066 ExcludeArch: i686 @@ -150,7 +159,10 @@ Requires: %{name}%{?_isa} = %{version}-%{release} Requires: gcc-gfortran%{?_isa} Requires: jasper-devel%{?_isa} +%if 0%{obsolete_grib_api} +Provides: grib_api-devel = %{final_grib_api_version} Obsoletes: grib_api-devel < %{final_grib_api_version} +%endif %description devel Header files and libraries for ecCodes. @@ -360,6 +372,11 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Feb 21 2019 Jos de Kloe - 2.12.0-2 +- bump final_grib_api_version global variable to 1.27.1, so just above the + actual final version, to prevent the obsoletes to be disabled if the release + gets bumped. See BZ #1677968 + * Sun Feb 17 2019 Jos de Kloe - 2.12.0-1 - Upgrade to upstream version 2.12.0 From 968171903b3d0c5961383f77e5cc0edea4654dc9 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Sun, 17 Mar 2019 20:29:06 -0600 Subject: [PATCH 042/147] Rebuild for netcdf 4.6.3 --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 7f94e3f..1de8768 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.12.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -372,6 +372,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Mon Mar 18 2019 Orion Poplawski - 2.12.0-3 +- Rebuild for netcdf 4.6.3 + * Thu Feb 21 2019 Jos de Kloe - 2.12.0-2 - bump final_grib_api_version global variable to 1.27.1, so just above the actual final version, to prevent the obsoletes to be disabled if the release From 9e2c1766c0423d37a9c54ad39d610ff1fcfc18b8 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 9 May 2019 20:58:11 +0200 Subject: [PATCH 043/147] Upgrade to upstream version 2.12.5 --- .gitignore | 1 + eccodes-32bit.patch | 10 +++++----- eccodes-rpath.patch | 4 ++-- eccodes-soversion.patch | 8 ++++---- eccodes.spec | 9 ++++++--- sources | 1 + 6 files changed, 19 insertions(+), 14 deletions(-) diff --git a/.gitignore b/.gitignore index a918987..d8581be 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /eccodes_test_data_20181010.tar.gz /eccodes-2.9.2-Source.tar.gz /eccodes-2.12.0-Source.tar.gz +/eccodes-2.12.5-Source.tar.gz diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index 0732acf..8786c8f 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,6 +1,6 @@ ---- eccodes-2.12.0-Source.orig/src/grib_api_prototypes.h 2019-02-15 10:44:55.000000000 +0100 -+++ eccodes-2.12.0-Source/src/grib_api_prototypes.h 2019-02-17 17:16:20.867656748 +0100 -@@ -871,8 +871,8 @@ double grib_ieeefloat_error(double x); +--- eccodes-2.12.5-Source.orig/src/grib_api_prototypes.h 2019-05-09 16:24:38.000000000 +0200 ++++ eccodes-2.12.5-Source/src/grib_api_prototypes.h 2019-05-09 20:11:02.977946707 +0200 +@@ -872,8 +872,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double *x); unsigned long grib_ieee_to_long(double x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.12.0-Source.orig/src/grib_ieeefloat.c 2019-02-15 10:44:55.000000000 +0100 -+++ eccodes-2.12.0-Source/src/grib_ieeefloat.c 2019-02-17 17:16:20.868656722 +0100 +--- eccodes-2.12.5-Source.orig/src/grib_ieeefloat.c 2019-05-09 16:24:38.000000000 +0200 ++++ eccodes-2.12.5-Source/src/grib_ieeefloat.c 2019-05-09 20:11:02.978946681 +0200 @@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes-rpath.patch b/eccodes-rpath.patch index bf7fc90..a207a84 100644 --- a/eccodes-rpath.patch +++ b/eccodes-rpath.patch @@ -1,5 +1,5 @@ ---- eccodes-2.12.0-Source.orig/cmake/pkg-config.pc.in 2019-02-15 10:44:50.000000000 +0100 -+++ eccodes-2.12.0-Source/cmake/pkg-config.pc.in 2019-02-17 17:16:25.490537820 +0100 +--- eccodes-2.12.5-Source.orig/cmake/pkg-config.pc.in 2019-05-09 16:24:31.000000000 +0200 ++++ eccodes-2.12.5-Source/cmake/pkg-config.pc.in 2019-05-09 20:11:22.754434973 +0200 @@ -14,9 +14,7 @@ CC=@CMAKE_C_COMPILER@ CXX=@CMAKE_CXX_COMPILER@ FC=@CMAKE_Fortran_COMPILER@ diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 9ef6c43..3b1d4d1 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.12.0-Source.orig/fortran/CMakeLists.txt 2019-02-15 10:44:55.000000000 +0100 -+++ eccodes-2.12.0-Source/fortran/CMakeLists.txt 2019-02-17 17:16:23.108599099 +0100 +--- eccodes-2.12.5-Source.orig/fortran/CMakeLists.txt 2019-05-09 16:24:38.000000000 +0200 ++++ eccodes-2.12.5-Source/fortran/CMakeLists.txt 2019-05-09 20:11:14.481649037 +0200 @@ -43,7 +43,8 @@ if( HAVE_FORTRAN ) ecbuild_add_library( TARGET eccodes_f90 SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h @@ -10,8 +10,8 @@ add_custom_command( TARGET eccodes_f90 POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/include COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_Fortran_MODULE_DIRECTORY}/${CMAKE_CFG_INTDIR}/eccodes.mod ${CMAKE_BINARY_DIR}/include ---- eccodes-2.12.0-Source.orig/src/CMakeLists.txt 2019-02-15 10:44:55.000000000 +0100 -+++ eccodes-2.12.0-Source/src/CMakeLists.txt 2019-02-17 17:16:23.109599073 +0100 +--- eccodes-2.12.5-Source.orig/src/CMakeLists.txt 2019-05-09 16:24:38.000000000 +0200 ++++ eccodes-2.12.5-Source/src/CMakeLists.txt 2019-05-09 20:11:14.481649037 +0200 @@ -436,8 +436,8 @@ ecbuild_add_library(TARGET eccodes ${grib_api_srcs} GENERATED grib_api_version.c diff --git a/eccodes.spec b/eccodes.spec index 1de8768..b5c6f42 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.12.0 -Release: 3%{?dist} +Version: 2.12.5 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -149,7 +149,7 @@ bufr_dump produces output in JSON format suitable for many web based applications. (1) Note: the python3 interface is provided by upstream, -but it fails unittesting, so it has been disabled for now. +but it fails unit testing, so it has been disabled for now. As soon as this is fixed by upstream it will be added here. ##################################################### @@ -372,6 +372,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu May 09 2019 Jos de Kloe - 2.12.5-1 +- Upgrade to upstream version 2.12.5 + * Mon Mar 18 2019 Orion Poplawski - 2.12.0-3 - Rebuild for netcdf 4.6.3 diff --git a/sources b/sources index 1747407..c71b38e 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (eccodes_test_data_20181010.tar.gz) = 24c24ec9e01d230cf542abe5c131f05b8e627dd9d170c666628bb5fd8f7b1a6aa11a35456b8d742c59f54c6aabac78658efd68b0c50779d466aba3d35b4a0231 SHA512 (eccodes-2.12.0-Source.tar.gz) = 3dc876bde2a6c81a43bcc64ecb12969f28eae3cfbc8fed7da7797fc722dc8b446ac7be5178f55b7d395653e0718437b842296a7d4d11b372b8692404c76aa4ad +SHA512 (eccodes-2.12.5-Source.tar.gz) = ab1267dffdb3d0dbcdd65f23db2d77bc7bd8f3241083374c75bc62ebf70b7d29d8af9f657d6da05a47e363151c8d995adfadca7bbf95ebb24a27303d80f081a4 From 88c16b9609257a087214562df2ade0b3b6da1dc4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jul 2019 22:57:43 +0000 Subject: [PATCH 044/147] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index b5c6f42..ac9bf8f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.12.5 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -372,6 +372,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Jul 24 2019 Fedora Release Engineering - 2.12.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Thu May 09 2019 Jos de Kloe - 2.12.5-1 - Upgrade to upstream version 2.12.5 From cf73af9f250677dee8743a9eac25ccfdbc3e4da1 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 25 Jul 2019 21:48:56 +0200 Subject: [PATCH 045/147] update to new upstream version --- .gitignore | 7 +- eccodes-32bit.patch | 8 +-- eccodes-fortran-check.patch | 20 ------ eccodes-rpath.patch | 13 ---- eccodes-soversion.patch | 10 +-- eccodes.spec | 133 ++++++++++++++++-------------------- sources | 1 + 7 files changed, 71 insertions(+), 121 deletions(-) delete mode 100644 eccodes-fortran-check.patch delete mode 100644 eccodes-rpath.patch diff --git a/.gitignore b/.gitignore index d8581be..d516662 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,5 @@ -/eccodes-2.7.0-Source.tar.gz /eccodes_test_data.tar.gz -/eccodes-2.7.3-Source.tar.gz -/eccodes-2.8.0-Source.tar.gz -/eccodes-2.8.2-Source.tar.gz -/eccodes-2.9.0-Source.tar.gz /eccodes_test_data_20181010.tar.gz -/eccodes-2.9.2-Source.tar.gz /eccodes-2.12.0-Source.tar.gz /eccodes-2.12.5-Source.tar.gz +/eccodes-2.13.0-Source.tar.gz diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index 8786c8f..6161926 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,5 +1,5 @@ ---- eccodes-2.12.5-Source.orig/src/grib_api_prototypes.h 2019-05-09 16:24:38.000000000 +0200 -+++ eccodes-2.12.5-Source/src/grib_api_prototypes.h 2019-05-09 20:11:02.977946707 +0200 +--- eccodes-2.13.0-Source.orig/src/grib_api_prototypes.h 2019-07-08 14:06:45.000000000 +0200 ++++ eccodes-2.13.0-Source/src/grib_api_prototypes.h 2019-07-25 12:58:22.124808129 +0200 @@ -872,8 +872,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double *x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.12.5-Source.orig/src/grib_ieeefloat.c 2019-05-09 16:24:38.000000000 +0200 -+++ eccodes-2.12.5-Source/src/grib_ieeefloat.c 2019-05-09 20:11:02.978946681 +0200 +--- eccodes-2.13.0-Source.orig/src/grib_ieeefloat.c 2019-07-08 14:06:45.000000000 +0200 ++++ eccodes-2.13.0-Source/src/grib_ieeefloat.c 2019-07-25 12:58:22.125808103 +0200 @@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes-fortran-check.patch b/eccodes-fortran-check.patch deleted file mode 100644 index c2d6892..0000000 --- a/eccodes-fortran-check.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- eccodes-2.9.2-Source.orig/tests/bufr_dump_encode_fortran.sh 2018-11-09 15:55:26.000000000 +0100 -+++ eccodes-2.9.2-Source/tests/bufr_dump_encode_fortran.sh 2018-11-24 15:07:09.396354719 +0100 -@@ -41,6 +41,7 @@ if command -v pkg-config >/dev/null 2>&1 - INSTALL_DIR=`grep -w CMAKE_INSTALL_PREFIX $CACHE_FILE | cut -d'=' -f2` - FLAGS_LINKER=`echo $FLAGS_LINKER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` - FLAGS_COMPILER=`echo $FLAGS_COMPILER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` -+ FLAGS_COMPILER="${FLAGS_COMPILER} -I${BUILD_DIR}/include" - - # TODO: For now only support when shared libs enabled - #SHARED_LIBS=`grep -w BUILD_SHARED_LIBS $CACHE_FILE | cut -d'=' -f2` ---- eccodes-2.9.2-Source.orig/tests/bufr_dump_decode_fortran.sh 2018-11-09 15:55:26.000000000 +0100 -+++ eccodes-2.9.2-Source/tests/bufr_dump_decode_fortran.sh 2018-11-24 15:07:09.397354693 +0100 -@@ -41,6 +41,7 @@ if command -v pkg-config >/dev/null 2>&1 - INSTALL_DIR=`grep -w CMAKE_INSTALL_PREFIX $CACHE_FILE | cut -d'=' -f2` - FLAGS_LINKER=`echo $FLAGS_LINKER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` - FLAGS_COMPILER=`echo $FLAGS_COMPILER | sed -e "s:$INSTALL_DIR:$BUILD_DIR:g"` -+ FLAGS_COMPILER="${FLAGS_COMPILER} -I${BUILD_DIR}/include" - - # TODO: For now only support when shared libs enabled - #SHARED_LIBS=`grep -w BUILD_SHARED_LIBS $CACHE_FILE | cut -d'=' -f2` diff --git a/eccodes-rpath.patch b/eccodes-rpath.patch deleted file mode 100644 index a207a84..0000000 --- a/eccodes-rpath.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- eccodes-2.12.5-Source.orig/cmake/pkg-config.pc.in 2019-05-09 16:24:31.000000000 +0200 -+++ eccodes-2.12.5-Source/cmake/pkg-config.pc.in 2019-05-09 20:11:22.754434973 +0200 -@@ -14,9 +14,7 @@ CC=@CMAKE_C_COMPILER@ - CXX=@CMAKE_CXX_COMPILER@ - FC=@CMAKE_Fortran_COMPILER@ - --rpath=@RPATH_FLAG@${libdir} -- --libs=-L${libdir} ${rpath} @PKGCONFIG_LIBS@ -+libs=-L${libdir} @PKGCONFIG_LIBS@ - - libs_private=@PKGCONFIG_LIBS_PRIVATE@ - diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 3b1d4d1..5db7e7b 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.12.5-Source.orig/fortran/CMakeLists.txt 2019-05-09 16:24:38.000000000 +0200 -+++ eccodes-2.12.5-Source/fortran/CMakeLists.txt 2019-05-09 20:11:14.481649037 +0200 +--- eccodes-2.13.0-Source.orig/fortran/CMakeLists.txt 2019-07-08 14:06:44.000000000 +0200 ++++ eccodes-2.13.0-Source/fortran/CMakeLists.txt 2019-07-25 12:58:27.343673693 +0200 @@ -43,7 +43,8 @@ if( HAVE_FORTRAN ) ecbuild_add_library( TARGET eccodes_f90 SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h @@ -10,9 +10,9 @@ add_custom_command( TARGET eccodes_f90 POST_BUILD COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/include COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_Fortran_MODULE_DIRECTORY}/${CMAKE_CFG_INTDIR}/eccodes.mod ${CMAKE_BINARY_DIR}/include ---- eccodes-2.12.5-Source.orig/src/CMakeLists.txt 2019-05-09 16:24:38.000000000 +0200 -+++ eccodes-2.12.5-Source/src/CMakeLists.txt 2019-05-09 20:11:14.481649037 +0200 -@@ -436,8 +436,8 @@ ecbuild_add_library(TARGET eccodes +--- eccodes-2.13.0-Source.orig/src/CMakeLists.txt 2019-07-08 14:06:45.000000000 +0200 ++++ eccodes-2.13.0-Source/src/CMakeLists.txt 2019-07-25 12:58:27.343673693 +0200 +@@ -437,8 +437,8 @@ ecbuild_add_library(TARGET eccodes ${grib_api_srcs} GENERATED grib_api_version.c LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} diff --git a/eccodes.spec b/eccodes.spec index ac9bf8f..215cb20 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.12.5 -Release: 2%{?dist} +Version: 2.13.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -8,11 +8,12 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20181010 -# latest rawhide grib_api version is 1.27.0-3 +# latest rawhide grib_api version is 1.27.0-4 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. -# latest upstream grib_api release is 1.27.0 (09-Sep-2018) -%global final_grib_api_version 1.27.1-1%{?dist} +# latest upstream grib_api release is 1.28.0 (05-Dec-2018) +# see https://confluence.ecmwf.int/display/GRIB/Home +%global final_grib_api_version 1.28.1-1%{?dist} %ifarch i686 ppc64 s390x armv7hl %global obsolete_grib_api 0 @@ -21,8 +22,8 @@ Summary: WMO data format decoding and encoding %endif # license remarks: -# most of eccodes is licensed ASL 2.0 but a special case must be noted. -# these 2 files: +# Most of eccodes is licensed ASL 2.0 but a special case must be noted. +# These 2 files: # src/grib_yacc.c # src/grib_yacc.h # contain a special exception clause that allows them to be @@ -43,13 +44,6 @@ Patch1: eccodes-32bit.patch # Add soversion to the shared libraries, since upstream refuses to do so # https://software.ecmwf.int/issues/browse/SUP-1809 Patch2: eccodes-soversion.patch -# remove rpath from cmake/pkg-config.pc.in -Patch3: eccodes-rpath.patch - -# disabled -# fix compile flags in fortran checks -# this is needed due to rpath removal -#Patch4: eccodes-fortran-check.patch # note that the requests to make the other issues public are filed here: # https://software.ecmwf.int/issues/browse/SUP-2073 @@ -63,16 +57,14 @@ BuildRequires: jasper-devel BuildRequires: libjpeg-devel BuildRequires: libpng-devel BuildRequires: netcdf-devel -BuildRequires: numpy BuildRequires: openjpeg2-devel -# BuildRequires: python2-devel # For tests BuildRequires: perl(Getopt::Long) BuildRequires: perl(Test::More) # the data is needed by the library and all tools provided in the main package -# the other way arpund, the data package could be installed without +# the other way around, the data package could be installed without # installing the base package. It will probably be pretty useless, # unless a user wishes to read and study all these grib and bufr # file format definitions. @@ -99,15 +91,15 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562071 # note: this is no longer part of fc30/rawhide # but the exclude is still needed for EPEL-7 -ExcludeArch: ppc64 +#ExcludeArch: ppc64 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 @@ -124,8 +116,7 @@ in the following formats: * WMO GTS abbreviated header (only decoding). A useful set of command line tools provide quick access to the messages. C, -Fortran 90 and Python (1) interfaces provide access to the main ecCodes -functionality. +and Fortran 90 interfaces provide access to the main ecCodes functionality. ecCodes is an evolution of GRIB-API. It is designed to provide the user with a simple set of functions to access data from several formats with a key/value @@ -133,7 +124,7 @@ approach. For GRIB encoding and decoding, the GRIB-API functionality is provided fully in ecCodes with only minor interface and behaviour changes. Interfaces for C, -Fortran 90 and Python (1) are all maintained as in GRIB-API. However, the +and Fortran 90 are all maintained as in GRIB-API. However, the GRIB-API Fortran 77 interface is no longer available. In addition, a new set of functions with the prefix "codes_" is provided to @@ -148,10 +139,6 @@ and behaviour. A significant difference compared with GRIB-API tools is that bufr_dump produces output in JSON format suitable for many web based applications. -(1) Note: the python3 interface is provided by upstream, -but it fails unit testing, so it has been disabled for now. -As soon as this is fixed by upstream it will be added here. - ##################################################### %package devel Summary: Contains ecCodes development files @@ -167,23 +154,6 @@ Obsoletes: grib_api-devel < %{final_grib_api_version} %description devel Header files and libraries for ecCodes. -##################################################### -#%%package -n python2-%%{name} -#Summary: A python2 interface to ecCodes -#Requires: %%{name}%%{?_isa} = %%{version}-%%{release} -#Requires: gcc-gfortran%%{?_isa} -#Requires: jasper-devel%%{?_isa} -# -## a sub package python2-grib_api did not exist -## so no obsoletes needed here -# -#%%description -n python2-%%{name} -#A python2 interface to ecCodes. Also a legacy interface to gribapi is provided. - -##################################################### -# note: python3 is not yet supported by eccodes -# but upstream intents to make it available before the end of 2018 - ##################################################### %package data Summary: Data needed by the eccodes library and tools @@ -206,11 +176,7 @@ BuildArch: noarch %description doc This package contains the html documentation for ecCodes and a fair number of example programs and scripts to use it -in C, Fortran 90, and Python (1). - -(1) Note: the python3 interface is provided by upstream, -but it fails unittesting, so it has been disabled for now. -As soon as this is fixed by upstream it will be added here. +in C, and Fortran 90. ##################################################### %prep @@ -246,25 +212,42 @@ cd build # * ECCODES_OMP_THREADS , enable OMP threads # * EXTRA_TESTS , enable extended regression testing # +#-- The following features are set to AUTO by default and +# explicitely switched on to ensure they don't vanish unnoticed +# in case of dependency problems during the build: +# * ENABLE_JPG +# ^ ENABLE_FORTRAN +# * ENABLE_NETCDF +# NetCDF is only needed to create the grib_to_netcdf convert tool +# +# * ENABLE_PYTHON has value AUTO as default, so if python2 is available +# during a package build it will build an interface for it. +# To make sure it does not do so, explicitely switch it off. +# Python3 support has been moved to an additional project now, +# so python handling has been removed completely from this spec file. +# #-- Also add an explicit option to not use rpath # # Note: -DINSTALL_LIB_DIR=%%{_lib} is needed because otherwise # the library so files get installed in /usr/lib in stead # of /usr/lib64 on x86_64. -# Note: -DPYTHON_EXECUTABLE was added to prevent deprecation warnings -# during running of tests which breaks -# Test #184: eccodes_p_grib_keys_iterator_test %cmake3 -DINSTALL_LIB_DIR=%{_lib} \ -DENABLE_ECCODES_OMP_THREADS=ON \ -DENABLE_EXTRA_TESTS=ON \ + -DENABLE_JPG=ON \ -DENABLE_PNG=ON \ - -DCMAKE_SKIP_RPATH=TRUE \ + -DENABLE_FORTRAN=ON \ + -DENABLE_NETCDF=ON \ + -DCMAKE_SKIP_INSTALL_RPATH=TRUE \ -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ -DENABLE_PYTHON=OFF \ .. -# -DPYTHON_EXECUTABLE=%%{_bindir}/python2 \ +# note: +# with -DCMAKE_SKIP_RPATH=TRUE +# LD_LIBRARY_PATH and #LIBRARY_PATH need to be defined before running ctest. +# with -DCMAKE_SKIP_INSTALL_RPATH=TRUE this seems not needed %make_build @@ -302,19 +285,23 @@ mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/C cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 -#mkdir -p %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python -#cp examples/python/*.py %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python -#cp examples/python/*.c %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python -#cp examples/python/*.csv %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python -# adapt a shebang to make it point explicitely to python2 -#sed -i -e 's/\/bin\/env python/\/usr\/bin\/python2/' \ -# %%{buildroot}%%{_datadir}/doc/%%{name}/examples/python/high_level_api.py +# it seems pkgconfig files end up in lib in stead of lib64 now +# so move them to the right place +mv %{buildroot}/%{_usr}/lib/pkgconfig/ \ + %{buildroot}/%{_libdir}/pkgconfig/ -# move cmake files to the cmake folder below libdir -# as suggested in the review request -mkdir -p %{buildroot}%{_libdir}/cmake/%{name}/ -mv %{buildroot}%{_datadir}/%{name}/cmake/* %{buildroot}%{_libdir}/cmake/%{name}/ +# It seems the cmake options +# -DCMAKE_SKIP_RPATH=TRUE +# -DCMAKE_SKIP_INSTALL_RPATH=TRUE +# have no effect on the generated *.pc files. +# These still contain an rpath reference, so patch them and remove +# the rpath using sed +for pcfile in %{buildroot}/%{_libdir}/pkgconfig/*.pc ; do \ + mv $pcfile $pcfile.orig; \ + cat $pcfile.orig | sed 's|,-rpath,|,|g' > $pcfile ; \ + rm $pcfile.orig; \ +done %ldconfig_scriptlets @@ -337,8 +324,10 @@ cd build # so a patch has been added to solve this for now. # See: https://software.ecmwf.int/issues/browse/SUP-1812 # (unfortunately this issue is not public) -LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ -LIBRARY_PATH=%{buildroot}/%{_libdir} \ + +#LD_LIBRARY_PATH=%%{buildroot}/%%{_libdir} \ +#LIBRARY_PATH=%%{buildroot}/%%{_libdir} \ + ctest3 -V %{?_smp_mflags} %files @@ -347,11 +336,6 @@ ctest3 -V %{?_smp_mflags} %{_bindir}/* %{_libdir}/*.so.* -#%%files -n python2-%%{name} -#%%{python2_sitearch}/%%{name} -#%%{python2_sitearch}/%%{name}-*-py*.egg-info -#%%{python2_sitearch}/gribapi - %files devel %{_includedir}/* %{_fmoddir}/%{name}.mod @@ -372,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Jul 25 2019 Jos de Kloe - 2.13.0-1 +- Upgrade to upstream version 2.13.0 + * Wed Jul 24 2019 Fedora Release Engineering - 2.12.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index c71b38e..0f7be28 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ SHA512 (eccodes_test_data_20181010.tar.gz) = 24c24ec9e01d230cf542abe5c131f05b8e627dd9d170c666628bb5fd8f7b1a6aa11a35456b8d742c59f54c6aabac78658efd68b0c50779d466aba3d35b4a0231 SHA512 (eccodes-2.12.0-Source.tar.gz) = 3dc876bde2a6c81a43bcc64ecb12969f28eae3cfbc8fed7da7797fc722dc8b446ac7be5178f55b7d395653e0718437b842296a7d4d11b372b8692404c76aa4ad SHA512 (eccodes-2.12.5-Source.tar.gz) = ab1267dffdb3d0dbcdd65f23db2d77bc7bd8f3241083374c75bc62ebf70b7d29d8af9f657d6da05a47e363151c8d995adfadca7bbf95ebb24a27303d80f081a4 +SHA512 (eccodes-2.13.0-Source.tar.gz) = bbde1b7092caad20772b21cd06040938f99e763f77a6622820e3cc2fba5c0765178822be4b3c33b41a927757da85f311c0c4f057500ca58d257dde304e7eeca3 From 14cb429b5877c2e16e4484b9a41b031fc9c234d5 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 25 Jul 2019 23:10:24 +0200 Subject: [PATCH 046/147] exclude i686 from relocating pkgconfig files --- eccodes.spec | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 215cb20..440864f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -286,10 +286,14 @@ cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 -# it seems pkgconfig files end up in lib in stead of lib64 now -# so move them to the right place -mv %{buildroot}/%{_usr}/lib/pkgconfig/ \ - %{buildroot}/%{_libdir}/pkgconfig/ +%ifarch i686 + # pass +%else + # it seems pkgconfig files end up in lib in stead of lib64 now + # so move them to the right place + mv %{buildroot}/%{_usr}/lib/pkgconfig/ \ + %{buildroot}/%{_libdir}/pkgconfig/ +%endif # It seems the cmake options # -DCMAKE_SKIP_RPATH=TRUE From 1f6d2391b1664de7467f032973dba696fcd45c0a Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 25 Jul 2019 23:51:11 +0200 Subject: [PATCH 047/147] same fix is needed for armv7hl as well. --- eccodes.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 440864f..1e05371 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -286,8 +286,8 @@ cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 -%ifarch i686 - # pass +%ifarch i686 armv7hl + # pass (nothing to do) %else # it seems pkgconfig files end up in lib in stead of lib64 now # so move them to the right place From 3cdc185e1bc1c7bf219af920173203ae35f8001b Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 27 Jul 2019 14:35:33 +0200 Subject: [PATCH 048/147] manually run the 2 failing tests for s390x in debug mode --- eccodes.spec | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 1e05371..64ed69f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -332,7 +332,17 @@ cd build #LD_LIBRARY_PATH=%%{buildroot}/%%{_libdir} \ #LIBRARY_PATH=%%{buildroot}/%%{_libdir} \ -ctest3 -V %{?_smp_mflags} +#ctest3 -V %{?_smp_mflags} + +# manually run some problematic tests for s390x: +echo "=================================" +echo "=================================" +echo "=================================" +echo "output for: ctest -debug -R \"eccodes_t_ieee|eccodes_t_grib_optimize_scaling_sh\"" +echo "=================================" +LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +LIBRARY_PATH=%{buildroot}/%{_libdir} \ +ctest -debug -R "eccodes_t_ieee|eccodes_t_grib_optimize_scaling_sh" %files %license LICENSE From abed06146047623d298eae03f150b60178a899e4 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 27 Jul 2019 14:49:56 +0200 Subject: [PATCH 049/147] added -VV option to ctest --- eccodes.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 64ed69f..c3ca215 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -342,7 +342,7 @@ echo "output for: ctest -debug -R \"eccodes_t_ieee|eccodes_t_grib_optimize_scali echo "=================================" LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ LIBRARY_PATH=%{buildroot}/%{_libdir} \ -ctest -debug -R "eccodes_t_ieee|eccodes_t_grib_optimize_scaling_sh" +ctest -VV -debug -R "eccodes_t_ieee|eccodes_t_grib_optimize_scaling_sh" %files %license LICENSE From d0f4b6b6e859287ae62f9c7b26a7d641043daf09 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 27 Jul 2019 17:09:04 +0200 Subject: [PATCH 050/147] add failing tests now to ctest run for i686 and armv7hl --- eccodes.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index c3ca215..92b920f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -338,11 +338,11 @@ cd build echo "=================================" echo "=================================" echo "=================================" -echo "output for: ctest -debug -R \"eccodes_t_ieee|eccodes_t_grib_optimize_scaling_sh\"" +echo "output for: ctest -VV -debug -R \"eccodes_t_bufr_dump_encode_filter|eccodes_t_bufrdc_ref|eccodes_t_bufr_filter|eccodes_t_bufr_ecc-875|eccodes_t_gts_get|eccodes_t_gts_ls|eccodes_t_gts_count|eccodes_t_gts_compare|eccodes_t_metar_ls|eccodes_t_metar_get|eccodes_t_metar_dump|eccodes_t_metar_compare|eccodes_t_grib_sh_ieee64|eccodes_t_grib_lam_bf\"" echo "=================================" LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ LIBRARY_PATH=%{buildroot}/%{_libdir} \ -ctest -VV -debug -R "eccodes_t_ieee|eccodes_t_grib_optimize_scaling_sh" +ctest -VV -debug -R "eccodes_t_bufr_dump_encode_filter|eccodes_t_bufrdc_ref|eccodes_t_bufr_filter|eccodes_t_bufr_ecc-875|eccodes_t_gts_get|eccodes_t_gts_ls|eccodes_t_gts_count|eccodes_t_gts_compare|eccodes_t_metar_ls|eccodes_t_metar_get|eccodes_t_metar_dump|eccodes_t_metar_compare|eccodes_t_grib_sh_ieee64|eccodes_t_grib_lam_bf" %files %license LICENSE From 9c825e77687b5393d30224750ccbb81288e56b9a Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 27 Jul 2019 17:50:30 +0200 Subject: [PATCH 051/147] remove manual tests and activate ExcludeArch statements again. Build failures for the 3 problematic architectures and their logging output have again been reported upstream. --- eccodes.spec | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 92b920f..ba6d713 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -91,15 +91,15 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562071 # note: this is no longer part of fc30/rawhide # but the exclude is still needed for EPEL-7 #ExcludeArch: ppc64 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 @@ -332,17 +332,7 @@ cd build #LD_LIBRARY_PATH=%%{buildroot}/%%{_libdir} \ #LIBRARY_PATH=%%{buildroot}/%%{_libdir} \ -#ctest3 -V %{?_smp_mflags} - -# manually run some problematic tests for s390x: -echo "=================================" -echo "=================================" -echo "=================================" -echo "output for: ctest -VV -debug -R \"eccodes_t_bufr_dump_encode_filter|eccodes_t_bufrdc_ref|eccodes_t_bufr_filter|eccodes_t_bufr_ecc-875|eccodes_t_gts_get|eccodes_t_gts_ls|eccodes_t_gts_count|eccodes_t_gts_compare|eccodes_t_metar_ls|eccodes_t_metar_get|eccodes_t_metar_dump|eccodes_t_metar_compare|eccodes_t_grib_sh_ieee64|eccodes_t_grib_lam_bf\"" -echo "=================================" -LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ -LIBRARY_PATH=%{buildroot}/%{_libdir} \ -ctest -VV -debug -R "eccodes_t_bufr_dump_encode_filter|eccodes_t_bufrdc_ref|eccodes_t_bufr_filter|eccodes_t_bufr_ecc-875|eccodes_t_gts_get|eccodes_t_gts_ls|eccodes_t_gts_count|eccodes_t_gts_compare|eccodes_t_metar_ls|eccodes_t_metar_get|eccodes_t_metar_dump|eccodes_t_metar_compare|eccodes_t_grib_sh_ieee64|eccodes_t_grib_lam_bf" +ctest3 -V %{?_smp_mflags} %files %license LICENSE From 5107926f9ac054b463db2230de0482f001ade099 Mon Sep 17 00:00:00 2001 From: Emanuele Di Giacomo Date: Fri, 9 Aug 2019 14:23:11 +0200 Subject: [PATCH 052/147] Fix libs variable in .pc files (bugzilla 1739368) --- eccodes.spec | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index ba6d713..404e11f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -301,11 +301,8 @@ cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 # have no effect on the generated *.pc files. # These still contain an rpath reference, so patch them and remove # the rpath using sed -for pcfile in %{buildroot}/%{_libdir}/pkgconfig/*.pc ; do \ - mv $pcfile $pcfile.orig; \ - cat $pcfile.orig | sed 's|,-rpath,|,|g' > $pcfile ; \ - rm $pcfile.orig; \ -done +sed -i "s|^libs=.*$|libs=-L\${libdir} -leccodes|g" %{buildroot}/%{_libdir}/pkgconfig/eccodes.pc +sed -i "s|^libs=.*$|libs=-L\${libdir} -leccodes_f90 -leccodes|g" %{buildroot}/%{_libdir}/pkgconfig/eccodes_f90.pc %ldconfig_scriptlets From 95d2f618043f82a5245f886ad564fbe422e03538 Mon Sep 17 00:00:00 2001 From: Emanuele Di Giacomo Date: Fri, 9 Aug 2019 14:33:05 +0200 Subject: [PATCH 053/147] Use single quote --- eccodes.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 404e11f..ee68c21 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -301,8 +301,8 @@ cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 # have no effect on the generated *.pc files. # These still contain an rpath reference, so patch them and remove # the rpath using sed -sed -i "s|^libs=.*$|libs=-L\${libdir} -leccodes|g" %{buildroot}/%{_libdir}/pkgconfig/eccodes.pc -sed -i "s|^libs=.*$|libs=-L\${libdir} -leccodes_f90 -leccodes|g" %{buildroot}/%{_libdir}/pkgconfig/eccodes_f90.pc +sed -i 's|^libs=.*$|libs=-L${libdir} -leccodes|g' %{buildroot}/%{_libdir}/pkgconfig/eccodes.pc +sed -i 's|^libs=.*$|libs=-L${libdir} -leccodes_f90 -leccodes|g' %{buildroot}/%{_libdir}/pkgconfig/eccodes_f90.pc %ldconfig_scriptlets From 549447a985aa79bf0250a3b7f70e783e81fddab7 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 10 Aug 2019 20:19:37 +0200 Subject: [PATCH 054/147] fix sed commands to remove rpath from pc files as suggested by Emanuele Di Giacomo --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index ee68c21..a6832dd 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.13.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -357,6 +357,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Aug 10 2019 Jos de Kloe - 2.13.0-2 +- apply bugfix to pc files contribuited by Emanuele Di Giacomo + * Thu Jul 25 2019 Jos de Kloe - 2.13.0-1 - Upgrade to upstream version 2.13.0 From 1b5923d046b3813d5303ea742f43ffa7586e341d Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 27 Oct 2019 13:05:28 +0100 Subject: [PATCH 055/147] update to new upstream version, and disable architecture exceptions for testing --- .gitignore | 1 + eccodes-32bit.patch | 8 +++---- eccodes-soversion.patch | 32 ++++++++++++++-------------- eccodes.spec | 46 +++++++++++++++++++---------------------- sources | 1 + 5 files changed, 42 insertions(+), 46 deletions(-) diff --git a/.gitignore b/.gitignore index d516662..1b658ad 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /eccodes-2.12.0-Source.tar.gz /eccodes-2.12.5-Source.tar.gz /eccodes-2.13.0-Source.tar.gz +/eccodes-2.14.1-Source.tar.gz diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index 6161926..3f116e7 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,5 +1,5 @@ ---- eccodes-2.13.0-Source.orig/src/grib_api_prototypes.h 2019-07-08 14:06:45.000000000 +0200 -+++ eccodes-2.13.0-Source/src/grib_api_prototypes.h 2019-07-25 12:58:22.124808129 +0200 +--- eccodes-2.14.1-Source.unchanged/src/grib_api_prototypes.h 2019-10-10 13:33:52.000000000 +0200 ++++ eccodes-2.14.1-Source/src/grib_api_prototypes.h 2019-10-27 11:20:05.496702520 +0100 @@ -872,8 +872,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double *x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.13.0-Source.orig/src/grib_ieeefloat.c 2019-07-08 14:06:45.000000000 +0200 -+++ eccodes-2.13.0-Source/src/grib_ieeefloat.c 2019-07-25 12:58:22.125808103 +0200 +--- eccodes-2.14.1-Source.unchanged/src/grib_ieeefloat.c 2019-10-10 13:33:52.000000000 +0200 ++++ eccodes-2.14.1-Source/src/grib_ieeefloat.c 2019-10-27 11:20:05.497702497 +0100 @@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 5db7e7b..35edc92 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,25 +1,23 @@ ---- eccodes-2.13.0-Source.orig/fortran/CMakeLists.txt 2019-07-08 14:06:44.000000000 +0200 -+++ eccodes-2.13.0-Source/fortran/CMakeLists.txt 2019-07-25 12:58:27.343673693 +0200 -@@ -43,7 +43,8 @@ if( HAVE_FORTRAN ) +--- eccodes-2.14.1-Source.unchanged/fortran/CMakeLists.txt 2019-10-10 13:33:52.000000000 +0200 ++++ eccodes-2.14.1-Source/fortran/CMakeLists.txt 2019-10-27 11:25:48.269661718 +0100 +@@ -43,7 +43,9 @@ if( HAVE_FORTRAN ) ecbuild_add_library( TARGET eccodes_f90 SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h GENERATED grib_f90.f90 eccodes_f90.f90 - LIBS eccodes ) + LIBS eccodes + SOVERSION ${ECCODES_SOVERSION_F90}) - add_custom_command( TARGET eccodes_f90 POST_BUILD - COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/include - COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_Fortran_MODULE_DIRECTORY}/${CMAKE_CFG_INTDIR}/eccodes.mod ${CMAKE_BINARY_DIR}/include ---- eccodes-2.13.0-Source.orig/src/CMakeLists.txt 2019-07-08 14:06:45.000000000 +0200 -+++ eccodes-2.13.0-Source/src/CMakeLists.txt 2019-07-25 12:58:27.343673693 +0200 -@@ -437,8 +437,8 @@ ecbuild_add_library(TARGET eccodes - ${grib_api_srcs} ++ + if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) + # Installed module directory is not in the PUBLIC INCLUDES! + target_include_directories( eccodes_f90 PUBLIC $ ) +--- eccodes-2.14.1-Source.unchanged/src/CMakeLists.txt 2019-10-10 13:33:52.000000000 +0200 ++++ eccodes-2.14.1-Source/src/CMakeLists.txt 2019-10-27 11:27:56.115531419 +0100 +@@ -438,6 +438,7 @@ ecbuild_add_library(TARGET eccodes GENERATED grib_api_version.c LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} -- TEMPLATES ${grib_api_extra_srcs}) -- -+ TEMPLATES ${grib_api_extra_srcs} -+ SOVERSION ${ECCODES_SOVERSION}) - - install( FILES grib_api.h eccodes.h eccodes_windef.h DESTINATION ${INSTALL_INCLUDE_DIR} ) - install( FILES ${CMAKE_CURRENT_BINARY_DIR}/eccodes_version.h DESTINATION ${INSTALL_INCLUDE_DIR} ) + TEMPLATES ${grib_api_extra_srcs} ++ SOVERSION ${ECCODES_SOVERSION} + INSTALL_HEADERS_LIST + grib_api.h + eccodes.h diff --git a/eccodes.spec b/eccodes.spec index a6832dd..982f521 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.13.0 -Release: 2%{?dist} +Version: 2.14.1 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -8,7 +8,7 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20181010 -# latest rawhide grib_api version is 1.27.0-4 +# latest rawhide grib_api version is 1.27.0-5 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -91,15 +91,15 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562071 # note: this is no longer part of fc30/rawhide # but the exclude is still needed for EPEL-7 #ExcludeArch: ppc64 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 @@ -286,14 +286,16 @@ cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 -%ifarch i686 armv7hl - # pass (nothing to do) -%else - # it seems pkgconfig files end up in lib in stead of lib64 now - # so move them to the right place - mv %{buildroot}/%{_usr}/lib/pkgconfig/ \ - %{buildroot}/%{_libdir}/pkgconfig/ -%endif +# also not needed for x86_64 +# maybe they fixed it for all archs? +#%%ifarch i686 armv7hl +# # pass (nothing to do) +#%%else +# # it seems pkgconfig files end up in lib in stead of lib64 now +# # so move them to the right place +# mv %%{buildroot}/%%{_usr}/lib/pkgconfig/ \ +# %%{buildroot}/%%{_libdir}/pkgconfig/ +#%%endif # It seems the cmake options # -DCMAKE_SKIP_RPATH=TRUE @@ -317,18 +319,9 @@ cd build # 'eccodes_t_bufr_dump_(de|en)code_C' tests run. # These tests compile on the fly generated C code, and # without this setting the loader does not find the libraries. -# -# These fail due to build flag issues, i.e. the test script does a -# test build of some on the fly generated fortran code, but cannot -# find the necessary *.mod fortran module definition files. -# There is no easy way to define this as environment setting, -# so a patch has been added to solve this for now. -# See: https://software.ecmwf.int/issues/browse/SUP-1812 -# (unfortunately this issue is not public) - -#LD_LIBRARY_PATH=%%{buildroot}/%%{_libdir} \ -#LIBRARY_PATH=%%{buildroot}/%%{_libdir} \ +LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +LIBRARY_PATH=%{buildroot}/%{_libdir} \ ctest3 -V %{?_smp_mflags} %files @@ -357,6 +350,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Oct 27 2019 Jos de Kloe - 2.14.1-1 +- Upgrade to upstream version 2.14.1 + * Sat Aug 10 2019 Jos de Kloe - 2.13.0-2 - apply bugfix to pc files contribuited by Emanuele Di Giacomo diff --git a/sources b/sources index 0f7be28..f646642 100644 --- a/sources +++ b/sources @@ -2,3 +2,4 @@ SHA512 (eccodes_test_data_20181010.tar.gz) = 24c24ec9e01d230cf542abe5c131f05b8e6 SHA512 (eccodes-2.12.0-Source.tar.gz) = 3dc876bde2a6c81a43bcc64ecb12969f28eae3cfbc8fed7da7797fc722dc8b446ac7be5178f55b7d395653e0718437b842296a7d4d11b372b8692404c76aa4ad SHA512 (eccodes-2.12.5-Source.tar.gz) = ab1267dffdb3d0dbcdd65f23db2d77bc7bd8f3241083374c75bc62ebf70b7d29d8af9f657d6da05a47e363151c8d995adfadca7bbf95ebb24a27303d80f081a4 SHA512 (eccodes-2.13.0-Source.tar.gz) = bbde1b7092caad20772b21cd06040938f99e763f77a6622820e3cc2fba5c0765178822be4b3c33b41a927757da85f311c0c4f057500ca58d257dde304e7eeca3 +SHA512 (eccodes-2.14.1-Source.tar.gz) = 864b530642884baa0c3c56eee646a61af7d659e711c7ed4d08a5cc2d68812ecb96b8efabf40c4c9d5dcb3a0edeb1caddffea2ec3438571d3e90dc9cca1dabebe From 78995fe03f857259a01185c40a69f8aa85beb720 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 27 Oct 2019 13:37:33 +0100 Subject: [PATCH 056/147] enable excludearch statements again, and remove Provides for grib_api --- eccodes.spec | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 982f521..afbe771 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -86,20 +86,21 @@ Requires: %{name}-data = %{version}-%{release} # So the old grib_api will need to be obsoleted. %if 0%{obsolete_grib_api} -Provides: grib_api = %{final_grib_api_version} +# as stated in the note above, setting provides seems not correct here +# Provides: grib_api = %{final_grib_api_version} Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562071 # note: this is no longer part of fc30/rawhide # but the exclude is still needed for EPEL-7 #ExcludeArch: ppc64 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %if 0%{?rhel} >= 7 # as explained in bugzilla #1629377 @@ -147,7 +148,7 @@ Requires: gcc-gfortran%{?_isa} Requires: jasper-devel%{?_isa} %if 0%{obsolete_grib_api} -Provides: grib_api-devel = %{final_grib_api_version} +# Provides: grib_api-devel = %{final_grib_api_version} Obsoletes: grib_api-devel < %{final_grib_api_version} %endif From 81fa0906375c7c926c0249cdc7a5987d8770a1db Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 15 Dec 2019 20:59:00 +0100 Subject: [PATCH 057/147] update to upstream version 2.15.0 and disable ExcludeArch statements as test --- eccodes-soversion.patch | 10 +++++----- eccodes.spec | 30 ++++++++++-------------------- 2 files changed, 15 insertions(+), 25 deletions(-) diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 35edc92..23ce663 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.14.1-Source.unchanged/fortran/CMakeLists.txt 2019-10-10 13:33:52.000000000 +0200 -+++ eccodes-2.14.1-Source/fortran/CMakeLists.txt 2019-10-27 11:25:48.269661718 +0100 +--- eccodes-2.15.0-Source.unchanged/fortran/CMakeLists.txt 2019-11-28 10:29:37.000000000 +0100 ++++ eccodes-2.15.0-Source/fortran/CMakeLists.txt 2019-12-15 20:20:47.150657695 +0100 @@ -43,7 +43,9 @@ if( HAVE_FORTRAN ) ecbuild_add_library( TARGET eccodes_f90 SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h @@ -11,9 +11,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! target_include_directories( eccodes_f90 PUBLIC $ ) ---- eccodes-2.14.1-Source.unchanged/src/CMakeLists.txt 2019-10-10 13:33:52.000000000 +0200 -+++ eccodes-2.14.1-Source/src/CMakeLists.txt 2019-10-27 11:27:56.115531419 +0100 -@@ -438,6 +438,7 @@ ecbuild_add_library(TARGET eccodes +--- eccodes-2.15.0-Source.unchanged/src/CMakeLists.txt 2019-11-28 10:29:37.000000000 +0100 ++++ eccodes-2.15.0-Source/src/CMakeLists.txt 2019-12-15 20:20:47.150657695 +0100 +@@ -437,6 +437,7 @@ ecbuild_add_library(TARGET eccodes GENERATED grib_api_version.c LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} TEMPLATES ${grib_api_extra_srcs} diff --git a/eccodes.spec b/eccodes.spec index afbe771..5660815 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.14.1 +Version: 2.15.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -8,7 +8,7 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20181010 -# latest rawhide grib_api version is 1.27.0-5 +# latest rawhide grib_api version is 1.27.0-6 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -87,25 +87,16 @@ Requires: %{name}-data = %{version}-%{release} %if 0%{obsolete_grib_api} # as stated in the note above, setting provides seems not correct here -# Provides: grib_api = %{final_grib_api_version} +# Provides: grib_api = %%{final_grib_api_version} Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -ExcludeArch: i686 -# as explained in bugzilla #1562071 -# note: this is no longer part of fc30/rawhide -# but the exclude is still needed for EPEL-7 -#ExcludeArch: ppc64 +#ExcludeArch: i686 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl - -%if 0%{?rhel} >= 7 -# as explained in bugzilla #1629377 -ExcludeArch: aarch64 -%endif +#ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application @@ -148,7 +139,7 @@ Requires: gcc-gfortran%{?_isa} Requires: jasper-devel%{?_isa} %if 0%{obsolete_grib_api} -# Provides: grib_api-devel = %{final_grib_api_version} +# Provides: grib_api-devel = %%{final_grib_api_version} Obsoletes: grib_api-devel < %{final_grib_api_version} %endif @@ -245,10 +236,6 @@ cd build -DECCODES_SOVERSION_F90=%{so_version_f90} \ -DENABLE_PYTHON=OFF \ .. -# note: -# with -DCMAKE_SKIP_RPATH=TRUE -# LD_LIBRARY_PATH and #LIBRARY_PATH need to be defined before running ctest. -# with -DCMAKE_SKIP_INSTALL_RPATH=TRUE this seems not needed %make_build @@ -351,6 +338,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Dec 15 2019 Jos de Kloe - 2.15.0-1 +- Upgrade to upstream version 2.15.0 + * Sun Oct 27 2019 Jos de Kloe - 2.14.1-1 - Upgrade to upstream version 2.14.1 From 41f33f1c17715220ec012cb7ff855bf1cb60039c Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 15 Dec 2019 21:04:01 +0100 Subject: [PATCH 058/147] add new sources --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 1b658ad..8a7ee71 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /eccodes-2.12.5-Source.tar.gz /eccodes-2.13.0-Source.tar.gz /eccodes-2.14.1-Source.tar.gz +/eccodes-2.15.0-Source.tar.gz diff --git a/sources b/sources index f646642..be2c683 100644 --- a/sources +++ b/sources @@ -3,3 +3,4 @@ SHA512 (eccodes-2.12.0-Source.tar.gz) = 3dc876bde2a6c81a43bcc64ecb12969f28eae3cf SHA512 (eccodes-2.12.5-Source.tar.gz) = ab1267dffdb3d0dbcdd65f23db2d77bc7bd8f3241083374c75bc62ebf70b7d29d8af9f657d6da05a47e363151c8d995adfadca7bbf95ebb24a27303d80f081a4 SHA512 (eccodes-2.13.0-Source.tar.gz) = bbde1b7092caad20772b21cd06040938f99e763f77a6622820e3cc2fba5c0765178822be4b3c33b41a927757da85f311c0c4f057500ca58d257dde304e7eeca3 SHA512 (eccodes-2.14.1-Source.tar.gz) = 864b530642884baa0c3c56eee646a61af7d659e711c7ed4d08a5cc2d68812ecb96b8efabf40c4c9d5dcb3a0edeb1caddffea2ec3438571d3e90dc9cca1dabebe +SHA512 (eccodes-2.15.0-Source.tar.gz) = 1d906c5889773b4b6c5e9a967c2e20afb4ecc3ce8f4d496ad7b89417eec8783da9a0c8a9c14796f0c9c24b1f156b9d65408bb9a02a5e0c988a45478350aeae65 From 0be7189ca8f73a6d5d6a68f015ccfbeaf980b0a2 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 15 Dec 2019 21:18:08 +0100 Subject: [PATCH 059/147] disable the 3 failing architectures again (I have no time to debug these issues and upstream says the same) --- eccodes.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 5660815..26c885b 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -92,11 +92,11 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application From 92ffc138072bc6eec7ef4a0467364de1662b5b17 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jan 2020 16:52:19 +0000 Subject: [PATCH 060/147] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 26c885b..a543eb7 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.15.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -338,6 +338,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Tue Jan 28 2020 Fedora Release Engineering - 2.15.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Sun Dec 15 2019 Jos de Kloe - 2.15.0-1 - Upgrade to upstream version 2.15.0 From f2d8f69b5a7cb421a94909a684b14013b6e1f630 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 8 Feb 2020 17:37:51 +0100 Subject: [PATCH 061/147] update to upstream version 2.16.0 --- .gitignore | 1 + eccodes-32bit.patch | 10 +++++----- eccodes-soversion.patch | 10 +++++----- eccodes.spec | 18 +++++++++++++++--- sources | 1 + 5 files changed, 27 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index 8a7ee71..9ffefd3 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /eccodes-2.13.0-Source.tar.gz /eccodes-2.14.1-Source.tar.gz /eccodes-2.15.0-Source.tar.gz +/eccodes-2.16.0-Source.tar.gz diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index 3f116e7..f8369bb 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,6 +1,6 @@ ---- eccodes-2.14.1-Source.unchanged/src/grib_api_prototypes.h 2019-10-10 13:33:52.000000000 +0200 -+++ eccodes-2.14.1-Source/src/grib_api_prototypes.h 2019-10-27 11:20:05.496702520 +0100 -@@ -872,8 +872,8 @@ double grib_ieeefloat_error(double x); +--- eccodes-2.16.0-Source.unchanged/src/grib_api_prototypes.h 2020-01-14 10:53:35.000000000 +0100 ++++ eccodes-2.16.0-Source/src/grib_api_prototypes.h 2020-02-08 16:14:04.100982991 +0100 +@@ -873,8 +873,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double *x); unsigned long grib_ieee_to_long(double x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.14.1-Source.unchanged/src/grib_ieeefloat.c 2019-10-10 13:33:52.000000000 +0200 -+++ eccodes-2.14.1-Source/src/grib_ieeefloat.c 2019-10-27 11:20:05.497702497 +0100 +--- eccodes-2.16.0-Source.unchanged/src/grib_ieeefloat.c 2020-01-14 10:53:35.000000000 +0100 ++++ eccodes-2.16.0-Source/src/grib_ieeefloat.c 2020-02-08 16:14:04.104982891 +0100 @@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 23ce663..9ed4d4e 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.15.0-Source.unchanged/fortran/CMakeLists.txt 2019-11-28 10:29:37.000000000 +0100 -+++ eccodes-2.15.0-Source/fortran/CMakeLists.txt 2019-12-15 20:20:47.150657695 +0100 +--- eccodes-2.16.0-Source.unchanged/fortran/CMakeLists.txt 2020-01-14 10:53:35.000000000 +0100 ++++ eccodes-2.16.0-Source/fortran/CMakeLists.txt 2020-02-08 16:14:13.161755451 +0100 @@ -43,7 +43,9 @@ if( HAVE_FORTRAN ) ecbuild_add_library( TARGET eccodes_f90 SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h @@ -11,9 +11,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! target_include_directories( eccodes_f90 PUBLIC $ ) ---- eccodes-2.15.0-Source.unchanged/src/CMakeLists.txt 2019-11-28 10:29:37.000000000 +0100 -+++ eccodes-2.15.0-Source/src/CMakeLists.txt 2019-12-15 20:20:47.150657695 +0100 -@@ -437,6 +437,7 @@ ecbuild_add_library(TARGET eccodes +--- eccodes-2.16.0-Source.unchanged/src/CMakeLists.txt 2020-01-14 10:53:35.000000000 +0100 ++++ eccodes-2.16.0-Source/src/CMakeLists.txt 2020-02-08 16:14:13.169755250 +0100 +@@ -438,6 +438,7 @@ ecbuild_add_library(TARGET eccodes GENERATED grib_api_version.c LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} TEMPLATES ${grib_api_extra_srcs} diff --git a/eccodes.spec b/eccodes.spec index a543eb7..94cf7df 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.15.0 -Release: 2%{?dist} +Version: 2.16.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -8,7 +8,7 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20181010 -# latest rawhide grib_api version is 1.27.0-6 +# latest rawhide grib_api version is 1.27.0-7 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -224,6 +224,14 @@ cd build # the library so files get installed in /usr/lib in stead # of /usr/lib64 on x86_64. +# Build with -fallow-argument-mismatch for gcc 10 compatibility +# otherwise the fortran interface fails to compile +# (thanks for the hint Orion) +# Reported upstream at https://jira.ecmwf.int/browse/SUP-3081 +# note that setting FCFLAGS is not sufficient, i.e. this doesn't work: +# export FCFLAGS="%%{build_fflags} -fallow-argument-mismatch" +# defining the -DCMAKE_Fortran_FLAGS for camke is required to let it compile. + %cmake3 -DINSTALL_LIB_DIR=%{_lib} \ -DENABLE_ECCODES_OMP_THREADS=ON \ -DENABLE_EXTRA_TESTS=ON \ @@ -234,6 +242,7 @@ cd build -DCMAKE_SKIP_INSTALL_RPATH=TRUE \ -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ + -DCMAKE_Fortran_FLAGS="-fallow-argument-mismatch" \ -DENABLE_PYTHON=OFF \ .. @@ -338,6 +347,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Feb 08 2020 Jos de Kloe - 2.16.0-1 +- Upgrade to upstream version 2.16.0 + * Tue Jan 28 2020 Fedora Release Engineering - 2.15.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild diff --git a/sources b/sources index be2c683..6566d02 100644 --- a/sources +++ b/sources @@ -4,3 +4,4 @@ SHA512 (eccodes-2.12.5-Source.tar.gz) = ab1267dffdb3d0dbcdd65f23db2d77bc7bd8f324 SHA512 (eccodes-2.13.0-Source.tar.gz) = bbde1b7092caad20772b21cd06040938f99e763f77a6622820e3cc2fba5c0765178822be4b3c33b41a927757da85f311c0c4f057500ca58d257dde304e7eeca3 SHA512 (eccodes-2.14.1-Source.tar.gz) = 864b530642884baa0c3c56eee646a61af7d659e711c7ed4d08a5cc2d68812ecb96b8efabf40c4c9d5dcb3a0edeb1caddffea2ec3438571d3e90dc9cca1dabebe SHA512 (eccodes-2.15.0-Source.tar.gz) = 1d906c5889773b4b6c5e9a967c2e20afb4ecc3ce8f4d496ad7b89417eec8783da9a0c8a9c14796f0c9c24b1f156b9d65408bb9a02a5e0c988a45478350aeae65 +SHA512 (eccodes-2.16.0-Source.tar.gz) = 6e8768824152d8782c1457cfe79daed32114d1b4694d2843bd02a8aa63c42ccc435b53f7db6942239b3e56999fbaaba4ecef345d39fc5c5f7a5d20ceecf4422a From 4c993dfdbecffecf0309d9e8d051475ba0ff1841 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 15 Mar 2020 13:27:46 +0100 Subject: [PATCH 062/147] upgrade to new upstream version --- .gitignore | 1 + eccodes-32bit.patch | 24 ++++++++++++------------ eccodes-soversion.patch | 8 ++++---- eccodes.spec | 7 ++++++- sources | 1 + 5 files changed, 24 insertions(+), 17 deletions(-) diff --git a/.gitignore b/.gitignore index 9ffefd3..3124fa2 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ /eccodes-2.14.1-Source.tar.gz /eccodes-2.15.0-Source.tar.gz /eccodes-2.16.0-Source.tar.gz +/eccodes-2.17.0-Source.tar.gz diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index f8369bb..c6fcc2a 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,19 +1,19 @@ ---- eccodes-2.16.0-Source.unchanged/src/grib_api_prototypes.h 2020-01-14 10:53:35.000000000 +0100 -+++ eccodes-2.16.0-Source/src/grib_api_prototypes.h 2020-02-08 16:14:04.100982991 +0100 +--- eccodes-2.17.0-Source.unchanged/src/grib_api_prototypes.h 2020-03-09 11:17:48.000000000 +0100 ++++ eccodes-2.17.0-Source/src/grib_api_prototypes.h 2020-03-14 11:59:43.493457319 +0100 @@ -873,8 +873,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); - int grib_nearest_smaller_ieee_float(double a, double *x); + int grib_nearest_smaller_ieee_float(double a, double* x); unsigned long grib_ieee_to_long(double x); -unsigned long grib_ieee64_to_long(double x); -double grib_long_to_ieee64(unsigned long x); +uint64_t grib_ieee64_to_long(double x); +double grib_long_to_ieee64(uint64_t x); - int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); - int grib_ieee_decode_array(grib_context *c, unsigned char *buf, size_t nvals, int bytes, double *val); - int grib_ieee_encode_array(grib_context *c, double *val, size_t nvals, int bytes, unsigned char *buf); ---- eccodes-2.16.0-Source.unchanged/src/grib_ieeefloat.c 2020-01-14 10:53:35.000000000 +0100 -+++ eccodes-2.16.0-Source/src/grib_ieeefloat.c 2020-02-08 16:14:04.104982891 +0100 -@@ -392,14 +392,14 @@ unsigned long grib_ieee_to_long(double x + int grib_ieee_decode_array(grib_context* c, unsigned char* buf, size_t nvals, int bytes, double* val); + int grib_ieee_decode_array(grib_context* c, unsigned char* buf, size_t nvals, int bytes, double* val); + int grib_ieee_encode_array(grib_context* c, double* val, size_t nvals, int bytes, unsigned char* buf); +--- eccodes-2.17.0-Source.unchanged/src/grib_ieeefloat.c 2020-03-09 11:17:48.000000000 +0100 ++++ eccodes-2.17.0-Source/src/grib_ieeefloat.c 2020-03-14 12:07:45.848470121 +0100 +@@ -443,14 +443,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ @@ -21,12 +21,12 @@ +uint64_t grib_ieee64_to_long(double x) { unsigned long lval; - memcpy(&lval,&x,8); + memcpy(&lval, &x, 8); return lval; } --double grib_long_to_ieee64 (unsigned long x) +-double grib_long_to_ieee64(unsigned long x) +double grib_long_to_ieee64(uint64_t x) { double dval; - memcpy(&dval,&x,8); + memcpy(&dval, &x, 8); diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 9ed4d4e..4d576e3 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.16.0-Source.unchanged/fortran/CMakeLists.txt 2020-01-14 10:53:35.000000000 +0100 -+++ eccodes-2.16.0-Source/fortran/CMakeLists.txt 2020-02-08 16:14:13.161755451 +0100 +--- eccodes-2.17.0-Source.unchanged/fortran/CMakeLists.txt 2020-03-09 11:17:48.000000000 +0100 ++++ eccodes-2.17.0-Source/fortran/CMakeLists.txt 2020-03-14 11:55:27.233680557 +0100 @@ -43,7 +43,9 @@ if( HAVE_FORTRAN ) ecbuild_add_library( TARGET eccodes_f90 SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h @@ -11,8 +11,8 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! target_include_directories( eccodes_f90 PUBLIC $ ) ---- eccodes-2.16.0-Source.unchanged/src/CMakeLists.txt 2020-01-14 10:53:35.000000000 +0100 -+++ eccodes-2.16.0-Source/src/CMakeLists.txt 2020-02-08 16:14:13.169755250 +0100 +--- eccodes-2.17.0-Source.unchanged/src/CMakeLists.txt 2020-03-09 11:17:48.000000000 +0100 ++++ eccodes-2.17.0-Source/src/CMakeLists.txt 2020-03-14 11:55:27.236680482 +0100 @@ -438,6 +438,7 @@ ecbuild_add_library(TARGET eccodes GENERATED grib_api_version.c LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} diff --git a/eccodes.spec b/eccodes.spec index 94cf7df..ccbbb6c 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.16.0 +Version: 2.17.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -62,6 +62,7 @@ BuildRequires: openjpeg2-devel # For tests BuildRequires: perl(Getopt::Long) BuildRequires: perl(Test::More) +BuildRequires: perl(File::Compare) # the data is needed by the library and all tools provided in the main package # the other way around, the data package could be installed without @@ -347,6 +348,10 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Mar 15 2020 Jos de Kloe - 2.17.0-1 +- Upgrade to upstream version 2.17.0 +- Add explcit BR to perl(File::Compare) as needed by the tests now + * Sat Feb 08 2020 Jos de Kloe - 2.16.0-1 - Upgrade to upstream version 2.16.0 diff --git a/sources b/sources index 6566d02..ca8d489 100644 --- a/sources +++ b/sources @@ -5,3 +5,4 @@ SHA512 (eccodes-2.13.0-Source.tar.gz) = bbde1b7092caad20772b21cd06040938f99e763f SHA512 (eccodes-2.14.1-Source.tar.gz) = 864b530642884baa0c3c56eee646a61af7d659e711c7ed4d08a5cc2d68812ecb96b8efabf40c4c9d5dcb3a0edeb1caddffea2ec3438571d3e90dc9cca1dabebe SHA512 (eccodes-2.15.0-Source.tar.gz) = 1d906c5889773b4b6c5e9a967c2e20afb4ecc3ce8f4d496ad7b89417eec8783da9a0c8a9c14796f0c9c24b1f156b9d65408bb9a02a5e0c988a45478350aeae65 SHA512 (eccodes-2.16.0-Source.tar.gz) = 6e8768824152d8782c1457cfe79daed32114d1b4694d2843bd02a8aa63c42ccc435b53f7db6942239b3e56999fbaaba4ecef345d39fc5c5f7a5d20ceecf4422a +SHA512 (eccodes-2.17.0-Source.tar.gz) = 362c6ae23c23326a3a969c6ba109bdf96ba449cba899030a69efb03e53870f6c90e3f6dbf9d0d2f94febf3a661e607390e8b16d58e64066c4fa941af554ebee7 From 31c35a28f00c68e84916254120b5752a990f383c Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 15 Mar 2020 13:29:04 +0100 Subject: [PATCH 063/147] disable the 3 ExcludeArch statements to check the current compatibility status --- eccodes.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index ccbbb6c..0b69510 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -93,11 +93,11 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application From a3e2578cc217e435a85e2ecd0fb1b1aaabfd71b7 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 15 Mar 2020 13:43:55 +0100 Subject: [PATCH 064/147] enable the 3 ExcludeArch statements again, since the test problems remain. If anyone is interested in having this package for these Arches please file a bug report upstream (currently they dont think this compatibility needs to get higher priority). --- eccodes.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 0b69510..ccbbb6c 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -93,11 +93,11 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application From 5d6e9d7c6aacfec291b64556cd2c17cea136792f Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 27 Jun 2020 10:40:58 +0200 Subject: [PATCH 065/147] upload new upstream sources and data to prepare for next update --- .gitignore | 2 ++ sources | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index 3124fa2..fab925f 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ /eccodes-2.15.0-Source.tar.gz /eccodes-2.16.0-Source.tar.gz /eccodes-2.17.0-Source.tar.gz +/eccodes-2.18.0-Source.tar.gz +/eccodes_test_data_20200626.tar.gz diff --git a/sources b/sources index ca8d489..e19b3ab 100644 --- a/sources +++ b/sources @@ -6,3 +6,5 @@ SHA512 (eccodes-2.14.1-Source.tar.gz) = 864b530642884baa0c3c56eee646a61af7d659e7 SHA512 (eccodes-2.15.0-Source.tar.gz) = 1d906c5889773b4b6c5e9a967c2e20afb4ecc3ce8f4d496ad7b89417eec8783da9a0c8a9c14796f0c9c24b1f156b9d65408bb9a02a5e0c988a45478350aeae65 SHA512 (eccodes-2.16.0-Source.tar.gz) = 6e8768824152d8782c1457cfe79daed32114d1b4694d2843bd02a8aa63c42ccc435b53f7db6942239b3e56999fbaaba4ecef345d39fc5c5f7a5d20ceecf4422a SHA512 (eccodes-2.17.0-Source.tar.gz) = 362c6ae23c23326a3a969c6ba109bdf96ba449cba899030a69efb03e53870f6c90e3f6dbf9d0d2f94febf3a661e607390e8b16d58e64066c4fa941af554ebee7 +SHA512 (eccodes-2.18.0-Source.tar.gz) = 8daf7f2e1aed055ca6402881f5473e4ae90ba24cc779005f57f99adc7468da459c7539e64f455e2122dd83df29992fd7a6dad2700c8331c4083226e091fbb629 +SHA512 (eccodes_test_data_20200626.tar.gz) = 553eb69f3664c2f847c5ee7a84066e814ef03b3148ae2c13d845891038336daca815673650f1d06efee4f4a1ddaa4326f2ddfbe81d29382e3f25608b249b8d9e From 2d05f510e8c84dc04c500e918ad0ee18f96b7548 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 27 Jun 2020 10:43:20 +0200 Subject: [PATCH 066/147] update to new upstream version and remove ExcludeArch switches to see if compatibility is improved (or not). --- eccodes-32bit.patch | 10 +++++----- eccodes-soversion.patch | 22 +++++++++++----------- eccodes.spec | 15 +++++++++------ 3 files changed, 25 insertions(+), 22 deletions(-) diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index c6fcc2a..f019811 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,6 +1,6 @@ ---- eccodes-2.17.0-Source.unchanged/src/grib_api_prototypes.h 2020-03-09 11:17:48.000000000 +0100 -+++ eccodes-2.17.0-Source/src/grib_api_prototypes.h 2020-03-14 11:59:43.493457319 +0100 -@@ -873,8 +873,8 @@ double grib_ieeefloat_error(double x); +--- eccodes-2.18.0-Source.unchanged/src/grib_api_prototypes.h 2020-06-24 11:11:27.000000000 +0200 ++++ eccodes-2.18.0-Source/src/grib_api_prototypes.h 2020-06-27 09:23:17.543758993 +0200 +@@ -860,8 +860,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double* x); unsigned long grib_ieee_to_long(double x); @@ -11,8 +11,8 @@ int grib_ieee_decode_array(grib_context* c, unsigned char* buf, size_t nvals, int bytes, double* val); int grib_ieee_decode_array(grib_context* c, unsigned char* buf, size_t nvals, int bytes, double* val); int grib_ieee_encode_array(grib_context* c, double* val, size_t nvals, int bytes, unsigned char* buf); ---- eccodes-2.17.0-Source.unchanged/src/grib_ieeefloat.c 2020-03-09 11:17:48.000000000 +0100 -+++ eccodes-2.17.0-Source/src/grib_ieeefloat.c 2020-03-14 12:07:45.848470121 +0100 +--- eccodes-2.18.0-Source.unchanged/src/grib_ieeefloat.c 2020-06-24 11:11:27.000000000 +0200 ++++ eccodes-2.18.0-Source/src/grib_ieeefloat.c 2020-06-27 09:23:17.545758944 +0200 @@ -443,14 +443,14 @@ unsigned long grib_ieee_to_long(double x * grib_encode_unsigned_long. */ diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 4d576e3..defa647 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,6 +1,6 @@ ---- eccodes-2.17.0-Source.unchanged/fortran/CMakeLists.txt 2020-03-09 11:17:48.000000000 +0100 -+++ eccodes-2.17.0-Source/fortran/CMakeLists.txt 2020-03-14 11:55:27.233680557 +0100 -@@ -43,7 +43,9 @@ if( HAVE_FORTRAN ) +--- eccodes-2.18.0-Source.unchanged/fortran/CMakeLists.txt 2020-06-24 11:11:27.000000000 +0200 ++++ eccodes-2.18.0-Source/fortran/CMakeLists.txt 2020-06-27 09:23:33.020376062 +0200 +@@ -45,7 +45,9 @@ if( HAVE_FORTRAN ) ecbuild_add_library( TARGET eccodes_f90 SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h GENERATED grib_f90.f90 eccodes_f90.f90 @@ -11,13 +11,13 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! target_include_directories( eccodes_f90 PUBLIC $ ) ---- eccodes-2.17.0-Source.unchanged/src/CMakeLists.txt 2020-03-09 11:17:48.000000000 +0100 -+++ eccodes-2.17.0-Source/src/CMakeLists.txt 2020-03-14 11:55:27.236680482 +0100 -@@ -438,6 +438,7 @@ ecbuild_add_library(TARGET eccodes - GENERATED grib_api_version.c - LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} - TEMPLATES ${grib_api_extra_srcs} -+ SOVERSION ${ECCODES_SOVERSION} - INSTALL_HEADERS_LIST +--- eccodes-2.18.0-Source.unchanged/src/CMakeLists.txt 2020-06-24 11:11:27.000000000 +0200 ++++ eccodes-2.18.0-Source/src/CMakeLists.txt 2020-06-27 09:27:13.845630950 +0200 +@@ -442,6 +442,7 @@ ecbuild_add_library( TARGET eccodes + GENERATED grib_api_version.c + LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} + TEMPLATES ${grib_api_extra_srcs} ++ SOVERSION ${ECCODES_SOVERSION} + INSTALL_HEADERS_LIST grib_api.h eccodes.h diff --git a/eccodes.spec b/eccodes.spec index ccbbb6c..60d77f1 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,14 +1,14 @@ Name: eccodes -Version: 2.17.0 +Version: 2.18.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions %global so_version 0.1 %global so_version_f90 0.1 -%global datapack_date 20181010 +%global datapack_date 20200626 -# latest rawhide grib_api version is 1.27.0-7 +# latest fedora-32 grib_api version is 1.27.0-7 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -93,11 +93,11 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -ExcludeArch: i686 +# ExcludeArch: i686 # as explained in bugzilla #1562076 -ExcludeArch: s390x +# ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +# ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application @@ -348,6 +348,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Jun 27 2020 Jos de Kloe - 2.18.0-1 +- Upgrade to upstream version 2.18.0 + * Sun Mar 15 2020 Jos de Kloe - 2.17.0-1 - Upgrade to upstream version 2.17.0 - Add explcit BR to perl(File::Compare) as needed by the tests now From b7625413a2a331a9a83d17d27edbe5f3d40bbf5e Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 27 Jun 2020 11:24:08 +0200 Subject: [PATCH 067/147] disable the 3 faling archs again. --- eccodes.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 60d77f1..eba88b4 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -93,11 +93,11 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -# ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562076 -# ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -# ExcludeArch: armv7hl +#ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application From 92c9bdc89ba176b0f7b0a8effbcb00a8a51c707b Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 27 Jun 2020 11:30:22 +0200 Subject: [PATCH 068/147] now really add the ExcludeArch statements again --- eccodes.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index eba88b4..0ff1909 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -93,11 +93,11 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application From fae474025cc73bcd33617a77fecd4b5fcef0f39d Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 27 Jun 2020 11:34:55 +0200 Subject: [PATCH 069/147] Rebuild after fixing mistake in ExcludeArch statements --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 0ff1909..a96498e 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.18.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -348,6 +348,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Jun 27 2020 Jos de Kloe - 2.18.0-2 +- Rebuild after fixing mistake in ExcludeArch statements + * Sat Jun 27 2020 Jos de Kloe - 2.18.0-1 - Upgrade to upstream version 2.18.0 From 9c6cc6a2d180532c80f84259e393188a4fc3e1f2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 27 Jul 2020 16:13:58 +0000 Subject: [PATCH 070/147] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index a96498e..80c1657 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.18.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -348,6 +348,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Mon Jul 27 2020 Fedora Release Engineering - 2.18.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Sat Jun 27 2020 Jos de Kloe - 2.18.0-2 - Rebuild after fixing mistake in ExcludeArch statements From 7121cf8098295cf6fe7af047fc9eb48f6ef98d31 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 1 Aug 2020 00:43:13 +0000 Subject: [PATCH 071/147] - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 80c1657..8f8fccc 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.18.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -348,6 +348,10 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Aug 01 2020 Fedora Release Engineering - 2.18.0-4 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Mon Jul 27 2020 Fedora Release Engineering - 2.18.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From cf1c4f5ff4728fcbf989ed0523a1e54764724e64 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 5 Aug 2020 10:26:31 +0200 Subject: [PATCH 072/147] Adapt the spec file to use the new style cmake macros --- eccodes.spec | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 8f8fccc..dda1272 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.18.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -176,12 +176,12 @@ in C, and Fortran 90. %autosetup -n %{name}-%{version}-Source -p1 # unpack the test data below build -mkdir build -cd build +mkdir -p %{_vpath_builddir} +pushd %{_vpath_builddir} tar xf %SOURCE1 +popd # remove executable permissions from c files -cd .. chmod 644 tigge/*.c chmod 644 tools/*.c @@ -189,7 +189,6 @@ chmod 644 tools/*.c chmod 644 AUTHORS LICENSE %build -cd build #-- The following features are disabled by default and not switched on: # @@ -244,19 +243,20 @@ cd build -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ -DCMAKE_Fortran_FLAGS="-fallow-argument-mismatch" \ - -DENABLE_PYTHON=OFF \ - .. + -DENABLE_PYTHON=OFF -%make_build +# note the final '..' is no longer needed to the cmake3 call. +# this is now hidden in the %%cmake3 macro + +%cmake_build # copy some include files to the build dir -# that are otherwise not found when creating the debugsource subpackage -cd .. -cp fortran/eccodes_constants.h build/fortran/ -cp fortran/grib_api_constants.h build/fortran/ +# that are otherwise not found when creating the debugsource sub-package +cp fortran/eccodes_constants.h %{_vpath_builddir}/fortran/ +cp fortran/grib_api_constants.h %{_vpath_builddir}/fortran/ %install -%make_install -C build +%cmake_install mkdir -p %{buildroot}%{_fmoddir} mv %{buildroot}%{_includedir}/*.mod %{buildroot}%{_fmoddir}/ @@ -307,7 +307,7 @@ sed -i 's|^libs=.*$|libs=-L${libdir} -leccodes_f90 -leccodes|g' %{buildroot}/%{_ %ldconfig_scriptlets %check -cd build +cd %{_vpath_builddir} # notes: # * the LD_LIBRARY_PATH setting is required to let the tests @@ -317,6 +317,8 @@ cd build # 'eccodes_t_bufr_dump_(de|en)code_C' tests run. # These tests compile on the fly generated C code, and # without this setting the loader does not find the libraries. +# * this is a 'non-standard' use of ctest3 so it does currently not +# work with the %%ctest macro. LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ LIBRARY_PATH=%{buildroot}/%{_libdir} \ @@ -348,6 +350,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Aug 05 2020 Jos de Kloe - 2.18.0-5 +- Adapt the spec file to use the new style cmake macros + * Sat Aug 01 2020 Fedora Release Engineering - 2.18.0-4 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 4ef87b99836d3428bf3d4a108ab464f67e660d81 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Fri, 16 Oct 2020 18:23:12 +0200 Subject: [PATCH 073/147] Upgrade to upstream version 2.19.0 and remove patch 1; also remove ExcludeArch switches --- .gitignore | 1 + eccodes-32bit.patch | 19 ++++++++++--------- eccodes-soversion.patch | 31 +++++++++++++++---------------- eccodes.spec | 20 ++++++++++---------- sources | 1 + 5 files changed, 37 insertions(+), 35 deletions(-) diff --git a/.gitignore b/.gitignore index fab925f..5a45cb1 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ /eccodes-2.17.0-Source.tar.gz /eccodes-2.18.0-Source.tar.gz /eccodes_test_data_20200626.tar.gz +/eccodes-2.19.0-Source.tar.gz diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch index f019811..8bf6d79 100644 --- a/eccodes-32bit.patch +++ b/eccodes-32bit.patch @@ -1,6 +1,6 @@ ---- eccodes-2.18.0-Source.unchanged/src/grib_api_prototypes.h 2020-06-24 11:11:27.000000000 +0200 -+++ eccodes-2.18.0-Source/src/grib_api_prototypes.h 2020-06-27 09:23:17.543758993 +0200 -@@ -860,8 +860,8 @@ double grib_ieeefloat_error(double x); +--- eccodes-2.19.0-Source.unchanged/src/grib_api_prototypes.h 2020-10-15 13:21:34.000000000 +0200 ++++ eccodes-2.19.0-Source/src/grib_api_prototypes.h 2020-10-16 08:52:25.171175169 +0200 +@@ -859,8 +859,8 @@ double grib_ieeefloat_error(double x); double grib_long_to_ieee(unsigned long x); int grib_nearest_smaller_ieee_float(double a, double* x); unsigned long grib_ieee_to_long(double x); @@ -11,17 +11,18 @@ int grib_ieee_decode_array(grib_context* c, unsigned char* buf, size_t nvals, int bytes, double* val); int grib_ieee_decode_array(grib_context* c, unsigned char* buf, size_t nvals, int bytes, double* val); int grib_ieee_encode_array(grib_context* c, double* val, size_t nvals, int bytes, unsigned char* buf); ---- eccodes-2.18.0-Source.unchanged/src/grib_ieeefloat.c 2020-06-24 11:11:27.000000000 +0200 -+++ eccodes-2.18.0-Source/src/grib_ieeefloat.c 2020-06-27 09:23:17.545758944 +0200 -@@ -443,14 +443,14 @@ unsigned long grib_ieee_to_long(double x +--- eccodes-2.19.0-Source.unchanged/src/grib_ieeefloat.c 2020-10-15 13:21:34.000000000 +0200 ++++ eccodes-2.19.0-Source/src/grib_ieeefloat.c 2020-10-16 09:01:37.712934707 +0200 +@@ -442,7 +442,7 @@ unsigned long grib_ieee_to_long(double x + * Byte swapping is actually implemented in grib_decode_unsigned_long and * grib_encode_unsigned_long. */ - -unsigned long grib_ieee64_to_long(double x) +uint64_t grib_ieee64_to_long(double x) { unsigned long lval; - memcpy(&lval, &x, 8); + DebugAssert(sizeof(double) == sizeof(long)); +@@ -450,7 +450,7 @@ unsigned long grib_ieee64_to_long(double return lval; } @@ -29,4 +30,4 @@ +double grib_long_to_ieee64(uint64_t x) { double dval; - memcpy(&dval, &x, 8); + DebugAssert(sizeof(double) == sizeof(long)); diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index defa647..cad10e0 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,21 +1,20 @@ ---- eccodes-2.18.0-Source.unchanged/fortran/CMakeLists.txt 2020-06-24 11:11:27.000000000 +0200 -+++ eccodes-2.18.0-Source/fortran/CMakeLists.txt 2020-06-27 09:23:33.020376062 +0200 -@@ -45,7 +45,9 @@ if( HAVE_FORTRAN ) - ecbuild_add_library( TARGET eccodes_f90 - SOURCES grib_fortran.c grib_f90.f90 eccodes_f90.f90 grib_kinds.h - GENERATED grib_f90.f90 eccodes_f90.f90 -- LIBS eccodes ) -+ LIBS eccodes -+ SOVERSION ${ECCODES_SOVERSION_F90}) -+ +--- eccodes-2.19.0-Source.unchanged/fortran/CMakeLists.txt 2020-10-15 13:21:34.000000000 +0200 ++++ eccodes-2.19.0-Source/fortran/CMakeLists.txt 2020-10-16 09:07:21.570272038 +0200 +@@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) + GENERATED grib_f90.f90 eccodes_f90.f90 + PUBLIC_INCLUDES $ + $ +- PRIVATE_LIBS eccodes ) ++ PRIVATE_LIBS eccodes ++ SOVERSION ${ECCODES_SOVERSION_F90}) + if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! - target_include_directories( eccodes_f90 PUBLIC $ ) ---- eccodes-2.18.0-Source.unchanged/src/CMakeLists.txt 2020-06-24 11:11:27.000000000 +0200 -+++ eccodes-2.18.0-Source/src/CMakeLists.txt 2020-06-27 09:27:13.845630950 +0200 -@@ -442,6 +442,7 @@ ecbuild_add_library( TARGET eccodes - GENERATED grib_api_version.c - LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${CMATH_LIBRARIES} +--- eccodes-2.19.0-Source.unchanged/src/CMakeLists.txt 2020-10-15 13:21:34.000000000 +0200 ++++ eccodes-2.19.0-Source/src/CMakeLists.txt 2020-10-16 08:52:43.447698207 +0200 +@@ -445,6 +445,7 @@ ecbuild_add_library( TARGET eccodes + PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} + PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${grib_api_extra_srcs} + SOVERSION ${ECCODES_SOVERSION} INSTALL_HEADERS_LIST diff --git a/eccodes.spec b/eccodes.spec index dda1272..c53654a 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.18.0 -Release: 5%{?dist} +Version: 2.19.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -37,13 +37,10 @@ Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/ec # now and then so rename the datapack using the download date # to make it versioned in fedora Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz -# Support 32-bit -# https://software.ecmwf.int/issues/browse/SUP-1813 -# (unfortunately this issue is not public) -Patch1: eccodes-32bit.patch + # Add soversion to the shared libraries, since upstream refuses to do so # https://software.ecmwf.int/issues/browse/SUP-1809 -Patch2: eccodes-soversion.patch +Patch1: eccodes-soversion.patch # note that the requests to make the other issues public are filed here: # https://software.ecmwf.int/issues/browse/SUP-2073 @@ -93,11 +90,11 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application @@ -350,6 +347,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Fri Oct 16 2020 Jos de Kloe - 2.19.0-1 +- Upgrade to upstream version 2.19.0 and remove patch 1 + * Wed Aug 05 2020 Jos de Kloe - 2.18.0-5 - Adapt the spec file to use the new style cmake macros diff --git a/sources b/sources index e19b3ab..6a0df4e 100644 --- a/sources +++ b/sources @@ -8,3 +8,4 @@ SHA512 (eccodes-2.16.0-Source.tar.gz) = 6e8768824152d8782c1457cfe79daed32114d1b4 SHA512 (eccodes-2.17.0-Source.tar.gz) = 362c6ae23c23326a3a969c6ba109bdf96ba449cba899030a69efb03e53870f6c90e3f6dbf9d0d2f94febf3a661e607390e8b16d58e64066c4fa941af554ebee7 SHA512 (eccodes-2.18.0-Source.tar.gz) = 8daf7f2e1aed055ca6402881f5473e4ae90ba24cc779005f57f99adc7468da459c7539e64f455e2122dd83df29992fd7a6dad2700c8331c4083226e091fbb629 SHA512 (eccodes_test_data_20200626.tar.gz) = 553eb69f3664c2f847c5ee7a84066e814ef03b3148ae2c13d845891038336daca815673650f1d06efee4f4a1ddaa4326f2ddfbe81d29382e3f25608b249b8d9e +SHA512 (eccodes-2.19.0-Source.tar.gz) = d2e63b4c478444f9f06c7322e5b61f54641c997262043864308ede07de1808ec2ee2a63c2ed8afb4e4339cf0cf93949778174b6aa3ce0859878d63fc4b9dbf83 From d7452732f002faa1ff9dc709c66f3e06805d6528 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 17 Oct 2020 11:37:19 +0200 Subject: [PATCH 074/147] disable i686 and s390x again (still fail test suite). Also add -fPIC which seems required to get the library compiled on armv7hl. --- eccodes.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index c53654a..4ea1fed 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -90,9 +90,9 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 #ExcludeArch: armv7hl @@ -229,6 +229,11 @@ chmod 644 AUTHORS LICENSE # export FCFLAGS="%%{build_fflags} -fallow-argument-mismatch" # defining the -DCMAKE_Fortran_FLAGS for camke is required to let it compile. +# added -DCMAKE_Fortran_FLAGS="-fPIC" +# because the koji build crashes with the error that it needs this setting +# when I try to build for armv7hl (other archs do not complain ......) +# I have no idea what causes this difference in behaviour. + %cmake3 -DINSTALL_LIB_DIR=%{_lib} \ -DENABLE_ECCODES_OMP_THREADS=ON \ -DENABLE_EXTRA_TESTS=ON \ @@ -240,6 +245,7 @@ chmod 644 AUTHORS LICENSE -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ -DCMAKE_Fortran_FLAGS="-fallow-argument-mismatch" \ + -DCMAKE_Fortran_FLAGS="-fPIC" \ -DENABLE_PYTHON=OFF # note the final '..' is no longer needed to the cmake3 call. From ab3d8aface7b6140a61ba29845a0ef27ffda8848 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 17 Oct 2020 12:06:58 +0200 Subject: [PATCH 075/147] activate ExcludeArch: armv7hl again (still test failures) and add a note on the grib_api webpage at ECMWF that is no longer available. --- eccodes.spec | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 4ea1fed..f6abf99 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -8,11 +8,12 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20200626 -# latest fedora-32 grib_api version is 1.27.0-7 +# latest fedora-33 grib_api version is 1.27.0-8 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) -# see https://confluence.ecmwf.int/display/GRIB/Home +# is was written on https://confluence.ecmwf.int/display/GRIB/Home +# (Note that this page is no longer available, 17-Oct-2020) %global final_grib_api_version 1.28.1-1%{?dist} %ifarch i686 ppc64 s390x armv7hl @@ -94,7 +95,7 @@ ExcludeArch: i686 # as explained in bugzilla #1562076 ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application @@ -353,8 +354,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog -* Fri Oct 16 2020 Jos de Kloe - 2.19.0-1 +* Sat Oct 17 2020 Jos de Kloe - 2.19.0-1 - Upgrade to upstream version 2.19.0 and remove patch 1 +- Add -fpic to the fortran flags (needed for compiling on armv7hl) * Wed Aug 05 2020 Jos de Kloe - 2.18.0-5 - Adapt the spec file to use the new style cmake macros From 8b7d65f555e592196f1b3774ea09aebb6114baaa Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 18 Oct 2020 20:04:43 +0200 Subject: [PATCH 076/147] add patch to fix test run for eccodes 2.19.0 --- python-eccodes-bufrtests.patch | 20 +++++++ python-eccodes.spec | 97 ++++++++++++++++++++++++++++++++++ 2 files changed, 117 insertions(+) create mode 100644 python-eccodes-bufrtests.patch create mode 100644 python-eccodes.spec diff --git a/python-eccodes-bufrtests.patch b/python-eccodes-bufrtests.patch new file mode 100644 index 0000000..6f90a67 --- /dev/null +++ b/python-eccodes-bufrtests.patch @@ -0,0 +1,20 @@ +--- eccodes-0.9.9.unchanged/tests/test_eccodes.py 2020-08-03 15:12:30.000000000 +0200 ++++ eccodes-0.9.9/tests/test_eccodes.py 2020-10-18 19:52:10.369784597 +0200 +@@ -537,7 +537,7 @@ def test_bufr_keys_iterator(): + keyname = codes_bufr_keys_iterator_get_name(iterid) + assert "#" not in keyname + count += 1 +- assert count == 53 ++ assert count == 54 + + codes_set(bid, "unpack", 1) + codes_bufr_keys_iterator_rewind(iterid) +@@ -545,7 +545,7 @@ def test_bufr_keys_iterator(): + while codes_bufr_keys_iterator_next(iterid): + keyname = codes_bufr_keys_iterator_get_name(iterid) + count += 1 +- assert count == 156 ++ assert count == 157 + codes_bufr_keys_iterator_rewind(iterid) + codes_bufr_keys_iterator_delete(iterid) + codes_release(bid) diff --git a/python-eccodes.spec b/python-eccodes.spec new file mode 100644 index 0000000..3bb6382 --- /dev/null +++ b/python-eccodes.spec @@ -0,0 +1,97 @@ +Name: python-eccodes +Version: 0.9.9 +Release: 1%{?dist} +Summary: Python interface to the ecCodes GRIB and BUFR decoder/encoder +License: ASL 2.0 +# note: upstream has changed the name on pypi from eccodes-python to eccodes +URL: https://pypi.org/project/eccodes/ +Source0: https://files.pythonhosted.org/packages/source/e/eccodes/eccodes-%{version}.tar.gz +# see https://github.com/ecmwf/eccodes-python/pull/21 +Patch1: python-eccodes-setup.patch +# see https://github.com/ecmwf/eccodes-python/issues/36 +Patch2: python-eccodes-sphinx-config.patch +# see https://github.com/ecmwf/eccodes-python/issues/37 +# this patch is needed for eccodes2.19.0 (not for eccodes 2.18.0) +Patch3: python-eccodes-bufrtests.patch + +# note that the fast bindings are arch dependent +BuildRequires: eccodes-devel +BuildRequires: python3-devel +BuildRequires: python3-setuptools +# needed to build the fast bindings +BuildRequires: python3-cffi +# needed for checks/tests +BuildRequires: python3-pytest +BuildRequires: python3-numpy +# these next 2 seem not actually used, although they are mentioned as +# test dependencies in the setup.py file: +#BuildRequires: python3-pytest-cov +#BuildRequires: python3-pytest-flakes + +# needed to build the documentation +BuildRequires: python3-sphinx + +# dont try to build for architectures for which the main +# ecccodes library cannot yet be build + +# as explained in bugzilla #1562066 +ExcludeArch: i686 +# as explained in bugzilla #1562076 +ExcludeArch: s390x +# as explained in bugzilla #1562084 +ExcludeArch: armv7hl + + +%global _description \ +Python 3 interface to encode and decode GRIB and BUFR files via the \ +ECMWF ecCodes library. It allows reading and writing of GRIB 1 and 2 \ +files and BUFR 3 and 4 files. + +%description %_description + +%package -n python3-eccodes +Summary: %summary + +%{?python_provide:%python_provide python3-eccodes} + +%description -n python3-eccodes %_description + +%prep +%autosetup -n eccodes-%{version} -p1 + +%build +%py3_build +# buld documentation +%{__python3} setup.py build_sphinx +# remove generated sphinx files that are not part of the actual documentation +rm build/sphinx/html/.buildinfo + +%install +%py3_install + +# remove *.h files that do not belong in a python module directory +rm %{buildroot}%{python3_sitearch}/gribapi/*.h + +%check +%{__python3} -m eccodes selfcheck +%{__python3} -m pytest -v + +%files -n python3-eccodes +%doc README.rst +%doc build/sphinx/html/ +%license LICENSE +%{python3_sitearch}/eccodes-*-py*.egg-info +%{python3_sitearch}/eccodes +%{python3_sitearch}/gribapi + + +%changelog +* Sun Oct 18 2020 Jos de Kloe 0.9.9-1 +- new upstream version, and adapt to upstream project name change +- add patch for sphinx configuration problem +- add patch to fix test run for eccodes 2.19.0 +* Sat Jul 04 2020 Jos de Kloe 0.9.8-1 +- new upstream version +* Thu Mar 19 2020 Jos de Kloe 0.9.7-1 +- First version for Fedora, based on a spec file contributed by + Emanuele Di Giacomo and Daniele Branchini. From 31b4a19ff74524c79b505f2f20437e84eb2dd044 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 18 Oct 2020 20:13:18 +0200 Subject: [PATCH 077/147] remove 2 files that I added by mistake (that's what you get if upstream decides to rename the python module to have exactly the same name as the c library itself). --- python-eccodes-bufrtests.patch | 20 ------- python-eccodes.spec | 97 ---------------------------------- 2 files changed, 117 deletions(-) delete mode 100644 python-eccodes-bufrtests.patch delete mode 100644 python-eccodes.spec diff --git a/python-eccodes-bufrtests.patch b/python-eccodes-bufrtests.patch deleted file mode 100644 index 6f90a67..0000000 --- a/python-eccodes-bufrtests.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- eccodes-0.9.9.unchanged/tests/test_eccodes.py 2020-08-03 15:12:30.000000000 +0200 -+++ eccodes-0.9.9/tests/test_eccodes.py 2020-10-18 19:52:10.369784597 +0200 -@@ -537,7 +537,7 @@ def test_bufr_keys_iterator(): - keyname = codes_bufr_keys_iterator_get_name(iterid) - assert "#" not in keyname - count += 1 -- assert count == 53 -+ assert count == 54 - - codes_set(bid, "unpack", 1) - codes_bufr_keys_iterator_rewind(iterid) -@@ -545,7 +545,7 @@ def test_bufr_keys_iterator(): - while codes_bufr_keys_iterator_next(iterid): - keyname = codes_bufr_keys_iterator_get_name(iterid) - count += 1 -- assert count == 156 -+ assert count == 157 - codes_bufr_keys_iterator_rewind(iterid) - codes_bufr_keys_iterator_delete(iterid) - codes_release(bid) diff --git a/python-eccodes.spec b/python-eccodes.spec deleted file mode 100644 index 3bb6382..0000000 --- a/python-eccodes.spec +++ /dev/null @@ -1,97 +0,0 @@ -Name: python-eccodes -Version: 0.9.9 -Release: 1%{?dist} -Summary: Python interface to the ecCodes GRIB and BUFR decoder/encoder -License: ASL 2.0 -# note: upstream has changed the name on pypi from eccodes-python to eccodes -URL: https://pypi.org/project/eccodes/ -Source0: https://files.pythonhosted.org/packages/source/e/eccodes/eccodes-%{version}.tar.gz -# see https://github.com/ecmwf/eccodes-python/pull/21 -Patch1: python-eccodes-setup.patch -# see https://github.com/ecmwf/eccodes-python/issues/36 -Patch2: python-eccodes-sphinx-config.patch -# see https://github.com/ecmwf/eccodes-python/issues/37 -# this patch is needed for eccodes2.19.0 (not for eccodes 2.18.0) -Patch3: python-eccodes-bufrtests.patch - -# note that the fast bindings are arch dependent -BuildRequires: eccodes-devel -BuildRequires: python3-devel -BuildRequires: python3-setuptools -# needed to build the fast bindings -BuildRequires: python3-cffi -# needed for checks/tests -BuildRequires: python3-pytest -BuildRequires: python3-numpy -# these next 2 seem not actually used, although they are mentioned as -# test dependencies in the setup.py file: -#BuildRequires: python3-pytest-cov -#BuildRequires: python3-pytest-flakes - -# needed to build the documentation -BuildRequires: python3-sphinx - -# dont try to build for architectures for which the main -# ecccodes library cannot yet be build - -# as explained in bugzilla #1562066 -ExcludeArch: i686 -# as explained in bugzilla #1562076 -ExcludeArch: s390x -# as explained in bugzilla #1562084 -ExcludeArch: armv7hl - - -%global _description \ -Python 3 interface to encode and decode GRIB and BUFR files via the \ -ECMWF ecCodes library. It allows reading and writing of GRIB 1 and 2 \ -files and BUFR 3 and 4 files. - -%description %_description - -%package -n python3-eccodes -Summary: %summary - -%{?python_provide:%python_provide python3-eccodes} - -%description -n python3-eccodes %_description - -%prep -%autosetup -n eccodes-%{version} -p1 - -%build -%py3_build -# buld documentation -%{__python3} setup.py build_sphinx -# remove generated sphinx files that are not part of the actual documentation -rm build/sphinx/html/.buildinfo - -%install -%py3_install - -# remove *.h files that do not belong in a python module directory -rm %{buildroot}%{python3_sitearch}/gribapi/*.h - -%check -%{__python3} -m eccodes selfcheck -%{__python3} -m pytest -v - -%files -n python3-eccodes -%doc README.rst -%doc build/sphinx/html/ -%license LICENSE -%{python3_sitearch}/eccodes-*-py*.egg-info -%{python3_sitearch}/eccodes -%{python3_sitearch}/gribapi - - -%changelog -* Sun Oct 18 2020 Jos de Kloe 0.9.9-1 -- new upstream version, and adapt to upstream project name change -- add patch for sphinx configuration problem -- add patch to fix test run for eccodes 2.19.0 -* Sat Jul 04 2020 Jos de Kloe 0.9.8-1 -- new upstream version -* Thu Mar 19 2020 Jos de Kloe 0.9.7-1 -- First version for Fedora, based on a spec file contributed by - Emanuele Di Giacomo and Daniele Branchini. From 486346bf6ee0d47e14baa2b66569af9eb9e313f9 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Fri, 13 Nov 2020 17:12:29 +0100 Subject: [PATCH 078/147] Upgrade to upstream version 2.19.1 --- .gitignore | 1 + eccodes.spec | 5 ++++- sources | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 5a45cb1..441be1d 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ /eccodes-2.18.0-Source.tar.gz /eccodes_test_data_20200626.tar.gz /eccodes-2.19.0-Source.tar.gz +/eccodes-2.19.1-Source.tar.gz diff --git a/eccodes.spec b/eccodes.spec index f6abf99..4edd02c 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.19.0 +Version: 2.19.1 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -354,6 +354,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Fri Nov 13 2020 Jos de Kloe - 2.19.1-1 +- Upgrade to upstream version 2.19.1 + * Sat Oct 17 2020 Jos de Kloe - 2.19.0-1 - Upgrade to upstream version 2.19.0 and remove patch 1 - Add -fpic to the fortran flags (needed for compiling on armv7hl) diff --git a/sources b/sources index 6a0df4e..1f3e7fa 100644 --- a/sources +++ b/sources @@ -9,3 +9,4 @@ SHA512 (eccodes-2.17.0-Source.tar.gz) = 362c6ae23c23326a3a969c6ba109bdf96ba449cb SHA512 (eccodes-2.18.0-Source.tar.gz) = 8daf7f2e1aed055ca6402881f5473e4ae90ba24cc779005f57f99adc7468da459c7539e64f455e2122dd83df29992fd7a6dad2700c8331c4083226e091fbb629 SHA512 (eccodes_test_data_20200626.tar.gz) = 553eb69f3664c2f847c5ee7a84066e814ef03b3148ae2c13d845891038336daca815673650f1d06efee4f4a1ddaa4326f2ddfbe81d29382e3f25608b249b8d9e SHA512 (eccodes-2.19.0-Source.tar.gz) = d2e63b4c478444f9f06c7322e5b61f54641c997262043864308ede07de1808ec2ee2a63c2ed8afb4e4339cf0cf93949778174b6aa3ce0859878d63fc4b9dbf83 +SHA512 (eccodes-2.19.1-Source.tar.gz) = 9e11eb1759a9a340bd5f9fd83585f599f633f5896bebac963d46c50abf99fea7017c9dddbfc7b73799684871255bdf424786d3205df0ab477d22073c81b4f984 From a7454734af6188edea24ae4a92887aa6e7ce4021 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 23 Jan 2021 19:40:01 +0100 Subject: [PATCH 079/147] Upgrade to upstream version 2.20.0 --- .gitignore | 1 + eccodes-soversion.patch | 8 ++++---- eccodes.spec | 5 ++++- sources | 1 + 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 441be1d..293c67f 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ /eccodes_test_data_20200626.tar.gz /eccodes-2.19.0-Source.tar.gz /eccodes-2.19.1-Source.tar.gz +/eccodes-2.20.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index cad10e0..99fb837 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.19.0-Source.unchanged/fortran/CMakeLists.txt 2020-10-15 13:21:34.000000000 +0200 -+++ eccodes-2.19.0-Source/fortran/CMakeLists.txt 2020-10-16 09:07:21.570272038 +0200 +--- eccodes-2.20.0-Source.unchanged/fortran/CMakeLists.txt 2021-01-20 13:18:04.000000000 +0100 ++++ eccodes-2.20.0-Source/fortran/CMakeLists.txt 2021-01-23 17:35:32.042141813 +0100 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,8 +10,8 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.19.0-Source.unchanged/src/CMakeLists.txt 2020-10-15 13:21:34.000000000 +0200 -+++ eccodes-2.19.0-Source/src/CMakeLists.txt 2020-10-16 08:52:43.447698207 +0200 +--- eccodes-2.20.0-Source.unchanged/src/CMakeLists.txt 2021-01-20 13:18:04.000000000 +0100 ++++ eccodes-2.20.0-Source/src/CMakeLists.txt 2021-01-23 17:35:32.043141787 +0100 @@ -445,6 +445,7 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} diff --git a/eccodes.spec b/eccodes.spec index 4edd02c..7d7f51c 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.19.1 +Version: 2.20.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -354,6 +354,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Jan 23 2021 Jos de Kloe - 2.20.0-1 +- Upgrade to upstream version 2.20.0 + * Fri Nov 13 2020 Jos de Kloe - 2.19.1-1 - Upgrade to upstream version 2.19.1 diff --git a/sources b/sources index 1f3e7fa..316ee13 100644 --- a/sources +++ b/sources @@ -10,3 +10,4 @@ SHA512 (eccodes-2.18.0-Source.tar.gz) = 8daf7f2e1aed055ca6402881f5473e4ae90ba24c SHA512 (eccodes_test_data_20200626.tar.gz) = 553eb69f3664c2f847c5ee7a84066e814ef03b3148ae2c13d845891038336daca815673650f1d06efee4f4a1ddaa4326f2ddfbe81d29382e3f25608b249b8d9e SHA512 (eccodes-2.19.0-Source.tar.gz) = d2e63b4c478444f9f06c7322e5b61f54641c997262043864308ede07de1808ec2ee2a63c2ed8afb4e4339cf0cf93949778174b6aa3ce0859878d63fc4b9dbf83 SHA512 (eccodes-2.19.1-Source.tar.gz) = 9e11eb1759a9a340bd5f9fd83585f599f633f5896bebac963d46c50abf99fea7017c9dddbfc7b73799684871255bdf424786d3205df0ab477d22073c81b4f984 +SHA512 (eccodes-2.20.0-Source.tar.gz) = ea2953987c4713b230e6d75ad5ae1dbbeea2633d1caf60614ececfe2fabe07d7c794baf120f5df82716f37b2540f7f6a6cd82f04070a78bf65dc7d499ca50dc0 From 02475f35d3dcae981b53f961db7b63df8353b5d2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 04:14:43 +0000 Subject: [PATCH 080/147] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 7d7f51c..7371478 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.20.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -354,6 +354,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 2.20.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Sat Jan 23 2021 Jos de Kloe - 2.20.0-1 - Upgrade to upstream version 2.20.0 From cd4e74ca8714f69437d80cd36234758f83ff219f Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Sat, 30 Jan 2021 09:41:44 -0700 Subject: [PATCH 081/147] Cleanup sources --- sources | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/sources b/sources index 316ee13..e78dd41 100644 --- a/sources +++ b/sources @@ -1,13 +1,2 @@ -SHA512 (eccodes_test_data_20181010.tar.gz) = 24c24ec9e01d230cf542abe5c131f05b8e627dd9d170c666628bb5fd8f7b1a6aa11a35456b8d742c59f54c6aabac78658efd68b0c50779d466aba3d35b4a0231 -SHA512 (eccodes-2.12.0-Source.tar.gz) = 3dc876bde2a6c81a43bcc64ecb12969f28eae3cfbc8fed7da7797fc722dc8b446ac7be5178f55b7d395653e0718437b842296a7d4d11b372b8692404c76aa4ad -SHA512 (eccodes-2.12.5-Source.tar.gz) = ab1267dffdb3d0dbcdd65f23db2d77bc7bd8f3241083374c75bc62ebf70b7d29d8af9f657d6da05a47e363151c8d995adfadca7bbf95ebb24a27303d80f081a4 -SHA512 (eccodes-2.13.0-Source.tar.gz) = bbde1b7092caad20772b21cd06040938f99e763f77a6622820e3cc2fba5c0765178822be4b3c33b41a927757da85f311c0c4f057500ca58d257dde304e7eeca3 -SHA512 (eccodes-2.14.1-Source.tar.gz) = 864b530642884baa0c3c56eee646a61af7d659e711c7ed4d08a5cc2d68812ecb96b8efabf40c4c9d5dcb3a0edeb1caddffea2ec3438571d3e90dc9cca1dabebe -SHA512 (eccodes-2.15.0-Source.tar.gz) = 1d906c5889773b4b6c5e9a967c2e20afb4ecc3ce8f4d496ad7b89417eec8783da9a0c8a9c14796f0c9c24b1f156b9d65408bb9a02a5e0c988a45478350aeae65 -SHA512 (eccodes-2.16.0-Source.tar.gz) = 6e8768824152d8782c1457cfe79daed32114d1b4694d2843bd02a8aa63c42ccc435b53f7db6942239b3e56999fbaaba4ecef345d39fc5c5f7a5d20ceecf4422a -SHA512 (eccodes-2.17.0-Source.tar.gz) = 362c6ae23c23326a3a969c6ba109bdf96ba449cba899030a69efb03e53870f6c90e3f6dbf9d0d2f94febf3a661e607390e8b16d58e64066c4fa941af554ebee7 -SHA512 (eccodes-2.18.0-Source.tar.gz) = 8daf7f2e1aed055ca6402881f5473e4ae90ba24cc779005f57f99adc7468da459c7539e64f455e2122dd83df29992fd7a6dad2700c8331c4083226e091fbb629 SHA512 (eccodes_test_data_20200626.tar.gz) = 553eb69f3664c2f847c5ee7a84066e814ef03b3148ae2c13d845891038336daca815673650f1d06efee4f4a1ddaa4326f2ddfbe81d29382e3f25608b249b8d9e -SHA512 (eccodes-2.19.0-Source.tar.gz) = d2e63b4c478444f9f06c7322e5b61f54641c997262043864308ede07de1808ec2ee2a63c2ed8afb4e4339cf0cf93949778174b6aa3ce0859878d63fc4b9dbf83 -SHA512 (eccodes-2.19.1-Source.tar.gz) = 9e11eb1759a9a340bd5f9fd83585f599f633f5896bebac963d46c50abf99fea7017c9dddbfc7b73799684871255bdf424786d3205df0ab477d22073c81b4f984 SHA512 (eccodes-2.20.0-Source.tar.gz) = ea2953987c4713b230e6d75ad5ae1dbbeea2633d1caf60614ececfe2fabe07d7c794baf120f5df82716f37b2540f7f6a6cd82f04070a78bf65dc7d499ca50dc0 From aa231a33bea0a8375a4180e05ddcb1e95512d8e2 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 28 Mar 2021 13:06:32 +0200 Subject: [PATCH 082/147] new upstream version --- .gitignore | 1 + eccodes-soversion.patch | 8 ++++---- eccodes.spec | 11 ++++++++--- sources | 1 + 4 files changed, 14 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 293c67f..6c2ecc4 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ /eccodes-2.19.0-Source.tar.gz /eccodes-2.19.1-Source.tar.gz /eccodes-2.20.0-Source.tar.gz +/eccodes-2.21.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 99fb837..b1c351a 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.20.0-Source.unchanged/fortran/CMakeLists.txt 2021-01-20 13:18:04.000000000 +0100 -+++ eccodes-2.20.0-Source/fortran/CMakeLists.txt 2021-01-23 17:35:32.042141813 +0100 +--- eccodes-2.21.0-Source.unchanged/fortran/CMakeLists.txt 2021-03-24 12:58:39.000000000 +0100 ++++ eccodes-2.21.0-Source/fortran/CMakeLists.txt 2021-03-28 11:10:48.975174329 +0200 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,8 +10,8 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.20.0-Source.unchanged/src/CMakeLists.txt 2021-01-20 13:18:04.000000000 +0100 -+++ eccodes-2.20.0-Source/src/CMakeLists.txt 2021-01-23 17:35:32.043141787 +0100 +--- eccodes-2.21.0-Source.unchanged/src/CMakeLists.txt 2021-03-24 12:58:39.000000000 +0100 ++++ eccodes-2.21.0-Source/src/CMakeLists.txt 2021-03-28 11:10:48.977174277 +0200 @@ -445,6 +445,7 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} diff --git a/eccodes.spec b/eccodes.spec index 7371478..20d35e9 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.20.0 -Release: 2%{?dist} +Version: 2.21.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -245,10 +245,12 @@ chmod 644 AUTHORS LICENSE -DCMAKE_SKIP_INSTALL_RPATH=TRUE \ -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ - -DCMAKE_Fortran_FLAGS="-fallow-argument-mismatch" \ -DCMAKE_Fortran_FLAGS="-fPIC" \ -DENABLE_PYTHON=OFF +# not needed anymore (solved in the cmake file now) +# -DCMAKE_Fortran_FLAGS="-fallow-argument-mismatch" + # note the final '..' is no longer needed to the cmake3 call. # this is now hidden in the %%cmake3 macro @@ -354,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Mar 28 2021 Jos de Kloe - 2.21.0-1 +- Upgrade to upstream version 2.21.0 + * Tue Jan 26 2021 Fedora Release Engineering - 2.20.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/sources b/sources index e78dd41..c14dedb 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (eccodes_test_data_20200626.tar.gz) = 553eb69f3664c2f847c5ee7a84066e814ef03b3148ae2c13d845891038336daca815673650f1d06efee4f4a1ddaa4326f2ddfbe81d29382e3f25608b249b8d9e SHA512 (eccodes-2.20.0-Source.tar.gz) = ea2953987c4713b230e6d75ad5ae1dbbeea2633d1caf60614ececfe2fabe07d7c794baf120f5df82716f37b2540f7f6a6cd82f04070a78bf65dc7d499ca50dc0 +SHA512 (eccodes-2.21.0-Source.tar.gz) = f2ba8361b99800646a92f5f5beb7ec2facf2ee3b8a3f7985d9681a23b2faae778004c8c688ebe4b3a8492e99c76422c66ecc8943d12d3342d5bc1d38362ccf06 From c3595f3ffdf4228969291c68d3cb6b988ce24441 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 28 Mar 2021 13:08:19 +0200 Subject: [PATCH 083/147] disable excludearch statements to check what the current status is. --- eccodes.spec | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 20d35e9..2ac74e1 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -8,7 +8,7 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20200626 -# latest fedora-33 grib_api version is 1.27.0-8 +# latest fedora-33 grib_api version is 1.27.0-9 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -91,11 +91,11 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -ExcludeArch: i686 +#ExcludeArch: i686 # as explained in bugzilla #1562076 -ExcludeArch: s390x +#ExcludeArch: s390x # as explained in bugzilla #1562084 -ExcludeArch: armv7hl +#ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application From 7d6f5332bceb2645e0ee96076efb7119f4e38a14 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 28 Mar 2021 13:23:32 +0200 Subject: [PATCH 084/147] the 3 problematic arches are still failing. Activcate excludearch switches again. --- eccodes.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 2ac74e1..e592ed4 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -91,11 +91,11 @@ Obsoletes: grib_api < %{final_grib_api_version} %endif # as explained in bugzilla #1562066 -#ExcludeArch: i686 +ExcludeArch: i686 # as explained in bugzilla #1562076 -#ExcludeArch: s390x +ExcludeArch: s390x # as explained in bugzilla #1562084 -#ExcludeArch: armv7hl +ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application From f5111bde08e672a9ccda215d7e1fa4450aa5147b Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Mon, 24 May 2021 21:18:12 +0200 Subject: [PATCH 085/147] Upgrade to upstream version 2.22.0 --- .gitignore | 1 + eccodes-soversion.patch | 8 ++++---- eccodes.spec | 7 +++++-- sources | 1 + 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 6c2ecc4..9fd5415 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ /eccodes-2.19.1-Source.tar.gz /eccodes-2.20.0-Source.tar.gz /eccodes-2.21.0-Source.tar.gz +/eccodes-2.22.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index b1c351a..fe30901 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.21.0-Source.unchanged/fortran/CMakeLists.txt 2021-03-24 12:58:39.000000000 +0100 -+++ eccodes-2.21.0-Source/fortran/CMakeLists.txt 2021-03-28 11:10:48.975174329 +0200 +--- eccodes-2.22.0-Source.unchanged/fortran/CMakeLists.txt 2021-05-19 10:53:28.000000000 +0200 ++++ eccodes-2.22.0-Source/fortran/CMakeLists.txt 2021-05-24 20:28:37.002735089 +0200 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,8 +10,8 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.21.0-Source.unchanged/src/CMakeLists.txt 2021-03-24 12:58:39.000000000 +0100 -+++ eccodes-2.21.0-Source/src/CMakeLists.txt 2021-03-28 11:10:48.977174277 +0200 +--- eccodes-2.22.0-Source.unchanged/src/CMakeLists.txt 2021-05-19 10:53:29.000000000 +0200 ++++ eccodes-2.22.0-Source/src/CMakeLists.txt 2021-05-24 20:28:37.025734539 +0200 @@ -445,6 +445,7 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} diff --git a/eccodes.spec b/eccodes.spec index e592ed4..43e02f7 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.21.0 +Version: 2.22.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -8,7 +8,7 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20200626 -# latest fedora-33 grib_api version is 1.27.0-9 +# latest fedora-34 grib_api version is 1.27.0-9 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -356,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Mon May 24 2021 Jos de Kloe - 2.22.0-1 +- Upgrade to upstream version 2.22.0 + * Sun Mar 28 2021 Jos de Kloe - 2.21.0-1 - Upgrade to upstream version 2.21.0 diff --git a/sources b/sources index c14dedb..122126d 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ SHA512 (eccodes_test_data_20200626.tar.gz) = 553eb69f3664c2f847c5ee7a84066e814ef03b3148ae2c13d845891038336daca815673650f1d06efee4f4a1ddaa4326f2ddfbe81d29382e3f25608b249b8d9e SHA512 (eccodes-2.20.0-Source.tar.gz) = ea2953987c4713b230e6d75ad5ae1dbbeea2633d1caf60614ececfe2fabe07d7c794baf120f5df82716f37b2540f7f6a6cd82f04070a78bf65dc7d499ca50dc0 SHA512 (eccodes-2.21.0-Source.tar.gz) = f2ba8361b99800646a92f5f5beb7ec2facf2ee3b8a3f7985d9681a23b2faae778004c8c688ebe4b3a8492e99c76422c66ecc8943d12d3342d5bc1d38362ccf06 +SHA512 (eccodes-2.22.0-Source.tar.gz) = 488ff560cd9969c2d5c0dd0ce3e6b4433954893758ae1a2bd9177536d8b08a89f37aac4f6a175c271f528d5c838fd4ec7b090dfb1f691df5cfceb67508bdc470 From 292438487e7a0f5c7932c189547db60eb42d4d68 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 19 Jun 2021 16:46:09 +0200 Subject: [PATCH 086/147] Upgrade to upstream version 2.22.1 --- .gitignore | 1 + eccodes.spec | 7 +++++-- sources | 1 + 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 9fd5415..149e42e 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ /eccodes-2.20.0-Source.tar.gz /eccodes-2.21.0-Source.tar.gz /eccodes-2.22.0-Source.tar.gz +/eccodes-2.22.1-Source.tar.gz diff --git a/eccodes.spec b/eccodes.spec index 43e02f7..bc03686 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.22.0 +Version: 2.22.1 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -12,7 +12,7 @@ Summary: WMO data format decoding and encoding # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) -# is was written on https://confluence.ecmwf.int/display/GRIB/Home +# as was written on https://confluence.ecmwf.int/display/GRIB/Home # (Note that this page is no longer available, 17-Oct-2020) %global final_grib_api_version 1.28.1-1%{?dist} @@ -356,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Jun 19 2021 Jos de Kloe - 2.22.1-1 +- Upgrade to upstream version 2.22.1 + * Mon May 24 2021 Jos de Kloe - 2.22.0-1 - Upgrade to upstream version 2.22.0 diff --git a/sources b/sources index 122126d..8b4b979 100644 --- a/sources +++ b/sources @@ -2,3 +2,4 @@ SHA512 (eccodes_test_data_20200626.tar.gz) = 553eb69f3664c2f847c5ee7a84066e814ef SHA512 (eccodes-2.20.0-Source.tar.gz) = ea2953987c4713b230e6d75ad5ae1dbbeea2633d1caf60614ececfe2fabe07d7c794baf120f5df82716f37b2540f7f6a6cd82f04070a78bf65dc7d499ca50dc0 SHA512 (eccodes-2.21.0-Source.tar.gz) = f2ba8361b99800646a92f5f5beb7ec2facf2ee3b8a3f7985d9681a23b2faae778004c8c688ebe4b3a8492e99c76422c66ecc8943d12d3342d5bc1d38362ccf06 SHA512 (eccodes-2.22.0-Source.tar.gz) = 488ff560cd9969c2d5c0dd0ce3e6b4433954893758ae1a2bd9177536d8b08a89f37aac4f6a175c271f528d5c838fd4ec7b090dfb1f691df5cfceb67508bdc470 +SHA512 (eccodes-2.22.1-Source.tar.gz) = 86818604eca75a34c8ce0cf0540d255c0db2d92bf03970a65c972fb2a16b6c472f6dcebfd04bdac4b76b8db2fcf2ed4dfa8a70875eaf1353a775fc185e5de9a0 From 3092298b9047d3ef2977b6df3650b8c98d6e0169 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 21:36:20 +0000 Subject: [PATCH 087/147] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index bc03686..ce0b112 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.22.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -356,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Jul 21 2021 Fedora Release Engineering - 2.22.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Sat Jun 19 2021 Jos de Kloe - 2.22.1-1 - Upgrade to upstream version 2.22.1 From b817b9e0c57ce82066cfd62dde2c5bd24dc50b1e Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Mon, 9 Aug 2021 20:23:11 -0600 Subject: [PATCH 088/147] Rebuild for netcdf 4.8.0 --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index ce0b112..273c4f2 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.22.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -356,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Tue Aug 10 2021 Orion Poplawski - 2.22.1-3 +- Rebuild for netcdf 4.8.0 + * Wed Jul 21 2021 Fedora Release Engineering - 2.22.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 0c8a1e15e5b9f330d6f51c97f9e366b31fc9e0d6 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Tue, 10 Aug 2021 18:29:29 -0600 Subject: [PATCH 089/147] Rebuild for netcdf 4.8.0 --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 273c4f2..3d1ccb9 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.22.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -356,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Aug 11 2021 Orion Poplawski - 2.22.1-4 +- Rebuild for netcdf 4.8.0 + * Tue Aug 10 2021 Orion Poplawski - 2.22.1-3 - Rebuild for netcdf 4.8.0 From 65f97a669b6305ce2471288a466d708d2d1acde4 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 2 Sep 2021 11:37:22 +0200 Subject: [PATCH 090/147] update to version 2.23.0 --- .gitignore | 1 + eccodes-soversion.patch | 14 +++++++------- eccodes-test-grib_to_netcdf.patch | 15 +++++++++++++++ eccodes.spec | 29 +++++++++++++---------------- sources | 1 + 5 files changed, 37 insertions(+), 23 deletions(-) create mode 100644 eccodes-test-grib_to_netcdf.patch diff --git a/.gitignore b/.gitignore index 149e42e..2e004eb 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ /eccodes-2.21.0-Source.tar.gz /eccodes-2.22.0-Source.tar.gz /eccodes-2.22.1-Source.tar.gz +/eccodes-2.23.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index fe30901..78e9b89 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,18 +1,18 @@ ---- eccodes-2.22.0-Source.unchanged/fortran/CMakeLists.txt 2021-05-19 10:53:28.000000000 +0200 -+++ eccodes-2.22.0-Source/fortran/CMakeLists.txt 2021-05-24 20:28:37.002735089 +0200 +--- eccodes-2.23.0-Source.unchanged/fortran/CMakeLists.txt 2021-08-25 11:35:41.000000000 +0200 ++++ eccodes-2.23.0-Source/fortran/CMakeLists.txt 2021-09-01 08:40:58.089840900 +0200 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ $ -- PRIVATE_LIBS eccodes ) -+ PRIVATE_LIBS eccodes +- PRIVATE_LIBS eccodes ${ECCODES_PTHREADS_LIBRARIES} ) ++ PRIVATE_LIBS eccodes ${ECCODES_PTHREADS_LIBRARIES} + SOVERSION ${ECCODES_SOVERSION_F90}) if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.22.0-Source.unchanged/src/CMakeLists.txt 2021-05-19 10:53:29.000000000 +0200 -+++ eccodes-2.22.0-Source/src/CMakeLists.txt 2021-05-24 20:28:37.025734539 +0200 -@@ -445,6 +445,7 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.23.0-Source.unchanged/src/CMakeLists.txt 2021-08-25 11:35:41.000000000 +0200 ++++ eccodes-2.23.0-Source/src/CMakeLists.txt 2021-09-01 08:31:13.559364510 +0200 +@@ -444,6 +444,7 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${grib_api_extra_srcs} diff --git a/eccodes-test-grib_to_netcdf.patch b/eccodes-test-grib_to_netcdf.patch new file mode 100644 index 0000000..eff2a26 --- /dev/null +++ b/eccodes-test-grib_to_netcdf.patch @@ -0,0 +1,15 @@ +--- eccodes-2.23.0-Source.unchanged/tests/grib_to_netcdf.sh 2021-08-25 11:35:41.000000000 +0200 ++++ eccodes-2.23.0-Source/tests/grib_to_netcdf.sh 2021-09-02 10:31:33.417295119 +0200 +@@ -64,8 +64,10 @@ if [ $ECCODES_ON_WINDOWS -eq 0 ]; then + set -e + if [ $stat -eq 0 ]; then + have_netcdf4=1 +- res=`${tools_dir}/grib_get -TA -p identifier,versionNumberOfSuperblock $tempNetcdf` +- [ "$res" = "HDF5 0" ] ++# res=`${tools_dir}/grib_get -TA -p identifier,versionNumberOfSuperblock $tempNetcdf` ++# [ "$res" = "HDF5 0" ] ++ res=`${tools_dir}/grib_get -TA -p identifier $tempNetcdf` ++ [ "$res" = "HDF5" ] + fi + fi + diff --git a/eccodes.spec b/eccodes.spec index 3d1ccb9..fc2e458 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.22.1 -Release: 4%{?dist} +Version: 2.23.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -8,7 +8,7 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20200626 -# latest fedora-34 grib_api version is 1.27.0-9 +# latest fedora-35 grib_api version is 1.27.0-12 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -43,6 +43,11 @@ Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.ta # https://software.ecmwf.int/issues/browse/SUP-1809 Patch1: eccodes-soversion.patch +# Disable versionNumberOfSuperblock checking, since the test expects 0 but +# on Fedora rawhide the code returns a value of 2. +# Issue reported upstream as: https://jira.ecmwf.int/browse/SUP-3497 +Patch2: eccodes-test-grib_to_netcdf.patch + # note that the requests to make the other issues public are filed here: # https://software.ecmwf.int/issues/browse/SUP-2073 # (and again, unfortunately this issue is not public) @@ -222,14 +227,6 @@ chmod 644 AUTHORS LICENSE # the library so files get installed in /usr/lib in stead # of /usr/lib64 on x86_64. -# Build with -fallow-argument-mismatch for gcc 10 compatibility -# otherwise the fortran interface fails to compile -# (thanks for the hint Orion) -# Reported upstream at https://jira.ecmwf.int/browse/SUP-3081 -# note that setting FCFLAGS is not sufficient, i.e. this doesn't work: -# export FCFLAGS="%%{build_fflags} -fallow-argument-mismatch" -# defining the -DCMAKE_Fortran_FLAGS for camke is required to let it compile. - # added -DCMAKE_Fortran_FLAGS="-fPIC" # because the koji build crashes with the error that it needs this setting # when I try to build for armv7hl (other archs do not complain ......) @@ -246,10 +243,7 @@ chmod 644 AUTHORS LICENSE -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ -DCMAKE_Fortran_FLAGS="-fPIC" \ - -DENABLE_PYTHON=OFF - -# not needed anymore (solved in the cmake file now) -# -DCMAKE_Fortran_FLAGS="-fallow-argument-mismatch" + -DENABLE_PYTHON2=OFF # note the final '..' is no longer needed to the cmake3 call. # this is now hidden in the %%cmake3 macro @@ -356,6 +350,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Sep 02 2021 Jos de Kloe - 2.23.0-1 +- Upgrade to upstream version 2.23.0 + * Wed Aug 11 2021 Orion Poplawski - 2.22.1-4 - Rebuild for netcdf 4.8.0 @@ -488,7 +485,7 @@ ctest3 -V %{?_smp_mflags} - Implement so version because upstream refuses to do so - Add fix for test failure 184 and ldconfig_scriptlets and move unversioned so file to devel package - as suggested by Robert-AndrĂ© Mauchin + as suggested by Robert-André Mauchin - Add a documentation and a data sub-package - Change the license and add a note explaining why this was done diff --git a/sources b/sources index 8b4b979..0317ff5 100644 --- a/sources +++ b/sources @@ -3,3 +3,4 @@ SHA512 (eccodes-2.20.0-Source.tar.gz) = ea2953987c4713b230e6d75ad5ae1dbbeea2633d SHA512 (eccodes-2.21.0-Source.tar.gz) = f2ba8361b99800646a92f5f5beb7ec2facf2ee3b8a3f7985d9681a23b2faae778004c8c688ebe4b3a8492e99c76422c66ecc8943d12d3342d5bc1d38362ccf06 SHA512 (eccodes-2.22.0-Source.tar.gz) = 488ff560cd9969c2d5c0dd0ce3e6b4433954893758ae1a2bd9177536d8b08a89f37aac4f6a175c271f528d5c838fd4ec7b090dfb1f691df5cfceb67508bdc470 SHA512 (eccodes-2.22.1-Source.tar.gz) = 86818604eca75a34c8ce0cf0540d255c0db2d92bf03970a65c972fb2a16b6c472f6dcebfd04bdac4b76b8db2fcf2ed4dfa8a70875eaf1353a775fc185e5de9a0 +SHA512 (eccodes-2.23.0-Source.tar.gz) = df8e9f25396d91ae0adb1b1502cdb6c1473d80caf79ce3fe9318ecc63194fd1c7dc7424fccf44aabf8c06ea343d59093bb21e75f6e5466f21ce44cb514e07350 From a0b1b4222ec3bd595f8d64d08bbaa1db1f856d31 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 2 Sep 2021 11:51:59 +0200 Subject: [PATCH 091/147] remove non-utf8 character from change log --- eccodes.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index fc2e458..d0395fa 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -485,7 +485,7 @@ ctest3 -V %{?_smp_mflags} - Implement so version because upstream refuses to do so - Add fix for test failure 184 and ldconfig_scriptlets and move unversioned so file to devel package - as suggested by Robert-André Mauchin + as suggested by Robert-Andre Mauchin - Add a documentation and a data sub-package - Change the license and add a note explaining why this was done From aa2a12089c209a83c60a9edc1331af1f899c5c6d Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 1 Dec 2021 21:04:23 +0900 Subject: [PATCH 092/147] Patch grib_api_internal.h for big endian test suite issue (upstream bug SUP-2410) --- ...l.h-reverse-definition-of-FAST_BIG_E.patch | 39 +++++++++++++++++++ eccodes.spec | 11 ++++-- 2 files changed, 47 insertions(+), 3 deletions(-) create mode 100644 eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch diff --git a/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch b/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch new file mode 100644 index 0000000..803c2cf --- /dev/null +++ b/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch @@ -0,0 +1,39 @@ +From 8cc6b5ee3ac27355ae95c4ce0d60d4e70ad9bbd6 Mon Sep 17 00:00:00 2001 +From: Mamoru TASAKA +Date: Wed, 1 Dec 2021 20:23:31 +0900 +Subject: [PATCH] grib_api_internal.h: reverse definition of FAST_BIG_ENDIAN + +In grib_api_internal.h, currently on big endian system, FAST_BIG_ENDIAN is defined +if GRIB_MEM_ALIGN is *not* defined. +On the other hand, for example in src/grib_bits.c, when FAST_BIG_ENDIAN is defined +"grib_bits_fast_big_endian.c" is included, otherwise "grib_bits_any_endian.c" is +included. + +As "grib_bits_any_endian.c" is used also in x86_64 system, it is reasonable to think that +the original intention is that "grib_bits_fast_big_endian.c" needs some alignment +condition, and uses such condition for optimization, otherwise "grib_bits_any_endian.c" +should be used, so it is natural to think that the condition on grib_api_internal.h +is opposite. +--- + src/grib_api_internal.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/grib_api_internal.h b/src/grib_api_internal.h +index 3b8fae3c..0c8fcf17 100644 +--- a/src/grib_api_internal.h ++++ b/src/grib_api_internal.h +@@ -40,9 +40,9 @@ extern "C" { + + #if IS_BIG_ENDIAN + #if GRIB_MEM_ALIGN +-#define FAST_BIG_ENDIAN 0 +-#else + #define FAST_BIG_ENDIAN 1 ++#else ++#define FAST_BIG_ENDIAN 0 + #endif + #endif + +-- +2.33.1 + diff --git a/eccodes.spec b/eccodes.spec index d0395fa..3ed79f5 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.23.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -52,6 +52,10 @@ Patch2: eccodes-test-grib_to_netcdf.patch # https://software.ecmwf.int/issues/browse/SUP-2073 # (and again, unfortunately this issue is not public) +# grib_api_internal.h: reverse definition of FAST_BIG_ENDIAN +# https://jira.ecmwf.int/browse/SUP-2410 +Patch3: eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch + BuildRequires: cmake3 BuildRequires: gcc BuildRequires: gcc-gfortran @@ -97,8 +101,6 @@ Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 ExcludeArch: i686 -# as explained in bugzilla #1562076 -ExcludeArch: s390x # as explained in bugzilla #1562084 ExcludeArch: armv7hl @@ -350,6 +352,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Dec 1 2021 Mamoru TASAKA - 2.23.0-2 +- Patch grib_api_internal.h for big endian test suite issue (upstream bug SUP-2410) + * Thu Sep 02 2021 Jos de Kloe - 2.23.0-1 - Upgrade to upstream version 2.23.0 From 9abde243ee7d5849e3b471e7ab6537e43b5196bc Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 9 Dec 2021 10:42:26 +0100 Subject: [PATCH 093/147] Upgrade to upstream version 2.24.0 --- .gitignore | 1 + ...l.h-reverse-definition-of-FAST_BIG_E.patch | 29 ++----------------- eccodes-soversion.patch | 8 ++--- eccodes.spec | 17 +++++------ sources | 1 + 5 files changed, 16 insertions(+), 40 deletions(-) diff --git a/.gitignore b/.gitignore index 2e004eb..dcaab7e 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ /eccodes-2.22.0-Source.tar.gz /eccodes-2.22.1-Source.tar.gz /eccodes-2.23.0-Source.tar.gz +/eccodes-2.24.0-Source.tar.gz diff --git a/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch b/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch index 803c2cf..5df7da7 100644 --- a/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch +++ b/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch @@ -1,27 +1,5 @@ -From 8cc6b5ee3ac27355ae95c4ce0d60d4e70ad9bbd6 Mon Sep 17 00:00:00 2001 -From: Mamoru TASAKA -Date: Wed, 1 Dec 2021 20:23:31 +0900 -Subject: [PATCH] grib_api_internal.h: reverse definition of FAST_BIG_ENDIAN - -In grib_api_internal.h, currently on big endian system, FAST_BIG_ENDIAN is defined -if GRIB_MEM_ALIGN is *not* defined. -On the other hand, for example in src/grib_bits.c, when FAST_BIG_ENDIAN is defined -"grib_bits_fast_big_endian.c" is included, otherwise "grib_bits_any_endian.c" is -included. - -As "grib_bits_any_endian.c" is used also in x86_64 system, it is reasonable to think that -the original intention is that "grib_bits_fast_big_endian.c" needs some alignment -condition, and uses such condition for optimization, otherwise "grib_bits_any_endian.c" -should be used, so it is natural to think that the condition on grib_api_internal.h -is opposite. ---- - src/grib_api_internal.h | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/grib_api_internal.h b/src/grib_api_internal.h -index 3b8fae3c..0c8fcf17 100644 ---- a/src/grib_api_internal.h -+++ b/src/grib_api_internal.h +--- eccodes-2.24.0-Source.unchanged/src/grib_api_internal.h 2021-12-07 12:03:44.000000000 +0100 ++++ eccodes-2.24.0-Source/src/grib_api_internal.h 2021-12-09 10:02:54.686070864 +0100 @@ -40,9 +40,9 @@ extern "C" { #if IS_BIG_ENDIAN @@ -34,6 +12,3 @@ index 3b8fae3c..0c8fcf17 100644 #endif #endif --- -2.33.1 - diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 78e9b89..61b7292 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.23.0-Source.unchanged/fortran/CMakeLists.txt 2021-08-25 11:35:41.000000000 +0200 -+++ eccodes-2.23.0-Source/fortran/CMakeLists.txt 2021-09-01 08:40:58.089840900 +0200 +--- eccodes-2.24.0-Source.unchanged/fortran/CMakeLists.txt 2021-12-07 12:03:44.000000000 +0100 ++++ eccodes-2.24.0-Source/fortran/CMakeLists.txt 2021-12-09 09:57:37.787105551 +0100 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,8 +10,8 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.23.0-Source.unchanged/src/CMakeLists.txt 2021-08-25 11:35:41.000000000 +0200 -+++ eccodes-2.23.0-Source/src/CMakeLists.txt 2021-09-01 08:31:13.559364510 +0200 +--- eccodes-2.24.0-Source.unchanged/src/CMakeLists.txt 2021-12-07 12:03:44.000000000 +0100 ++++ eccodes-2.24.0-Source/src/CMakeLists.txt 2021-12-09 09:57:37.811104942 +0100 @@ -444,6 +444,7 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} diff --git a/eccodes.spec b/eccodes.spec index 3ed79f5..0512a6d 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.23.0 -Release: 2%{?dist} +Version: 2.24.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -8,7 +8,7 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20200626 -# latest fedora-35 grib_api version is 1.27.0-12 +# latest fedora-36 grib_api version is 1.27.0-12 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -43,18 +43,13 @@ Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.ta # https://software.ecmwf.int/issues/browse/SUP-1809 Patch1: eccodes-soversion.patch -# Disable versionNumberOfSuperblock checking, since the test expects 0 but -# on Fedora rawhide the code returns a value of 2. -# Issue reported upstream as: https://jira.ecmwf.int/browse/SUP-3497 -Patch2: eccodes-test-grib_to_netcdf.patch - # note that the requests to make the other issues public are filed here: # https://software.ecmwf.int/issues/browse/SUP-2073 # (and again, unfortunately this issue is not public) # grib_api_internal.h: reverse definition of FAST_BIG_ENDIAN # https://jira.ecmwf.int/browse/SUP-2410 -Patch3: eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch +Patch2: eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch BuildRequires: cmake3 BuildRequires: gcc @@ -352,6 +347,10 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Dec 09 2021 Jos de Kloe - 2.24.0-1 +- Upgrade to upstream version 2.24.0 +- Remove no longer needed patch2 (grib_to_netcdf test fix) + * Wed Dec 1 2021 Mamoru TASAKA - 2.23.0-2 - Patch grib_api_internal.h for big endian test suite issue (upstream bug SUP-2410) diff --git a/sources b/sources index 0317ff5..aaa3ee8 100644 --- a/sources +++ b/sources @@ -4,3 +4,4 @@ SHA512 (eccodes-2.21.0-Source.tar.gz) = f2ba8361b99800646a92f5f5beb7ec2facf2ee3b SHA512 (eccodes-2.22.0-Source.tar.gz) = 488ff560cd9969c2d5c0dd0ce3e6b4433954893758ae1a2bd9177536d8b08a89f37aac4f6a175c271f528d5c838fd4ec7b090dfb1f691df5cfceb67508bdc470 SHA512 (eccodes-2.22.1-Source.tar.gz) = 86818604eca75a34c8ce0cf0540d255c0db2d92bf03970a65c972fb2a16b6c472f6dcebfd04bdac4b76b8db2fcf2ed4dfa8a70875eaf1353a775fc185e5de9a0 SHA512 (eccodes-2.23.0-Source.tar.gz) = df8e9f25396d91ae0adb1b1502cdb6c1473d80caf79ce3fe9318ecc63194fd1c7dc7424fccf44aabf8c06ea343d59093bb21e75f6e5466f21ce44cb514e07350 +SHA512 (eccodes-2.24.0-Source.tar.gz) = cfd1989ff6d733c3053dae75d1951d6ba475dd6a388b6d747c3a87ade3de9a77da8a6954b6a6ea2eb8cfbd3e08aad7a8b12db1561893f8acc2a9041ce7718e24 From 4a460677adb78f46c46aee964e2505fabce4b427 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 01:35:29 +0000 Subject: [PATCH 094/147] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 0512a6d..0f6b74b 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.24.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -347,6 +347,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 2.24.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Thu Dec 09 2021 Jos de Kloe - 2.24.0-1 - Upgrade to upstream version 2.24.0 - Remove no longer needed patch2 (grib_to_netcdf test fix) From c6b0799102e15d7f86b386a5cf6d6ea674594e91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Josef=20=C5=98=C3=ADdk=C3=BD?= Date: Sun, 13 Feb 2022 13:45:43 +0100 Subject: [PATCH 095/147] Rebuilt for libjasper.so.6 --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 0f6b74b..f7ed4e2 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.24.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -347,6 +347,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Feb 13 2022 Josef Ridky - 2.24.0-3 +- Rebuilt for libjasper.so.6 + * Thu Jan 20 2022 Fedora Release Engineering - 2.24.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From a086e5e7b27c579a9fd0afbc4b7be1ab80956766 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Tue, 15 Feb 2022 00:10:55 +0900 Subject: [PATCH 096/147] jasper3: use wrapper entry point for jpeg2000 decoder --- ...24.0-jasper3-use-wrapper-entry-point.patch | 75 +++++++++++++++++++ eccodes.spec | 12 ++- 2 files changed, 86 insertions(+), 1 deletion(-) create mode 100644 eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch diff --git a/eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch b/eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch new file mode 100644 index 0000000..67548af --- /dev/null +++ b/eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch @@ -0,0 +1,75 @@ +diff -urp -x '*~' -x redhat-linux-build -x '*.list' -x '.package_note*' eccodes-2.24.0-Source/src/grib_jasper_encoding.c eccodes-2.24.0-Source.new/src/grib_jasper_encoding.c +--- eccodes-2.24.0-Source/src/grib_jasper_encoding.c 2021-12-07 20:03:44.000000000 +0900 ++++ eccodes-2.24.0-Source.new/src/grib_jasper_encoding.c 2022-02-14 23:35:10.954255326 +0900 +@@ -30,7 +30,7 @@ int grib_jasper_decode(grib_context* c, + jas_matrix_t* matrix = NULL; + jas_image_cmpt_t* p; + int i, j, k; +- ++ jas_conf_clear(); jas_conf_set_max_mem_usage(jas_get_total_mem_size()); jas_init_library(); jas_init_thread(); + jpeg = jas_stream_memopen((char*)buf, *buflen); + if (!jpeg) { + code = GRIB_DECODING_ERROR; +@@ -39,7 +39,7 @@ int grib_jasper_decode(grib_context* c, + + grib_context_log(c, GRIB_LOG_DEBUG, "grib_jasper_decode: Jasper version %s", jas_getversion()); + +- image = jpc_decode(jpeg, NULL); ++ image = jas_image_decode (jpeg, -1, 0); + if (!image) { + code = GRIB_DECODING_ERROR; + goto cleanup; +@@ -77,7 +77,7 @@ cleanup: + jas_image_destroy(image); + if (jpeg) + jas_stream_close(jpeg); +- ++ jas_cleanup_thread(); jas_cleanup_library(); + return code; + } + +@@ -94,6 +94,7 @@ int grib_jasper_encode(grib_context* c, + long no_values = helper->no_values; + long bits8; + int i; ++ int fmt; + + size_t buflen = 0; + unsigned char* encoded = NULL; +@@ -156,7 +157,7 @@ int grib_jasper_encode(grib_context* c, + } + } + +- /*jas_init();*/ ++ jas_conf_clear(); jas_conf_set_max_mem_usage(jas_get_total_mem_size()); jas_init_library(); jas_init_thread(); + + opts[0] = 0; + +@@ -175,7 +176,8 @@ int grib_jasper_encode(grib_context* c, + cmpt.stream_ = istream; + + jpcstream = jas_stream_memopen((char*)helper->jpeg_buffer, helper->buffer_size); +- jaserr = jpc_encode(&image, jpcstream, opts); ++ fmt = jas_image_strtofmt("jpc"); ++ jaserr = jas_image_encode(&image, jpcstream, fmt, opts); + + if (jaserr != 0) { + /* increase the number of guard bits */ +@@ -189,7 +191,7 @@ int grib_jasper_encode(grib_context* c, + istream = jas_stream_memopen((char*)encoded, buflen); + cmpt.stream_ = istream; + jpcstream = jas_stream_memopen((char*)helper->jpeg_buffer, helper->buffer_size); +- jaserr = jpc_encode(&image, jpcstream, opts); ++ jaserr = jas_image_encode(&image, jpcstream, fmt, opts); + } + + if (jaserr != 0) { +@@ -210,7 +212,7 @@ cleanup: + jas_stream_close(istream); + if (jpcstream) + jas_stream_close(jpcstream); +- ++ jas_cleanup_thread(); jas_cleanup_library(); + return code; + } + diff --git a/eccodes.spec b/eccodes.spec index f7ed4e2..aeabec5 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.24.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -51,6 +51,13 @@ Patch1: eccodes-soversion.patch # https://jira.ecmwf.int/browse/SUP-2410 Patch2: eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch +# jasper3 now hides internal encoder / decoder. Use wrapper entry point +# c.f. https://github.com/jasper-software/jasper/commit/5fe57ac5829ec31396e7eaab59a688da014660af +# Also, now with jasper3, calling jas_stream_memopen (for example) always needs jasper +# library initialization +Patch3: eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch + + BuildRequires: cmake3 BuildRequires: gcc BuildRequires: gcc-gfortran @@ -347,6 +354,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Mon Feb 14 2022 Mamoru TASAKA - 2.24.0-4 +- jasper3: use wrapper entry point for jpeg2000 decoder + * Sun Feb 13 2022 Josef Ridky - 2.24.0-3 - Rebuilt for libjasper.so.6 From 285b274271838ab315308bd6e31c78769ca1e4fe Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 6 Mar 2022 17:17:56 +0100 Subject: [PATCH 097/147] Upgrade to upstream version 2.25.0; Add new BR libaec-devel --- ...nal.h-reverse-definition-of-FAST_BIG_E.patch | 14 -------------- ...ccodes-jasper3-use-wrapper-entry-point.patch | 5 ++--- eccodes-soversion.patch | 10 +++++----- eccodes.spec | 17 +++++++++-------- 4 files changed, 16 insertions(+), 30 deletions(-) delete mode 100644 eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch rename eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch => eccodes-jasper3-use-wrapper-entry-point.patch (86%) diff --git a/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch b/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch deleted file mode 100644 index 5df7da7..0000000 --- a/eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- eccodes-2.24.0-Source.unchanged/src/grib_api_internal.h 2021-12-07 12:03:44.000000000 +0100 -+++ eccodes-2.24.0-Source/src/grib_api_internal.h 2021-12-09 10:02:54.686070864 +0100 -@@ -40,9 +40,9 @@ extern "C" { - - #if IS_BIG_ENDIAN - #if GRIB_MEM_ALIGN --#define FAST_BIG_ENDIAN 0 --#else - #define FAST_BIG_ENDIAN 1 -+#else -+#define FAST_BIG_ENDIAN 0 - #endif - #endif - diff --git a/eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch b/eccodes-jasper3-use-wrapper-entry-point.patch similarity index 86% rename from eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch rename to eccodes-jasper3-use-wrapper-entry-point.patch index 67548af..cebee2d 100644 --- a/eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch +++ b/eccodes-jasper3-use-wrapper-entry-point.patch @@ -1,6 +1,5 @@ -diff -urp -x '*~' -x redhat-linux-build -x '*.list' -x '.package_note*' eccodes-2.24.0-Source/src/grib_jasper_encoding.c eccodes-2.24.0-Source.new/src/grib_jasper_encoding.c ---- eccodes-2.24.0-Source/src/grib_jasper_encoding.c 2021-12-07 20:03:44.000000000 +0900 -+++ eccodes-2.24.0-Source.new/src/grib_jasper_encoding.c 2022-02-14 23:35:10.954255326 +0900 +--- eccodes-2.25.0-Source.unchanged/src/grib_jasper_encoding.c 2022-03-03 15:40:43.000000000 +0100 ++++ eccodes-2.25.0-Source/src/grib_jasper_encoding.c 2022-03-06 16:18:43.875617700 +0100 @@ -30,7 +30,7 @@ int grib_jasper_decode(grib_context* c, jas_matrix_t* matrix = NULL; jas_image_cmpt_t* p; diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 61b7292..c1cd6b2 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.24.0-Source.unchanged/fortran/CMakeLists.txt 2021-12-07 12:03:44.000000000 +0100 -+++ eccodes-2.24.0-Source/fortran/CMakeLists.txt 2021-12-09 09:57:37.787105551 +0100 +--- eccodes-2.25.0-Source.unchanged/fortran/CMakeLists.txt 2022-03-03 15:40:42.000000000 +0100 ++++ eccodes-2.25.0-Source/fortran/CMakeLists.txt 2022-03-06 15:40:01.323606416 +0100 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.24.0-Source.unchanged/src/CMakeLists.txt 2021-12-07 12:03:44.000000000 +0100 -+++ eccodes-2.24.0-Source/src/CMakeLists.txt 2021-12-09 09:57:37.811104942 +0100 -@@ -444,6 +444,7 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.25.0-Source.unchanged/src/CMakeLists.txt 2022-03-03 15:40:42.000000000 +0100 ++++ eccodes-2.25.0-Source/src/CMakeLists.txt 2022-03-06 15:40:01.324606392 +0100 +@@ -437,6 +437,7 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${grib_api_extra_srcs} diff --git a/eccodes.spec b/eccodes.spec index aeabec5..2e1bdd5 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.24.0 -Release: 4%{?dist} +Version: 2.25.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -32,7 +32,7 @@ Summary: WMO data format decoding and encoding License: ASL 2.0 -URL: https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home +URL: https://confluence.ecmwf.int/display/ECC/ecCodes+Home Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-%{version}-Source.tar.gz # note: this data package is unversioned upstream but still it is updated # now and then so rename the datapack using the download date @@ -47,15 +47,11 @@ Patch1: eccodes-soversion.patch # https://software.ecmwf.int/issues/browse/SUP-2073 # (and again, unfortunately this issue is not public) -# grib_api_internal.h: reverse definition of FAST_BIG_ENDIAN -# https://jira.ecmwf.int/browse/SUP-2410 -Patch2: eccodes-grib_api_internal.h-reverse-definition-of-FAST_BIG_E.patch - # jasper3 now hides internal encoder / decoder. Use wrapper entry point # c.f. https://github.com/jasper-software/jasper/commit/5fe57ac5829ec31396e7eaab59a688da014660af # Also, now with jasper3, calling jas_stream_memopen (for example) always needs jasper # library initialization -Patch3: eccodes-2.24.0-jasper3-use-wrapper-entry-point.patch +Patch2: eccodes-jasper3-use-wrapper-entry-point.patch BuildRequires: cmake3 @@ -67,6 +63,7 @@ BuildRequires: libjpeg-devel BuildRequires: libpng-devel BuildRequires: netcdf-devel BuildRequires: openjpeg2-devel +BuildRequires: libaec-devel # For tests BuildRequires: perl(Getopt::Long) @@ -354,6 +351,10 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Mar 06 2022 Jos de Kloe - 2.25.0-1 +- Upgrade to upstream version 2.25.0 +- Add new BR libaec-devel + * Mon Feb 14 2022 Mamoru TASAKA - 2.24.0-4 - jasper3: use wrapper entry point for jpeg2000 decoder From 277f1158773ab44b8886626bce614888f03ebcbc Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 6 Mar 2022 17:20:32 +0100 Subject: [PATCH 098/147] add new sources --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index dcaab7e..ea782d6 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ /eccodes-2.22.1-Source.tar.gz /eccodes-2.23.0-Source.tar.gz /eccodes-2.24.0-Source.tar.gz +/eccodes-2.25.0-Source.tar.gz diff --git a/sources b/sources index aaa3ee8..45bc82a 100644 --- a/sources +++ b/sources @@ -5,3 +5,4 @@ SHA512 (eccodes-2.22.0-Source.tar.gz) = 488ff560cd9969c2d5c0dd0ce3e6b44339548937 SHA512 (eccodes-2.22.1-Source.tar.gz) = 86818604eca75a34c8ce0cf0540d255c0db2d92bf03970a65c972fb2a16b6c472f6dcebfd04bdac4b76b8db2fcf2ed4dfa8a70875eaf1353a775fc185e5de9a0 SHA512 (eccodes-2.23.0-Source.tar.gz) = df8e9f25396d91ae0adb1b1502cdb6c1473d80caf79ce3fe9318ecc63194fd1c7dc7424fccf44aabf8c06ea343d59093bb21e75f6e5466f21ce44cb514e07350 SHA512 (eccodes-2.24.0-Source.tar.gz) = cfd1989ff6d733c3053dae75d1951d6ba475dd6a388b6d747c3a87ade3de9a77da8a6954b6a6ea2eb8cfbd3e08aad7a8b12db1561893f8acc2a9041ce7718e24 +SHA512 (eccodes-2.25.0-Source.tar.gz) = b6c675e9bb7377120ae0eb5f1601c3980925b78f240aa26e46cf50ce0d64c5566a4191c83b2ca6ab11fcbcadb70bad1f2c4e188adc245dcf2237292bd359078d From 6a1c7f8e6986c96fb4d163ec573e73c2545c44a9 Mon Sep 17 00:00:00 2001 From: Sandro Mani Date: Sat, 21 May 2022 00:10:53 +0200 Subject: [PATCH 099/147] Rebuild for gdal-3.5.0 and/or openjpeg-2.5.0 --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 2e1bdd5..0ee87a0 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.25.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -351,6 +351,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Fri May 20 2022 Sandro Mani - 2.25.0-2 +- Rebuild for gdal-3.5.0 and/or openjpeg-2.5.0 + * Sun Mar 06 2022 Jos de Kloe - 2.25.0-1 - Upgrade to upstream version 2.25.0 - Add new BR libaec-devel From 2378143ac93fefd19076d42b7139ebbbb3a41b9c Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 26 May 2022 15:00:04 +0200 Subject: [PATCH 100/147] update to new version 2.26.0 --- eccodes-jasper3-use-wrapper-entry-point.patch | 74 ------------------- eccodes-soversion.patch | 15 ++-- eccodes.spec | 25 ++----- 3 files changed, 14 insertions(+), 100 deletions(-) delete mode 100644 eccodes-jasper3-use-wrapper-entry-point.patch diff --git a/eccodes-jasper3-use-wrapper-entry-point.patch b/eccodes-jasper3-use-wrapper-entry-point.patch deleted file mode 100644 index cebee2d..0000000 --- a/eccodes-jasper3-use-wrapper-entry-point.patch +++ /dev/null @@ -1,74 +0,0 @@ ---- eccodes-2.25.0-Source.unchanged/src/grib_jasper_encoding.c 2022-03-03 15:40:43.000000000 +0100 -+++ eccodes-2.25.0-Source/src/grib_jasper_encoding.c 2022-03-06 16:18:43.875617700 +0100 -@@ -30,7 +30,7 @@ int grib_jasper_decode(grib_context* c, - jas_matrix_t* matrix = NULL; - jas_image_cmpt_t* p; - int i, j, k; -- -+ jas_conf_clear(); jas_conf_set_max_mem_usage(jas_get_total_mem_size()); jas_init_library(); jas_init_thread(); - jpeg = jas_stream_memopen((char*)buf, *buflen); - if (!jpeg) { - code = GRIB_DECODING_ERROR; -@@ -39,7 +39,7 @@ int grib_jasper_decode(grib_context* c, - - grib_context_log(c, GRIB_LOG_DEBUG, "grib_jasper_decode: Jasper version %s", jas_getversion()); - -- image = jpc_decode(jpeg, NULL); -+ image = jas_image_decode (jpeg, -1, 0); - if (!image) { - code = GRIB_DECODING_ERROR; - goto cleanup; -@@ -77,7 +77,7 @@ cleanup: - jas_image_destroy(image); - if (jpeg) - jas_stream_close(jpeg); -- -+ jas_cleanup_thread(); jas_cleanup_library(); - return code; - } - -@@ -94,6 +94,7 @@ int grib_jasper_encode(grib_context* c, - long no_values = helper->no_values; - long bits8; - int i; -+ int fmt; - - size_t buflen = 0; - unsigned char* encoded = NULL; -@@ -156,7 +157,7 @@ int grib_jasper_encode(grib_context* c, - } - } - -- /*jas_init();*/ -+ jas_conf_clear(); jas_conf_set_max_mem_usage(jas_get_total_mem_size()); jas_init_library(); jas_init_thread(); - - opts[0] = 0; - -@@ -175,7 +176,8 @@ int grib_jasper_encode(grib_context* c, - cmpt.stream_ = istream; - - jpcstream = jas_stream_memopen((char*)helper->jpeg_buffer, helper->buffer_size); -- jaserr = jpc_encode(&image, jpcstream, opts); -+ fmt = jas_image_strtofmt("jpc"); -+ jaserr = jas_image_encode(&image, jpcstream, fmt, opts); - - if (jaserr != 0) { - /* increase the number of guard bits */ -@@ -189,7 +191,7 @@ int grib_jasper_encode(grib_context* c, - istream = jas_stream_memopen((char*)encoded, buflen); - cmpt.stream_ = istream; - jpcstream = jas_stream_memopen((char*)helper->jpeg_buffer, helper->buffer_size); -- jaserr = jpc_encode(&image, jpcstream, opts); -+ jaserr = jas_image_encode(&image, jpcstream, fmt, opts); - } - - if (jaserr != 0) { -@@ -210,7 +212,7 @@ cleanup: - jas_stream_close(istream); - if (jpcstream) - jas_stream_close(jpcstream); -- -+ jas_cleanup_thread(); jas_cleanup_library(); - return code; - } - diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index c1cd6b2..0cf8084 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.25.0-Source.unchanged/fortran/CMakeLists.txt 2022-03-03 15:40:42.000000000 +0100 -+++ eccodes-2.25.0-Source/fortran/CMakeLists.txt 2022-03-06 15:40:01.323606416 +0100 +--- eccodes-2.26.0-Source.unchanged/fortran/CMakeLists.txt 2022-05-18 13:20:10.000000000 +0200 ++++ eccodes-2.26.0-Source/fortran/CMakeLists.txt 2022-05-26 14:15:01.080533587 +0200 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,13 +10,14 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.25.0-Source.unchanged/src/CMakeLists.txt 2022-03-03 15:40:42.000000000 +0100 -+++ eccodes-2.25.0-Source/src/CMakeLists.txt 2022-03-06 15:40:01.324606392 +0100 -@@ -437,6 +437,7 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.26.0-Source.unchanged/src/CMakeLists.txt 2022-05-18 13:20:10.000000000 +0200 ++++ eccodes-2.26.0-Source/src/CMakeLists.txt 2022-05-26 14:18:49.300260787 +0200 +@@ -437,6 +437,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} - TEMPLATES ${grib_api_extra_srcs} -+ SOVERSION ${ECCODES_SOVERSION} + TEMPLATES ${eccodes_extra_src_files} ++ SOVERSION ${ECCODES_SOVERSION} ++ INSTALL_HEADERS_LIST grib_api.h eccodes.h diff --git a/eccodes.spec b/eccodes.spec index 0ee87a0..d5c01de 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,12 +1,12 @@ Name: eccodes -Version: 2.25.0 -Release: 2%{?dist} +Version: 2.26.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions %global so_version 0.1 %global so_version_f90 0.1 -%global datapack_date 20200626 +%global datapack_date 20220526 # latest fedora-36 grib_api version is 1.27.0-12 # but this version number is to be updated as soon as we know @@ -47,13 +47,6 @@ Patch1: eccodes-soversion.patch # https://software.ecmwf.int/issues/browse/SUP-2073 # (and again, unfortunately this issue is not public) -# jasper3 now hides internal encoder / decoder. Use wrapper entry point -# c.f. https://github.com/jasper-software/jasper/commit/5fe57ac5829ec31396e7eaab59a688da014660af -# Also, now with jasper3, calling jas_stream_memopen (for example) always needs jasper -# library initialization -Patch2: eccodes-jasper3-use-wrapper-entry-point.patch - - BuildRequires: cmake3 BuildRequires: gcc BuildRequires: gcc-gfortran @@ -185,13 +178,6 @@ pushd %{_vpath_builddir} tar xf %SOURCE1 popd -# remove executable permissions from c files -chmod 644 tigge/*.c -chmod 644 tools/*.c - -# remove executable permissions from the authors and license file -chmod 644 AUTHORS LICENSE - %build #-- The following features are disabled by default and not switched on: @@ -270,8 +256,6 @@ rm %{buildroot}%{_datadir}/%{name}/definitions/installDefinitions.sh # copy the html documentation to the install directory mkdir -p %{buildroot}%{_datadir}/doc/%{name}/ cp -r html %{buildroot}%{_datadir}/doc/%{name}/ -# and remove an unneeded Makefile from the html directory -rm %{buildroot}%{_datadir}/doc/%{name}/html/Makefile.am # copy the example scripts/programs to the install directory # but dont copy the shell scripts and Makefiles, since these @@ -351,6 +335,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu May 26 2022 Jos de Kloe - 2.26.0-1 +- Upgrade to upstream version 2.26.0 + * Fri May 20 2022 Sandro Mani - 2.25.0-2 - Rebuild for gdal-3.5.0 and/or openjpeg-2.5.0 From bc33423cd0bedc2054faf5050ebde8f3cfead959 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 26 May 2022 15:05:03 +0200 Subject: [PATCH 101/147] add new source code, new datapack, and remove some old patch files --- .gitignore | 22 ++------------------- eccodes-32bit.patch | 33 ------------------------------- eccodes-test-grib_to_netcdf.patch | 15 -------------- sources | 10 ++-------- 4 files changed, 4 insertions(+), 76 deletions(-) delete mode 100644 eccodes-32bit.patch delete mode 100644 eccodes-test-grib_to_netcdf.patch diff --git a/.gitignore b/.gitignore index ea782d6..b3652b6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,20 +1,2 @@ -/eccodes_test_data.tar.gz -/eccodes_test_data_20181010.tar.gz -/eccodes-2.12.0-Source.tar.gz -/eccodes-2.12.5-Source.tar.gz -/eccodes-2.13.0-Source.tar.gz -/eccodes-2.14.1-Source.tar.gz -/eccodes-2.15.0-Source.tar.gz -/eccodes-2.16.0-Source.tar.gz -/eccodes-2.17.0-Source.tar.gz -/eccodes-2.18.0-Source.tar.gz -/eccodes_test_data_20200626.tar.gz -/eccodes-2.19.0-Source.tar.gz -/eccodes-2.19.1-Source.tar.gz -/eccodes-2.20.0-Source.tar.gz -/eccodes-2.21.0-Source.tar.gz -/eccodes-2.22.0-Source.tar.gz -/eccodes-2.22.1-Source.tar.gz -/eccodes-2.23.0-Source.tar.gz -/eccodes-2.24.0-Source.tar.gz -/eccodes-2.25.0-Source.tar.gz +/eccodes-2.26.0-Source.tar.gz +/eccodes_test_data_20220526.tar.gz diff --git a/eccodes-32bit.patch b/eccodes-32bit.patch deleted file mode 100644 index 8bf6d79..0000000 --- a/eccodes-32bit.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- eccodes-2.19.0-Source.unchanged/src/grib_api_prototypes.h 2020-10-15 13:21:34.000000000 +0200 -+++ eccodes-2.19.0-Source/src/grib_api_prototypes.h 2020-10-16 08:52:25.171175169 +0200 -@@ -859,8 +859,8 @@ double grib_ieeefloat_error(double x); - double grib_long_to_ieee(unsigned long x); - int grib_nearest_smaller_ieee_float(double a, double* x); - unsigned long grib_ieee_to_long(double x); --unsigned long grib_ieee64_to_long(double x); --double grib_long_to_ieee64(unsigned long x); -+uint64_t grib_ieee64_to_long(double x); -+double grib_long_to_ieee64(uint64_t x); - int grib_ieee_decode_array(grib_context* c, unsigned char* buf, size_t nvals, int bytes, double* val); - int grib_ieee_decode_array(grib_context* c, unsigned char* buf, size_t nvals, int bytes, double* val); - int grib_ieee_encode_array(grib_context* c, double* val, size_t nvals, int bytes, unsigned char* buf); ---- eccodes-2.19.0-Source.unchanged/src/grib_ieeefloat.c 2020-10-15 13:21:34.000000000 +0200 -+++ eccodes-2.19.0-Source/src/grib_ieeefloat.c 2020-10-16 09:01:37.712934707 +0200 -@@ -442,7 +442,7 @@ unsigned long grib_ieee_to_long(double x - * Byte swapping is actually implemented in grib_decode_unsigned_long and - * grib_encode_unsigned_long. - */ --unsigned long grib_ieee64_to_long(double x) -+uint64_t grib_ieee64_to_long(double x) - { - unsigned long lval; - DebugAssert(sizeof(double) == sizeof(long)); -@@ -450,7 +450,7 @@ unsigned long grib_ieee64_to_long(double - return lval; - } - --double grib_long_to_ieee64(unsigned long x) -+double grib_long_to_ieee64(uint64_t x) - { - double dval; - DebugAssert(sizeof(double) == sizeof(long)); diff --git a/eccodes-test-grib_to_netcdf.patch b/eccodes-test-grib_to_netcdf.patch deleted file mode 100644 index eff2a26..0000000 --- a/eccodes-test-grib_to_netcdf.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- eccodes-2.23.0-Source.unchanged/tests/grib_to_netcdf.sh 2021-08-25 11:35:41.000000000 +0200 -+++ eccodes-2.23.0-Source/tests/grib_to_netcdf.sh 2021-09-02 10:31:33.417295119 +0200 -@@ -64,8 +64,10 @@ if [ $ECCODES_ON_WINDOWS -eq 0 ]; then - set -e - if [ $stat -eq 0 ]; then - have_netcdf4=1 -- res=`${tools_dir}/grib_get -TA -p identifier,versionNumberOfSuperblock $tempNetcdf` -- [ "$res" = "HDF5 0" ] -+# res=`${tools_dir}/grib_get -TA -p identifier,versionNumberOfSuperblock $tempNetcdf` -+# [ "$res" = "HDF5 0" ] -+ res=`${tools_dir}/grib_get -TA -p identifier $tempNetcdf` -+ [ "$res" = "HDF5" ] - fi - fi - diff --git a/sources b/sources index 45bc82a..6d7fcc8 100644 --- a/sources +++ b/sources @@ -1,8 +1,2 @@ -SHA512 (eccodes_test_data_20200626.tar.gz) = 553eb69f3664c2f847c5ee7a84066e814ef03b3148ae2c13d845891038336daca815673650f1d06efee4f4a1ddaa4326f2ddfbe81d29382e3f25608b249b8d9e -SHA512 (eccodes-2.20.0-Source.tar.gz) = ea2953987c4713b230e6d75ad5ae1dbbeea2633d1caf60614ececfe2fabe07d7c794baf120f5df82716f37b2540f7f6a6cd82f04070a78bf65dc7d499ca50dc0 -SHA512 (eccodes-2.21.0-Source.tar.gz) = f2ba8361b99800646a92f5f5beb7ec2facf2ee3b8a3f7985d9681a23b2faae778004c8c688ebe4b3a8492e99c76422c66ecc8943d12d3342d5bc1d38362ccf06 -SHA512 (eccodes-2.22.0-Source.tar.gz) = 488ff560cd9969c2d5c0dd0ce3e6b4433954893758ae1a2bd9177536d8b08a89f37aac4f6a175c271f528d5c838fd4ec7b090dfb1f691df5cfceb67508bdc470 -SHA512 (eccodes-2.22.1-Source.tar.gz) = 86818604eca75a34c8ce0cf0540d255c0db2d92bf03970a65c972fb2a16b6c472f6dcebfd04bdac4b76b8db2fcf2ed4dfa8a70875eaf1353a775fc185e5de9a0 -SHA512 (eccodes-2.23.0-Source.tar.gz) = df8e9f25396d91ae0adb1b1502cdb6c1473d80caf79ce3fe9318ecc63194fd1c7dc7424fccf44aabf8c06ea343d59093bb21e75f6e5466f21ce44cb514e07350 -SHA512 (eccodes-2.24.0-Source.tar.gz) = cfd1989ff6d733c3053dae75d1951d6ba475dd6a388b6d747c3a87ade3de9a77da8a6954b6a6ea2eb8cfbd3e08aad7a8b12db1561893f8acc2a9041ce7718e24 -SHA512 (eccodes-2.25.0-Source.tar.gz) = b6c675e9bb7377120ae0eb5f1601c3980925b78f240aa26e46cf50ce0d64c5566a4191c83b2ca6ab11fcbcadb70bad1f2c4e188adc245dcf2237292bd359078d +SHA512 (eccodes-2.26.0-Source.tar.gz) = cd4fd2048ad98a4a5c82a0a233b2e64eb67a195d42637607423669351b6cd295b111a382f6d9ecb05ffe25f79599bf3963550ca27d84e7f9ef55e499e183a35f +SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb72121526065b0cf4da144c7499b8d38bebae0952ddbd20ef0eb53fad77ada60160039340da01001f19fbb7fb1ccbb3d0547a From be19a6b8c43faac0bfef9d5efac39efa91831f1d Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Fri, 3 Jun 2022 10:14:54 +0200 Subject: [PATCH 102/147] first version for epel9. Disable all ExcludeArch exceptions at first to see what happens. --- .gitignore | 2 + README.md | 13 +- eccodes-soversion.patch | 23 +++ eccodes.spec | 350 ++++++++++++++++++++++++++++++++++++++++ sources | 2 + 5 files changed, 389 insertions(+), 1 deletion(-) create mode 100644 .gitignore create mode 100644 eccodes-soversion.patch create mode 100644 eccodes.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b3652b6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/eccodes-2.26.0-Source.tar.gz +/eccodes_test_data_20220526.tar.gz diff --git a/README.md b/README.md index df5cd52..035f9e0 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,14 @@ # eccodes -The eccodes package \ No newline at end of file +The eccodes package. + +EcCodes is a package developed by ECMWF which provides an application +programming interface and a set of tools for decoding and encoding +messages in the following formats: + + * WMO FM-92 GRIB edition 1 and edition 2 + * WMO FM-94 BUFR edition 3 and edition 4 + * WMO GTS abbreviated header (only decoding). + +For further details see: +https://confluence.ecmwf.int/display/ECC/What+is+ecCodes diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch new file mode 100644 index 0000000..0cf8084 --- /dev/null +++ b/eccodes-soversion.patch @@ -0,0 +1,23 @@ +--- eccodes-2.26.0-Source.unchanged/fortran/CMakeLists.txt 2022-05-18 13:20:10.000000000 +0200 ++++ eccodes-2.26.0-Source/fortran/CMakeLists.txt 2022-05-26 14:15:01.080533587 +0200 +@@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) + GENERATED grib_f90.f90 eccodes_f90.f90 + PUBLIC_INCLUDES $ + $ +- PRIVATE_LIBS eccodes ${ECCODES_PTHREADS_LIBRARIES} ) ++ PRIVATE_LIBS eccodes ${ECCODES_PTHREADS_LIBRARIES} ++ SOVERSION ${ECCODES_SOVERSION_F90}) + + if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) + # Installed module directory is not in the PUBLIC INCLUDES! +--- eccodes-2.26.0-Source.unchanged/src/CMakeLists.txt 2022-05-18 13:20:10.000000000 +0200 ++++ eccodes-2.26.0-Source/src/CMakeLists.txt 2022-05-26 14:18:49.300260787 +0200 +@@ -437,6 +437,8 @@ ecbuild_add_library( TARGET eccodes + PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} + PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} + TEMPLATES ${eccodes_extra_src_files} ++ SOVERSION ${ECCODES_SOVERSION} ++ + INSTALL_HEADERS_LIST + grib_api.h + eccodes.h diff --git a/eccodes.spec b/eccodes.spec new file mode 100644 index 0000000..f1a0e71 --- /dev/null +++ b/eccodes.spec @@ -0,0 +1,350 @@ +Name: eccodes +Version: 2.26.0 +Release: 1%{?dist} +Summary: WMO data format decoding and encoding + +# force the shared libraries to have these so versions +%global so_version 0.1 +%global so_version_f90 0.1 +%global datapack_date 20220526 + +# latest fedora-36 grib_api version is 1.27.0-12 +# but this version number is to be updated as soon as we know +# what the final release of grib_api by upstream will be. +# latest upstream grib_api release is 1.28.0 (05-Dec-2018) +# as was written on https://confluence.ecmwf.int/display/GRIB/Home +# (Note that this page is no longer available, 17-Oct-2020) +%global final_grib_api_version 1.28.1-1%{?dist} + +%ifarch i686 ppc64 armv7hl + %global obsolete_grib_api 0 +%else + %global obsolete_grib_api 1 +%endif + +# license remarks: +# Most of eccodes is licensed ASL 2.0 but a special case must be noted. +# These 2 files: +# src/grib_yacc.c +# src/grib_yacc.h +# contain a special exception clause that allows them to be +# relicensed if they are included in a larger project + +License: ASL 2.0 + +URL: https://confluence.ecmwf.int/display/ECC/ecCodes+Home +Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-%{version}-Source.tar.gz +# note: this data package is unversioned upstream but still it is updated +# now and then so rename the datapack using the download date +# to make it versioned in fedora +Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz + +# Add soversion to the shared libraries, since upstream refuses to do so +# https://software.ecmwf.int/issues/browse/SUP-1809 +Patch1: eccodes-soversion.patch + +# note that the requests to make the other issues public are filed here: +# https://software.ecmwf.int/issues/browse/SUP-2073 +# (and again, unfortunately this issue is not public) + +BuildRequires: cmake3 +BuildRequires: gcc +BuildRequires: gcc-gfortran +BuildRequires: /usr/bin/git +BuildRequires: jasper-devel +BuildRequires: libjpeg-devel +BuildRequires: libpng-devel +BuildRequires: netcdf-devel +BuildRequires: openjpeg2-devel +BuildRequires: libaec-devel + +# For tests +BuildRequires: perl(Getopt::Long) +BuildRequires: perl(Test::More) +BuildRequires: perl(File::Compare) + +# the data is needed by the library and all tools provided in the main package +# the other way around, the data package could be installed without +# installing the base package. It will probably be pretty useless, +# unless a user wishes to read and study all these grib and bufr +# file format definitions. +Requires: %{name}-data = %{version}-%{release} + +# NOTE: upstream writes: +# """ +# For GRIB encoding and decoding, the GRIB-API functionality is provided +# fully in ecCodes with only minor interface and behaviour changes. +# Interfaces for C, Fortran 90 and Python are all maintained as in GRIB-API. +# However, the GRIB-API Fortran 77 interface is no longer available. +# """ +# Therefore, since the library name and pkg-config file content changes +# and fortran77 support was removed, this replacement package cannot be +# considered compatible enough and no Provides can be defined. +# +# Furthermore, upstream writes: +# "Please note that GRIB-API support is being discontinued at the end of 2018." +# So the old grib_api will need to be obsoleted. + +%if 0%{obsolete_grib_api} +# as stated in the note above, setting provides seems not correct here +# Provides: grib_api = %%{final_grib_api_version} +Obsoletes: grib_api < %{final_grib_api_version} +%endif + +## as explained in bugzilla #1562066 +#ExcludeArch: i686 +## as explained in bugzilla #1562071 +## note: this is no longer part of fc30/rawhide +## but the exclude is still needed for EPEL-7 and EPEL-8 +#ExcludeArch: ppc64 +## as explained in bugzilla #1562076 +##ExcludeArch: s390x +## as explained in bugzilla #1562084 +##ExcludeArch: armv7hl + +#%if 0%{?rhel} >= 7 +## as explained in bugzilla #1629377 +#ExcludeArch: aarch64 +#%endif + +%description +ecCodes is a package developed by ECMWF which provides an application +programming interface and a set of tools for decoding and encoding messages +in the following formats: + + * WMO FM-92 GRIB edition 1 and edition 2 + * WMO FM-94 BUFR edition 3 and edition 4 + * WMO GTS abbreviated header (only decoding). + +A useful set of command line tools provide quick access to the messages. C, +and Fortran 90 interfaces provide access to the main ecCodes functionality. + +ecCodes is an evolution of GRIB-API. It is designed to provide the user with +a simple set of functions to access data from several formats with a key/value +approach. + +For GRIB encoding and decoding, the GRIB-API functionality is provided fully +in ecCodes with only minor interface and behaviour changes. Interfaces for C, +and Fortran 90 are all maintained as in GRIB-API. However, the +GRIB-API Fortran 77 interface is no longer available. + +In addition, a new set of functions with the prefix "codes_" is provided to +operate on all the supported message formats. These functions have the same +interface and behaviour as the "grib_" functions. + +A selection of GRIB-API tools has been included in ecCodes (ecCodes GRIB +tools), while new tools are available for the BUFR (ecCodes BUFR tools) and +GTS formats. The new tools have been developed to be as similar as possible +to the existing GRIB-API tools maintaining, where possible, the same options +and behaviour. A significant difference compared with GRIB-API tools is that +bufr_dump produces output in JSON format suitable for many web based +applications. + +##################################################### +%package devel +Summary: Contains ecCodes development files +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: gcc-gfortran%{?_isa} +Requires: jasper-devel%{?_isa} + +%if 0%{obsolete_grib_api} +# Provides: grib_api-devel = %%{final_grib_api_version} +Obsoletes: grib_api-devel < %{final_grib_api_version} +%endif + +%description devel +Header files and libraries for ecCodes. + +##################################################### +%package data +Summary: Data needed by the eccodes library and tools +BuildArch: noarch + +%description data +This package provides all tables and definitions needed +to encode and decode grib and bufr files, and includes +both the official WMO tables and a number of often used +local definitions by ECMWF and other meteorological centers. + +##################################################### +%package doc +Summary: Documentation and example code +BuildArch: noarch + +# a sub package grib_api-doc did not exist +# so no obsoletes needed here + +%description doc +This package contains the html documentation for ecCodes +and a fair number of example programs and scripts to use it +in C, and Fortran 90. + +##################################################### +%prep +%autosetup -n %{name}-%{version}-Source -p1 + +# unpack the test data below build +mkdir -p %{_vpath_builddir} +pushd %{_vpath_builddir} +tar xf %SOURCE1 +popd + +%build + +#-- The following features are disabled by default and not switched on: +# +# * AEC , support for Adaptive Entropy Coding +# * MEMFS , Memory based access to definitions/samples +# * MEMORY_MANAGEMENT , enable memory management +# * ALIGN_MEMORY , enable memory alignment +# * GRIB_TIMER , enable timer +# * ECCODES_THREADS , enable POSIX threads +# +#-- The following features are disabled by default and switched on: +# * PNG , support for PNG decoding/encoding +# * ECCODES_OMP_THREADS , enable OMP threads +# * EXTRA_TESTS , enable extended regression testing +# +#-- The following features are set to AUTO by default and +# explicitely switched on to ensure they don't vanish unnoticed +# in case of dependency problems during the build: +# * ENABLE_JPG +# ^ ENABLE_FORTRAN +# * ENABLE_NETCDF +# NetCDF is only needed to create the grib_to_netcdf convert tool +# +# * ENABLE_PYTHON has value AUTO as default, so if python2 is available +# during a package build it will build an interface for it. +# To make sure it does not do so, explicitely switch it off. +# Python3 support has been moved to an additional project now, +# so python handling has been removed completely from this spec file. +# +#-- Also add an explicit option to not use rpath +# +# Note: -DINSTALL_LIB_DIR=%%{_lib} is needed because otherwise +# the library so files get installed in /usr/lib in stead +# of /usr/lib64 on x86_64. + +# added -DCMAKE_Fortran_FLAGS="-fPIC" +# because the koji build crashes with the error that it needs this setting +# when I try to build for armv7hl (other archs do not complain ......) +# I have no idea what causes this difference in behaviour. + +%cmake3 -DINSTALL_LIB_DIR=%{_lib} \ + -DENABLE_ECCODES_OMP_THREADS=ON \ + -DENABLE_EXTRA_TESTS=ON \ + -DENABLE_JPG=ON \ + -DENABLE_PNG=ON \ + -DENABLE_FORTRAN=ON \ + -DENABLE_NETCDF=ON \ + -DCMAKE_SKIP_INSTALL_RPATH=TRUE \ + -DECCODES_SOVERSION=%{so_version} \ + -DECCODES_SOVERSION_F90=%{so_version_f90} \ + -DCMAKE_Fortran_FLAGS="-fPIC" \ + -DENABLE_PYTHON2=OFF + +# note the final '..' is no longer needed to the cmake3 call. +# this is now hidden in the %%cmake3 macro + +%cmake_build + +# copy some include files to the build dir +# that are otherwise not found when creating the debugsource sub-package +cp fortran/eccodes_constants.h %{_vpath_builddir}/fortran/ +cp fortran/grib_api_constants.h %{_vpath_builddir}/fortran/ + +%install +%cmake_install +mkdir -p %{buildroot}%{_fmoddir} +mv %{buildroot}%{_includedir}/*.mod %{buildroot}%{_fmoddir}/ + +# remove a script that does not belong in the doc section +# and triggers an rpmlint error +rm %{buildroot}%{_datadir}/%{name}/definitions/installDefinitions.sh +# by the way, is there a way in the files section to include a directory +# but exclude a given file in it? I could not find such a trick. + +# copy the html documentation to the install directory +mkdir -p %{buildroot}%{_datadir}/doc/%{name}/ +cp -r html %{buildroot}%{_datadir}/doc/%{name}/ + +# copy the example scripts/programs to the install directory +# but dont copy the shell scripts and Makefiles, since these +# are part of the cmake test setup and not usefull as example. +# Use %%{_datadir}/doc/%%{name}/ rather than %%{_datadir}/%%{name}/ +# otherwise the rpmbuild will create a lot off unnecessary +# pyc and pyo files. + +mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/C +cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C +mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 +cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 + +# also not needed for x86_64 +# maybe they fixed it for all archs? +#%%ifarch i686 armv7hl +# # pass (nothing to do) +#%%else +# # it seems pkgconfig files end up in lib in stead of lib64 now +# # so move them to the right place +# mv %%{buildroot}/%%{_usr}/lib/pkgconfig/ \ +# %%{buildroot}/%%{_libdir}/pkgconfig/ +#%%endif + +# It seems the cmake options +# -DCMAKE_SKIP_RPATH=TRUE +# -DCMAKE_SKIP_INSTALL_RPATH=TRUE +# have no effect on the generated *.pc files. +# These still contain an rpath reference, so patch them and remove +# the rpath using sed +sed -i 's|^libs=.*$|libs=-L${libdir} -leccodes|g' %{buildroot}/%{_libdir}/pkgconfig/eccodes.pc +sed -i 's|^libs=.*$|libs=-L${libdir} -leccodes_f90 -leccodes|g' %{buildroot}/%{_libdir}/pkgconfig/eccodes_f90.pc + +%ldconfig_scriptlets + +%check +cd %{_vpath_builddir} + +# notes: +# * the LD_LIBRARY_PATH setting is required to let the tests +# run inside the build dir, otherwise they are broken due to +# the removal of rpath +# * the LIBRARY_PATH setting is needed te let the +# 'eccodes_t_bufr_dump_(de|en)code_C' tests run. +# These tests compile on the fly generated C code, and +# without this setting the loader does not find the libraries. +# * this is a 'non-standard' use of ctest3 so it does currently not +# work with the %%ctest macro. + +LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +LIBRARY_PATH=%{buildroot}/%{_libdir} \ +ctest3 -V %{?_smp_mflags} + +%files +%license LICENSE +%doc README.md ChangeLog AUTHORS NEWS NOTICE +%{_bindir}/* +%{_libdir}/*.so.* + +%files devel +%{_includedir}/* +%{_fmoddir}/%{name}.mod +%{_fmoddir}/grib_api.mod +%{_libdir}/pkgconfig/%{name}.pc +%{_libdir}/pkgconfig/%{name}_f90.pc +%{_libdir}/*.so +%dir %{_libdir}/cmake/%{name} +%{_libdir}/cmake/%{name}/* + +%files data +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/definitions/ +%{_datadir}/%{name}/samples/ +%{_datadir}/%{name}/ifs_samples/ + +%files doc +%doc %{_datadir}/doc/%{name}/ + +%changelog +* Fri Jun 3 2022 Jos de Kloe - 2.26.0-1 +- First epel9 version diff --git a/sources b/sources new file mode 100644 index 0000000..6d7fcc8 --- /dev/null +++ b/sources @@ -0,0 +1,2 @@ +SHA512 (eccodes-2.26.0-Source.tar.gz) = cd4fd2048ad98a4a5c82a0a233b2e64eb67a195d42637607423669351b6cd295b111a382f6d9ecb05ffe25f79599bf3963550ca27d84e7f9ef55e499e183a35f +SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb72121526065b0cf4da144c7499b8d38bebae0952ddbd20ef0eb53fad77ada60160039340da01001f19fbb7fb1ccbb3d0547a From b16ee825e435bb099513812713ce436adb640245 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Fri, 3 Jun 2022 10:42:21 +0200 Subject: [PATCH 103/147] General clean-up; remove unneeded ExcludeArch statements; remove all old grib_api references, since there is nothing to obselete for epel9. Also update an url. --- eccodes.spec | 76 +--------------------------------------------------- 1 file changed, 1 insertion(+), 75 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index f1a0e71..b3e42cc 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -8,20 +8,6 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20220526 -# latest fedora-36 grib_api version is 1.27.0-12 -# but this version number is to be updated as soon as we know -# what the final release of grib_api by upstream will be. -# latest upstream grib_api release is 1.28.0 (05-Dec-2018) -# as was written on https://confluence.ecmwf.int/display/GRIB/Home -# (Note that this page is no longer available, 17-Oct-2020) -%global final_grib_api_version 1.28.1-1%{?dist} - -%ifarch i686 ppc64 armv7hl - %global obsolete_grib_api 0 -%else - %global obsolete_grib_api 1 -%endif - # license remarks: # Most of eccodes is licensed ASL 2.0 but a special case must be noted. # These 2 files: @@ -40,13 +26,9 @@ Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/ec Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz # Add soversion to the shared libraries, since upstream refuses to do so -# https://software.ecmwf.int/issues/browse/SUP-1809 +# https://jira.ecmwf.int/browse/SUP-1809 Patch1: eccodes-soversion.patch -# note that the requests to make the other issues public are filed here: -# https://software.ecmwf.int/issues/browse/SUP-2073 -# (and again, unfortunately this issue is not public) - BuildRequires: cmake3 BuildRequires: gcc BuildRequires: gcc-gfortran @@ -70,43 +52,6 @@ BuildRequires: perl(File::Compare) # file format definitions. Requires: %{name}-data = %{version}-%{release} -# NOTE: upstream writes: -# """ -# For GRIB encoding and decoding, the GRIB-API functionality is provided -# fully in ecCodes with only minor interface and behaviour changes. -# Interfaces for C, Fortran 90 and Python are all maintained as in GRIB-API. -# However, the GRIB-API Fortran 77 interface is no longer available. -# """ -# Therefore, since the library name and pkg-config file content changes -# and fortran77 support was removed, this replacement package cannot be -# considered compatible enough and no Provides can be defined. -# -# Furthermore, upstream writes: -# "Please note that GRIB-API support is being discontinued at the end of 2018." -# So the old grib_api will need to be obsoleted. - -%if 0%{obsolete_grib_api} -# as stated in the note above, setting provides seems not correct here -# Provides: grib_api = %%{final_grib_api_version} -Obsoletes: grib_api < %{final_grib_api_version} -%endif - -## as explained in bugzilla #1562066 -#ExcludeArch: i686 -## as explained in bugzilla #1562071 -## note: this is no longer part of fc30/rawhide -## but the exclude is still needed for EPEL-7 and EPEL-8 -#ExcludeArch: ppc64 -## as explained in bugzilla #1562076 -##ExcludeArch: s390x -## as explained in bugzilla #1562084 -##ExcludeArch: armv7hl - -#%if 0%{?rhel} >= 7 -## as explained in bugzilla #1629377 -#ExcludeArch: aarch64 -#%endif - %description ecCodes is a package developed by ECMWF which provides an application programming interface and a set of tools for decoding and encoding messages @@ -147,11 +92,6 @@ Requires: %{name}%{?_isa} = %{version}-%{release} Requires: gcc-gfortran%{?_isa} Requires: jasper-devel%{?_isa} -%if 0%{obsolete_grib_api} -# Provides: grib_api-devel = %%{final_grib_api_version} -Obsoletes: grib_api-devel < %{final_grib_api_version} -%endif - %description devel Header files and libraries for ecCodes. @@ -171,9 +111,6 @@ local definitions by ECMWF and other meteorological centers. Summary: Documentation and example code BuildArch: noarch -# a sub package grib_api-doc did not exist -# so no obsoletes needed here - %description doc This package contains the html documentation for ecCodes and a fair number of example programs and scripts to use it @@ -280,17 +217,6 @@ cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 -# also not needed for x86_64 -# maybe they fixed it for all archs? -#%%ifarch i686 armv7hl -# # pass (nothing to do) -#%%else -# # it seems pkgconfig files end up in lib in stead of lib64 now -# # so move them to the right place -# mv %%{buildroot}/%%{_usr}/lib/pkgconfig/ \ -# %%{buildroot}/%%{_libdir}/pkgconfig/ -#%%endif - # It seems the cmake options # -DCMAKE_SKIP_RPATH=TRUE # -DCMAKE_SKIP_INSTALL_RPATH=TRUE From 9002d2d5b9e82b22068b1d7202514cb0c3c4666d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 21 Jul 2022 01:34:52 +0000 Subject: [PATCH 104/147] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index d5c01de..29e7f69 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.26.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -335,6 +335,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Jul 21 2022 Fedora Release Engineering - 2.26.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu May 26 2022 Jos de Kloe - 2.26.0-1 - Upgrade to upstream version 2.26.0 From 986b16e6eec96ff8ddcb1a4d8f18f38acd982b93 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Mon, 29 Aug 2022 14:16:53 +0200 Subject: [PATCH 105/147] Upgrade to upstream version 2.27.0 and add generation of man pages for tools that support the --help option --- .gitignore | 1 + eccodes-soversion.patch | 10 +++++----- eccodes.spec | 40 ++++++++++++++++++++++++++++++------- eccodes_create_man_pages.sh | 28 ++++++++++++++++++++++++++ sources | 1 + 5 files changed, 68 insertions(+), 12 deletions(-) create mode 100755 eccodes_create_man_pages.sh diff --git a/.gitignore b/.gitignore index b3652b6..a6d3f83 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /eccodes-2.26.0-Source.tar.gz /eccodes_test_data_20220526.tar.gz +/eccodes-2.27.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 0cf8084..bf49da1 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.26.0-Source.unchanged/fortran/CMakeLists.txt 2022-05-18 13:20:10.000000000 +0200 -+++ eccodes-2.26.0-Source/fortran/CMakeLists.txt 2022-05-26 14:15:01.080533587 +0200 +--- eccodes-2.27.0-Source.unchanged/fortran/CMakeLists.txt 2022-08-24 14:01:27.000000000 +0200 ++++ eccodes-2.27.0-Source/fortran/CMakeLists.txt 2022-08-28 11:34:40.919639227 +0200 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.26.0-Source.unchanged/src/CMakeLists.txt 2022-05-18 13:20:10.000000000 +0200 -+++ eccodes-2.26.0-Source/src/CMakeLists.txt 2022-05-26 14:18:49.300260787 +0200 -@@ -437,6 +437,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.27.0-Source.unchanged/src/CMakeLists.txt 2022-08-24 14:01:27.000000000 +0200 ++++ eccodes-2.27.0-Source/src/CMakeLists.txt 2022-08-28 11:34:40.941638710 +0200 +@@ -446,6 +446,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index 29e7f69..eb1d9aa 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.26.0 -Release: 2%{?dist} +Version: 2.27.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -8,7 +8,7 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20220526 -# latest fedora-36 grib_api version is 1.27.0-12 +# latest fedora-38/rawhide grib_api version is 1.27.0-16 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -16,7 +16,7 @@ Summary: WMO data format decoding and encoding # (Note that this page is no longer available, 17-Oct-2020) %global final_grib_api_version 1.28.1-1%{?dist} -%ifarch i686 ppc64 s390x armv7hl +%ifarch i686 ppc64 armv7hl %global obsolete_grib_api 0 %else %global obsolete_grib_api 1 @@ -33,18 +33,22 @@ Summary: WMO data format decoding and encoding License: ASL 2.0 URL: https://confluence.ecmwf.int/display/ECC/ecCodes+Home -Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-%{version}-Source.tar.gz +Source0: https://confluence.ecmwf.int/download/attachments/45757960/eccodes-%{version}-Source.tar.gz + # note: this data package is unversioned upstream but still it is updated # now and then so rename the datapack using the download date # to make it versioned in fedora Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz +# a custom script to create man pages +Source2: eccodes_create_man_pages.sh + # Add soversion to the shared libraries, since upstream refuses to do so -# https://software.ecmwf.int/issues/browse/SUP-1809 +# https://jira.ecmwf.int/browse/SUP-1809 Patch1: eccodes-soversion.patch # note that the requests to make the other issues public are filed here: -# https://software.ecmwf.int/issues/browse/SUP-2073 +# https://jira.ecmwf.int/browse/SUP-2073 # (and again, unfortunately this issue is not public) BuildRequires: cmake3 @@ -63,6 +67,9 @@ BuildRequires: perl(Getopt::Long) BuildRequires: perl(Test::More) BuildRequires: perl(File::Compare) +# For creation of man pages +BuildRequires: help2man + # the data is needed by the library and all tools provided in the main package # the other way around, the data package could be installed without # installing the base package. It will probably be pretty useless, @@ -269,6 +276,20 @@ cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 +# create man pages for the tools that support the --help option +# since upstream does not provide them. +LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +%{_sourcedir}/eccodes_create_man_pages.sh \ + %{_vpath_builddir}/bin \ + %{_vpath_builddir}/man + +# copy the created man pages to the install directory +mkdir -p %{buildroot}%{_datadir}/man/man1 +cp %{_vpath_builddir}/man/*.1 %{buildroot}%{_datadir}/man/man1 + +# Fix permissions +chmod 644 AUTHORS + # also not needed for x86_64 # maybe they fixed it for all archs? #%%ifarch i686 armv7hl @@ -314,6 +335,7 @@ ctest3 -V %{?_smp_mflags} %doc README.md ChangeLog AUTHORS NEWS NOTICE %{_bindir}/* %{_libdir}/*.so.* +%{_mandir}/man1/*.1* %files devel %{_includedir}/* @@ -335,6 +357,10 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Mon Aug 29 2022 Jos de Kloe - 2.27.0-1 +- Upgrade to upstream version 2.27.0 +- Added generation of man pages for tools that support the --help option + * Thu Jul 21 2022 Fedora Release Engineering - 2.26.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/eccodes_create_man_pages.sh b/eccodes_create_man_pages.sh new file mode 100755 index 0000000..6ca4bfe --- /dev/null +++ b/eccodes_create_man_pages.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +# a simple script to create man pages for tools +# provided in the bin dir after installation of eccodes. +# +# Written by: J. de Kloe, 2022. + +BINDIR=$1 +DESTDIR=$2 + +if [ ! -e "$DESTDIR" ] ; then + mkdir -p "$DESTDIR" +fi + +for TOOL in "$BINDIR"/* +do + BASENAME=$(basename "$TOOL") + help2man --no-info --output="${DESTDIR}/${BASENAME}.1" "${TOOL}" +done + +# currently (29-Aug-2022) help2man fails on these 5 tools: +# help2man: can't get `--help' info from ../bin/bufr_count +# help2man: can't get `--help' info from ../bin/codes_count +# help2man: can't get `--help' info from ../bin/grib2ppm +# help2man: can't get `--help' info from ../bin/grib_count +# help2man: can't get `--help' info from ../bin/gts_count + +echo "done" diff --git a/sources b/sources index 6d7fcc8..8fdbe94 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (eccodes-2.26.0-Source.tar.gz) = cd4fd2048ad98a4a5c82a0a233b2e64eb67a195d42637607423669351b6cd295b111a382f6d9ecb05ffe25f79599bf3963550ca27d84e7f9ef55e499e183a35f SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb72121526065b0cf4da144c7499b8d38bebae0952ddbd20ef0eb53fad77ada60160039340da01001f19fbb7fb1ccbb3d0547a +SHA512 (eccodes-2.27.0-Source.tar.gz) = b33d9a4b4abeaa2fae632fe6a4e19071769282c80b7f91f1aaa57f9908386b7c6bd842de69c4bb1b7da2bc3298b5248c808f5c94909033ef5c4a764ae85db5fa From f6edb54b9551d87ba854130b6ef2deba6d6b57a0 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 10 Dec 2022 14:18:44 +0100 Subject: [PATCH 106/147] Upgrade to upstream version 2.27.1 and SPDX migration --- .gitignore | 1 + eccodes-soversion.patch | 8 +++--- eccodes.rpmlintrc | 56 ----------------------------------------- eccodes.spec | 17 +++++++++---- sources | 1 + 5 files changed, 18 insertions(+), 65 deletions(-) delete mode 100644 eccodes.rpmlintrc diff --git a/.gitignore b/.gitignore index a6d3f83..768be79 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /eccodes-2.26.0-Source.tar.gz /eccodes_test_data_20220526.tar.gz /eccodes-2.27.0-Source.tar.gz +/eccodes-2.27.1-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index bf49da1..401214a 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.27.0-Source.unchanged/fortran/CMakeLists.txt 2022-08-24 14:01:27.000000000 +0200 -+++ eccodes-2.27.0-Source/fortran/CMakeLists.txt 2022-08-28 11:34:40.919639227 +0200 +--- eccodes-2.27.1-Source.unchanged/fortran/CMakeLists.txt 2022-12-02 23:16:06.000000000 +0100 ++++ eccodes-2.27.1-Source/fortran/CMakeLists.txt 2022-12-10 13:14:25.048238392 +0100 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,8 +10,8 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.27.0-Source.unchanged/src/CMakeLists.txt 2022-08-24 14:01:27.000000000 +0200 -+++ eccodes-2.27.0-Source/src/CMakeLists.txt 2022-08-28 11:34:40.941638710 +0200 +--- eccodes-2.27.1-Source.unchanged/src/CMakeLists.txt 2022-12-02 23:16:06.000000000 +0100 ++++ eccodes-2.27.1-Source/src/CMakeLists.txt 2022-12-10 13:14:25.070237838 +0100 @@ -446,6 +446,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} diff --git a/eccodes.rpmlintrc b/eccodes.rpmlintrc deleted file mode 100644 index 60064d2..0000000 --- a/eccodes.rpmlintrc +++ /dev/null @@ -1,56 +0,0 @@ -# use like this: -# rpmlint --file eccodes.rpmlintrc *.rpm -# example: addFilter ("^foo-.*regex-match-for-rpmlint-warning") - -# these are invalid spelling warnings. GRIB and BUFR are correct, since these are -# the names of the data files that this software handles. -# the description itself is a 1-to-1 copy of what the (UK-based) upstream -# writes, and I am not going to translate this to US spelling ... -addFilter ("W: spelling-error %description -l en_US behaviour -> behavior") -addFilter ("W: spelling-error %description -l en_US grib ->") -addFilter ("W: spelling-error %description -l en_US bufr ->") - -# this data file with wrong line ending has been added to the software on purpose -# for testing purposes, so this is no mistake -addFilter ("eccodes-doc.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/eccodes/examples/python/flight_data.csv") - -# these data files are no scripts. The dataformat just has an unfortunate first line -# starting with #! so it resembles a shebang line. -# see also comment #3 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 -addFilter ("^eccodes-data.noarch: E: wrong-script-interpreter /usr/share/eccodes/definitions/grib1/local.82.0.def") -addFilter ("^eccodes-data.noarch: E: non-executable-script /usr/share/eccodes/definitions/grib1/local.82.0.def") -addFilter ("^eccodes-data.noarch: E: wrong-script-interpreter /usr/share/eccodes/definitions/grib1/local.82.83.def") -addFilter ("^eccodes-data.noarch: E: non-executable-script /usr/share/eccodes/definitions/grib1/local.82.83.def") - -# this is a false error (its an rpmlint bug). -# the spec file now uses %ldconfig_scriptlets in stead of the old ldconfig-postin/postun -# see also comment #18 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 -addFilter ("^eccodes.x86_64: E: library-without-ldconfig-postin /usr/lib64/libeccodes.so.0.1") -addFilter ("^eccodes.x86_64: E: library-without-ldconfig-postun /usr/lib64/libeccodes.so.0.1") -addFilter ("^eccodes.x86_64: E: library-without-ldconfig-postin /usr/lib64/libeccodes_f90.so.0.1") -addFilter ("^eccodes.x86_64: E: library-without-ldconfig-postun /usr/lib64/libeccodes_f90.so.0.1") - -# this is an rpmlint bug -# see also comment #8 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 -addFilter ("eccodes-debuginfo.x86_64: E: useless-provides debuginfo\(build-id\)") - -# there is no full compatibility between the old grib_api and the new eccodes -# so only obsoletes can be used bu no provides. -# see also comment #21 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 -addFilter ("^eccodes.x86_64: W: obsolete-not-provided grib_api") -addFilter ("^eccodes-devel.x86_64: W: obsolete-not-provided grib_api-devel") -addFilter ("^eccodes-devel.x86_64: W: only-non-binary-in-usr-lib") - -# documentation is in a dedicated doc subpackage, -# so these warnings have no merit -addFilter ("python2-eccodes.x86_64: W: no-documentation") -addFilter ("eccodes-debugsource.x86_64: W: no-documentation") -addFilter ("eccodes-devel.x86_64: W: no-documentation") -addFilter ("eccodes-data.noarch: W: no-documentation") - -# temporary disable the man page warning, since it obscures other problems that -# may be more important, and it has already been reported upstream -# see also comment #3 in the review request at https://bugzilla.redhat.com/show_bug.cgi?id=1508950 -addFilter ("eccodes.x86_64: W: no-manual-page-for-binary") - -# addFilter ("") diff --git a/eccodes.spec b/eccodes.spec index eb1d9aa..bb0df97 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.27.0 +Version: 2.27.1 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -30,7 +30,7 @@ Summary: WMO data format decoding and encoding # contain a special exception clause that allows them to be # relicensed if they are included in a larger project -License: ASL 2.0 +License: Apache-2.0 URL: https://confluence.ecmwf.int/display/ECC/ecCodes+Home Source0: https://confluence.ecmwf.int/download/attachments/45757960/eccodes-%{version}-Source.tar.gz @@ -278,10 +278,11 @@ cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 # create man pages for the tools that support the --help option # since upstream does not provide them. +# Source2 points to the script eccodes_create_man_pages.sh +# used to generate the man pages. LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ -%{_sourcedir}/eccodes_create_man_pages.sh \ - %{_vpath_builddir}/bin \ - %{_vpath_builddir}/man +%{SOURCE2} %{_vpath_builddir}/bin \ + %{_vpath_builddir}/man # copy the created man pages to the install directory mkdir -p %{buildroot}%{_datadir}/man/man1 @@ -357,6 +358,12 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Dec 10 2022 Jos de Kloe - 2.27.1-1 +- Upgrade to upstream version 2.27.1 and SPDX migration + +* Wed Sep 14 2022 Jos de Kloe - 2.27.0-2 +- fix problem with use of _sourcedir + * Mon Aug 29 2022 Jos de Kloe - 2.27.0-1 - Upgrade to upstream version 2.27.0 - Added generation of man pages for tools that support the --help option diff --git a/sources b/sources index 8fdbe94..4b450ec 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ SHA512 (eccodes-2.26.0-Source.tar.gz) = cd4fd2048ad98a4a5c82a0a233b2e64eb67a195d42637607423669351b6cd295b111a382f6d9ecb05ffe25f79599bf3963550ca27d84e7f9ef55e499e183a35f SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb72121526065b0cf4da144c7499b8d38bebae0952ddbd20ef0eb53fad77ada60160039340da01001f19fbb7fb1ccbb3d0547a SHA512 (eccodes-2.27.0-Source.tar.gz) = b33d9a4b4abeaa2fae632fe6a4e19071769282c80b7f91f1aaa57f9908386b7c6bd842de69c4bb1b7da2bc3298b5248c808f5c94909033ef5c4a764ae85db5fa +SHA512 (eccodes-2.27.1-Source.tar.gz) = 51ba1f53913a6ae7d28f5ffc393a2ac76547be0f88e4b1700601d36863a46135e3164bc36db48d41287aa3e535664d534d0c3ca347eeb6390d6a6ac4df4fd55c From 0573e805216ac51990c849b2da84fb3dddf952b0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 02:03:49 +0000 Subject: [PATCH 107/147] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index bb0df97..89c0260 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.27.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -358,6 +358,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Jan 19 2023 Fedora Release Engineering - 2.27.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Sat Dec 10 2022 Jos de Kloe - 2.27.1-1 - Upgrade to upstream version 2.27.1 and SPDX migration From 5d93d468edd6c804c324b383d0367531c3df23cb Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 12 Feb 2023 14:31:37 +0100 Subject: [PATCH 108/147] update to new upstream version 2.28.0 --- .gitignore | 1 + eccodes-soversion.patch | 8 ++++---- eccodes.rpmlintrc | 13 +++++++++++++ eccodes.spec | 11 +++++++---- sources | 1 + 5 files changed, 26 insertions(+), 8 deletions(-) create mode 100644 eccodes.rpmlintrc diff --git a/.gitignore b/.gitignore index 768be79..88c4776 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /eccodes_test_data_20220526.tar.gz /eccodes-2.27.0-Source.tar.gz /eccodes-2.27.1-Source.tar.gz +/eccodes-2.28.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 401214a..3ed1fa1 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.27.1-Source.unchanged/fortran/CMakeLists.txt 2022-12-02 23:16:06.000000000 +0100 -+++ eccodes-2.27.1-Source/fortran/CMakeLists.txt 2022-12-10 13:14:25.048238392 +0100 +--- eccodes-2.28.0-Source.unchanged/fortran/CMakeLists.txt 2023-01-26 15:41:54.000000000 +0100 ++++ eccodes-2.28.0-Source/fortran/CMakeLists.txt 2023-02-12 11:32:34.172600699 +0100 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,8 +10,8 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.27.1-Source.unchanged/src/CMakeLists.txt 2022-12-02 23:16:06.000000000 +0100 -+++ eccodes-2.27.1-Source/src/CMakeLists.txt 2022-12-10 13:14:25.070237838 +0100 +--- eccodes-2.28.0-Source.unchanged/src/CMakeLists.txt 2023-01-26 15:41:54.000000000 +0100 ++++ eccodes-2.28.0-Source/src/CMakeLists.txt 2023-02-12 11:32:34.190600251 +0100 @@ -446,6 +446,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} diff --git a/eccodes.rpmlintrc b/eccodes.rpmlintrc new file mode 100644 index 0000000..b6c8fb4 --- /dev/null +++ b/eccodes.rpmlintrc @@ -0,0 +1,13 @@ + +# Disable warning on duplicate files. +# This package uses a huge number (1990 cases at the time of wrinting) +# duplicates in the tables definitions, and patching this is totally +# out of scope for my limited time. +addFilter(r" W: files-duplicate ") +addFilter(r" E: files-duplicated-waste ") + +# Disable warnings on missing man pages. +# The tools that have --help output have been fixed by using help2man. +# The remaining ones have no help output whatsoever and are not easy to fix. +addFilter(r" W: no-manual-page-for-binary ") + diff --git a/eccodes.spec b/eccodes.spec index 89c0260..3dc1592 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.27.1 -Release: 2%{?dist} +Version: 2.28.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -8,7 +8,7 @@ Summary: WMO data format decoding and encoding %global so_version_f90 0.1 %global datapack_date 20220526 -# latest fedora-38/rawhide grib_api version is 1.27.0-16 +# latest fedora-38/rawhide grib_api version is 1.27.0-18 # but this version number is to be updated as soon as we know # what the final release of grib_api by upstream will be. # latest upstream grib_api release is 1.28.0 (05-Dec-2018) @@ -289,7 +289,7 @@ mkdir -p %{buildroot}%{_datadir}/man/man1 cp %{_vpath_builddir}/man/*.1 %{buildroot}%{_datadir}/man/man1 # Fix permissions -chmod 644 AUTHORS +chmod 644 AUTHORS LICENSE # also not needed for x86_64 # maybe they fixed it for all archs? @@ -358,6 +358,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Feb 12 2023 Jos de Kloe - 2.28.0-1 +- Upgrade to upstream version 2.28.0 + * Thu Jan 19 2023 Fedora Release Engineering - 2.27.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild diff --git a/sources b/sources index 4b450ec..e045f02 100644 --- a/sources +++ b/sources @@ -2,3 +2,4 @@ SHA512 (eccodes-2.26.0-Source.tar.gz) = cd4fd2048ad98a4a5c82a0a233b2e64eb67a195d SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb72121526065b0cf4da144c7499b8d38bebae0952ddbd20ef0eb53fad77ada60160039340da01001f19fbb7fb1ccbb3d0547a SHA512 (eccodes-2.27.0-Source.tar.gz) = b33d9a4b4abeaa2fae632fe6a4e19071769282c80b7f91f1aaa57f9908386b7c6bd842de69c4bb1b7da2bc3298b5248c808f5c94909033ef5c4a764ae85db5fa SHA512 (eccodes-2.27.1-Source.tar.gz) = 51ba1f53913a6ae7d28f5ffc393a2ac76547be0f88e4b1700601d36863a46135e3164bc36db48d41287aa3e535664d534d0c3ca347eeb6390d6a6ac4df4fd55c +SHA512 (eccodes-2.28.0-Source.tar.gz) = d4fe307c807862f60a1f6629ca009c3eb633a6fb94d5049923bfc3fdd00b091ce233675abd5c33adfc8b61a23473491b4c71f51864584f490674ba93cc20370f From f36befe7e1335a95fa026b853f9621b6c5b69ebd Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 26 Mar 2023 13:46:53 +0200 Subject: [PATCH 109/147] new upstream version 2.29.0 --- .gitignore | 1 + eccodes-soversion.patch | 10 +++++----- eccodes.spec | 17 +++++++---------- sources | 1 + 4 files changed, 14 insertions(+), 15 deletions(-) diff --git a/.gitignore b/.gitignore index 88c4776..14fec01 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /eccodes-2.27.0-Source.tar.gz /eccodes-2.27.1-Source.tar.gz /eccodes-2.28.0-Source.tar.gz +/eccodes-2.29.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 3ed1fa1..6646502 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.28.0-Source.unchanged/fortran/CMakeLists.txt 2023-01-26 15:41:54.000000000 +0100 -+++ eccodes-2.28.0-Source/fortran/CMakeLists.txt 2023-02-12 11:32:34.172600699 +0100 +--- eccodes-2.29.0-Source.unchanged/fortran/CMakeLists.txt 2023-03-14 12:55:29.000000000 +0100 ++++ eccodes-2.29.0-Source/fortran/CMakeLists.txt 2023-03-26 13:20:18.495793176 +0200 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.28.0-Source.unchanged/src/CMakeLists.txt 2023-01-26 15:41:54.000000000 +0100 -+++ eccodes-2.28.0-Source/src/CMakeLists.txt 2023-02-12 11:32:34.190600251 +0100 -@@ -446,6 +446,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.29.0-Source.unchanged/src/CMakeLists.txt 2023-03-14 12:55:29.000000000 +0100 ++++ eccodes-2.29.0-Source/src/CMakeLists.txt 2023-03-26 13:20:18.518792626 +0200 +@@ -438,6 +438,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index 3dc1592..3197b7f 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.28.0 +Version: 2.29.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -52,7 +52,7 @@ Patch1: eccodes-soversion.patch # (and again, unfortunately this issue is not public) BuildRequires: cmake3 -BuildRequires: gcc +BuildRequires: gcc-c++ BuildRequires: gcc-gfortran BuildRequires: /usr/bin/git BuildRequires: jasper-devel @@ -209,12 +209,6 @@ popd # * ENABLE_NETCDF # NetCDF is only needed to create the grib_to_netcdf convert tool # -# * ENABLE_PYTHON has value AUTO as default, so if python2 is available -# during a package build it will build an interface for it. -# To make sure it does not do so, explicitely switch it off. -# Python3 support has been moved to an additional project now, -# so python handling has been removed completely from this spec file. -# #-- Also add an explicit option to not use rpath # # Note: -DINSTALL_LIB_DIR=%%{_lib} is needed because otherwise @@ -236,8 +230,7 @@ popd -DCMAKE_SKIP_INSTALL_RPATH=TRUE \ -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ - -DCMAKE_Fortran_FLAGS="-fPIC" \ - -DENABLE_PYTHON2=OFF + -DCMAKE_Fortran_FLAGS="-fPIC" # note the final '..' is no longer needed to the cmake3 call. # this is now hidden in the %%cmake3 macro @@ -358,6 +351,10 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Mar 26 2023 Jos de Kloe - 2.29.0-1 +- Upgrade to upstream version 2.29.0 + Note that the source code now uses g++ in stead of gcc for compilation. + * Sun Feb 12 2023 Jos de Kloe - 2.28.0-1 - Upgrade to upstream version 2.28.0 diff --git a/sources b/sources index e045f02..b72238a 100644 --- a/sources +++ b/sources @@ -3,3 +3,4 @@ SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb7212152 SHA512 (eccodes-2.27.0-Source.tar.gz) = b33d9a4b4abeaa2fae632fe6a4e19071769282c80b7f91f1aaa57f9908386b7c6bd842de69c4bb1b7da2bc3298b5248c808f5c94909033ef5c4a764ae85db5fa SHA512 (eccodes-2.27.1-Source.tar.gz) = 51ba1f53913a6ae7d28f5ffc393a2ac76547be0f88e4b1700601d36863a46135e3164bc36db48d41287aa3e535664d534d0c3ca347eeb6390d6a6ac4df4fd55c SHA512 (eccodes-2.28.0-Source.tar.gz) = d4fe307c807862f60a1f6629ca009c3eb633a6fb94d5049923bfc3fdd00b091ce233675abd5c33adfc8b61a23473491b4c71f51864584f490674ba93cc20370f +SHA512 (eccodes-2.29.0-Source.tar.gz) = 83d7848eb85026081dda9d83e4d63655c81f004a6fb9eabf40b964c4584b984269b960e9ca9bad616bbc3b9ae7c08a758bf85c01b863ed9b371ae0f80eba5993 From 49e412560155c3025e740dd67e5bd8dd8088f667 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 16 Apr 2023 20:02:50 +0200 Subject: [PATCH 110/147] update to upstream version 2.30.0 --- .gitignore | 1 + eccodes.spec | 6 ++++-- sources | 1 + 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 14fec01..adb9d23 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /eccodes-2.27.1-Source.tar.gz /eccodes-2.28.0-Source.tar.gz /eccodes-2.29.0-Source.tar.gz +/eccodes-2.30.0-Source.tar.gz diff --git a/eccodes.spec b/eccodes.spec index 3197b7f..7e62b3a 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.29.0 +Version: 2.30.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -189,7 +189,6 @@ popd #-- The following features are disabled by default and not switched on: # -# * AEC , support for Adaptive Entropy Coding # * MEMFS , Memory based access to definitions/samples # * MEMORY_MANAGEMENT , enable memory management # * ALIGN_MEMORY , enable memory alignment @@ -351,6 +350,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Apr 16 2023 Jos de Kloe - 2.30.0-1 +- Upgrade to upstream version 2.30.0 + * Sun Mar 26 2023 Jos de Kloe - 2.29.0-1 - Upgrade to upstream version 2.29.0 Note that the source code now uses g++ in stead of gcc for compilation. diff --git a/sources b/sources index b72238a..b8436d4 100644 --- a/sources +++ b/sources @@ -4,3 +4,4 @@ SHA512 (eccodes-2.27.0-Source.tar.gz) = b33d9a4b4abeaa2fae632fe6a4e19071769282c8 SHA512 (eccodes-2.27.1-Source.tar.gz) = 51ba1f53913a6ae7d28f5ffc393a2ac76547be0f88e4b1700601d36863a46135e3164bc36db48d41287aa3e535664d534d0c3ca347eeb6390d6a6ac4df4fd55c SHA512 (eccodes-2.28.0-Source.tar.gz) = d4fe307c807862f60a1f6629ca009c3eb633a6fb94d5049923bfc3fdd00b091ce233675abd5c33adfc8b61a23473491b4c71f51864584f490674ba93cc20370f SHA512 (eccodes-2.29.0-Source.tar.gz) = 83d7848eb85026081dda9d83e4d63655c81f004a6fb9eabf40b964c4584b984269b960e9ca9bad616bbc3b9ae7c08a758bf85c01b863ed9b371ae0f80eba5993 +SHA512 (eccodes-2.30.0-Source.tar.gz) = 07b67cef67cefb32ad4581813ed8814f9394d27846c8bc41b78b1504d296f84547d1fb72ce4813f214fe09b9391449995dd53cf9ae7d27721e2b34353ee58b00 From 814ebdee0608df1318261c71c449a63108909837 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 18 May 2023 17:22:41 +0200 Subject: [PATCH 111/147] upgrade to new upstream version 2.30.0, and ensure AEC is enabled, and SPDX license migration. --- .gitignore | 1 + README.md | 15 +++++++++++++ eccodes-soversion.patch | 10 ++++----- eccodes.rpmlintrc | 13 +++++++++++ eccodes.spec | 43 +++++++++++++++++++++++++++++++------ eccodes_create_man_pages.sh | 28 ++++++++++++++++++++++++ sources | 2 +- 7 files changed, 99 insertions(+), 13 deletions(-) create mode 100644 eccodes.rpmlintrc create mode 100755 eccodes_create_man_pages.sh diff --git a/.gitignore b/.gitignore index b3652b6..1ac409f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /eccodes-2.26.0-Source.tar.gz /eccodes_test_data_20220526.tar.gz +/eccodes-2.30.0-Source.tar.gz diff --git a/README.md b/README.md index 035f9e0..f4658ba 100644 --- a/README.md +++ b/README.md @@ -12,3 +12,18 @@ messages in the following formats: For further details see: https://confluence.ecmwf.int/display/ECC/What+is+ecCodes + +Note for end users: +epel policy is to keep software versions stable for a given epel version +unless there is a strong reason why an update is needed +(for example security issues or malfunction). + +Since eccodes depends on a large collection of table definitions +that are included in the package, after some time these tables +(holding the WMO file format definitions for GRIB and BUFR files, +which are updated every 6 months) will become outdated, and new files +using these formats can not be used. + +If this is a problem for you, please raise the issue in bugzilla. +Since this is a malfunction from user perspective this is a +reason to update the package. diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 0cf8084..6646502 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.26.0-Source.unchanged/fortran/CMakeLists.txt 2022-05-18 13:20:10.000000000 +0200 -+++ eccodes-2.26.0-Source/fortran/CMakeLists.txt 2022-05-26 14:15:01.080533587 +0200 +--- eccodes-2.29.0-Source.unchanged/fortran/CMakeLists.txt 2023-03-14 12:55:29.000000000 +0100 ++++ eccodes-2.29.0-Source/fortran/CMakeLists.txt 2023-03-26 13:20:18.495793176 +0200 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.26.0-Source.unchanged/src/CMakeLists.txt 2022-05-18 13:20:10.000000000 +0200 -+++ eccodes-2.26.0-Source/src/CMakeLists.txt 2022-05-26 14:18:49.300260787 +0200 -@@ -437,6 +437,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.29.0-Source.unchanged/src/CMakeLists.txt 2023-03-14 12:55:29.000000000 +0100 ++++ eccodes-2.29.0-Source/src/CMakeLists.txt 2023-03-26 13:20:18.518792626 +0200 +@@ -438,6 +438,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.rpmlintrc b/eccodes.rpmlintrc new file mode 100644 index 0000000..b6c8fb4 --- /dev/null +++ b/eccodes.rpmlintrc @@ -0,0 +1,13 @@ + +# Disable warning on duplicate files. +# This package uses a huge number (1990 cases at the time of wrinting) +# duplicates in the tables definitions, and patching this is totally +# out of scope for my limited time. +addFilter(r" W: files-duplicate ") +addFilter(r" E: files-duplicated-waste ") + +# Disable warnings on missing man pages. +# The tools that have --help output have been fixed by using help2man. +# The remaining ones have no help output whatsoever and are not easy to fix. +addFilter(r" W: no-manual-page-for-binary ") + diff --git a/eccodes.spec b/eccodes.spec index b3e42cc..81a1106 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.26.0 +Version: 2.30.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -9,28 +9,33 @@ Summary: WMO data format decoding and encoding %global datapack_date 20220526 # license remarks: -# Most of eccodes is licensed ASL 2.0 but a special case must be noted. +# Most of eccodes is licensed ASL 2.0 (which is identical to the SPDX +# identifier Apache-2.0) but a special case must be noted. # These 2 files: # src/grib_yacc.c # src/grib_yacc.h # contain a special exception clause that allows them to be # relicensed if they are included in a larger project -License: ASL 2.0 +License: Apache-2.0 URL: https://confluence.ecmwf.int/display/ECC/ecCodes+Home -Source0: https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-%{version}-Source.tar.gz +Source0: https://confluence.ecmwf.int/download/attachments/45757960/eccodes-%{version}-Source.tar.gz + # note: this data package is unversioned upstream but still it is updated # now and then so rename the datapack using the download date # to make it versioned in fedora Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz +# a custom script to create man pages +Source2: eccodes_create_man_pages.sh + # Add soversion to the shared libraries, since upstream refuses to do so # https://jira.ecmwf.int/browse/SUP-1809 Patch1: eccodes-soversion.patch BuildRequires: cmake3 -BuildRequires: gcc +BuildRequires: gcc-c++ BuildRequires: gcc-gfortran BuildRequires: /usr/bin/git BuildRequires: jasper-devel @@ -45,6 +50,9 @@ BuildRequires: perl(Getopt::Long) BuildRequires: perl(Test::More) BuildRequires: perl(File::Compare) +# For creation of man pages +BuildRequires: help2man + # the data is needed by the library and all tools provided in the main package # the other way around, the data package could be installed without # installing the base package. It will probably be pretty useless, @@ -130,7 +138,6 @@ popd #-- The following features are disabled by default and not switched on: # -# * AEC , support for Adaptive Entropy Coding # * MEMFS , Memory based access to definitions/samples # * MEMORY_MANAGEMENT , enable memory management # * ALIGN_MEMORY , enable memory alignment @@ -178,7 +185,8 @@ popd -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ -DCMAKE_Fortran_FLAGS="-fPIC" \ - -DENABLE_PYTHON2=OFF + -DENABLE_PYTHON2=OFF \ + -DENABLE_AEC=ON # note the final '..' is no longer needed to the cmake3 call. # this is now hidden in the %%cmake3 macro @@ -217,6 +225,21 @@ cp examples/C/*.c %{buildroot}%{_datadir}/doc/%{name}/examples/C mkdir -p %{buildroot}%{_datadir}/doc/%{name}/examples/F90 cp examples/F90/*.f90 %{buildroot}%{_datadir}/doc/%{name}/examples/F90 +# create man pages for the tools that support the --help option +# since upstream does not provide them. +# Source2 points to the script eccodes_create_man_pages.sh +# used to generate the man pages. +LD_LIBRARY_PATH=%{buildroot}/%{_libdir} \ +%{SOURCE2} %{_vpath_builddir}/bin \ + %{_vpath_builddir}/man + +# copy the created man pages to the install directory +mkdir -p %{buildroot}%{_datadir}/man/man1 +cp %{_vpath_builddir}/man/*.1 %{buildroot}%{_datadir}/man/man1 + +# Fix permissions +chmod 644 AUTHORS LICENSE + # It seems the cmake options # -DCMAKE_SKIP_RPATH=TRUE # -DCMAKE_SKIP_INSTALL_RPATH=TRUE @@ -251,6 +274,7 @@ ctest3 -V %{?_smp_mflags} %doc README.md ChangeLog AUTHORS NEWS NOTICE %{_bindir}/* %{_libdir}/*.so.* +%{_mandir}/man1/*.1* %files devel %{_includedir}/* @@ -272,5 +296,10 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu May 18 2023 Jos de Kloe - 2.30.0-1 +- Upgrade to upstream version 2.30.0 +- explicitly switch on ENABLE_AEC +- migrated to SPDX license + * Fri Jun 3 2022 Jos de Kloe - 2.26.0-1 - First epel9 version diff --git a/eccodes_create_man_pages.sh b/eccodes_create_man_pages.sh new file mode 100755 index 0000000..6ca4bfe --- /dev/null +++ b/eccodes_create_man_pages.sh @@ -0,0 +1,28 @@ +#!/bin/sh + +# a simple script to create man pages for tools +# provided in the bin dir after installation of eccodes. +# +# Written by: J. de Kloe, 2022. + +BINDIR=$1 +DESTDIR=$2 + +if [ ! -e "$DESTDIR" ] ; then + mkdir -p "$DESTDIR" +fi + +for TOOL in "$BINDIR"/* +do + BASENAME=$(basename "$TOOL") + help2man --no-info --output="${DESTDIR}/${BASENAME}.1" "${TOOL}" +done + +# currently (29-Aug-2022) help2man fails on these 5 tools: +# help2man: can't get `--help' info from ../bin/bufr_count +# help2man: can't get `--help' info from ../bin/codes_count +# help2man: can't get `--help' info from ../bin/grib2ppm +# help2man: can't get `--help' info from ../bin/grib_count +# help2man: can't get `--help' info from ../bin/gts_count + +echo "done" diff --git a/sources b/sources index 6d7fcc8..83a0a88 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (eccodes-2.26.0-Source.tar.gz) = cd4fd2048ad98a4a5c82a0a233b2e64eb67a195d42637607423669351b6cd295b111a382f6d9ecb05ffe25f79599bf3963550ca27d84e7f9ef55e499e183a35f SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb72121526065b0cf4da144c7499b8d38bebae0952ddbd20ef0eb53fad77ada60160039340da01001f19fbb7fb1ccbb3d0547a +SHA512 (eccodes-2.30.0-Source.tar.gz) = 07b67cef67cefb32ad4581813ed8814f9394d27846c8bc41b78b1504d296f84547d1fb72ce4813f214fe09b9391449995dd53cf9ae7d27721e2b34353ee58b00 From 0f7b84f6619d1f6e8e23e4830cccbc449aa8ade4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jul 2023 18:11:12 +0000 Subject: [PATCH 112/147] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 7e62b3a..2c2daea 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.30.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -350,6 +350,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Jul 19 2023 Fedora Release Engineering - 2.30.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Sun Apr 16 2023 Jos de Kloe - 2.30.0-1 - Upgrade to upstream version 2.30.0 From 921dbf79c3d0ba2ca1b2a0601e8479d49046927b Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 27 Jul 2023 17:20:21 +0200 Subject: [PATCH 113/147] update to upstream version 2.31.0 --- eccodes-soversion.patch | 10 +++++----- eccodes.spec | 10 +++++++--- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 6646502..0fe79eb 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.29.0-Source.unchanged/fortran/CMakeLists.txt 2023-03-14 12:55:29.000000000 +0100 -+++ eccodes-2.29.0-Source/fortran/CMakeLists.txt 2023-03-26 13:20:18.495793176 +0200 +--- eccodes-2.31.0-Source.unchanged/fortran/CMakeLists.txt 2023-07-11 12:23:31.000000000 +0200 ++++ eccodes-2.31.0-Source/fortran/CMakeLists.txt 2023-07-27 16:51:03.866574555 +0200 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.29.0-Source.unchanged/src/CMakeLists.txt 2023-03-14 12:55:29.000000000 +0100 -+++ eccodes-2.29.0-Source/src/CMakeLists.txt 2023-03-26 13:20:18.518792626 +0200 -@@ -438,6 +438,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.31.0-Source.unchanged/src/CMakeLists.txt 2023-07-11 12:23:31.000000000 +0200 ++++ eccodes-2.31.0-Source/src/CMakeLists.txt 2023-07-27 16:51:03.887574092 +0200 +@@ -427,6 +427,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index 2c2daea..2922ccd 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes -Version: 2.30.0 -Release: 2%{?dist} +Version: 2.31.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -23,7 +23,8 @@ Summary: WMO data format decoding and encoding %endif # license remarks: -# Most of eccodes is licensed ASL 2.0 but a special case must be noted. +# Most of eccodes is licensed ASL 2.0 (which is identical to the SPDX +# identifier Apache-2.0) but a special case must be noted. # These 2 files: # src/grib_yacc.c # src/grib_yacc.h @@ -350,6 +351,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Jul 27 2023 Jos de Kloe - 2.31.0-1 +- Upgrade to upstream version 2.31.0 + * Wed Jul 19 2023 Fedora Release Engineering - 2.30.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 1b7a8f02c9c0bb64352791251a6a22889419f6cf Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 27 Jul 2023 17:22:01 +0200 Subject: [PATCH 114/147] new source code version --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index adb9d23..11b2cc3 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /eccodes-2.28.0-Source.tar.gz /eccodes-2.29.0-Source.tar.gz /eccodes-2.30.0-Source.tar.gz +/eccodes-2.31.0-Source.tar.gz diff --git a/sources b/sources index b8436d4..b09e197 100644 --- a/sources +++ b/sources @@ -5,3 +5,4 @@ SHA512 (eccodes-2.27.1-Source.tar.gz) = 51ba1f53913a6ae7d28f5ffc393a2ac76547be0f SHA512 (eccodes-2.28.0-Source.tar.gz) = d4fe307c807862f60a1f6629ca009c3eb633a6fb94d5049923bfc3fdd00b091ce233675abd5c33adfc8b61a23473491b4c71f51864584f490674ba93cc20370f SHA512 (eccodes-2.29.0-Source.tar.gz) = 83d7848eb85026081dda9d83e4d63655c81f004a6fb9eabf40b964c4584b984269b960e9ca9bad616bbc3b9ae7c08a758bf85c01b863ed9b371ae0f80eba5993 SHA512 (eccodes-2.30.0-Source.tar.gz) = 07b67cef67cefb32ad4581813ed8814f9394d27846c8bc41b78b1504d296f84547d1fb72ce4813f214fe09b9391449995dd53cf9ae7d27721e2b34353ee58b00 +SHA512 (eccodes-2.31.0-Source.tar.gz) = f3fe70ad0a765ae6e9d23b1b0c6ac96ad81a8324b15b7ebbcc958ffa1a046079d4a9953d720a8c15ac421897059a74c96ea678254f59c88538e3dd4970da131c From 87163d333cf6cf35bd56737cc7329601297768e6 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 9 Sep 2023 15:57:29 +0200 Subject: [PATCH 115/147] Upgrade to upstream version 2.31.0 at user request. See bg2236797 --- .gitignore | 1 + eccodes-soversion.patch | 10 +++++----- eccodes.spec | 5 ++++- sources | 1 + 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index 1ac409f..2939489 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /eccodes-2.26.0-Source.tar.gz /eccodes_test_data_20220526.tar.gz /eccodes-2.30.0-Source.tar.gz +/eccodes-2.31.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 6646502..0fe79eb 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.29.0-Source.unchanged/fortran/CMakeLists.txt 2023-03-14 12:55:29.000000000 +0100 -+++ eccodes-2.29.0-Source/fortran/CMakeLists.txt 2023-03-26 13:20:18.495793176 +0200 +--- eccodes-2.31.0-Source.unchanged/fortran/CMakeLists.txt 2023-07-11 12:23:31.000000000 +0200 ++++ eccodes-2.31.0-Source/fortran/CMakeLists.txt 2023-07-27 16:51:03.866574555 +0200 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.29.0-Source.unchanged/src/CMakeLists.txt 2023-03-14 12:55:29.000000000 +0100 -+++ eccodes-2.29.0-Source/src/CMakeLists.txt 2023-03-26 13:20:18.518792626 +0200 -@@ -438,6 +438,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.31.0-Source.unchanged/src/CMakeLists.txt 2023-07-11 12:23:31.000000000 +0200 ++++ eccodes-2.31.0-Source/src/CMakeLists.txt 2023-07-27 16:51:03.887574092 +0200 +@@ -427,6 +427,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index 81a1106..320c9e1 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,5 +1,5 @@ Name: eccodes -Version: 2.30.0 +Version: 2.31.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -296,6 +296,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Sep 09 2023 Jos de Kloe - 2.31.0-1 +- Upgrade to upstream version 2.31.0 + * Thu May 18 2023 Jos de Kloe - 2.30.0-1 - Upgrade to upstream version 2.30.0 - explicitly switch on ENABLE_AEC diff --git a/sources b/sources index 83a0a88..88bfe9e 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb72121526065b0cf4da144c7499b8d38bebae0952ddbd20ef0eb53fad77ada60160039340da01001f19fbb7fb1ccbb3d0547a SHA512 (eccodes-2.30.0-Source.tar.gz) = 07b67cef67cefb32ad4581813ed8814f9394d27846c8bc41b78b1504d296f84547d1fb72ce4813f214fe09b9391449995dd53cf9ae7d27721e2b34353ee58b00 +SHA512 (eccodes-2.31.0-Source.tar.gz) = f3fe70ad0a765ae6e9d23b1b0c6ac96ad81a8324b15b7ebbcc958ffa1a046079d4a9953d720a8c15ac421897059a74c96ea678254f59c88538e3dd4970da131c From e8986e121e05bfed24eb62802fbc3f260a4f629c Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 2 Nov 2023 08:54:41 +0100 Subject: [PATCH 116/147] Upgrade to upstream version 2.32.1 and add updated test_data package --- .gitignore | 2 ++ eccodes-soversion.patch | 10 +++++----- eccodes.spec | 11 +++++++++-- sources | 2 ++ 4 files changed, 18 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 11b2cc3..d9d0b74 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,5 @@ /eccodes-2.29.0-Source.tar.gz /eccodes-2.30.0-Source.tar.gz /eccodes-2.31.0-Source.tar.gz +/eccodes-2.32.1-Source.tar.gz +/eccodes_test_data_20231101.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 0fe79eb..03b520c 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.31.0-Source.unchanged/fortran/CMakeLists.txt 2023-07-11 12:23:31.000000000 +0200 -+++ eccodes-2.31.0-Source/fortran/CMakeLists.txt 2023-07-27 16:51:03.866574555 +0200 +--- eccodes-2.32.1-Source.unchanged/fortran/CMakeLists.txt 2023-10-26 17:16:35.000000000 +0200 ++++ eccodes-2.32.1-Source/fortran/CMakeLists.txt 2023-10-29 15:39:34.397319711 +0100 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.31.0-Source.unchanged/src/CMakeLists.txt 2023-07-11 12:23:31.000000000 +0200 -+++ eccodes-2.31.0-Source/src/CMakeLists.txt 2023-07-27 16:51:03.887574092 +0200 -@@ -427,6 +427,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.32.1-Source.unchanged/src/CMakeLists.txt 2023-10-26 17:16:35.000000000 +0200 ++++ eccodes-2.32.1-Source/src/CMakeLists.txt 2023-10-29 15:39:34.397319711 +0100 +@@ -411,6 +411,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index 2922ccd..c77b1bb 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,12 +1,16 @@ Name: eccodes -Version: 2.31.0 +Version: 2.32.1 Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions %global so_version 0.1 %global so_version_f90 0.1 -%global datapack_date 20220526 + +# note that the test_data package provided on the ECMWF version +# is unversioned, so use the download date to discriminate +# between different versions. +%global datapack_date 20231101 # latest fedora-38/rawhide grib_api version is 1.27.0-18 # but this version number is to be updated as soon as we know @@ -351,6 +355,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Nov 02 2023 Jos de Kloe - 2.32.1-1 +- Upgrade to upstream version 2.32.1 and add updated test_data package + * Thu Jul 27 2023 Jos de Kloe - 2.31.0-1 - Upgrade to upstream version 2.31.0 diff --git a/sources b/sources index b09e197..28e346c 100644 --- a/sources +++ b/sources @@ -6,3 +6,5 @@ SHA512 (eccodes-2.28.0-Source.tar.gz) = d4fe307c807862f60a1f6629ca009c3eb633a6fb SHA512 (eccodes-2.29.0-Source.tar.gz) = 83d7848eb85026081dda9d83e4d63655c81f004a6fb9eabf40b964c4584b984269b960e9ca9bad616bbc3b9ae7c08a758bf85c01b863ed9b371ae0f80eba5993 SHA512 (eccodes-2.30.0-Source.tar.gz) = 07b67cef67cefb32ad4581813ed8814f9394d27846c8bc41b78b1504d296f84547d1fb72ce4813f214fe09b9391449995dd53cf9ae7d27721e2b34353ee58b00 SHA512 (eccodes-2.31.0-Source.tar.gz) = f3fe70ad0a765ae6e9d23b1b0c6ac96ad81a8324b15b7ebbcc958ffa1a046079d4a9953d720a8c15ac421897059a74c96ea678254f59c88538e3dd4970da131c +SHA512 (eccodes-2.32.1-Source.tar.gz) = 7fdb34cee0b656ebbecc04d654642b0524eb6e772c1d811471061698f4ec2d31da3be3d66ee697dd3e106f3e8024058b4c165c6dad59868af66a38949c956c77 +SHA512 (eccodes_test_data_20231101.tar.gz) = 86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e From ec997229b9b0077a9476f42688d18055d801f03a Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 26 Nov 2023 11:36:57 +0100 Subject: [PATCH 117/147] rebuild after so name jump of libjasper --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index c77b1bb..4c85f80 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,6 @@ Name: eccodes Version: 2.32.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -355,6 +355,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Nov 26 2023 Jos de Kloe - 2.32.1-1 +- rebuild after so name jump of libjasper + * Thu Nov 02 2023 Jos de Kloe - 2.32.1-1 - Upgrade to upstream version 2.32.1 and add updated test_data package From 898051186fd2e3baf0ae02b4f0adaa22236a35fd Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 26 Nov 2023 11:54:46 +0100 Subject: [PATCH 118/147] fix typo in change log --- eccodes.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 4c85f80..369dfa9 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -355,7 +355,7 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog -* Sun Nov 26 2023 Jos de Kloe - 2.32.1-1 +* Sun Nov 26 2023 Jos de Kloe - 2.32.1-2 - rebuild after so name jump of libjasper * Thu Nov 02 2023 Jos de Kloe - 2.32.1-1 From fa6f919939a62336ddfc46aae5b3bb76e9f8f032 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 26 Nov 2023 11:56:33 +0100 Subject: [PATCH 119/147] remove outdated rpmlintrc file --- eccodes.rpmlintrc | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 eccodes.rpmlintrc diff --git a/eccodes.rpmlintrc b/eccodes.rpmlintrc deleted file mode 100644 index b6c8fb4..0000000 --- a/eccodes.rpmlintrc +++ /dev/null @@ -1,13 +0,0 @@ - -# Disable warning on duplicate files. -# This package uses a huge number (1990 cases at the time of wrinting) -# duplicates in the tables definitions, and patching this is totally -# out of scope for my limited time. -addFilter(r" W: files-duplicate ") -addFilter(r" E: files-duplicated-waste ") - -# Disable warnings on missing man pages. -# The tools that have --help output have been fixed by using help2man. -# The remaining ones have no help output whatsoever and are not easy to fix. -addFilter(r" W: no-manual-page-for-binary ") - From c31f1653f7164c53c0370d6c125113535def6ac6 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Sat, 16 Dec 2023 19:33:29 -0700 Subject: [PATCH 120/147] Update to 2.33.0 --- .gitignore | 2 ++ eccodes.spec | 17 +++++++++++------ sources | 12 ++---------- 3 files changed, 15 insertions(+), 16 deletions(-) diff --git a/.gitignore b/.gitignore index d9d0b74..d311f8a 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,5 @@ /eccodes-2.31.0-Source.tar.gz /eccodes-2.32.1-Source.tar.gz /eccodes_test_data_20231101.tar.gz +/eccodes-2.33.0-Source.tar.gz +/eccodes_test_data_20231216.tar.gz diff --git a/eccodes.spec b/eccodes.spec index 369dfa9..95e9004 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,6 +1,10 @@ +%if 0%{?el8} +%undefine __cmake_in_source_build +%endif + Name: eccodes -Version: 2.32.1 -Release: 2%{?dist} +Version: 2.33.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -10,7 +14,7 @@ Summary: WMO data format decoding and encoding # note that the test_data package provided on the ECMWF version # is unversioned, so use the download date to discriminate # between different versions. -%global datapack_date 20231101 +%global datapack_date 20231216 # latest fedora-38/rawhide grib_api version is 1.27.0-18 # but this version number is to be updated as soon as we know @@ -43,7 +47,7 @@ Source0: https://confluence.ecmwf.int/download/attachments/45757960/eccod # note: this data package is unversioned upstream but still it is updated # now and then so rename the datapack using the download date # to make it versioned in fedora -Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz +Source1: https://get.ecmwf.int/repository/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz # a custom script to create man pages Source2: eccodes_create_man_pages.sh @@ -105,8 +109,6 @@ Obsoletes: grib_api < %{final_grib_api_version} # as explained in bugzilla #1562066 ExcludeArch: i686 -# as explained in bugzilla #1562084 -ExcludeArch: armv7hl %description ecCodes is a package developed by ECMWF which provides an application @@ -355,6 +357,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Dec 17 2023 Orion Poplawski - 2.33.0-1 +- Update to 2.33.0 + * Sun Nov 26 2023 Jos de Kloe - 2.32.1-2 - rebuild after so name jump of libjasper diff --git a/sources b/sources index 28e346c..e1bf13e 100644 --- a/sources +++ b/sources @@ -1,10 +1,2 @@ -SHA512 (eccodes-2.26.0-Source.tar.gz) = cd4fd2048ad98a4a5c82a0a233b2e64eb67a195d42637607423669351b6cd295b111a382f6d9ecb05ffe25f79599bf3963550ca27d84e7f9ef55e499e183a35f -SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb72121526065b0cf4da144c7499b8d38bebae0952ddbd20ef0eb53fad77ada60160039340da01001f19fbb7fb1ccbb3d0547a -SHA512 (eccodes-2.27.0-Source.tar.gz) = b33d9a4b4abeaa2fae632fe6a4e19071769282c80b7f91f1aaa57f9908386b7c6bd842de69c4bb1b7da2bc3298b5248c808f5c94909033ef5c4a764ae85db5fa -SHA512 (eccodes-2.27.1-Source.tar.gz) = 51ba1f53913a6ae7d28f5ffc393a2ac76547be0f88e4b1700601d36863a46135e3164bc36db48d41287aa3e535664d534d0c3ca347eeb6390d6a6ac4df4fd55c -SHA512 (eccodes-2.28.0-Source.tar.gz) = d4fe307c807862f60a1f6629ca009c3eb633a6fb94d5049923bfc3fdd00b091ce233675abd5c33adfc8b61a23473491b4c71f51864584f490674ba93cc20370f -SHA512 (eccodes-2.29.0-Source.tar.gz) = 83d7848eb85026081dda9d83e4d63655c81f004a6fb9eabf40b964c4584b984269b960e9ca9bad616bbc3b9ae7c08a758bf85c01b863ed9b371ae0f80eba5993 -SHA512 (eccodes-2.30.0-Source.tar.gz) = 07b67cef67cefb32ad4581813ed8814f9394d27846c8bc41b78b1504d296f84547d1fb72ce4813f214fe09b9391449995dd53cf9ae7d27721e2b34353ee58b00 -SHA512 (eccodes-2.31.0-Source.tar.gz) = f3fe70ad0a765ae6e9d23b1b0c6ac96ad81a8324b15b7ebbcc958ffa1a046079d4a9953d720a8c15ac421897059a74c96ea678254f59c88538e3dd4970da131c -SHA512 (eccodes-2.32.1-Source.tar.gz) = 7fdb34cee0b656ebbecc04d654642b0524eb6e772c1d811471061698f4ec2d31da3be3d66ee697dd3e106f3e8024058b4c165c6dad59868af66a38949c956c77 -SHA512 (eccodes_test_data_20231101.tar.gz) = 86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e +SHA512 (eccodes-2.33.0-Source.tar.gz) = 4afc2a9e59da54093eb318a1447904faac7371df980a57ce21e04ef98d1d7e02f10ef363a497d29f086b1f17a86ba4e46bf14898cd227eae8bbe0297c62b4183 +SHA512 (eccodes_test_data_20231216.tar.gz) = 86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e From 5ed17e85e53eee7b0d7b8001ada7939f5155806e Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Fri, 29 Dec 2023 14:01:02 +0100 Subject: [PATCH 121/147] import rawhide changes --- .gitignore | 2 + eccodes-soversion.patch | 10 +- eccodes.spec | 297 +++++++++++++++++++++++++++++++++++++--- sources | 2 + 4 files changed, 287 insertions(+), 24 deletions(-) diff --git a/.gitignore b/.gitignore index 2939489..5f2b0c5 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,5 @@ /eccodes_test_data_20220526.tar.gz /eccodes-2.30.0-Source.tar.gz /eccodes-2.31.0-Source.tar.gz +/eccodes-2.33.0-Source.tar.gz +/eccodes_test_data_20231216.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 0fe79eb..03b520c 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.31.0-Source.unchanged/fortran/CMakeLists.txt 2023-07-11 12:23:31.000000000 +0200 -+++ eccodes-2.31.0-Source/fortran/CMakeLists.txt 2023-07-27 16:51:03.866574555 +0200 +--- eccodes-2.32.1-Source.unchanged/fortran/CMakeLists.txt 2023-10-26 17:16:35.000000000 +0200 ++++ eccodes-2.32.1-Source/fortran/CMakeLists.txt 2023-10-29 15:39:34.397319711 +0100 @@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.31.0-Source.unchanged/src/CMakeLists.txt 2023-07-11 12:23:31.000000000 +0200 -+++ eccodes-2.31.0-Source/src/CMakeLists.txt 2023-07-27 16:51:03.887574092 +0200 -@@ -427,6 +427,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.32.1-Source.unchanged/src/CMakeLists.txt 2023-10-26 17:16:35.000000000 +0200 ++++ eccodes-2.32.1-Source/src/CMakeLists.txt 2023-10-29 15:39:34.397319711 +0100 +@@ -411,6 +411,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index 320c9e1..3add048 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -1,12 +1,34 @@ +%if 0%{?el9} +%undefine __cmake_in_source_build +%endif + Name: eccodes -Version: 2.31.0 +Version: 2.33.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions %global so_version 0.1 %global so_version_f90 0.1 -%global datapack_date 20220526 + +# note that the test_data package provided on the ECMWF version +# is unversioned, so use the download date to discriminate +# between different versions. +%global datapack_date 20231216 + +# latest fedora-38/rawhide grib_api version is 1.27.0-18 +# but this version number is to be updated as soon as we know +# what the final release of grib_api by upstream will be. +# latest upstream grib_api release is 1.28.0 (05-Dec-2018) +# as was written on https://confluence.ecmwf.int/display/GRIB/Home +# (Note that this page is no longer available, 17-Oct-2020) +%global final_grib_api_version 1.28.1-1%{?dist} + +%ifarch i686 ppc64 armv7hl + %global obsolete_grib_api 0 +%else + %global obsolete_grib_api 1 +%endif # license remarks: # Most of eccodes is licensed ASL 2.0 (which is identical to the SPDX @@ -25,7 +47,7 @@ Source0: https://confluence.ecmwf.int/download/attachments/45757960/eccod # note: this data package is unversioned upstream but still it is updated # now and then so rename the datapack using the download date # to make it versioned in fedora -Source1: http://download.ecmwf.org/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz +Source1: https://get.ecmwf.int/repository/test-data/eccodes/eccodes_test_data.tar.gz#/eccodes_test_data_%{datapack_date}.tar.gz # a custom script to create man pages Source2: eccodes_create_man_pages.sh @@ -34,6 +56,10 @@ Source2: eccodes_create_man_pages.sh # https://jira.ecmwf.int/browse/SUP-1809 Patch1: eccodes-soversion.patch +# note that the requests to make the other issues public are filed here: +# https://jira.ecmwf.int/browse/SUP-2073 +# (and again, unfortunately this issue is not public) + BuildRequires: cmake3 BuildRequires: gcc-c++ BuildRequires: gcc-gfortran @@ -60,6 +86,30 @@ BuildRequires: help2man # file format definitions. Requires: %{name}-data = %{version}-%{release} +# NOTE: upstream writes: +# """ +# For GRIB encoding and decoding, the GRIB-API functionality is provided +# fully in ecCodes with only minor interface and behaviour changes. +# Interfaces for C, Fortran 90 and Python are all maintained as in GRIB-API. +# However, the GRIB-API Fortran 77 interface is no longer available. +# """ +# Therefore, since the library name and pkg-config file content changes +# and fortran77 support was removed, this replacement package cannot be +# considered compatible enough and no Provides can be defined. +# +# Furthermore, upstream writes: +# "Please note that GRIB-API support is being discontinued at the end of 2018." +# So the old grib_api will need to be obsoleted. + +%if 0%{obsolete_grib_api} +# as stated in the note above, setting provides seems not correct here +# Provides: grib_api = %%{final_grib_api_version} +Obsoletes: grib_api < %{final_grib_api_version} +%endif + +# as explained in bugzilla #1562066 +ExcludeArch: i686 + %description ecCodes is a package developed by ECMWF which provides an application programming interface and a set of tools for decoding and encoding messages @@ -100,6 +150,11 @@ Requires: %{name}%{?_isa} = %{version}-%{release} Requires: gcc-gfortran%{?_isa} Requires: jasper-devel%{?_isa} +%if 0%{obsolete_grib_api} +# Provides: grib_api-devel = %%{final_grib_api_version} +Obsoletes: grib_api-devel < %{final_grib_api_version} +%endif + %description devel Header files and libraries for ecCodes. @@ -119,6 +174,9 @@ local definitions by ECMWF and other meteorological centers. Summary: Documentation and example code BuildArch: noarch +# a sub package grib_api-doc did not exist +# so no obsoletes needed here + %description doc This package contains the html documentation for ecCodes and a fair number of example programs and scripts to use it @@ -157,12 +215,6 @@ popd # * ENABLE_NETCDF # NetCDF is only needed to create the grib_to_netcdf convert tool # -# * ENABLE_PYTHON has value AUTO as default, so if python2 is available -# during a package build it will build an interface for it. -# To make sure it does not do so, explicitely switch it off. -# Python3 support has been moved to an additional project now, -# so python handling has been removed completely from this spec file. -# #-- Also add an explicit option to not use rpath # # Note: -DINSTALL_LIB_DIR=%%{_lib} is needed because otherwise @@ -184,9 +236,7 @@ popd -DCMAKE_SKIP_INSTALL_RPATH=TRUE \ -DECCODES_SOVERSION=%{so_version} \ -DECCODES_SOVERSION_F90=%{so_version_f90} \ - -DCMAKE_Fortran_FLAGS="-fPIC" \ - -DENABLE_PYTHON2=OFF \ - -DENABLE_AEC=ON + -DCMAKE_Fortran_FLAGS="-fPIC" # note the final '..' is no longer needed to the cmake3 call. # this is now hidden in the %%cmake3 macro @@ -240,6 +290,17 @@ cp %{_vpath_builddir}/man/*.1 %{buildroot}%{_datadir}/man/man1 # Fix permissions chmod 644 AUTHORS LICENSE +# also not needed for x86_64 +# maybe they fixed it for all archs? +#%%ifarch i686 armv7hl +# # pass (nothing to do) +#%%else +# # it seems pkgconfig files end up in lib in stead of lib64 now +# # so move them to the right place +# mv %%{buildroot}/%%{_usr}/lib/pkgconfig/ \ +# %%{buildroot}/%%{_libdir}/pkgconfig/ +#%%endif + # It seems the cmake options # -DCMAKE_SKIP_RPATH=TRUE # -DCMAKE_SKIP_INSTALL_RPATH=TRUE @@ -296,13 +357,211 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog -* Sat Sep 09 2023 Jos de Kloe - 2.31.0-1 +* Sun Dec 17 2023 Orion Poplawski - 2.33.0-1 +- Update to 2.33.0 + +* Sun Nov 26 2023 Jos de Kloe - 2.32.1-2 +- rebuild after so name jump of libjasper + +* Thu Nov 02 2023 Jos de Kloe - 2.32.1-1 +- Upgrade to upstream version 2.32.1 and add updated test_data package + +* Thu Jul 27 2023 Jos de Kloe - 2.31.0-1 - Upgrade to upstream version 2.31.0 -* Thu May 18 2023 Jos de Kloe - 2.30.0-1 -- Upgrade to upstream version 2.30.0 -- explicitly switch on ENABLE_AEC -- migrated to SPDX license +* Wed Jul 19 2023 Fedora Release Engineering - 2.30.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild -* Fri Jun 3 2022 Jos de Kloe - 2.26.0-1 -- First epel9 version +* Sun Apr 16 2023 Jos de Kloe - 2.30.0-1 +- Upgrade to upstream version 2.30.0 + +* Sun Mar 26 2023 Jos de Kloe - 2.29.0-1 +- Upgrade to upstream version 2.29.0 + Note that the source code now uses g++ in stead of gcc for compilation. + +* Sun Feb 12 2023 Jos de Kloe - 2.28.0-1 +- Upgrade to upstream version 2.28.0 + +* Thu Jan 19 2023 Fedora Release Engineering - 2.27.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sat Dec 10 2022 Jos de Kloe - 2.27.1-1 +- Upgrade to upstream version 2.27.1 and SPDX migration + +* Wed Sep 14 2022 Jos de Kloe - 2.27.0-2 +- fix problem with use of _sourcedir + +* Mon Aug 29 2022 Jos de Kloe - 2.27.0-1 +- Upgrade to upstream version 2.27.0 +- Added generation of man pages for tools that support the --help option + +* Thu Jul 21 2022 Fedora Release Engineering - 2.26.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Thu May 26 2022 Jos de Kloe - 2.26.0-1 +- Upgrade to upstream version 2.26.0 + +* Fri May 20 2022 Sandro Mani - 2.25.0-2 +- Rebuild for gdal-3.5.0 and/or openjpeg-2.5.0 + +* Sun Mar 06 2022 Jos de Kloe - 2.25.0-1 +- Upgrade to upstream version 2.25.0 +- Add new BR libaec-devel + +* Mon Feb 14 2022 Mamoru TASAKA - 2.24.0-4 +- jasper3: use wrapper entry point for jpeg2000 decoder + +* Sun Feb 13 2022 Josef Ridky - 2.24.0-3 +- Rebuilt for libjasper.so.6 + +* Thu Jan 20 2022 Fedora Release Engineering - 2.24.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Thu Dec 09 2021 Jos de Kloe - 2.24.0-1 +- Upgrade to upstream version 2.24.0 +- Remove no longer needed patch2 (grib_to_netcdf test fix) + +* Wed Dec 1 2021 Mamoru TASAKA - 2.23.0-2 +- Patch grib_api_internal.h for big endian test suite issue (upstream bug SUP-2410) + +* Thu Sep 02 2021 Jos de Kloe - 2.23.0-1 +- Upgrade to upstream version 2.23.0 + +* Wed Aug 11 2021 Orion Poplawski - 2.22.1-4 +- Rebuild for netcdf 4.8.0 + +* Tue Aug 10 2021 Orion Poplawski - 2.22.1-3 +- Rebuild for netcdf 4.8.0 + +* Wed Jul 21 2021 Fedora Release Engineering - 2.22.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Sat Jun 19 2021 Jos de Kloe - 2.22.1-1 +- Upgrade to upstream version 2.22.1 + +* Mon May 24 2021 Jos de Kloe - 2.22.0-1 +- Upgrade to upstream version 2.22.0 + +* Sun Mar 28 2021 Jos de Kloe - 2.21.0-1 +- Upgrade to upstream version 2.21.0 + +* Tue Jan 26 2021 Fedora Release Engineering - 2.20.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Sat Jan 23 2021 Jos de Kloe - 2.20.0-1 +- Upgrade to upstream version 2.20.0 + +* Fri Nov 13 2020 Jos de Kloe - 2.19.1-1 +- Upgrade to upstream version 2.19.1 + +* Sat Oct 17 2020 Jos de Kloe - 2.19.0-1 +- Upgrade to upstream version 2.19.0 and remove patch 1 +- Add -fpic to the fortran flags (needed for compiling on armv7hl) + +* Wed Aug 05 2020 Jos de Kloe - 2.18.0-5 +- Adapt the spec file to use the new style cmake macros + +* Sat Aug 01 2020 Fedora Release Engineering - 2.18.0-4 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jul 27 2020 Fedora Release Engineering - 2.18.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sat Jun 27 2020 Jos de Kloe - 2.18.0-2 +- Rebuild after fixing mistake in ExcludeArch statements + +* Sat Jun 27 2020 Jos de Kloe - 2.18.0-1 +- Upgrade to upstream version 2.18.0 + +* Sun Mar 15 2020 Jos de Kloe - 2.17.0-1 +- Upgrade to upstream version 2.17.0 +- Add explcit BR to perl(File::Compare) as needed by the tests now + +* Sat Feb 08 2020 Jos de Kloe - 2.16.0-1 +- Upgrade to upstream version 2.16.0 + +* Tue Jan 28 2020 Fedora Release Engineering - 2.15.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Sun Dec 15 2019 Jos de Kloe - 2.15.0-1 +- Upgrade to upstream version 2.15.0 + +* Sun Oct 27 2019 Jos de Kloe - 2.14.1-1 +- Upgrade to upstream version 2.14.1 + +* Sat Aug 10 2019 Jos de Kloe - 2.13.0-2 +- apply bugfix to pc files contribuited by Emanuele Di Giacomo + +* Thu Jul 25 2019 Jos de Kloe - 2.13.0-1 +- Upgrade to upstream version 2.13.0 + +* Wed Jul 24 2019 Fedora Release Engineering - 2.12.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu May 09 2019 Jos de Kloe - 2.12.5-1 +- Upgrade to upstream version 2.12.5 + +* Mon Mar 18 2019 Orion Poplawski - 2.12.0-3 +- Rebuild for netcdf 4.6.3 + +* Thu Feb 21 2019 Jos de Kloe - 2.12.0-2 +- bump final_grib_api_version global variable to 1.27.1, so just above the + actual final version, to prevent the obsoletes to be disabled if the release + gets bumped. See BZ #1677968 + +* Sun Feb 17 2019 Jos de Kloe - 2.12.0-1 +- Upgrade to upstream version 2.12.0 + +* Thu Jan 31 2019 Fedora Release Engineering - 2.9.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Nov 24 2018 Jos de Kloe - 2.9.2-1 +- Upgrade to upstream version 2.9.2 + +* Sun Oct 7 2018 Jos de Kloe - 2.9.0-1 +- Upgrade to upstream version 2.9.0 + +* Sat Sep 15 2018 Jos de Kloe - 2.8.2-4 +- add Excludearch for aarch64 on epel7 + +* Sat Sep 15 2018 Jos de Kloe - 2.8.2-3 +- Explicitely disable python in cmake call and use ctest3 rather than ctest + to ensure the build runs on EPEL-7 as well + +* Thu Sep 13 2018 Jos de Kloe - 2.8.2-2 +- Remove python2 sub-package as per Mass Python 2 Package Removal for f30 + +* Sun Sep 9 2018 Jos de Kloe - 2.8.2-1 +- Upgrade to version 2.8.2 + +* Fri Aug 17 2018 Jos de Kloe - 2.8.0-3 +- rebuild with patch provided by Matthew Krupcale for f28 + +* Thu Jul 12 2018 Fedora Release Engineering - 2.8.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Thu Jul 5 2018 Jos de Kloe - 2.8.0-1 +- Upgrade to version 2.8.0 + +* Tue May 08 2018 Jos de Kloe - 2.7.3-1 +- Upgrade to version 2.7.3 +- adjust latest grib_api version to 1.26.1-1 + +* Thu Mar 29 2018 Jos de Kloe - 2.7.0-2 +- added ExcludeArch statements for the failing architectures + +* Thu Mar 22 2018 Jos de Kloe - 2.7.0-1 +- Upgrade to version 2.7.0 +- Fix rpath and some permission issues +- Remove Provides, add post/postun sections, add LD_LIBRARY_PATH +- Fix failing tests in check section +- Implement so version because upstream refuses to do so +- Add fix for test failure 184 and ldconfig_scriptlets + and move unversioned so file to devel package + as suggested by Robert-Andre Mauchin +- Add a documentation and a data sub-package +- Change the license and add a note explaining why this was done + +* Fri Mar 24 2017 Orion Poplawski - 2.2.0-1 +- Initial Fedora package diff --git a/sources b/sources index 88bfe9e..3faa9cf 100644 --- a/sources +++ b/sources @@ -1,3 +1,5 @@ SHA512 (eccodes_test_data_20220526.tar.gz) = 0457878caad6a3395daf60e27cfb72121526065b0cf4da144c7499b8d38bebae0952ddbd20ef0eb53fad77ada60160039340da01001f19fbb7fb1ccbb3d0547a SHA512 (eccodes-2.30.0-Source.tar.gz) = 07b67cef67cefb32ad4581813ed8814f9394d27846c8bc41b78b1504d296f84547d1fb72ce4813f214fe09b9391449995dd53cf9ae7d27721e2b34353ee58b00 SHA512 (eccodes-2.31.0-Source.tar.gz) = f3fe70ad0a765ae6e9d23b1b0c6ac96ad81a8324b15b7ebbcc958ffa1a046079d4a9953d720a8c15ac421897059a74c96ea678254f59c88538e3dd4970da131c +SHA512 (eccodes-2.33.0-Source.tar.gz) = 4afc2a9e59da54093eb318a1447904faac7371df980a57ce21e04ef98d1d7e02f10ef363a497d29f086b1f17a86ba4e46bf14898cd227eae8bbe0297c62b4183 +SHA512 (eccodes_test_data_20231216.tar.gz) = 86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e From 881aa24c91a078c213aa2980733cdf30500b19c1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 17:49:19 +0000 Subject: [PATCH 122/147] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 95e9004..fdc29af 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.33.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -357,6 +357,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Fri Jan 19 2024 Fedora Release Engineering - 2.33.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sun Dec 17 2023 Orion Poplawski - 2.33.0-1 - Update to 2.33.0 From c076718b3673853d76292af96a7acfc084e35e35 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jan 2024 10:05:58 +0000 Subject: [PATCH 123/147] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index fdc29af..bf60616 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.33.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -357,6 +357,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Jan 24 2024 Fedora Release Engineering - 2.33.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 19 2024 Fedora Release Engineering - 2.33.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 7f14f9a166a4fcdb7a5654cf549baa88795cda38 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Tue, 27 Feb 2024 09:10:19 +0100 Subject: [PATCH 124/147] update to v2.34.1 --- eccodes-soversion.patch | 12 ++++++------ eccodes.spec | 14 +++++++++++--- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 03b520c..f65290a 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,6 +1,6 @@ ---- eccodes-2.32.1-Source.unchanged/fortran/CMakeLists.txt 2023-10-26 17:16:35.000000000 +0200 -+++ eccodes-2.32.1-Source/fortran/CMakeLists.txt 2023-10-29 15:39:34.397319711 +0100 -@@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) +--- eccodes-2.34.0-Source.unchanged/fortran/CMakeLists.txt 2024-02-07 13:02:35.000000000 +0100 ++++ eccodes-2.34.0-Source/fortran/CMakeLists.txt 2024-02-17 17:13:47.249840264 +0100 +@@ -46,7 +46,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.32.1-Source.unchanged/src/CMakeLists.txt 2023-10-26 17:16:35.000000000 +0200 -+++ eccodes-2.32.1-Source/src/CMakeLists.txt 2023-10-29 15:39:34.397319711 +0100 -@@ -411,6 +411,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.34.0-Source.unchanged/src/CMakeLists.txt 2024-02-07 13:02:35.000000000 +0100 ++++ eccodes-2.34.0-Source/src/CMakeLists.txt 2024-02-17 17:13:47.272839720 +0100 +@@ -415,6 +415,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index bf60616..c1ab8d3 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,10 +3,15 @@ %endif Name: eccodes -Version: 2.33.0 -Release: 3%{?dist} +Version: 2.34.1 +Release: 1%{?dist} Summary: WMO data format decoding and encoding +# NOTE: dont use version 2.34.0 +# This has some code issues when compiled with the g++ flag "-flto=auto" +# (which is default at the moment) and this makes the library and tools +# unusable. + # force the shared libraries to have these so versions %global so_version 0.1 %global so_version_f90 0.1 @@ -14,7 +19,7 @@ Summary: WMO data format decoding and encoding # note that the test_data package provided on the ECMWF version # is unversioned, so use the download date to discriminate # between different versions. -%global datapack_date 20231216 +%global datapack_date 20240217 # latest fedora-38/rawhide grib_api version is 1.27.0-18 # but this version number is to be updated as soon as we know @@ -357,6 +362,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Tue Feb 27 2024 Jos de Kloe - 2.34.1-1 +- Update to 2.34.1 + * Wed Jan 24 2024 Fedora Release Engineering - 2.33.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 6b38306b8a947681fb066c993bd175887fa4ca6c Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 28 Feb 2024 08:19:48 +0100 Subject: [PATCH 125/147] now add the new sources as well --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index d311f8a..3088a02 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ /eccodes_test_data_20231101.tar.gz /eccodes-2.33.0-Source.tar.gz /eccodes_test_data_20231216.tar.gz +/eccodes-2.34.1-Source.tar.gz diff --git a/sources b/sources index e1bf13e..5a17873 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (eccodes-2.33.0-Source.tar.gz) = 4afc2a9e59da54093eb318a1447904faac7371df980a57ce21e04ef98d1d7e02f10ef363a497d29f086b1f17a86ba4e46bf14898cd227eae8bbe0297c62b4183 SHA512 (eccodes_test_data_20231216.tar.gz) = 86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e +SHA512 (eccodes-2.34.1-Source.tar.gz) = 3757f051fd80dd381c6687c404c835c6a890341052ded3b72a6802dde5d2d8fd83be4a8d6ec3d19592ca0c5f4211c46f1ba125ba0ef0be9cc45cac6bd3d37c1e From 3fec8b43b72a776cf9527214da2ce00a5b42a500 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Thu, 29 Feb 2024 08:33:05 +0100 Subject: [PATCH 126/147] new test data package --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 3088a02..a148e38 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ /eccodes-2.33.0-Source.tar.gz /eccodes_test_data_20231216.tar.gz /eccodes-2.34.1-Source.tar.gz +/eccodes_test_data_20240217.tar.gz diff --git a/sources b/sources index 5a17873..47aca94 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ SHA512 (eccodes-2.33.0-Source.tar.gz) = 4afc2a9e59da54093eb318a1447904faac7371df980a57ce21e04ef98d1d7e02f10ef363a497d29f086b1f17a86ba4e46bf14898cd227eae8bbe0297c62b4183 SHA512 (eccodes_test_data_20231216.tar.gz) = 86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e SHA512 (eccodes-2.34.1-Source.tar.gz) = 3757f051fd80dd381c6687c404c835c6a890341052ded3b72a6802dde5d2d8fd83be4a8d6ec3d19592ca0c5f4211c46f1ba125ba0ef0be9cc45cac6bd3d37c1e +SHA512 (eccodes_test_data_20240217.tar.gz) = c495a71f18ea01aa480b0920fbfce8d370574d412c95eb04823d0d4544fed0e2dba8e98d63e2be0a3c33a127840e7262d391373fab9304a773e9764457ade5a7 From 731cd8d67cd3ef1029a3e69a40ca525bd3d6a698 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 4 May 2024 16:43:50 +0200 Subject: [PATCH 127/147] update to upstream version 2.35.0 --- .gitignore | 1 + eccodes-soversion.patch | 10 +++++----- eccodes.spec | 15 ++++++++++----- sources | 1 + 4 files changed, 17 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index a148e38..bd3f89d 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ /eccodes_test_data_20231216.tar.gz /eccodes-2.34.1-Source.tar.gz /eccodes_test_data_20240217.tar.gz +/eccodes-2.35.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index f65290a..5a3e406 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.34.0-Source.unchanged/fortran/CMakeLists.txt 2024-02-07 13:02:35.000000000 +0100 -+++ eccodes-2.34.0-Source/fortran/CMakeLists.txt 2024-02-17 17:13:47.249840264 +0100 +--- eccodes-2.35.0-Source.unchanged/fortran/CMakeLists.txt 2024-04-11 12:13:21.000000000 +0200 ++++ eccodes-2.35.0-Source/fortran/CMakeLists.txt 2024-05-04 16:18:42.732436699 +0200 @@ -46,7 +46,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.34.0-Source.unchanged/src/CMakeLists.txt 2024-02-07 13:02:35.000000000 +0100 -+++ eccodes-2.34.0-Source/src/CMakeLists.txt 2024-02-17 17:13:47.272839720 +0100 -@@ -415,6 +415,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.35.0-Source.unchanged/src/CMakeLists.txt 2024-04-11 12:13:21.000000000 +0200 ++++ eccodes-2.35.0-Source/src/CMakeLists.txt 2024-05-04 16:18:42.733436675 +0200 +@@ -416,6 +416,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index c1ab8d3..883fcbd 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,7 +3,7 @@ %endif Name: eccodes -Version: 2.34.1 +Version: 2.35.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -70,10 +70,9 @@ BuildRequires: gcc-c++ BuildRequires: gcc-gfortran BuildRequires: /usr/bin/git BuildRequires: jasper-devel -BuildRequires: libjpeg-devel +BuildRequires: openjpeg2-devel >= 2.5.2 BuildRequires: libpng-devel BuildRequires: netcdf-devel -BuildRequires: openjpeg2-devel BuildRequires: libaec-devel # For tests @@ -84,8 +83,8 @@ BuildRequires: perl(File::Compare) # For creation of man pages BuildRequires: help2man -# the data is needed by the library and all tools provided in the main package -# the other way around, the data package could be installed without +# The data is needed by the library and all tools provided in the main package. +# The other way around, the data package could be installed without # installing the base package. It will probably be pretty useless, # unless a user wishes to read and study all these grib and bufr # file format definitions. @@ -362,6 +361,12 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat May 04 2024 Jos de Kloe - 2.35.0-1 +- Update to 2.35.0 + +* Mon Mar 04 2024 Jos de Kloe - 2.34.1-2 +- Require openjpeg2-devel >= 2.5.2 (needed to build for f40) + * Tue Feb 27 2024 Jos de Kloe - 2.34.1-1 - Update to 2.34.1 diff --git a/sources b/sources index 47aca94..916a08e 100644 --- a/sources +++ b/sources @@ -2,3 +2,4 @@ SHA512 (eccodes-2.33.0-Source.tar.gz) = 4afc2a9e59da54093eb318a1447904faac7371df SHA512 (eccodes_test_data_20231216.tar.gz) = 86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e SHA512 (eccodes-2.34.1-Source.tar.gz) = 3757f051fd80dd381c6687c404c835c6a890341052ded3b72a6802dde5d2d8fd83be4a8d6ec3d19592ca0c5f4211c46f1ba125ba0ef0be9cc45cac6bd3d37c1e SHA512 (eccodes_test_data_20240217.tar.gz) = c495a71f18ea01aa480b0920fbfce8d370574d412c95eb04823d0d4544fed0e2dba8e98d63e2be0a3c33a127840e7262d391373fab9304a773e9764457ade5a7 +SHA512 (eccodes-2.35.0-Source.tar.gz) = 0828b33aa0a9dda1db8bbd683eeccf49a0c2df5cdc79e34684981bb59d47dd913552460d7b64bfed05d568f30a7210a1091c9431fa21378ef6fb187829fd65a9 From 4274a9c135dfb6c2132768dff5355698ca060f46 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 21:41:05 +0000 Subject: [PATCH 128/147] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 883fcbd..96f6c13 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.35.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # NOTE: dont use version 2.34.0 @@ -361,6 +361,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Jul 17 2024 Fedora Release Engineering - 2.35.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Sat May 04 2024 Jos de Kloe - 2.35.0-1 - Update to 2.35.0 From 9b4ce377a80f9af2526af4a8a36323c8c2055caa Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 24 Jul 2024 08:23:50 +0200 Subject: [PATCH 129/147] update to version 2.36.0 --- .gitignore | 1 + eccodes-thread-init-fix.patch | 47 +++++++++++++++++++++++++++++++++++ eccodes.spec | 14 +++++++++-- sources | 1 + 4 files changed, 61 insertions(+), 2 deletions(-) create mode 100644 eccodes-thread-init-fix.patch diff --git a/.gitignore b/.gitignore index bd3f89d..83ac1ff 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ /eccodes-2.34.1-Source.tar.gz /eccodes_test_data_20240217.tar.gz /eccodes-2.35.0-Source.tar.gz +/eccodes-2.36.0-Source.tar.gz diff --git a/eccodes-thread-init-fix.patch b/eccodes-thread-init-fix.patch new file mode 100644 index 0000000..0f28ec9 --- /dev/null +++ b/eccodes-thread-init-fix.patch @@ -0,0 +1,47 @@ +--- eccodes-2.36.0-Source.unchanged/src/accessor/grib_accessor_class_bufr_elements_table.cc 2024-06-24 12:52:58.000000000 +0200 ++++ eccodes-2.36.0-Source/src/accessor/grib_accessor_class_bufr_elements_table.cc 2024-07-23 19:38:30.211681092 +0200 +@@ -1,4 +1,3 @@ +- + /* + * (C) Copyright 2005- ECMWF. + * +@@ -28,7 +27,7 @@ static void thread_init() + static int once = 0; + static omp_nest_lock_t mutex1; + +-void thread_init() ++static void thread_init() + { + GRIB_OMP_CRITICAL(lock_grib_accessor_class_bufr_elements_table_c) + { +--- eccodes-2.36.0-Source.unchanged/src/accessor/grib_accessor_class_codetable.cc 2024-06-24 12:52:58.000000000 +0200 ++++ eccodes-2.36.0-Source/src/accessor/grib_accessor_class_codetable.cc 2024-07-23 19:38:30.248680436 +0200 +@@ -20,7 +20,7 @@ grib_accessor_class* grib_accessor_class + static pthread_once_t once = PTHREAD_ONCE_INIT; + static pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; + +-void thread_init() ++static void thread_init() + { + pthread_mutexattr_t attr; + pthread_mutexattr_init(&attr); +@@ -32,7 +32,7 @@ void thread_init() + static int once = 0; + static omp_nest_lock_t mutex1; + +-void thread_init() ++static void thread_init() + { + GRIB_OMP_CRITICAL(lock_grib_accessor_class_codetable_c) + { +--- eccodes-2.36.0-Source.unchanged/src/accessor/grib_accessor_class_smart_table.cc 2024-06-24 12:52:58.000000000 +0200 ++++ eccodes-2.36.0-Source/src/accessor/grib_accessor_class_smart_table.cc 2024-07-23 19:38:30.248680436 +0200 +@@ -30,7 +30,7 @@ static void thread_init() + static int once = 0; + static omp_nest_lock_t mutex; + +-void thread_init() ++static void thread_init() + { + GRIB_OMP_CRITICAL(lock_grib_accessor_class_smart_table_c) + { diff --git a/eccodes.spec b/eccodes.spec index 96f6c13..028eaa7 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,8 +3,8 @@ %endif Name: eccodes -Version: 2.35.0 -Release: 2%{?dist} +Version: 2.36.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # NOTE: dont use version 2.34.0 @@ -61,6 +61,13 @@ Source2: eccodes_create_man_pages.sh # https://jira.ecmwf.int/browse/SUP-1809 Patch1: eccodes-soversion.patch +# Add a patch to solve the multiple definition of thread_init() +# that was introduced in eccodes v2.26.0 +# This patch was provided upstream on 22-Jul-2024, see this github commit: +# https://github.com/ecmwf/eccodes/commit/809fb997282dd97058862261b1a36647f919f3b2 +Patch2: eccodes-thread-init-fix.patch + + # note that the requests to make the other issues public are filed here: # https://jira.ecmwf.int/browse/SUP-2073 # (and again, unfortunately this issue is not public) @@ -361,6 +368,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Jul 24 2024 Jos de Kloe - 2.36.0-1 +- Update to 2.36.0 + * Wed Jul 17 2024 Fedora Release Engineering - 2.35.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild diff --git a/sources b/sources index 916a08e..6064350 100644 --- a/sources +++ b/sources @@ -3,3 +3,4 @@ SHA512 (eccodes_test_data_20231216.tar.gz) = 86767a308841849c7ece006e9f6c68123dc SHA512 (eccodes-2.34.1-Source.tar.gz) = 3757f051fd80dd381c6687c404c835c6a890341052ded3b72a6802dde5d2d8fd83be4a8d6ec3d19592ca0c5f4211c46f1ba125ba0ef0be9cc45cac6bd3d37c1e SHA512 (eccodes_test_data_20240217.tar.gz) = c495a71f18ea01aa480b0920fbfce8d370574d412c95eb04823d0d4544fed0e2dba8e98d63e2be0a3c33a127840e7262d391373fab9304a773e9764457ade5a7 SHA512 (eccodes-2.35.0-Source.tar.gz) = 0828b33aa0a9dda1db8bbd683eeccf49a0c2df5cdc79e34684981bb59d47dd913552460d7b64bfed05d568f30a7210a1091c9431fa21378ef6fb187829fd65a9 +SHA512 (eccodes-2.36.0-Source.tar.gz) = c18df75593af6461dfa64d717ec5a6af9492bc5a851b87f13ca759343abfbf21ec6e3e5978654f95641e86429b9b105bceb9414f8d925275d2a1b305441905d0 From ec509e7c135d1f4a846e95360b6dfa82cd97b222 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 1 Sep 2024 12:51:55 +0200 Subject: [PATCH 130/147] update to version 2.36.0 --- .gitignore | 2 ++ eccodes-soversion.patch | 12 ++++----- eccodes-thread-init-fix.patch | 47 +++++++++++++++++++++++++++++++++++ eccodes.spec | 18 +++++++++++--- sources | 2 ++ 5 files changed, 71 insertions(+), 10 deletions(-) create mode 100644 eccodes-thread-init-fix.patch diff --git a/.gitignore b/.gitignore index 5f2b0c5..3d7e578 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ /eccodes-2.31.0-Source.tar.gz /eccodes-2.33.0-Source.tar.gz /eccodes_test_data_20231216.tar.gz +/eccodes-2.36.0-Source.tar.gz +/eccodes_test_data_20240217.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 03b520c..5a3e406 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,6 +1,6 @@ ---- eccodes-2.32.1-Source.unchanged/fortran/CMakeLists.txt 2023-10-26 17:16:35.000000000 +0200 -+++ eccodes-2.32.1-Source/fortran/CMakeLists.txt 2023-10-29 15:39:34.397319711 +0100 -@@ -49,7 +49,8 @@ if( HAVE_FORTRAN ) +--- eccodes-2.35.0-Source.unchanged/fortran/CMakeLists.txt 2024-04-11 12:13:21.000000000 +0200 ++++ eccodes-2.35.0-Source/fortran/CMakeLists.txt 2024-05-04 16:18:42.732436699 +0200 +@@ -46,7 +46,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.32.1-Source.unchanged/src/CMakeLists.txt 2023-10-26 17:16:35.000000000 +0200 -+++ eccodes-2.32.1-Source/src/CMakeLists.txt 2023-10-29 15:39:34.397319711 +0100 -@@ -411,6 +411,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.35.0-Source.unchanged/src/CMakeLists.txt 2024-04-11 12:13:21.000000000 +0200 ++++ eccodes-2.35.0-Source/src/CMakeLists.txt 2024-05-04 16:18:42.733436675 +0200 +@@ -416,6 +416,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes-thread-init-fix.patch b/eccodes-thread-init-fix.patch new file mode 100644 index 0000000..0f28ec9 --- /dev/null +++ b/eccodes-thread-init-fix.patch @@ -0,0 +1,47 @@ +--- eccodes-2.36.0-Source.unchanged/src/accessor/grib_accessor_class_bufr_elements_table.cc 2024-06-24 12:52:58.000000000 +0200 ++++ eccodes-2.36.0-Source/src/accessor/grib_accessor_class_bufr_elements_table.cc 2024-07-23 19:38:30.211681092 +0200 +@@ -1,4 +1,3 @@ +- + /* + * (C) Copyright 2005- ECMWF. + * +@@ -28,7 +27,7 @@ static void thread_init() + static int once = 0; + static omp_nest_lock_t mutex1; + +-void thread_init() ++static void thread_init() + { + GRIB_OMP_CRITICAL(lock_grib_accessor_class_bufr_elements_table_c) + { +--- eccodes-2.36.0-Source.unchanged/src/accessor/grib_accessor_class_codetable.cc 2024-06-24 12:52:58.000000000 +0200 ++++ eccodes-2.36.0-Source/src/accessor/grib_accessor_class_codetable.cc 2024-07-23 19:38:30.248680436 +0200 +@@ -20,7 +20,7 @@ grib_accessor_class* grib_accessor_class + static pthread_once_t once = PTHREAD_ONCE_INIT; + static pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; + +-void thread_init() ++static void thread_init() + { + pthread_mutexattr_t attr; + pthread_mutexattr_init(&attr); +@@ -32,7 +32,7 @@ void thread_init() + static int once = 0; + static omp_nest_lock_t mutex1; + +-void thread_init() ++static void thread_init() + { + GRIB_OMP_CRITICAL(lock_grib_accessor_class_codetable_c) + { +--- eccodes-2.36.0-Source.unchanged/src/accessor/grib_accessor_class_smart_table.cc 2024-06-24 12:52:58.000000000 +0200 ++++ eccodes-2.36.0-Source/src/accessor/grib_accessor_class_smart_table.cc 2024-07-23 19:38:30.248680436 +0200 +@@ -30,7 +30,7 @@ static void thread_init() + static int once = 0; + static omp_nest_lock_t mutex; + +-void thread_init() ++static void thread_init() + { + GRIB_OMP_CRITICAL(lock_grib_accessor_class_smart_table_c) + { diff --git a/eccodes.spec b/eccodes.spec index 3add048..a3120fc 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,7 +3,7 @@ %endif Name: eccodes -Version: 2.33.0 +Version: 2.36.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -14,7 +14,7 @@ Summary: WMO data format decoding and encoding # note that the test_data package provided on the ECMWF version # is unversioned, so use the download date to discriminate # between different versions. -%global datapack_date 20231216 +%global datapack_date 20240217 # latest fedora-38/rawhide grib_api version is 1.27.0-18 # but this version number is to be updated as soon as we know @@ -56,6 +56,13 @@ Source2: eccodes_create_man_pages.sh # https://jira.ecmwf.int/browse/SUP-1809 Patch1: eccodes-soversion.patch +# Add a patch to solve the multiple definition of thread_init() +# that was introduced in eccodes v2.36.0 +# This patch was provided upstream on 22-Jul-2024, see this github commit: +# https://github.com/ecmwf/eccodes/commit/809fb997282dd97058862261b1a36647f919f3b2 +Patch2: eccodes-thread-init-fix.patch + + # note that the requests to make the other issues public are filed here: # https://jira.ecmwf.int/browse/SUP-2073 # (and again, unfortunately this issue is not public) @@ -79,8 +86,8 @@ BuildRequires: perl(File::Compare) # For creation of man pages BuildRequires: help2man -# the data is needed by the library and all tools provided in the main package -# the other way around, the data package could be installed without +# The data is needed by the library and all tools provided in the main package. +# The other way around, the data package could be installed without # installing the base package. It will probably be pretty useless, # unless a user wishes to read and study all these grib and bufr # file format definitions. @@ -357,6 +364,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Sep 01 2024 Jos de Kloe - 2.36.0-1 +- Update to 2.36.0 + * Sun Dec 17 2023 Orion Poplawski - 2.33.0-1 - Update to 2.33.0 diff --git a/sources b/sources index 3faa9cf..bf89350 100644 --- a/sources +++ b/sources @@ -3,3 +3,5 @@ SHA512 (eccodes-2.30.0-Source.tar.gz) = 07b67cef67cefb32ad4581813ed8814f9394d278 SHA512 (eccodes-2.31.0-Source.tar.gz) = f3fe70ad0a765ae6e9d23b1b0c6ac96ad81a8324b15b7ebbcc958ffa1a046079d4a9953d720a8c15ac421897059a74c96ea678254f59c88538e3dd4970da131c SHA512 (eccodes-2.33.0-Source.tar.gz) = 4afc2a9e59da54093eb318a1447904faac7371df980a57ce21e04ef98d1d7e02f10ef363a497d29f086b1f17a86ba4e46bf14898cd227eae8bbe0297c62b4183 SHA512 (eccodes_test_data_20231216.tar.gz) = 86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e +SHA512 (eccodes-2.36.0-Source.tar.gz) = c18df75593af6461dfa64d717ec5a6af9492bc5a851b87f13ca759343abfbf21ec6e3e5978654f95641e86429b9b105bceb9414f8d925275d2a1b305441905d0 +SHA512 (eccodes_test_data_20240217.tar.gz) = c495a71f18ea01aa480b0920fbfce8d370574d412c95eb04823d0d4544fed0e2dba8e98d63e2be0a3c33a127840e7262d391373fab9304a773e9764457ade5a7 From 6d99f551f97631971d82b09de98fe7c969b21eea Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 29 Sep 2024 16:34:16 +0200 Subject: [PATCH 131/147] update to upstream version 2.38.0 --- .gitignore | 2 ++ eccodes-soversion.patch | 8 +++--- eccodes-thread-init-fix.patch | 47 ----------------------------------- eccodes.spec | 14 ++++------- sources | 2 ++ 5 files changed, 13 insertions(+), 60 deletions(-) delete mode 100644 eccodes-thread-init-fix.patch diff --git a/.gitignore b/.gitignore index 83ac1ff..264accb 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,5 @@ /eccodes_test_data_20240217.tar.gz /eccodes-2.35.0-Source.tar.gz /eccodes-2.36.0-Source.tar.gz +/eccodes-2.38.0-Source.tar.gz +/eccodes_test_data_20240928.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 5a3e406..76aa97c 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.35.0-Source.unchanged/fortran/CMakeLists.txt 2024-04-11 12:13:21.000000000 +0200 -+++ eccodes-2.35.0-Source/fortran/CMakeLists.txt 2024-05-04 16:18:42.732436699 +0200 +--- eccodes-2.38.0-Source.unchanged/fortran/CMakeLists.txt 2024-09-24 10:08:57.000000000 +0200 ++++ eccodes-2.38.0-Source/fortran/CMakeLists.txt 2024-09-29 11:08:52.296043336 +0200 @@ -46,7 +46,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,8 +10,8 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.35.0-Source.unchanged/src/CMakeLists.txt 2024-04-11 12:13:21.000000000 +0200 -+++ eccodes-2.35.0-Source/src/CMakeLists.txt 2024-05-04 16:18:42.733436675 +0200 +--- eccodes-2.38.0-Source.unchanged/src/CMakeLists.txt 2024-09-24 10:08:57.000000000 +0200 ++++ eccodes-2.38.0-Source/src/CMakeLists.txt 2024-09-29 11:08:52.296043336 +0200 @@ -416,6 +416,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} diff --git a/eccodes-thread-init-fix.patch b/eccodes-thread-init-fix.patch deleted file mode 100644 index 0f28ec9..0000000 --- a/eccodes-thread-init-fix.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- eccodes-2.36.0-Source.unchanged/src/accessor/grib_accessor_class_bufr_elements_table.cc 2024-06-24 12:52:58.000000000 +0200 -+++ eccodes-2.36.0-Source/src/accessor/grib_accessor_class_bufr_elements_table.cc 2024-07-23 19:38:30.211681092 +0200 -@@ -1,4 +1,3 @@ -- - /* - * (C) Copyright 2005- ECMWF. - * -@@ -28,7 +27,7 @@ static void thread_init() - static int once = 0; - static omp_nest_lock_t mutex1; - --void thread_init() -+static void thread_init() - { - GRIB_OMP_CRITICAL(lock_grib_accessor_class_bufr_elements_table_c) - { ---- eccodes-2.36.0-Source.unchanged/src/accessor/grib_accessor_class_codetable.cc 2024-06-24 12:52:58.000000000 +0200 -+++ eccodes-2.36.0-Source/src/accessor/grib_accessor_class_codetable.cc 2024-07-23 19:38:30.248680436 +0200 -@@ -20,7 +20,7 @@ grib_accessor_class* grib_accessor_class - static pthread_once_t once = PTHREAD_ONCE_INIT; - static pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER; - --void thread_init() -+static void thread_init() - { - pthread_mutexattr_t attr; - pthread_mutexattr_init(&attr); -@@ -32,7 +32,7 @@ void thread_init() - static int once = 0; - static omp_nest_lock_t mutex1; - --void thread_init() -+static void thread_init() - { - GRIB_OMP_CRITICAL(lock_grib_accessor_class_codetable_c) - { ---- eccodes-2.36.0-Source.unchanged/src/accessor/grib_accessor_class_smart_table.cc 2024-06-24 12:52:58.000000000 +0200 -+++ eccodes-2.36.0-Source/src/accessor/grib_accessor_class_smart_table.cc 2024-07-23 19:38:30.248680436 +0200 -@@ -30,7 +30,7 @@ static void thread_init() - static int once = 0; - static omp_nest_lock_t mutex; - --void thread_init() -+static void thread_init() - { - GRIB_OMP_CRITICAL(lock_grib_accessor_class_smart_table_c) - { diff --git a/eccodes.spec b/eccodes.spec index 028eaa7..dc62c3a 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,7 +3,7 @@ %endif Name: eccodes -Version: 2.36.0 +Version: 2.38.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -19,7 +19,7 @@ Summary: WMO data format decoding and encoding # note that the test_data package provided on the ECMWF version # is unversioned, so use the download date to discriminate # between different versions. -%global datapack_date 20240217 +%global datapack_date 20240928 # latest fedora-38/rawhide grib_api version is 1.27.0-18 # but this version number is to be updated as soon as we know @@ -61,13 +61,6 @@ Source2: eccodes_create_man_pages.sh # https://jira.ecmwf.int/browse/SUP-1809 Patch1: eccodes-soversion.patch -# Add a patch to solve the multiple definition of thread_init() -# that was introduced in eccodes v2.26.0 -# This patch was provided upstream on 22-Jul-2024, see this github commit: -# https://github.com/ecmwf/eccodes/commit/809fb997282dd97058862261b1a36647f919f3b2 -Patch2: eccodes-thread-init-fix.patch - - # note that the requests to make the other issues public are filed here: # https://jira.ecmwf.int/browse/SUP-2073 # (and again, unfortunately this issue is not public) @@ -368,6 +361,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Sep 29 2024 Jos de Kloe - 2.38.0-1 +- Update to 2.38.0 + * Wed Jul 24 2024 Jos de Kloe - 2.36.0-1 - Update to 2.36.0 diff --git a/sources b/sources index 6064350..a617e71 100644 --- a/sources +++ b/sources @@ -4,3 +4,5 @@ SHA512 (eccodes-2.34.1-Source.tar.gz) = 3757f051fd80dd381c6687c404c835c6a8903410 SHA512 (eccodes_test_data_20240217.tar.gz) = c495a71f18ea01aa480b0920fbfce8d370574d412c95eb04823d0d4544fed0e2dba8e98d63e2be0a3c33a127840e7262d391373fab9304a773e9764457ade5a7 SHA512 (eccodes-2.35.0-Source.tar.gz) = 0828b33aa0a9dda1db8bbd683eeccf49a0c2df5cdc79e34684981bb59d47dd913552460d7b64bfed05d568f30a7210a1091c9431fa21378ef6fb187829fd65a9 SHA512 (eccodes-2.36.0-Source.tar.gz) = c18df75593af6461dfa64d717ec5a6af9492bc5a851b87f13ca759343abfbf21ec6e3e5978654f95641e86429b9b105bceb9414f8d925275d2a1b305441905d0 +SHA512 (eccodes-2.38.0-Source.tar.gz) = 2e582f392bfda78ba703f772a7acb66f9dcb6a3e9ff20ed79c17eb5f8049a2ddc302a76a69974129e381b302b9e60b4e4574d588ee995b28b22c70d3957004d9 +SHA512 (eccodes_test_data_20240928.tar.gz) = 736d093f501115ee9d33780eec99cd0d8bdc10a559af70b861d3bee89fbb09bdb6dfdf905dfe4551b5d71761947cfefb414dfff475a06754e09e2d486708515f From 7b97f0e05e7093fa7e937d82b61dab73eef01385 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 20 Oct 2024 15:17:08 +0200 Subject: [PATCH 132/147] update to upstream version 2.38.3 --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index dc62c3a..24dd92a 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,7 +3,7 @@ %endif Name: eccodes -Version: 2.38.0 +Version: 2.38.3 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -361,6 +361,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Oct 20 2024 Jos de Kloe - 2.38.3-1 +- Update to 2.38.3 + * Sun Sep 29 2024 Jos de Kloe - 2.38.0-1 - Update to 2.38.0 From f4af10c5e22482781eff012d1744975091e029b2 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 20 Oct 2024 15:23:41 +0200 Subject: [PATCH 133/147] try again, now with new sources --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 264accb..4f030f2 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ /eccodes-2.36.0-Source.tar.gz /eccodes-2.38.0-Source.tar.gz /eccodes_test_data_20240928.tar.gz +/eccodes-2.38.3-Source.tar.gz diff --git a/sources b/sources index a617e71..4a01b76 100644 --- a/sources +++ b/sources @@ -6,3 +6,4 @@ SHA512 (eccodes-2.35.0-Source.tar.gz) = 0828b33aa0a9dda1db8bbd683eeccf49a0c2df5c SHA512 (eccodes-2.36.0-Source.tar.gz) = c18df75593af6461dfa64d717ec5a6af9492bc5a851b87f13ca759343abfbf21ec6e3e5978654f95641e86429b9b105bceb9414f8d925275d2a1b305441905d0 SHA512 (eccodes-2.38.0-Source.tar.gz) = 2e582f392bfda78ba703f772a7acb66f9dcb6a3e9ff20ed79c17eb5f8049a2ddc302a76a69974129e381b302b9e60b4e4574d588ee995b28b22c70d3957004d9 SHA512 (eccodes_test_data_20240928.tar.gz) = 736d093f501115ee9d33780eec99cd0d8bdc10a559af70b861d3bee89fbb09bdb6dfdf905dfe4551b5d71761947cfefb414dfff475a06754e09e2d486708515f +SHA512 (eccodes-2.38.3-Source.tar.gz) = 871090c4333aeb76c83cb221e7c2feba3b1bdb53a6b015285c85025e6aa4c22c391f5114b9c57fcd42c6f39653f38a2a98a6e7e27336f68341a9e06995b1c883 From b5f395df6cb0adad9d8164aef869e9d64a31010c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 16:35:41 +0000 Subject: [PATCH 134/147] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 24dd92a..161b1cc 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.38.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # NOTE: dont use version 2.34.0 @@ -361,6 +361,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 2.38.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Sun Oct 20 2024 Jos de Kloe - 2.38.3-1 - Update to 2.38.3 From 5072d281d3d3bff20564db9737ea8c0fba74e814 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sun, 2 Feb 2025 15:46:40 +0100 Subject: [PATCH 135/147] update to new upstream version 2.39.0 --- .gitignore | 21 ++------------------- eccodes-soversion.patch | 10 +++++----- eccodes.spec | 9 ++++++--- sources | 11 ++--------- 4 files changed, 15 insertions(+), 36 deletions(-) diff --git a/.gitignore b/.gitignore index 4f030f2..07c6e0d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,19 +1,2 @@ -/eccodes-2.26.0-Source.tar.gz -/eccodes_test_data_20220526.tar.gz -/eccodes-2.27.0-Source.tar.gz -/eccodes-2.27.1-Source.tar.gz -/eccodes-2.28.0-Source.tar.gz -/eccodes-2.29.0-Source.tar.gz -/eccodes-2.30.0-Source.tar.gz -/eccodes-2.31.0-Source.tar.gz -/eccodes-2.32.1-Source.tar.gz -/eccodes_test_data_20231101.tar.gz -/eccodes-2.33.0-Source.tar.gz -/eccodes_test_data_20231216.tar.gz -/eccodes-2.34.1-Source.tar.gz -/eccodes_test_data_20240217.tar.gz -/eccodes-2.35.0-Source.tar.gz -/eccodes-2.36.0-Source.tar.gz -/eccodes-2.38.0-Source.tar.gz -/eccodes_test_data_20240928.tar.gz -/eccodes-2.38.3-Source.tar.gz +/eccodes-2.39.0-Source.tar.gz +/eccodes_test_data_20250202.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 76aa97c..4e8176d 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.38.0-Source.unchanged/fortran/CMakeLists.txt 2024-09-24 10:08:57.000000000 +0200 -+++ eccodes-2.38.0-Source/fortran/CMakeLists.txt 2024-09-29 11:08:52.296043336 +0200 +--- eccodes-2.39.0-Source.unchanged/fortran/CMakeLists.txt 2024-11-21 12:59:58.000000000 +0100 ++++ eccodes-2.39.0-Source/fortran/CMakeLists.txt 2025-02-02 14:50:54.001803198 +0100 @@ -46,7 +46,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.38.0-Source.unchanged/src/CMakeLists.txt 2024-09-24 10:08:57.000000000 +0200 -+++ eccodes-2.38.0-Source/src/CMakeLists.txt 2024-09-29 11:08:52.296043336 +0200 -@@ -416,6 +416,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.39.0-Source.unchanged/src/CMakeLists.txt 2024-11-21 12:59:58.000000000 +0100 ++++ eccodes-2.39.0-Source/src/CMakeLists.txt 2025-02-02 14:50:54.002803175 +0100 +@@ -420,6 +420,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index 161b1cc..88898f7 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,8 +3,8 @@ %endif Name: eccodes -Version: 2.38.3 -Release: 2%{?dist} +Version: 2.39.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # NOTE: dont use version 2.34.0 @@ -19,7 +19,7 @@ Summary: WMO data format decoding and encoding # note that the test_data package provided on the ECMWF version # is unversioned, so use the download date to discriminate # between different versions. -%global datapack_date 20240928 +%global datapack_date 20250202 # latest fedora-38/rawhide grib_api version is 1.27.0-18 # but this version number is to be updated as soon as we know @@ -361,6 +361,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sun Feb 02 2025 Jos de Kloe - 2.39.0-1 +- Update to 2.39.0 + * Thu Jan 16 2025 Fedora Release Engineering - 2.38.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild diff --git a/sources b/sources index 4a01b76..780aa23 100644 --- a/sources +++ b/sources @@ -1,9 +1,2 @@ -SHA512 (eccodes-2.33.0-Source.tar.gz) = 4afc2a9e59da54093eb318a1447904faac7371df980a57ce21e04ef98d1d7e02f10ef363a497d29f086b1f17a86ba4e46bf14898cd227eae8bbe0297c62b4183 -SHA512 (eccodes_test_data_20231216.tar.gz) = 86767a308841849c7ece006e9f6c68123dc07d8640b038e25529b91ab495d3f10ad5356e9100ef238de6756c67917be13a676f4ab0708fb381021c746e00183e -SHA512 (eccodes-2.34.1-Source.tar.gz) = 3757f051fd80dd381c6687c404c835c6a890341052ded3b72a6802dde5d2d8fd83be4a8d6ec3d19592ca0c5f4211c46f1ba125ba0ef0be9cc45cac6bd3d37c1e -SHA512 (eccodes_test_data_20240217.tar.gz) = c495a71f18ea01aa480b0920fbfce8d370574d412c95eb04823d0d4544fed0e2dba8e98d63e2be0a3c33a127840e7262d391373fab9304a773e9764457ade5a7 -SHA512 (eccodes-2.35.0-Source.tar.gz) = 0828b33aa0a9dda1db8bbd683eeccf49a0c2df5cdc79e34684981bb59d47dd913552460d7b64bfed05d568f30a7210a1091c9431fa21378ef6fb187829fd65a9 -SHA512 (eccodes-2.36.0-Source.tar.gz) = c18df75593af6461dfa64d717ec5a6af9492bc5a851b87f13ca759343abfbf21ec6e3e5978654f95641e86429b9b105bceb9414f8d925275d2a1b305441905d0 -SHA512 (eccodes-2.38.0-Source.tar.gz) = 2e582f392bfda78ba703f772a7acb66f9dcb6a3e9ff20ed79c17eb5f8049a2ddc302a76a69974129e381b302b9e60b4e4574d588ee995b28b22c70d3957004d9 -SHA512 (eccodes_test_data_20240928.tar.gz) = 736d093f501115ee9d33780eec99cd0d8bdc10a559af70b861d3bee89fbb09bdb6dfdf905dfe4551b5d71761947cfefb414dfff475a06754e09e2d486708515f -SHA512 (eccodes-2.38.3-Source.tar.gz) = 871090c4333aeb76c83cb221e7c2feba3b1bdb53a6b015285c85025e6aa4c22c391f5114b9c57fcd42c6f39653f38a2a98a6e7e27336f68341a9e06995b1c883 +SHA512 (eccodes-2.39.0-Source.tar.gz) = 7ee419cb0c2afde2b2db7159607f5d7e1c7b06545f50d7553d8aecb3d8c6d9130a9312294a5c3c3bb060c8fd59cdced531636925ec2a8b48137014a9812b1e63 +SHA512 (eccodes_test_data_20250202.tar.gz) = 8b4c7159dd7ed0e1e69068ec7dcabe94064f0d2abf9eac4fca2a9c730d500999e8edf1e7eeebba6fb12ae99b223c1b0843e31414538333c52f2508cb2d410151 From 9cda33605d783b225aa6ffa4c8077fd38bda6341 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 22 Mar 2025 16:17:51 +0100 Subject: [PATCH 136/147] update to v2.40.0 --- .gitignore | 1 + eccodes-soversion.patch | 10 +++++----- eccodes.spec | 10 ++++------ sources | 1 + 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index 07c6e0d..2113600 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /eccodes-2.39.0-Source.tar.gz /eccodes_test_data_20250202.tar.gz +/eccodes-2.40.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 4e8176d..6ca8ca2 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.39.0-Source.unchanged/fortran/CMakeLists.txt 2024-11-21 12:59:58.000000000 +0100 -+++ eccodes-2.39.0-Source/fortran/CMakeLists.txt 2025-02-02 14:50:54.001803198 +0100 +--- eccodes-2.40.0-Source.unchanged/fortran/CMakeLists.txt 2025-02-12 12:04:32.000000000 +0100 ++++ eccodes-2.40.0-Source/fortran/CMakeLists.txt 2025-03-22 15:51:07.009527983 +0100 @@ -46,7 +46,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.39.0-Source.unchanged/src/CMakeLists.txt 2024-11-21 12:59:58.000000000 +0100 -+++ eccodes-2.39.0-Source/src/CMakeLists.txt 2025-02-02 14:50:54.002803175 +0100 -@@ -420,6 +420,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.40.0-Source.unchanged/src/CMakeLists.txt 2025-02-12 12:04:32.000000000 +0100 ++++ eccodes-2.40.0-Source/src/CMakeLists.txt 2025-03-22 15:51:07.009903805 +0100 +@@ -443,6 +443,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index 88898f7..ac44d42 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,15 +3,10 @@ %endif Name: eccodes -Version: 2.39.0 +Version: 2.40.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding -# NOTE: dont use version 2.34.0 -# This has some code issues when compiled with the g++ flag "-flto=auto" -# (which is default at the moment) and this makes the library and tools -# unusable. - # force the shared libraries to have these so versions %global so_version 0.1 %global so_version_f90 0.1 @@ -361,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Mar 22 2025 Jos de Kloe - 2.40.0-1 +- Update to 2.40.0 + * Sun Feb 02 2025 Jos de Kloe - 2.39.0-1 - Update to 2.39.0 diff --git a/sources b/sources index 780aa23..d3bb417 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (eccodes-2.39.0-Source.tar.gz) = 7ee419cb0c2afde2b2db7159607f5d7e1c7b06545f50d7553d8aecb3d8c6d9130a9312294a5c3c3bb060c8fd59cdced531636925ec2a8b48137014a9812b1e63 SHA512 (eccodes_test_data_20250202.tar.gz) = 8b4c7159dd7ed0e1e69068ec7dcabe94064f0d2abf9eac4fca2a9c730d500999e8edf1e7eeebba6fb12ae99b223c1b0843e31414538333c52f2508cb2d410151 +SHA512 (eccodes-2.40.0-Source.tar.gz) = 39b09da398a864888f1b7da867adae63da9e512a865807c1dd0f4b76e242c46d6ec75f7db3a554c01c4fb60dd9677cd8b77bc03dac89931cbdf461c607b100c8 From 61a8f9e8f497dfa09d53caa5febd9ca849a2e072 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Thu, 29 May 2025 15:31:06 -0600 Subject: [PATCH 137/147] Drop old source from sources --- sources | 1 - 1 file changed, 1 deletion(-) diff --git a/sources b/sources index d3bb417..0e3778c 100644 --- a/sources +++ b/sources @@ -1,3 +1,2 @@ -SHA512 (eccodes-2.39.0-Source.tar.gz) = 7ee419cb0c2afde2b2db7159607f5d7e1c7b06545f50d7553d8aecb3d8c6d9130a9312294a5c3c3bb060c8fd59cdced531636925ec2a8b48137014a9812b1e63 SHA512 (eccodes_test_data_20250202.tar.gz) = 8b4c7159dd7ed0e1e69068ec7dcabe94064f0d2abf9eac4fca2a9c730d500999e8edf1e7eeebba6fb12ae99b223c1b0843e31414538333c52f2508cb2d410151 SHA512 (eccodes-2.40.0-Source.tar.gz) = 39b09da398a864888f1b7da867adae63da9e512a865807c1dd0f4b76e242c46d6ec75f7db3a554c01c4fb60dd9677cd8b77bc03dac89931cbdf461c607b100c8 From 7a579d5a5ed84d316a64a4ee922be865c636d899 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Sat, 19 Jul 2025 17:07:05 +0200 Subject: [PATCH 138/147] update to new upstream version 2.42.0 --- .gitignore | 1 + eccodes-soversion.patch | 12 ++++++------ eccodes.spec | 7 +++++-- sources | 1 + 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 2113600..160cb5d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /eccodes-2.39.0-Source.tar.gz /eccodes_test_data_20250202.tar.gz /eccodes-2.40.0-Source.tar.gz +/eccodes-2.42.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index 6ca8ca2..e034ca0 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.40.0-Source.unchanged/fortran/CMakeLists.txt 2025-02-12 12:04:32.000000000 +0100 -+++ eccodes-2.40.0-Source/fortran/CMakeLists.txt 2025-03-22 15:51:07.009527983 +0100 +--- eccodes-2.42.0-Source.unchanged/fortran/CMakeLists.txt 2025-06-30 10:44:08.000000000 +0200 ++++ eccodes-2.42.0-Source/fortran/CMakeLists.txt 2025-07-19 16:36:56.908027305 +0200 @@ -46,7 +46,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,13 +10,13 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.40.0-Source.unchanged/src/CMakeLists.txt 2025-02-12 12:04:32.000000000 +0100 -+++ eccodes-2.40.0-Source/src/CMakeLists.txt 2025-03-22 15:51:07.009903805 +0100 -@@ -443,6 +443,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.42.0-Source.unchanged/src/eccodes/CMakeLists.txt 2025-06-30 10:44:08.000000000 +0200 ++++ eccodes-2.42.0-Source/src/eccodes/CMakeLists.txt 2025-07-19 16:36:56.908394153 +0200 +@@ -440,6 +440,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} -+ SOVERSION ${ECCODES_SOVERSION} ++ SOVERSION ${ECCODES_SOVERSION} + INSTALL_HEADERS_LIST grib_api.h diff --git a/eccodes.spec b/eccodes.spec index ac44d42..8926b19 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,7 +3,7 @@ %endif Name: eccodes -Version: 2.40.0 +Version: 2.42.0 Release: 1%{?dist} Summary: WMO data format decoding and encoding @@ -60,7 +60,7 @@ Patch1: eccodes-soversion.patch # https://jira.ecmwf.int/browse/SUP-2073 # (and again, unfortunately this issue is not public) -BuildRequires: cmake3 +BuildRequires: cmake3 >= 3.18 BuildRequires: gcc-c++ BuildRequires: gcc-gfortran BuildRequires: /usr/bin/git @@ -356,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Sat Jul 19 2025 Jos de Kloe - 2.42.0-1 +- Update to 2.42.0 (2.41.0 was skipped due to an upstream build bug) + * Sat Mar 22 2025 Jos de Kloe - 2.40.0-1 - Update to 2.40.0 diff --git a/sources b/sources index 0e3778c..6cabd92 100644 --- a/sources +++ b/sources @@ -1,2 +1,3 @@ SHA512 (eccodes_test_data_20250202.tar.gz) = 8b4c7159dd7ed0e1e69068ec7dcabe94064f0d2abf9eac4fca2a9c730d500999e8edf1e7eeebba6fb12ae99b223c1b0843e31414538333c52f2508cb2d410151 SHA512 (eccodes-2.40.0-Source.tar.gz) = 39b09da398a864888f1b7da867adae63da9e512a865807c1dd0f4b76e242c46d6ec75f7db3a554c01c4fb60dd9677cd8b77bc03dac89931cbdf461c607b100c8 +SHA512 (eccodes-2.42.0-Source.tar.gz) = 205246b250762ab6e7ac3050726ac5ce67ab689c8c393b153e7c084fb71edc40d64ee04e2fb32b3ad2a1426e65581126c0c8288e9088c27a7468f6b534f29b58 From 2421d9263b3306ce43125350e70da72a0b44bb7c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 19:41:33 +0000 Subject: [PATCH 139/147] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- eccodes.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 8926b19..d3e6f68 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.42.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -356,6 +356,9 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 2.42.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Sat Jul 19 2025 Jos de Kloe - 2.42.0-1 - Update to 2.42.0 (2.41.0 was skipped due to an upstream build bug) From 19c6a19751531cdd90eb2cf233c51dc425d927b7 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 30 Jul 2025 12:37:27 +0200 Subject: [PATCH 140/147] fix upgrade problem --- eccodes.spec | 20 ++++++++- ...des_revert_directory_to_symlink_changes.py | 44 +++++++++++++++++++ 2 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 eccodes_revert_directory_to_symlink_changes.py diff --git a/eccodes.spec b/eccodes.spec index d3e6f68..1eee6cd 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -52,6 +52,9 @@ Source1: https://get.ecmwf.int/repository/test-data/eccodes/eccodes_test_ # a custom script to create man pages Source2: eccodes_create_man_pages.sh +# a custom script to undo directory to symbolic-link changes +Source3: eccodes_revert_directory_to_symlink_changes.py + # Add soversion to the shared libraries, since upstream refuses to do so # https://jira.ecmwf.int/browse/SUP-1809 Patch1: eccodes-soversion.patch @@ -78,6 +81,9 @@ BuildRequires: perl(File::Compare) # For creation of man pages BuildRequires: help2man +# For undoing the directory-to-symlink rename in the data package +BuildRequires: python3 + # The data is needed by the library and all tools provided in the main package. # The other way around, the data package could be installed without # installing the base package. It will probably be pretty useless, @@ -252,6 +258,10 @@ cp fortran/grib_api_constants.h %{_vpath_builddir}/fortran/ mkdir -p %{buildroot}%{_fmoddir} mv %{buildroot}%{_includedir}/*.mod %{buildroot}%{_fmoddir}/ +# undo a change from directories to symbolic links in the data package +# since the rpm tool cannot handle upgrades if this happens. +%{python3} %{SOURCE3} %{buildroot}%{_datadir}/%{name} + # remove a script that does not belong in the doc section # and triggers an rpmlint error rm %{buildroot}%{_datadir}/%{name}/definitions/installDefinitions.sh @@ -311,6 +321,8 @@ sed -i 's|^libs=.*$|libs=-L${libdir} -leccodes_f90 -leccodes|g' %{buildroot}/%{_ %ldconfig_scriptlets + +##################################################### %check cd %{_vpath_builddir} @@ -331,7 +343,7 @@ ctest3 -V %{?_smp_mflags} %files %license LICENSE -%doc README.md ChangeLog AUTHORS NEWS NOTICE +%doc ChangeLog AUTHORS NEWS NOTICE %{_bindir}/* %{_libdir}/*.so.* %{_mandir}/man1/*.1* @@ -356,6 +368,12 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog + +* Wed Jul 30 2025 Jos de Kloe - 2.42.0-2 +- Add calling a little python script in the install stage to revert + the (upstream) replacing of directories by a symlinks + which causes upgrade problems with rpm for the data package. + * Wed Jul 23 2025 Fedora Release Engineering - 2.42.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild diff --git a/eccodes_revert_directory_to_symlink_changes.py b/eccodes_revert_directory_to_symlink_changes.py new file mode 100644 index 0000000..2fd424b --- /dev/null +++ b/eccodes_revert_directory_to_symlink_changes.py @@ -0,0 +1,44 @@ +#!/usr/bin/python3 + +''' +in eccodes 2.42.0 a number of directories in the table definitions +directory tree have been replaced upstream by symbolic links to +some other directories. + +It turns out that the rpm tool can not handle this and refused to +allow a user upgrade the package if this happens. +See: https://bugzilla.redhat.com/show_bug.cgi?id=2384303 + +Therefore this little python script reverts the change and replaces +these symbolic links again with a copy of the directory to which +they point. +''' + +import os +import sys +import shutil + +problematic_base_dirs = [ + 'definitions/bufr/tables/0/local/8/78', + 'definitions/bufr/tables/0/wmo'] + +data_dir = sys.argv[1] + +for problem_dir in problematic_base_dirs: + full_base_dir_name = os.path.join(data_dir, problem_dir) + subdirs = os.listdir(full_base_dir_name) + for subdir in subdirs: + # check if the subdir is a symbolic link + full_dir_name = os.path.join(full_base_dir_name, subdir) + if os.path.islink(full_dir_name): + # request the target to which the symbolic link points + target_dir = os.path.realpath(full_dir_name) + + print(f'replacing symbolic link: {full_dir_name}') + print(f'by a copy of its target: {target_dir}') + + # remove the symbolic link + os.remove(full_dir_name) + + # and copy the target to take its place + shutil.copytree(target_dir, full_dir_name) From be0e64d22b4d2f11050e523594ff783530a8c9e3 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Wed, 30 Jul 2025 12:40:04 +0200 Subject: [PATCH 141/147] bump release to 3 --- eccodes.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index 1eee6cd..69c91e4 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.42.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -369,7 +369,7 @@ ctest3 -V %{?_smp_mflags} %changelog -* Wed Jul 30 2025 Jos de Kloe - 2.42.0-2 +* Wed Jul 30 2025 Jos de Kloe - 2.42.0-3 - Add calling a little python script in the install stage to revert the (upstream) replacing of directories by a symlinks which causes upgrade problems with rpm for the data package. From 2c0f7d9a93528745d01ecc4854e8ba4f90324f1d Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Mon, 11 Aug 2025 14:09:32 +0200 Subject: [PATCH 142/147] next try to use a LUA scriptlet in case directories are replaced by symbolic links by upstream --- .gitignore | 1 - eccodes.spec | 117 ++++++++++++++++-- ...des_revert_directory_to_symlink_changes.py | 44 ------- 3 files changed, 106 insertions(+), 56 deletions(-) delete mode 100644 eccodes_revert_directory_to_symlink_changes.py diff --git a/.gitignore b/.gitignore index 160cb5d..c37fff4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,3 @@ -/eccodes-2.39.0-Source.tar.gz /eccodes_test_data_20250202.tar.gz /eccodes-2.40.0-Source.tar.gz /eccodes-2.42.0-Source.tar.gz diff --git a/eccodes.spec b/eccodes.spec index 69c91e4..e2a97ad 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.42.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -52,9 +52,6 @@ Source1: https://get.ecmwf.int/repository/test-data/eccodes/eccodes_test_ # a custom script to create man pages Source2: eccodes_create_man_pages.sh -# a custom script to undo directory to symbolic-link changes -Source3: eccodes_revert_directory_to_symlink_changes.py - # Add soversion to the shared libraries, since upstream refuses to do so # https://jira.ecmwf.int/browse/SUP-1809 Patch1: eccodes-soversion.patch @@ -81,9 +78,6 @@ BuildRequires: perl(File::Compare) # For creation of man pages BuildRequires: help2man -# For undoing the directory-to-symlink rename in the data package -BuildRequires: python3 - # The data is needed by the library and all tools provided in the main package. # The other way around, the data package could be installed without # installing the base package. It will probably be pretty useless, @@ -175,6 +169,74 @@ both the official WMO tables and a number of often used local definitions by ECMWF and other meteorological centers. ##################################################### +# include a LUA scriptlet as suggested on: +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Directory_Replacement/ +# to assist in replacing a directory by a symlink + +%pretrans -n eccodes-data -p + +-- This should solve a problem where directories were replaced +-- by symbolic links when upgrading eccodes from 2.41.0 to 2.42.0 + +problematic_dirs = { + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/1", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/110", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/174", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/2", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/20", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/21", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/221", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/222", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/223", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/225", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/226", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/227", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/228", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/229", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/230", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/231", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/232", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/233", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/234", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/235", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/236", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/237", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/31", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/41", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/42", + "/usr/share/eccodes/definitions/bufr/tables/0/local/8/78/64", + "/usr/share/eccodes/definitions/bufr/tables/0/wmo/10", + "/usr/share/eccodes/definitions/bufr/tables/0/wmo/11", + "/usr/share/eccodes/definitions/bufr/tables/0/wmo/12", + "/usr/share/eccodes/definitions/bufr/tables/0/wmo/7", + "/usr/share/eccodes/definitions/bufr/tables/0/wmo/8", + "/usr/share/eccodes/definitions/bufr/tables/0/wmo/9"} + +for index, path in ipairs(problematic_dirs) do + print("handling path:" .. index .. ":" .. path) + st = posix.stat(path) + if st and st.type == "directory" then + status = os.rename(path, path .. ".rpmmoved") + if status then + print("renamed:" .. path .. " to " .. path .. ".rpmmoved") + end + if not status then + suffix = 0 + while not status do + suffix = suffix + 1 + status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix) + if status then + print("renamed:" .. path .. ".rpmmoved to " .. path .. ".rpmmoved." .. suffix) + end + end + os.rename(path, path .. ".rpmmoved") + print("renamed:" .. path .. " to " .. path .. ".rpmmoved") + end + end +end + +--##################################################### + %package doc Summary: Documentation and example code BuildArch: noarch @@ -258,10 +320,6 @@ cp fortran/grib_api_constants.h %{_vpath_builddir}/fortran/ mkdir -p %{buildroot}%{_fmoddir} mv %{buildroot}%{_includedir}/*.mod %{buildroot}%{_fmoddir}/ -# undo a change from directories to symbolic links in the data package -# since the rpm tool cannot handle upgrades if this happens. -%{python3} %{SOURCE3} %{buildroot}%{_datadir}/%{name} - # remove a script that does not belong in the doc section # and triggers an rpmlint error rm %{buildroot}%{_datadir}/%{name}/definitions/installDefinitions.sh @@ -363,12 +421,49 @@ ctest3 -V %{?_smp_mflags} %{_datadir}/%{name}/definitions/ %{_datadir}/%{name}/samples/ %{_datadir}/%{name}/ifs_samples/ +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/1.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/110.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/174.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/2.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/20.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/21.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/221.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/222.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/223.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/225.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/226.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/227.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/228.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/229.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/230.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/231.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/232.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/233.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/234.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/235.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/236.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/237.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/31.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/41.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/42.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/64.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/10.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/11.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/12.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/7.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/8.rpmmoved +%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/9.rpmmoved %files doc %doc %{_datadir}/doc/%{name}/ %changelog +* Tue Jul 29 2025 Jos de Kloe - 2.42.0-4 +- Add a LUA script in a pretrans section to assist in replacing a directory + by a symlink (this removes the need for the python script added in + the previous commit) + * Wed Jul 30 2025 Jos de Kloe - 2.42.0-3 - Add calling a little python script in the install stage to revert the (upstream) replacing of directories by a symlinks diff --git a/eccodes_revert_directory_to_symlink_changes.py b/eccodes_revert_directory_to_symlink_changes.py deleted file mode 100644 index 2fd424b..0000000 --- a/eccodes_revert_directory_to_symlink_changes.py +++ /dev/null @@ -1,44 +0,0 @@ -#!/usr/bin/python3 - -''' -in eccodes 2.42.0 a number of directories in the table definitions -directory tree have been replaced upstream by symbolic links to -some other directories. - -It turns out that the rpm tool can not handle this and refused to -allow a user upgrade the package if this happens. -See: https://bugzilla.redhat.com/show_bug.cgi?id=2384303 - -Therefore this little python script reverts the change and replaces -these symbolic links again with a copy of the directory to which -they point. -''' - -import os -import sys -import shutil - -problematic_base_dirs = [ - 'definitions/bufr/tables/0/local/8/78', - 'definitions/bufr/tables/0/wmo'] - -data_dir = sys.argv[1] - -for problem_dir in problematic_base_dirs: - full_base_dir_name = os.path.join(data_dir, problem_dir) - subdirs = os.listdir(full_base_dir_name) - for subdir in subdirs: - # check if the subdir is a symbolic link - full_dir_name = os.path.join(full_base_dir_name, subdir) - if os.path.islink(full_dir_name): - # request the target to which the symbolic link points - target_dir = os.path.realpath(full_dir_name) - - print(f'replacing symbolic link: {full_dir_name}') - print(f'by a copy of its target: {target_dir}') - - # remove the symbolic link - os.remove(full_dir_name) - - # and copy the target to take its place - shutil.copytree(target_dir, full_dir_name) From ac7dca3ac49296175db72c6726b718c32a4f1fc1 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Mon, 11 Aug 2025 14:24:13 +0200 Subject: [PATCH 143/147] fix wrong changelog date and fix a bug in the ghost definitions --- eccodes.spec | 69 ++++++++++++++++++++++++++++------------------------ 1 file changed, 37 insertions(+), 32 deletions(-) diff --git a/eccodes.spec b/eccodes.spec index e2a97ad..8cac5d4 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.42.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -422,43 +422,48 @@ ctest3 -V %{?_smp_mflags} %{_datadir}/%{name}/samples/ %{_datadir}/%{name}/ifs_samples/ %ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/1.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/110.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/174.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/2.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/20.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/21.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/221.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/222.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/223.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/225.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/226.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/227.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/228.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/229.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/230.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/231.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/232.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/233.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/234.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/235.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/236.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/237.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/31.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/41.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/42.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/local/8/78/64.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/10.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/11.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/12.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/7.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/8.rpmmoved -%ghost %{_datadir}/%{name}/definitions/definitions/bufr/tables/0/wmo/9.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/110.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/174.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/2.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/20.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/21.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/221.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/222.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/223.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/225.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/226.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/227.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/228.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/229.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/230.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/231.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/232.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/233.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/234.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/235.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/236.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/237.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/31.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/41.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/42.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/local/8/78/64.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/wmo/10.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/wmo/11.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/wmo/12.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/wmo/7.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/wmo/8.rpmmoved +%ghost %{_datadir}/%{name}/definitions/bufr/tables/0/wmo/9.rpmmoved %files doc %doc %{_datadir}/doc/%{name}/ %changelog +* Mon Aug 11 2025 Jos de Kloe - 2.42.0-5 +- Forgot to update the changelog date for the previous commit, so fixed this + with this update. +- Also fix a typo in the ghost definitions. + * Tue Jul 29 2025 Jos de Kloe - 2.42.0-4 - Add a LUA script in a pretrans section to assist in replacing a directory by a symlink (this removes the need for the python script added in From 9b5ba7896939f5965e08347c056bbac5cebd5f8c Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Mon, 11 Aug 2025 15:36:45 +0200 Subject: [PATCH 144/147] ensure changelog dates are in chronological order again --- eccodes.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 8cac5d4..32375c8 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -464,7 +464,7 @@ ctest3 -V %{?_smp_mflags} with this update. - Also fix a typo in the ghost definitions. -* Tue Jul 29 2025 Jos de Kloe - 2.42.0-4 +* Mon Aug 11 2025 Jos de Kloe - 2.42.0-4 - Add a LUA script in a pretrans section to assist in replacing a directory by a symlink (this removes the need for the python script added in the previous commit) From 47a1f21238d5883d78a83bf01bac2ddc49316290 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Fri, 22 Aug 2025 08:38:32 -0600 Subject: [PATCH 145/147] Rebuild for netcdf 4.9.3 soname bump --- eccodes.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 32375c8..4d0d168 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.42.0 -Release: 5%{?dist} +Release: 6%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -458,6 +458,8 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog +* Fri Aug 22 2025 Orion Poplawski - 2.42.0-6 +- Rebuild for netcdf 4.9.3 soname bump * Mon Aug 11 2025 Jos de Kloe - 2.42.0-5 - Forgot to update the changelog date for the previous commit, so fixed this From d72a2e3bb0745649f7ccaa0657cd7a5921ee1528 Mon Sep 17 00:00:00 2001 From: Jos de Kloe Date: Fri, 7 Nov 2025 11:50:22 +0100 Subject: [PATCH 146/147] update to v2.44.0 --- .gitignore | 1 + eccodes-soversion.patch | 10 +++++----- eccodes.spec | 8 ++++++-- sources | 1 + 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index c37fff4..e66b05a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /eccodes_test_data_20250202.tar.gz /eccodes-2.40.0-Source.tar.gz /eccodes-2.42.0-Source.tar.gz +/eccodes-2.44.0-Source.tar.gz diff --git a/eccodes-soversion.patch b/eccodes-soversion.patch index e034ca0..fd4b224 100644 --- a/eccodes-soversion.patch +++ b/eccodes-soversion.patch @@ -1,5 +1,5 @@ ---- eccodes-2.42.0-Source.unchanged/fortran/CMakeLists.txt 2025-06-30 10:44:08.000000000 +0200 -+++ eccodes-2.42.0-Source/fortran/CMakeLists.txt 2025-07-19 16:36:56.908027305 +0200 +--- eccodes-2.44.0-Source.unchanged/fortran/CMakeLists.txt 2025-10-06 11:49:11.000000000 +0200 ++++ eccodes-2.44.0-Source/fortran/CMakeLists.txt 2025-11-07 11:33:03.765320420 +0100 @@ -46,7 +46,8 @@ if( HAVE_FORTRAN ) GENERATED grib_f90.f90 eccodes_f90.f90 PUBLIC_INCLUDES $ @@ -10,9 +10,9 @@ if( DEFINED ecbuild_VERSION AND NOT ${ecbuild_VERSION} VERSION_LESS 3.1 ) # Installed module directory is not in the PUBLIC INCLUDES! ---- eccodes-2.42.0-Source.unchanged/src/eccodes/CMakeLists.txt 2025-06-30 10:44:08.000000000 +0200 -+++ eccodes-2.42.0-Source/src/eccodes/CMakeLists.txt 2025-07-19 16:36:56.908394153 +0200 -@@ -440,6 +440,8 @@ ecbuild_add_library( TARGET eccodes +--- eccodes-2.44.0-Source.unchanged/src/eccodes/CMakeLists.txt 2025-10-06 11:49:11.000000000 +0200 ++++ eccodes-2.44.0-Source/src/eccodes/CMakeLists.txt 2025-11-07 11:33:03.784437554 +0100 +@@ -447,6 +447,8 @@ ecbuild_add_library( TARGET eccodes PRIVATE_LIBS ${ECCODES_EXTRA_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${AEC_LIBRARIES} ${PNG_LIBRARIES} PUBLIC_LIBS ${CMATH_LIBRARIES} ${THREADS_LIBRARIES} TEMPLATES ${eccodes_extra_src_files} diff --git a/eccodes.spec b/eccodes.spec index 4d0d168..17e866b 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -3,8 +3,8 @@ %endif Name: eccodes -Version: 2.42.0 -Release: 6%{?dist} +Version: 2.44.0 +Release: 1%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -458,6 +458,10 @@ ctest3 -V %{?_smp_mflags} %doc %{_datadir}/doc/%{name}/ %changelog + +* Fri Nov 07 2025 Jos de Kloe - 2.44.0-1 +- Update to 2.44.0 + * Fri Aug 22 2025 Orion Poplawski - 2.42.0-6 - Rebuild for netcdf 4.9.3 soname bump diff --git a/sources b/sources index 6cabd92..4dc5dc6 100644 --- a/sources +++ b/sources @@ -1,3 +1,4 @@ SHA512 (eccodes_test_data_20250202.tar.gz) = 8b4c7159dd7ed0e1e69068ec7dcabe94064f0d2abf9eac4fca2a9c730d500999e8edf1e7eeebba6fb12ae99b223c1b0843e31414538333c52f2508cb2d410151 SHA512 (eccodes-2.40.0-Source.tar.gz) = 39b09da398a864888f1b7da867adae63da9e512a865807c1dd0f4b76e242c46d6ec75f7db3a554c01c4fb60dd9677cd8b77bc03dac89931cbdf461c607b100c8 SHA512 (eccodes-2.42.0-Source.tar.gz) = 205246b250762ab6e7ac3050726ac5ce67ab689c8c393b153e7c084fb71edc40d64ee04e2fb32b3ad2a1426e65581126c0c8288e9088c27a7468f6b534f29b58 +SHA512 (eccodes-2.44.0-Source.tar.gz) = 63f81db07103ab3c6c0497ca3d0bae5b8a0841ed83a2b88831ddce756489a84aa394af7673c1438e2ea7a55107970cf87b8222da31321ef70ecc55cc99a3ddf5 From 412578264796d4829b722b0fb1ea6f0146a2f269 Mon Sep 17 00:00:00 2001 From: Cristian Le Date: Mon, 10 Nov 2025 17:59:52 +0100 Subject: [PATCH 147/147] Allow to build with CMake 4.0 (rhbz#2380563) --- eccodes.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/eccodes.spec b/eccodes.spec index 17e866b..bed4797 100644 --- a/eccodes.spec +++ b/eccodes.spec @@ -4,7 +4,7 @@ Name: eccodes Version: 2.44.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: WMO data format decoding and encoding # force the shared libraries to have these so versions @@ -260,6 +260,8 @@ tar xf %SOURCE1 popd %build +# TODO: Please submit an issue to upstream (rhbz#2380563) +export CMAKE_POLICY_VERSION_MINIMUM=3.5 #-- The following features are disabled by default and not switched on: # @@ -459,6 +461,9 @@ ctest3 -V %{?_smp_mflags} %changelog +* Mon Nov 10 2025 Cristian Le - 2.44.0-2 +- Allow to build with CMake 4.0 (rhbz#2380563) + * Fri Nov 07 2025 Jos de Kloe - 2.44.0-1 - Update to 2.44.0