summaryrefslogtreecommitdiff
path: root/external
diff options
context:
space:
mode:
authorTor Lillqvist <tml@collabora.com>2022-09-13 09:36:03 +0300
committerTor Lillqvist <tml@collabora.com>2022-09-14 06:54:55 +0200
commit0bd72fe60dea0d14bec4b79fdfbeb8cc7a4004b1 (patch)
tree22884a82da2e1e85af9d9871825d3d8fd1a5331c /external
parent0484d071bf9b7cf87521dbd57ad93fbea009ebf2 (diff)
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 <tml@collabora.com>
Diffstat (limited to 'external')
-rw-r--r--external/boost/UnpackedTarball_boost.mk2
-rw-r--r--external/boost/boost-ios.patch.027
2 files changed, 29 insertions, 0 deletions
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);