option('lua', type: 'combo', choices: ['auto', 'luajit', 'lua'], value: 'auto', description: 'Which Lua implementation to use') option('hardening', type: 'feature', value: 'auto', description: 'Compiler security checks') option('fortify-source', type: 'combo', choices: ['auto', 'disabled', '1', '2', '3'], value: '2', description: 'Source fortification level') option('kiss-rng', type: 'boolean', value: false, description: 'Use the unsafe KISS RNG') option('libsodium', type: 'feature', value: 'auto', description: 'Build support for libsodium-based signers') option('libdecaf', type: 'feature', value: 'auto', description: 'Build support for libdecaf-based signers') option('libcrypto', type: 'string', value: 'auto', description: 'Build support for libcrypto-based signers (auto, yes, no, or a path)') option('libssl', type: 'feature', value: 'auto', description: 'Build support for libssl') option('gnutls', type: 'feature', value: 'auto', description: 'Build support for GnuTLS') option('dns-over-tls', type: 'boolean', value: false, description: 'Enable DNS over TLS (requires GnuTLS or OpenSSL)') option('ipcipher', type: 'feature', value: 'auto', description: 'Enable ipcipher support (requires libcrypto)') option('unit-tests', type: 'boolean', value: false, description: 'Enable building unit tests') option('backend-unit-tests', type: 'boolean', value: false, description: 'Enable building backend unit tests') option('reproducible', type: 'boolean', value: false, description: 'Create reproducible builds. Use this only if you are a distribution maintainer and need reproducible builds. If you compile PowerDNS yourself, leave this disabled, as it might make debugging harder') option('fuzz-targets', type: 'boolean', value: false, description: 'Enable fuzzing targets') option('verbose-logging', type: 'boolean', value: false, description: 'Enable verbose logging') option('pkcs11', type: 'boolean', value: false, description: 'Enable PKCS11 support (experimental)') option('gss-tsig', type: 'boolean', value: false, description: 'Enable GSS-TSIG support (experimental)') option('socket-dir', type: 'string', value: '/var/run', description: 'Where the control socket lives') option('module-gmysql', type: 'boolean', value: true, description: 'Build the gmysql backend') option('module-gmysql-dyn', type: 'boolean', value: false, description: 'Build the dynamically loadable gmysql backend') option('module-godbc', type: 'boolean', value: false, description: 'Build the godbc backend') option('module-godbc-dyn', type: 'boolean', value: false, description: 'Build the dynamically loadable godbc backend') option('module-gpgsql', type: 'boolean', value: false, description: 'Build the gpgsql backend') option('module-gpgsql-dyn', type: 'boolean', value: false, description: 'Build the dynamically loadable gpgsql backend') option('module-gsqlite3', type: 'boolean', value: false, description: 'Build the gsqlite3 backend') option('module-gsqlite3-dyn', type: 'boolean', value: false, description: 'Build the dynamically loadable gsqlite3 backend') option('module-ldap', type: 'boolean', value: false, description: 'Build the LDAP backend') option('module-ldap-dyn', type: 'boolean', value: false, description: 'Build the dynamically loadable LDAP backend')