1 # Copyright (c) 2022-2023, PostgreSQL Global Development Group
3 # Data layout influencing options
5 option('blocksize', type: 'combo',
6 choices: ['1', '2', '4', '8', '16', '32'],
8 description: 'Relation block size, in kilobytes')
10 option('wal_blocksize', type: 'combo',
11 choices: ['1', '2', '4', '8', '16', '32', '64'],
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')
33 option('pgport', type: 'integer', value: 5432,
35 description: 'Default port number for server and clients')
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('PG_TEST_EXTRA', type: 'string', value: '',
47 description: 'Enable selected extra tests')
49 option('atomics', type: 'boolean', value: true,
50 description: 'Use atomic operations')
52 option('spinlocks', type: 'boolean', value: true,
53 description: 'Use spinlocks')
58 option('extra_include_dirs', type: 'array', value: [],
59 description: 'Non-default directories to be searched for headers')
61 option('extra_lib_dirs', type: 'array', value: [],
62 description: 'Non-default directories to be searched for libs')
64 option('extra_version', type: 'string', value: '',
65 description: 'Append STRING to the PostgreSQL version number')
67 option('darwin_sysroot', type: 'string', value: '',
68 description: 'Select a non-default sysroot path')
70 option('rpath', type: 'boolean', value: true,
71 description: 'Embed shared library search path in executables')
74 # External dependencies
76 option('bonjour', type: 'feature', value: 'auto',
77 description: 'Bonjour support')
79 option('bsd_auth', type: 'feature', value: 'auto',
80 description: 'BSD Authentication support')
82 option('docs', type: 'feature', value: 'auto',
83 description: 'Documentation in HTML and man page format')
85 option('docs_pdf', type: 'feature', value: 'auto',
86 description: 'Documentation in PDF format')
88 option('docs_html_style', type: 'combo', choices: ['simple', 'website'],
89 description: 'CSS stylesheet for HTML documentation')
91 option('dtrace', type: 'feature', value: 'disabled',
92 description: 'DTrace support')
94 option('gssapi', type: 'feature', value: 'auto',
95 description: 'GSSAPI support')
97 option('icu', type: 'feature', value: 'auto',
98 description: 'ICU support')
100 option('ldap', type: 'feature', value: 'auto',
101 description: 'LDAP support')
103 option('libedit_preferred', type: 'boolean', value: false,
104 description: 'Prefer BSD Libedit over GNU Readline')
106 option('libxml', type: 'feature', value: 'auto',
107 description: 'XML support')
109 option('libxslt', type: 'feature', value: 'auto',
110 description: 'XSLT support in contrib/xml2')
112 option('llvm', type: 'feature', value: 'disabled',
113 description: 'LLVM support')
115 option('lz4', type: 'feature', value: 'auto',
116 description: 'LZ4 support')
118 option('nls', type: 'feature', value: 'auto',
119 description: 'Native language support')
121 option('pam', type: 'feature', value: 'auto',
122 description: 'PAM support')
124 option('plperl', type: 'feature', value: 'auto',
125 description: 'Build Perl modules (PL/Perl)')
127 option('plpython', type: 'feature', value: 'auto',
128 description: 'Build Python modules (PL/Python)')
130 option('pltcl', type: 'feature', value: 'auto',
131 description: 'Build with Tcl support (PL/Tcl)')
133 option('tcl_version', type: 'string', value: 'tcl',
134 description: 'Tcl version')
136 option('readline', type: 'feature', value: 'auto',
137 description: 'Use GNU Readline or BSD Libedit for editing')
139 option('selinux', type: 'feature', value: 'disabled',
140 description: 'SELinux support')
142 option('ssl', type: 'combo', choices: ['auto', 'none', 'openssl'],
144 description: 'Use LIB for SSL/TLS support (openssl)')
146 option('systemd', type: 'feature', value: 'auto',
147 description: 'systemd support')
149 option('uuid', type: 'combo', choices: ['none', 'bsd', 'e2fs', 'ossp'],
151 description: 'Use LIB for contrib/uuid-ossp support')
153 option('zlib', type: 'feature', value: 'auto',
154 description: 'Enable zlib')
156 option('zstd', type: 'feature', value: 'auto',
157 description: 'Enable zstd')
162 option('BISON', type: 'array', value: ['bison', 'win_bison'],
163 description: 'Path to bison binary')
165 option('DTRACE', type: 'string', value: 'dtrace',
166 description: 'Path to dtrace binary')
168 option('FLEX', type: 'array', value: ['flex', 'win_flex'],
169 description: 'Path to flex binary')
171 option('FOP', type: 'string', value: 'fop',
172 description: 'Path to fop binary')
174 option('GZIP', type: 'string', value: 'gzip',
175 description: 'Path to gzip binary')
177 option('LZ4', type: 'string', value: 'lz4',
178 description: 'Path to lz4 binary')
180 option('OPENSSL', type: 'string', value: 'openssl',
181 description: 'Path to openssl binary')
183 option('PERL', type: 'string', value: 'perl',
184 description: 'Path to perl binary')
186 option('PROVE', type: 'string', value: 'prove',
187 description: 'Path to prove binary')
189 option('PYTHON', type: 'array', value: ['python3', 'python'],
190 description: 'Path to python binary')
192 option('SED', type: 'string', value: 'gsed',
193 description: 'Path to sed binary')
195 option('STRIP', type: 'string', value: 'strip',
196 description: 'Path to strip binary, used for PGXS emulation')
198 option('TAR', type: 'string', value: 'tar',
199 description: 'Path to tar binary')
201 option('XMLLINT', type: 'string', value: 'xmllint',
202 description: 'Path to xmllint binary')
204 option('XSLTPROC', type: 'string', value: 'xsltproc',
205 description: 'Path to xsltproc binary')
207 option('ZSTD', type: 'string', value: 'zstd',
208 description: 'Path to zstd binary')
210 option('ZIC', type: 'string', value: 'zic',
211 description: 'Path to zic binary, when cross-compiling')