Update to 1.0.0

Drop EL7 support due to plplot 5.11 requirement
This commit is contained in:
Orion Poplawski 2021-08-23 19:43:16 -06:00
parent 3a8c66037b
commit 4be62182e6
5 changed files with 36 additions and 1953 deletions

1
.gitignore vendored
View File

@ -14,3 +14,4 @@ gdl-0.9rc4.tar.gz
/gdl-0.9.9.tar.gz /gdl-0.9.9.tar.gz
/gdl-0.9.9-git-2870075.tar.gz /gdl-0.9.9-git-2870075.tar.gz
/gdl-1.0.0-git-4892c96.tar.gz /gdl-1.0.0-git-4892c96.tar.gz
/gdl-1.0.0.tar.gz

View File

@ -1,9 +1,9 @@
diff -up gdl-287007567ba3998b4b70119025c3def86bdef649/src/CMakeLists.txt.antlr gdl-287007567ba3998b4b70119025c3def86bdef649/src/CMakeLists.txt diff -up gdl-1.0.0/src/CMakeLists.txt.antlr gdl-1.0.0/src/CMakeLists.txt
--- gdl-287007567ba3998b4b70119025c3def86bdef649/src/CMakeLists.txt.antlr 2019-09-16 03:51:53.000000000 -0600 --- gdl-1.0.0/src/CMakeLists.txt.antlr 2021-08-19 20:04:43.096095029 -0600
+++ gdl-287007567ba3998b4b70119025c3def86bdef649/src/CMakeLists.txt 2019-09-16 21:13:52.240535555 -0600 +++ gdl-1.0.0/src/CMakeLists.txt 2021-08-19 20:05:26.844467193 -0600
@@ -291,9 +291,7 @@ sax.cpp @@ -193,9 +193,7 @@ ${WX_RC}
) )
endif(USE_EXPAT) endif(HAVE_LIBWXWIDGETS AND WIN32)
-add_subdirectory(antlr) -add_subdirectory(antlr)
- -
@ -12,9 +12,9 @@ diff -up gdl-287007567ba3998b4b70119025c3def86bdef649/src/CMakeLists.txt.antlr g
link_directories(${LINK_DIRECTORIES}) link_directories(${LINK_DIRECTORIES})
if(PYTHON_MODULE) #GDL.so if(PYTHON_MODULE) #GDL.so
@@ -308,7 +306,6 @@ else(PYTHON_MODULE) #GDL.so @@ -213,7 +211,6 @@ if(USE_OPENMP)
add_executable(gdl ${SOURCES}) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
endif(PYTHON_MODULE) endif(USE_OPENMP)
-add_dependencies(gdl antlr) # be sure that antlr is built before gdl -add_dependencies(gdl antlr) # be sure that antlr is built before gdl
target_link_libraries(gdl antlr) # link antlr against gdl target_link_libraries(gdl antlr) # link antlr against gdl

File diff suppressed because it is too large Load Diff

View File

