Nik,

actually I've just modified it to the following that still tries to detect pread(). Can you test and report?

diff --git a/cmake/helpers/configure.cmake b/cmake/helpers/configure.cmake
index f52ea47db3..0939ffadda 100644
--- a/cmake/helpers/configure.cmake
+++ b/cmake/helpers/configure.cmake
@@ -241,16 +241,6 @@ else ()
   check_type_size("off_t" SIZEOF_OFF_T)

   check_function_exists(pread64 HAVE_PREAD64)
-  if( NOT HAVE_PREAD64 )
-    check_c_source_compiles(
-      "
-         #include <sys/types.h>
-         #include <sys/uio.h>
-         #include <unistd.h>
-         int main() { pread(0, NULL, 0, 0); return 0; }
-        "
-      HAVE_PREAD_BSD)
-  endif()

   check_function_exists(ftruncate64 HAVE_FTRUNCATE64)
   if (HAVE_FTRUNCATE64)
@@ -280,6 +270,19 @@ else ()
     unset(HAVE_FSEEK64 CACHE)
     unset(HAVE_STATVFS64)
     unset(HAVE_STATVFS64 CACHE)
+    unset(HAVE_PREAD64)
+    unset(HAVE_PREAD64 CACHE)
+  endif()
+
+  if( NOT HAVE_PREAD64 )
+    check_c_source_compiles(
+      "
+         #include <sys/types.h>
+         #include <sys/uio.h>
+         #include <unistd.h>
+         int main() { pread(0, NULL, 0, 0); return 0; }
+        "
+      HAVE_PREAD_BSD)
   endif()

   set(UNIX_STDIO_64 TRUE)

Le 12/11/2022 à 02:07, Even Rouault a écrit :

Le 12/11/2022 à 02:00, Nik Sands a écrit :
Hi GDAL devs

It appears as though ‘pread64’, introduced in 3.6.0, has broken building on iOS in the same way that other ‘…64’ errors used to occur on version 3.5.0 before being patched for 3.5.2.

The attached patch (text content also pasted below) allows the build to continue past that point for iOS (and Mac Catalyst). I’m just an ignorant hobbyist who doesn’t really understand a lot of this stuff, so please check that what I’ve done here is correct!  :-)  If it’s all OK, then please apply this (or similar) patch for the next release.

Patch queued in https://github.com/OSGeo/gdal/pull/6673

Thanks

--
http://www.spatialys.com
My software is free, but my time generally not.

_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to