Browse Source

math/R-cran-terra: Unbreak i386

overlay
Nuno Teixeira 3 weeks ago
parent
commit
76bd4d0b03
  1. 2
      math/R-cran-terra/Makefile
  2. 45
      math/R-cran-terra/files/patch-i386

2
math/R-cran-terra/Makefile

@ -9,8 +9,6 @@ WWW= https://cran.r-project.org/package=terra
LICENSE= GPLv3+
BROKEN_i386= https://github.com/rspatial/terra/issues/1846
LIB_DEPENDS= libgdal.so:graphics/gdal \
libgeos_c.so:graphics/geos \
libproj.so:graphics/proj

45
math/R-cran-terra/files/patch-i386

@ -0,0 +1,45 @@
From 891bb07da1152988225d1f1cfac75aabfa40df62 Mon Sep 17 00:00:00 2001
From: rhijmans <r.hijmans@gmail.com>
Date: Tue, 3 Jun 2025 07:51:14 -0700
Subject: [PATCH] for #1846
---
src/gdal_multidimensional.cpp | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git src/gdal_multidimensional.cpp src/gdal_multidimensional.cpp
index 7116212a9..42049f59a 100644
--- src/gdal_multidimensional.cpp
+++ src/gdal_multidimensional.cpp
@@ -9,6 +9,11 @@
#include "file_utils.h"
#include "vecmath.h"
+#if defined(_WIN64) || defined(__x86_64__) || defined(__ppc64__) || defined(__aarch64__) || defined(__MINGW64__) || defined(__amd64__)
+ #define IS_64_BIT
+#endif
+
+
bool parse_ncdf_time(SpatRasterSource &s, const std::string unit, const std::string calendar, std::vector<double> raw, std::string &msg) {
std::vector<int_64> out;
@@ -179,7 +184,7 @@ bool parse_ncdf_time(SpatRasterSource &s, const std::string unit, const std::str
-#if GDAL_VERSION_MAJOR >= 3 && GDAL_VERSION_MINOR >= 4
+#if GDAL_VERSION_MAJOR >= 3 && GDAL_VERSION_MINOR >= 4 && defined(IS_64_BIT)
std::vector<std::string> GetArrayNames(std::shared_ptr<GDALGroup> x, bool filter) {
@@ -804,8 +809,9 @@ bool SpatRaster::writeStopMulti() {
#else
+
bool SpatRaster::constructFromFileMulti(std::string fname, std::vector<int> subds, std::vector<std::string> subname, std::vector<std::string> drivers, std::vector<std::string> options, std::vector<int> dims, bool noflip, bool guessCRS, std::vector<std::string> domains) {
- setError("multidim is not supported with GDAL < 3.4");
+ setError("multidim is not supported with GDAL < 3.4 or on 32 bit systems");
return false;
}
Loading…
Cancel
Save