diff options
| author | Michael Paquier | 2025-11-12 00:02:27 +0000 |
|---|---|---|
| committer | Michael Paquier | 2025-11-12 00:02:27 +0000 |
| commit | 79cd66f28c65abbdc0ed695a9583a530fe6ece14 (patch) | |
| tree | e23b9f873160fba38488c609cff5310c27e765fe | |
| parent | 6956bca515e2a07a16c6d68b208766e97b275ddc (diff) | |
A similar check existed in the MSVC scripts that have been removed in
v17 by 1301c80b2167, but nothing of the kind was checked in meson when
building with a 4-byte off_t.
This commit adds a check to fail the builds when trying to use a
relation file size higher than 1GB when off_t is 4 bytes, like
./configure, rather than detecting these failures at runtime because the
code is not able to handle large files in this case.
Backpatch down to v16, where meson has been introduced.
Discussion: https://postgr.es/m/[email protected]
Backpatch-through: 16
| -rw-r--r-- | meson.build | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/meson.build b/meson.build index 24aeffe929f..c1e17aa3040 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 |
