Mark hash_corrupted() as pg_attribute_noreturn.
[pgsql.git] / meson_options.txt
blob249ecc5ffdf862a7798864cc51cb11a2a0e2ed2e
1 # Copyright (c) 2022-2024, PostgreSQL Global Development Group
3 # Data layout influencing options
5 option('blocksize', type: 'combo',
6   choices: ['1', '2', '4', '8', '16', '32'],
7   value: '8',
8   description: 'Relation block size, in kilobytes')
10 option('wal_blocksize', type: 'combo',
11   choices: ['1', '2', '4', '8', '16', '32', '64'],
12   value: '8',
13   description: 'WAL block size, in kilobytes')
15 option('segsize', type: 'integer', value: 1,
16   description: 'Segment size, in gigabytes')
18 option('segsize_blocks', type: 'integer', value: 0,
19   description: 'Segment size, in blocks')
22 # Miscellaneous options
24 option('krb_srvnam', type: 'string', value: 'postgres',
25   description: 'Default Kerberos service principal for GSSAPI')
27 option('system_tzdata', type: 'string', value: '',
28   description: 'Use system time zone data in specified directory')
31 # Defaults
33 option('pgport', type: 'integer', value: 5432,
34   min: 1, max: 65535,
35   description: 'Default port number for server and clients')
38 # Developer options
40 option('cassert', type: 'boolean', value: false,
41   description: 'Enable assertion checks (for debugging)')
43 option('tap_tests', type: 'feature', value: 'auto',
44   description: 'Enable TAP tests')
46 option('injection_points', type: 'boolean', value: false,
47   description: 'Enable injection points')
49 option('PG_TEST_EXTRA', type: 'string', value: '',
50   description: 'Enable selected extra tests')
52 option('atomics', type: 'boolean', value: true,
53   description: 'Use atomic operations')
55 option('spinlocks', type: 'boolean', value: true,
56   description: 'Use spinlocks')
59 # Compilation options
61 option('extra_include_dirs', type: 'array', value: [],
62   description: 'Non-default directories to be searched for headers')
64 option('extra_lib_dirs', type: 'array', value: [],
65   description: 'Non-default directories to be searched for libs')
67 option('extra_version', type: 'string', value: '',
68   description: 'Append STRING to the PostgreSQL version number')
70 option('darwin_sysroot', type: 'string', value: '',
71   description: 'Select a non-default sysroot path')
73 option('rpath', type: 'boolean', value: true,
74   description: 'Embed shared library search path in executables')
77 # External dependencies
79 option('bonjour', type: 'feature', value: 'auto',
80   description: 'Bonjour support')
82 option('bsd_auth', type: 'feature', value: 'auto',
83   description: 'BSD Authentication support')
85 option('docs', type: 'feature', value: 'auto',
86   description: 'Documentation in HTML and man page format')
88 option('docs_pdf', type: 'feature', value: 'auto',
89   description: 'Documentation in PDF format')
91 option('docs_html_style', type: 'combo', choices: ['simple', 'website'],
92   description: 'CSS stylesheet for HTML documentation')
94 option('dtrace', type: 'feature', value: 'disabled',
95   description: 'DTrace support')
97 option('gssapi', type: 'feature', value: 'auto',
98   description: 'GSSAPI support')
100 option('icu', type: 'feature', value: 'auto',
101   description: 'ICU support')
103 option('ldap', type: 'feature', value: 'auto',
104   description: 'LDAP support')
106 option('libedit_preferred', type: 'boolean', value: false,
107   description: 'Prefer BSD Libedit over GNU Readline')
109 option('libxml', type: 'feature', value: 'auto',
110   description: 'XML support')
112 option('libxslt', type: 'feature', value: 'auto',
113   description: 'XSLT support in contrib/xml2')
115 option('llvm', type: 'feature', value: 'disabled',
116   description: 'LLVM support')
118 option('lz4', type: 'feature', value: 'auto',
119   description: 'LZ4 support')
121 option('nls', type: 'feature', value: 'auto',
122   description: 'Native language support')
124 option('pam', type: 'feature', value: 'auto',
125   description: 'PAM support')
127 option('plperl', type: 'feature', value: 'auto',
128   description: 'Build Perl modules (PL/Perl)')
130 option('plpython', type: 'feature', value: 'auto',
131   description: 'Build Python modules (PL/Python)')
133 option('pltcl', type: 'feature', value: 'auto',
134   description: 'Build with Tcl support (PL/Tcl)')
136 option('tcl_version', type: 'string', value: 'tcl',
137   description: 'Tcl version')
139 option('readline', type: 'feature', value: 'auto',
140   description: 'Use GNU Readline or BSD Libedit for editing')
142 option('selinux', type: 'feature', value: 'auto',
143   description: 'SELinux support')
145 option('ssl', type: 'combo', choices: ['auto', 'none', 'openssl'],
146   value: 'auto',
147   description: 'Use LIB for SSL/TLS support (openssl)')
149 option('systemd', type: 'feature', value: 'auto',
150   description: 'systemd support')
152 option('uuid', type: 'combo', choices: ['none', 'bsd', 'e2fs', 'ossp'],
153   value: 'none',
154   description: 'Use LIB for contrib/uuid-ossp support')
156 option('zlib', type: 'feature', value: 'auto',
157   description: 'Enable zlib')
159 option('zstd', type: 'feature', value: 'auto',
160   description: 'Enable zstd')
163 # Programs
165 option('BISON', type: 'array', value: ['bison', 'win_bison'],
166   description: 'Path to bison binary')
168 option('DTRACE', type: 'string', value: 'dtrace',
169   description: 'Path to dtrace binary')
171 option('FLEX', type: 'array', value: ['flex', 'win_flex'],
172   description: 'Path to flex binary')
174 option('FOP', type: 'string', value: 'fop',
175   description: 'Path to fop binary')
177 option('GZIP', type: 'string', value: 'gzip',
178   description: 'Path to gzip binary')
180 option('LZ4', type: 'string', value: 'lz4',
181   description: 'Path to lz4 binary')
183 option('OPENSSL', type: 'string', value: 'openssl',
184   description: 'Path to openssl binary')
186 option('PERL', type: 'string', value: 'perl',
187   description: 'Path to perl binary')
189 option('PROVE', type: 'string', value: 'prove',
190   description: 'Path to prove binary')
192 option('PYTHON', type: 'array', value: ['python3', 'python'],
193   description: 'Path to python binary')
195 option('SED', type: 'string', value: 'gsed',
196   description: 'Path to sed binary')
198 option('STRIP', type: 'string', value: 'strip',
199   description: 'Path to strip binary, used for PGXS emulation')
201 option('TAR', type: 'string', value: 'tar',
202   description: 'Path to tar binary')
204 option('XMLLINT', type: 'string', value: 'xmllint',
205   description: 'Path to xmllint binary')
207 option('XSLTPROC', type: 'string', value: 'xsltproc',
208   description: 'Path to xsltproc binary')
210 option('ZSTD', type: 'string', value: 'zstd',
211   description: 'Path to zstd binary')
213 option('ZIC', type: 'string', value: 'zic',
214   description: 'Path to zic binary, when cross-compiling')