postgresql/meson_options.txt
Andres Freund d3b111e320 Add option to specify segment size in blocks
The tests don't have much coverage of segment related code, as we don't create
large enough tables. To make it easier to test these paths, add a new option
specifying the segment size in blocks.

Set the new option to 6 blocks in one of the CI tasks. Smaller numbers
currently fail one of the tests, for understandable reasons.

While at it, fix some segment size related issues in the meson build.

Author: Andres Freund <andres@anarazel.de>
Discussion: https://postgr.es/m/20221107171355.c23fzwanfzq2pmgt@awork3.anarazel.de
2022-12-07 19:32:59 -08:00

195 lines
5.7 KiB
Meson

# Data layout influencing options
option('blocksize', type : 'combo',
choices : ['1', '2', '4', '8', '16', '32'],
value : '8',
description: 'set relation block size in kB')
option('wal_blocksize', type : 'combo',
choices: ['1', '2', '4', '8', '16', '32', '64'],
value: '8',
description : '''WAL block size, in kilobytes''')
option('segsize', type : 'integer', value : 1,
description : '''Segment size, in gigabytes''')
option('segsize_blocks', type : 'integer', value: 0,
description : '''Segment size, in blocks''')
# Miscellaneous options
option('krb_srvnam', type : 'string', value : 'postgres',
description : '''Default Kerberos service principal for GSSAPI''')
option('system_tzdata', type: 'string', value: '',
description: 'use system time zone data in specified directory')
# Defaults
option('pgport', type : 'integer', value : 5432,
min: 1, max: 65535,
description : '''Default port number for server and clients''')
# Developer options
option('cassert', type : 'boolean', value: false,
description: 'enable assertion checks (for debugging)')
option('tap_tests', type : 'feature', value : 'auto',
description : 'Whether to enable tap tests')
option('PG_TEST_EXTRA', type : 'string', value: '',
description: 'Enable selected extra tests')
option('atomics', type : 'boolean', value: true,
description: 'whether to use atomic operations')
option('spinlocks', type : 'boolean', value: true,
description: 'whether to use spinlocks')
# Compilation options
option('extra_include_dirs', type : 'array', value: [],
description: 'non-default directories to be searched for headers')
option('extra_lib_dirs', type : 'array', value: [],
description: 'non-default directories to be searched for libs')
option('extra_version', type : 'string', value: '',
description: 'append STRING to the PostgreSQL version number')
option('darwin_sysroot', type : 'string', value: '',
description: 'select a non-default sysroot path')
# External dependencies
option('bonjour', type : 'feature', value: 'auto',
description: 'build with Bonjour support')
option('bsd_auth', type : 'feature', value: 'auto',
description: 'build with BSD Authentication support')
option('dtrace', type : 'feature', value: 'disabled',
description: 'DTrace support')
option('gssapi', type : 'feature', value: 'auto',
description: 'GSSAPI support')
option('icu', type : 'feature', value: 'auto',
description: 'ICU support')
option('ldap', type : 'feature', value: 'auto',
description: 'LDAP support')
option('libedit_preferred', type : 'boolean', value: false,
description: 'Prefer BSD Libedit over GNU Readline')
option('libxml', type : 'feature', value: 'auto',
description: 'XML support')
option('libxslt', type : 'feature', value: 'auto',
description: 'XSLT support in contrib/xml2')
option('llvm', type : 'feature', value: 'disabled',
description: 'whether to use llvm')
option('lz4', type : 'feature', value: 'auto',
description: 'LZ4 support')
option('nls', type: 'feature', value: 'auto',
description: 'native language support')
option('pam', type : 'feature', value: 'auto',
description: 'build with PAM support')
option('plperl', type : 'feature', value: 'auto',
description: 'build Perl modules (PL/Perl)')
option('plpython', type : 'feature', value: 'auto',
description: 'build Python modules (PL/Python)')
option('pltcl', type : 'feature', value: 'auto',
description: 'build with TCL support')
option('tcl_version', type : 'string', value : 'tcl',
description: 'specify TCL version')
option('readline', type : 'feature', value : 'auto',
description: 'use GNU Readline or BSD Libedit for editing')
option('selinux', type : 'feature', value : 'disabled',
description: 'build with SELinux support')
option('ssl', type : 'combo', choices : ['none', 'openssl'],
value : 'none',
description: 'use LIB for SSL/TLS support (openssl)')
option('systemd', type : 'feature', value: 'auto',
description: 'build with systemd support')
option('uuid', type : 'combo', choices : ['none', 'bsd', 'e2fs', 'ossp'],
value : 'none',
description: 'build contrib/uuid-ossp using LIB')
option('zlib', type : 'feature', value: 'auto',
description: 'whether to use zlib')
option('zstd', type : 'feature', value: 'auto',
description: 'whether to use zstd')
# Programs
option('BISON', type : 'array', value: ['bison', 'win_bison'],
description: 'path to bison binary')
option('DTRACE', type : 'string', value: 'dtrace',
description: 'path to dtrace binary')
option('FLEX', type : 'array', value: ['flex', 'win_flex'],
description: 'path to flex binary')
option('GZIP', type : 'string', value: 'gzip',
description: 'path to gzip binary')
option('LZ4', type : 'string', value: 'lz4',
description: 'path to lz4 binary')
option('OPENSSL', type : 'string', value: 'openssl',
description: 'path to openssl binary')
option('PERL', type : 'string', value: 'perl',
description: 'path to perl binary')
option('PROVE', type : 'string', value: 'prove',
description: 'path to prove binary')
option('PYTHON', type : 'array', value: ['python3', 'python'],
description: 'path to python binary')
option('SED', type : 'string', value: 'gsed',
description: 'path to sed binary')
option('STRIP', type : 'string', value: 'strip',
description: 'path to strip binary, used for PGXS emulation')
option('TAR', type : 'string', value: 'tar',
description: 'path to tar binary')
option('XMLLINT', type : 'string', value: 'xmllint',
description: 'path to xmllint binary')
option('XSLTPROC', type : 'string', value: 'xsltproc',
description: 'path to xsltproc binary')
option('ZSTD', type : 'string', value: 'zstd',
description: 'path to zstd binary')
option('ZIC', type : 'string', value: 'zic',
description: 'path to zic binary, when cross-compiling')