0001-Add-check-for-large-files-in-meson.build.patch
text/plain
Filename: 0001-Add-check-for-large-files-in-meson.build.patch
Type: text/plain
Part: 1
From 88e1d4c56f74c604d3773da4c45c0c592724adc5 Mon Sep 17 00:00:00 2001
From: Michael Paquier <michael@paquier.xyz>
Date: Sat, 8 Nov 2025 18:36:52 +0900
Subject: [PATCH] Add check for large files in meson.build
This check existed in the MSVC scripts that have been removed in v16,
and was missing from meson.
Backpatch-through: 16
---
meson.build | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/meson.build b/meson.build
index 00c46d400714..c7bc2df2c82f 100644
--- a/meson.build
+++ b/meson.build
@@ -452,6 +452,14 @@ else
segsize = (get_option('segsize') * 1024 * 1024 * 1024) / blocksize
endif
+# If we don't have largefile support, can't handle segment size >= 2GB.
+if cc.sizeof('off_t', args: test_c_args) < 8
+ segsize_bytes = segsize * blocksize
+ if segsize_bytes >= (2 * 1024 * 1024 * 1024)
+ error('Large file support is not enabled. Segment size cannot be larger than 1GB.')
+ endif
+endif
+
cdata.set('BLCKSZ', blocksize, description:
'''Size of a disk block --- this also limits the size of a tuple. You can set
it bigger if you need bigger tuples (although TOAST should reduce the need
--
2.51.0