@ -4,37 +4,28 @@
Name: gdl Name: gdl
Version: 1.0.0 Version: 1.0.0
Release: 0.6.20210123git%{shortcommit}%{?dist} Release: 1%{?dist}
Summary: GNU Data Language Summary: GNU Data Language
License: GPLv2+ License: GPLv2+
URL: http://gnudatalanguage.sourceforge.net/ URL: http://gnudatalanguage.sourceforge.net/
#Source0: https://github.com/gnudatalanguage/gdl/archive/v%{version}-rc.3/gdl-%{version}-rc.3.tar.gz Source0: https://github.com/gnudatalanguage/gdl/archive/v%{version}/gdl-%{version}.tar.gz
Source0: https://github.com/gnudatalanguage/gdl/archive/%{commit}/gdl-%{version}-git-%{shortcommit}.tar.gz #Source0: https://github.com/gnudatalanguage/gdl/archive/%{commit}/gdl-%{version}-git-%{shortcommit}.tar.gz
Source1: gdl.csh Source1: gdl.csh
Source2: gdl.sh Source2: gdl.sh
Source4: xorg.conf Source4: xorg.conf
# Build with system antlr library. Request for upstream change here: # Build with system antlr library. Request for upstream change here:
# https://sourceforge.net/tracker/index.php?func=detail&aid=2685215&group_id=97659&atid=618686 # https://sourceforge.net/tracker/index.php?func=detail&aid=2685215&group_id=97659&atid=618686
Patch1: gdl-antlr.patch Patch1: gdl-antlr.patch
# Support for PROJ 8
# https://github.com/gnudatalanguage/gdl/pull/898
Patch2: gdl-proj.patch
# Build fails on armv7hl # Build fails on armv7hl
# https://bugzilla.redhat.com/show_bug.cgi?id=1919680 # https://bugzilla.redhat.com/show_bug.cgi?id=1919680
ExcludeArch: armv7hl ExcludeArch: armv7hl
%if 0%{?fedora} || 0%{?rhel} >= 7
BuildRequires: gcc-c++ BuildRequires: gcc-c++
BuildRequires: antlr-C++ BuildRequires: antlr-C++
BuildRequires: antlr-tool BuildRequires: antlr-tool
BuildRequires: java-devel BuildRequires: java-devel
%endif
%if 0%{?rhel} == 6
BuildRequires: antlr
BuildRequires: java
%endif
BuildRequires: eigen3-static BuildRequires: eigen3-static
BuildRequires: expat-devel BuildRequires: expat-devel
BuildRequires: fftw-devel BuildRequires: fftw-devel
@ -49,7 +40,7 @@ BuildRequires: libtiff-devel
BuildRequires: libtirpc-devel BuildRequires: libtirpc-devel
BuildRequires: ncurses-devel BuildRequires: ncurses-devel
BuildRequires: netcdf-devel BuildRequires: netcdf-devel
BuildRequires: plplot-devel BuildRequires: plplot-wxGTK-devel >= 5.11
BuildRequires: proj-devel BuildRequires: proj-devel
BuildRequires: pslib-devel BuildRequires: pslib-devel
BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-devel
@ -60,45 +51,29 @@ BuildRequires: readline-devel
#BuildRequires: dSFMT-devel #BuildRequires: dSFMT-devel
Provides: bundled(dSFMT) Provides: bundled(dSFMT)
BuildRequires: shapelib-devel BuildRequires: shapelib-devel
%if 0%{?fedora} || 0%{?rhel} >= 8
# eccodes not available on these arches # eccodes not available on these arches
%ifnarch i686 ppc64 s390x armv7hl aarch64 %ifnarch i686 s390x armv7hl
BuildRequires: eccodes-devel BuildRequires: eccodes-devel
%else %else
BuildRequires: grib_api-devel BuildRequires: grib_api-devel
%endif %endif
%else
# eccodes not available on these arches
%ifnarch i686 ppc64 s390x armv7hl aarch64
BuildRequires: eccodes-devel
%else
BuildRequires: grib_api-static
%endif
%endif
#TODO - Build with mpi support #TODO - Build with mpi support
#BuildRequires: mpich2-devel #BuildRequires: mpich2-devel
# qhull too old on Fedora 24 and EPEL7
%if 0%{?fedora} || 0%{?rhel} >= 8
BuildRequires: qhull-devel BuildRequires: qhull-devel
%endif
BuildRequires: udunits2-devel BuildRequires: udunits2-devel
BuildRequires: wxGTK3-devel BuildRequires: wxGTK3-devel
BuildRequires: cmake3 BuildRequires: cmake3
# For tests # For tests
# EL8 s390x missing xorg-x11-drv-dummy # EL8 s390x missing xorg-x11-drv-dummy
%ifnarch s390x %if ! ( 0%{?rhel} >= 8 && "%{_arch}" == "s390x" )
BuildRequires: xorg-x11-drv-dummy BuildRequires: xorg-x11-drv-dummy
BuildRequires: metacity BuildRequires: metacity
%endif %endif
BuildRequires: make BuildRequires: make
# Needed to pull in drivers # Needed to pull in drivers
Requires: plplot Requires: plplot
%if 0%{?fedora} || 0%{?rhel} >= 8
# Widgets use wx # Widgets use wx
Recommends: plplot-wxGTK Recommends: plplot-wxGTK
%else
Requires: plplot-wxGTK
%endif
Requires: %{name}-common = %{version}-%{release} Requires: %{name}-common = %{version}-%{release}
Provides: %{name}-runtime = %{version}-%{release} Provides: %{name}-runtime = %{version}-%{release}
# Need to match hdf5 compile time version # Need to match hdf5 compile time version
@ -137,12 +112,14 @@ Provides: %{name}-runtime = %{version}-%{release}
%prep %prep
%setup -q -n gdl-%{commit} %setup -q -n gdl-%{version}
rm -rf src/antlr rm -rf src/antlr
# Not yet possible to build with external dSFMT # Not yet possible to build with external dSFMT
#rm -r src/dSFMT #rm -r src/dSFMT
%patch1 -p1 -b .antlr %patch1 -p1 -b .antlr
%patch2 -p1 -b .PROJ
# Find grib_api on architectures where needed
sed -i -e '/find_library(GRIB_LIBRARIES/s/eccodes/eccodes grib_api/' CMakeModules/FindGrib.cmake
pushd src pushd src
for f in *.g for f in *.g
@ -188,15 +165,10 @@ pushd build-python
%make_install %make_install
# Install the python module in the right location # Install the python module in the right location
install -d -m 0755 $RPM_BUILD_ROOT/%{python_sitearch} install -d -m 0755 $RPM_BUILD_ROOT/%{python_sitearch}
%if 0%{?fedora} || 0%{?rhel} >= 8
%if "%{_lib}" != "lib" %if "%{_lib}" != "lib"
mv $RPM_BUILD_ROOT%{_prefix}/lib/python*/site-packages/GDL.so \ mv $RPM_BUILD_ROOT%{_prefix}/lib/python*/site-packages/GDL.so \
$RPM_BUILD_ROOT%{python_sitearch}/GDL.so $RPM_BUILD_ROOT%{python_sitearch}/GDL.so
%endif %endif
%else
mv $RPM_BUILD_ROOT%{_prefix}/lib/site-python/GDL.so \
$RPM_BUILD_ROOT%{python_sitearch}/GDL.so
%endif
popd popd
# Install the profile file to set GDL_PATH # Install the profile file to set GDL_PATH
@ -205,7 +177,8 @@ install -m 0644 %SOURCE1 $RPM_BUILD_ROOT/%{_sysconfdir}/profile.d
install -m 0644 %SOURCE2 $RPM_BUILD_ROOT/%{_sysconfdir}/profile.d install -m 0644 %SOURCE2 $RPM_BUILD_ROOT/%{_sysconfdir}/profile.d
%ifnarch s390x # EL8 s390x missing xorg-x11-drv-dummy
%if ! ( 0%{?rhel} >= 8 && "%{_arch}" == "s390x" )
%check %check
cd build cd build
cp %SOURCE4 . cp %SOURCE4 .
@ -223,47 +196,27 @@ export DISPLAY=:99
metacity & metacity &
sleep 2 sleep 2
# device - Failed on EL7
# fft_leak - https://github.com/gnudatalanguage/gdl/issues/147
# file_delete - EL7 only ? https://github.com/gnudatalanguage/gdl/issues/148
# file_test - https://github.com/gnudatalanguage/gdl/issues/534
# formats - EL7 only ? https://github.com/gnudatalanguage/gdl/issues/144
# get_screen_size - Failed on EL7
# idlneturl - Requires network
# make_dll - Windows specific
failing_tests='test_(fft_leak|file_(delete|test)|formats|get_screen_size|idlneturl|make_dll)'
%ifarch aarch64 %{power64}
# test_fix fails currently on arm
# https://sourceforge.net/p/gnudatalanguage/bugs/622/
# https://bugzilla.redhat.com/show_bug.cgi?id=990749
failing_tests="$failing_tests|test_(fix|hdf5)"
%endif
%ifarch aarch64 %ifarch aarch64
failing_tests="$failing_tests|test_(bug_(3104209|3104326|3147733)|byte_conversion|bytscl|fix|step)" failing_tests="test_(byte_conversion|bytscl)"
%endif %endif
%ifarch %{arm} %ifarch %{arm}
# These fail on 32-bit: test_formats test_xdr # These fail on 32-bit: test_formats test_xdr
failing_tests="$failing_tests|test_(file_lines|fix|formats|hdf5|xdr)" failing_tests="test_(file_lines|fix|formats|hdf5)"
%endif %endif
%ifarch %{ix86} %ifarch %{ix86}
# binfmt - https://github.com/gnudatalanguage/gdl/issues/332 # test_l64 https://github.com/gnudatalanguage/gdl/issues/1075
# These fail on 32-bit: test_formats test_xdr failing_tests="test_l64"
failing_tests="$failing_tests|test_(formats|l64|sem|xdr)"
%endif
%ifarch ppc64
failing_tests="$failing_tests|test_(bug_(635|3104209|3147733)|file_lines|save_restore|window_background)"
%endif %endif
%ifarch ppc64le %ifarch ppc64le
# ppc64le - test_file_lines https://github.com/gnudatalanguage/gdl/issues/373 failing_tests="test_(byte_conversion|bytscl|finite)"
failing_tests="$failing_tests|test_(bug_(3104209|3104326)|byte_conversion|bytscl|container|file_lines|finite|fix|random|rounding)"
%endif %endif
%ifarch s390x %ifarch s390x
failing_tests="$failing_tests|test_(bug_635|byte_conversion|bytsc|deriv|file_lines|hdf5|image_statistics|save_restore|sort|tic_toc|window_background)" failing_tests="test_(bug_635|byte_conversion|bytsc|deriv|file_lines|hdf5|image_statistics|save_restore|sort|tic_toc|window_background)"
%endif %endif
make check VERBOSE=1 ARGS="-V -E '$failing_tests'" make test VERBOSE=1 ARGS="-V -E '$failing_tests'"
%ifnarch ppc64 s390x %ifnarch s390x
# test_save_restore hangs on ppc64 s390x # test_save_restore hangs on s390x
make check VERBOSE=1 ARGS="-V -R '$failing_tests' --timeout 600" || : make test VERBOSE=1 ARGS="-V -R '$failing_tests' --timeout 600" || :
%endif %endif
kill %1 || : kill %1 || :
cat xorg.log cat xorg.log
@ -285,6 +238,10 @@ cat xorg.log
%changelog %changelog
* Sun Aug 22 2021 Orion Poplawski <orion@nwra.com> - 1.0.0-1
- Update to 1.0.0
- Drop EL7 support due to plplot 5.11 requirement
* Tue Aug 10 2021 Orion Poplawski <orion@nwra.com> - 1.0.0-0.6.20210123git4892c96 * Tue Aug 10 2021 Orion Poplawski <orion@nwra.com> - 1.0.0-0.6.20210123git4892c96
- Rebuild for hdf5 1.10.7/netcdf 4.8.0 - Rebuild for hdf5 1.10.7/netcdf 4.8.0

View File

@ -1 +1 @@
SHA512 (gdl-1.0.0-git-4892c96.tar.gz) = 3649802bcf35e338bc92ae9cc8fc2bff49e2e5775f702db76809d5506fba3c11fb0440f7371131d940cc079c828bdb92d76dc76b3a2c0ed549412a343e40510b SHA512 (gdl-1.0.0.tar.gz) = 05de98725b63e553ad103d24e36994c5be948c9a05bfb092325d7fb049a852f10381445992ff4c158e98c07ace31e38ee78ba23b70f3b4e38f13e497dac330ce