external/boost/UnpackedTarball_boost.mk |    2 ++
 external/boost/boost-ios.patch.0        |   27 +++++++++++++++++++++++++++
 2 files changed, 29 insertions(+)

New commits:
commit 0bd72fe60dea0d14bec4b79fdfbeb8cc7a4004b1
Author:     Tor Lillqvist <t...@collabora.com>
AuthorDate: Tue Sep 13 09:36:03 2022 +0300
Commit:     Tor Lillqvist <t...@collabora.com>
CommitDate: Wed Sep 14 06:54:55 2022 +0200

    Fix build of boost for iOS
    
    Change-Id: If5d812e1b37c9aa16b2b6075585f5f3023aca431
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139827
    Tested-by: Jenkins
    Reviewed-by: Tor Lillqvist <t...@collabora.com>

diff --git a/external/boost/UnpackedTarball_boost.mk 
b/external/boost/UnpackedTarball_boost.mk
index e8048a423268..9e5e277b0a2a 100644
--- a/external/boost/UnpackedTarball_boost.mk
+++ b/external/boost/UnpackedTarball_boost.mk
@@ -33,6 +33,8 @@ boost_patches += msvc2017.patch.0
 
 boost_patches += libc++.patch.0
 
+boost_patches += boost-ios.patch.0
+
 # <https://github.com/boostorg/numeric_conversion/pull/25> "Fix ill-formed 
constant expression
 # errors":
 boost_patches += constexpr.patch.0
diff --git a/external/boost/boost-ios.patch.0 b/external/boost/boost-ios.patch.0
new file mode 100644
index 000000000000..9457bf8c71d1
--- /dev/null
+++ b/external/boost/boost-ios.patch.0
@@ -0,0 +1,27 @@
+# -*- Mode: Diff -*-
+--- libs/filesystem/src/operations.cpp
++++ libs/filesystem/src/operations.cpp
+@@ -492,7 +492,11 @@
+     int err = invoke_statx(basedir_fd, p.c_str(), AT_NO_AUTOMOUNT, STATX_TYPE 
| STATX_MODE, &path_stat);
+ #elif defined(BOOST_FILESYSTEM_HAS_POSIX_AT_APIS)
+     struct ::stat path_stat;
++#ifdef AT_NO_AUTOMOUNT
+     int err = ::fstatat(basedir_fd, p.c_str(), &path_stat, AT_NO_AUTOMOUNT);
++#else
++    int err = ::fstatat(basedir_fd, p.c_str(), &path_stat, 0);
++#endif
+ #else
+     struct ::stat path_stat;
+     int err = ::stat(p.c_str(), &path_stat);
+@@ -553,7 +553,11 @@
+     int err = invoke_statx(basedir_fd, p.c_str(), AT_SYMLINK_NOFOLLOW | 
AT_NO_AUTOMOUNT, STATX_TYPE | STATX_MODE, &path_stat);
+ #elif defined(BOOST_FILESYSTEM_HAS_POSIX_AT_APIS)
+     struct ::stat path_stat;
++#ifdef AT_NO_AUTOMOUNT
+     int err = ::fstatat(basedir_fd, p.c_str(), &path_stat, 
AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT);
++#else
++    int err = ::fstatat(basedir_fd, p.c_str(), &path_stat, 
AT_SYMLINK_NOFOLLOW);
++#endif
+ #else
+     struct ::stat path_stat;
+     int err = ::lstat(p.c_str(), &path_stat);

Reply via email to