Upgrade to upstream version 2.27.0 and add generation of man pages for tools that support the --help option

This commit is contained in:
Jos de Kloe 2022-08-29 14:16:53 +02:00
parent 9002d2d5b9
commit 986b16e6ee
5 changed files with 68 additions and 12 deletions

1
.gitignore vendored
View File

@ -1,2 +1,3 @@
/eccodes-2.26.0-Source.tar.gz
/eccodes_test_data_20220526.tar.gz
/eccodes-2.27.0-Source.tar.gz

View File

@ -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 $<BUILD_INTERFACE:${CMAKE_Fortran_MODULE_DIRECTORY}>
@ -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}

View File

@ -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 <josdekloe@gmail.com> - 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 <releng@fedoraproject.org> - 2.26.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

28
eccodes_create_man_pages.sh Executable file
View File

@ -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"

View File

@ -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