package/libgeos: bump version to 3.14.1

Changelog: https://github.com/libgeos/geos/releases/tag/3.14.1

Drop merged upstream patch.

Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Maxim Kochetkov
2026-01-11 16:25:05 +03:00
committed by Peter Korsgaard
parent a57a35bdd0
commit 90c8073bd4
3 changed files with 2 additions and 73 deletions

View File

@@ -1,71 +0,0 @@
From a6bac7bd506988085fa692ff2e12727ae0e9db84 Mon Sep 17 00:00:00 2001
From: Maxim Kochetkov <fido_max@inbox.ru>
Date: Mon, 15 Sep 2025 17:16:08 +0300
Subject: [PATCH] geosop: make floating-point exceptions optional
commit 26292ce ("geosop: show most floating-point exceptions in verbose mode")
add fenv.h dependency. Some libc implementations (uclibc-ng )may have no fenv
support. So make floating-point exceptions optional and detetct fenv.h at
configure stage.
Upstream: https://github.com/libgeos/geos/pull/1305
Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru>
---
CMakeLists.txt | 7 +++++++
util/geosop/GeosOp.cpp | 6 ++++++
2 files changed, 13 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 12411e586..a1e2f0c6e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -558,3 +558,10 @@ if(PROJECT_IS_TOP_LEVEL)
unset(_is_multi_config_generator)
endif() # PROJECT_IS_TOP_LEVEL
+
+include(CheckIncludeFile)
+check_include_file(fenv.h HAVE_FENV_H)
+
+if(HAVE_FENV_H)
+ target_compile_definitions(geos_cxx_flags INTERFACE HAVE_FENV)
+endif()
diff --git a/util/geosop/GeosOp.cpp b/util/geosop/GeosOp.cpp
index 2cb17f000..05307cf30 100644
--- a/util/geosop/GeosOp.cpp
+++ b/util/geosop/GeosOp.cpp
@@ -26,7 +26,9 @@
#include <geos/io/WKBStreamReader.h>
#include <geos/io/WKBWriter.h>
+#if defined(HAVE_FENV)
#include <cfenv>
+#endif
#include <fstream>
#include <iostream>
#include <sstream>
@@ -394,10 +396,13 @@ void GeosOp::run(OpArguments& opArgs) {
//------------------------
try {
+#if defined(HAVE_FENV)
std::feclearexcept(FE_ALL_EXCEPT); // clear floating-point status flags
+#endif
execute(op, opArgs);
+#if defined(HAVE_FENV)
// Catch everything except for FE_INEXACT, which is usually harmless
const int fpexp = std::fetestexcept(FE_ALL_EXCEPT ^ FE_INEXACT);
if (args.isVerbose && (fpexp != 0)) {
@@ -414,6 +419,7 @@ void GeosOp::run(OpArguments& opArgs) {
std::cerr << " FE_UNDERFLOW";
std::cerr << std::endl;
}
+#endif
}
catch (std::exception &e) {
std::cerr << "Run-time exception: " << e.what() << std::endl;
--
2.51.0

View File

@@ -1,3 +1,3 @@
# Locally calculated
sha256 fe85286b1977121894794b36a7464d05049361bedabf972e70d8f9bf1e3ce928 geos-3.14.0.tar.bz2
sha256 3c20919cda9a505db07b5216baa980bacdaa0702da715b43f176fb07eff7e716 geos-3.14.1.tar.bz2
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING

View File

@@ -4,7 +4,7 @@
#
################################################################################
LIBGEOS_VERSION = 3.14.0
LIBGEOS_VERSION = 3.14.1
LIBGEOS_SITE = http://download.osgeo.org/geos
LIBGEOS_SOURCE = geos-$(LIBGEOS_VERSION).tar.bz2
LIBGEOS_LICENSE = LGPL-2.1