-# GSS-TSIG
-# Inputs: conf deps
+opt = get_option('experimental-gss-tsig')
-opt_gss_tsig = get_option('gss-tsig')
-conf.set10('GSS_TSIG', opt_gss_tsig, description: 'Whether to enable GSS-TSIG support')
+dep_krb5 = dependency('krb5', required: opt)
+dep_krb5_gssapi = dependency('krb5-gssapi', required: opt)
-dep_krb5 = dependency('krb5', required: opt_gss_tsig)
-dep_krb5_gssapi = dependency('krb5-gssapi', required: opt_gss_tsig)
-conf.set10('ENABLE_GSS_TSIG', dep_krb5.found() and dep_krb5_gssapi.found(), description: 'Whether we have GSS-TSIG support')
+found = dep_krb5.found() and dep_krb5_gssapi.found()
+conf.set('ENABLE_GSS_TSIG', found, description: 'GSS-TSIG')
-deps += dep_krb5
-deps += dep_krb5_gssapi
+summary('GSS-TSIG', found, bool_yn: true, section: 'GSS-TSIG')
+summary('Krb5', dep_krb5.version(), section: 'GSS-TSIG')
+summary('Krb5 GSSAPI', dep_krb5_gssapi.version(), section: 'GSS-TSIG')
-value = dep_krb5.found() and dep_krb5_gssapi.found() ? 'With krb5 ' + dep_krb5.version() + ' and krb5-gssapi ' + dep_krb5_gssapi.version() : false
-summary('GSS-TSIG', value, bool_yn: opt_gss_tsig, section: 'Configuration')
+dep_gss_tsig = dependency('', required: false)
+if found
+ dep_gss_tsig = declare_dependency(
+ dependencies: [
+ dep_krb5,
+ dep_krb5_gssapi,
+ ]
+ )
+endif
option('reproducible', type: 'boolean', value: false, description: 'Create reproducible builds (for distribution maintainers, makes debugging more difficult)')
option('fuzz-targets', type: 'boolean', value: false, description: 'Enable fuzzing targets')
option('verbose-logging', type: 'boolean', value: false, description: 'Enable verbose logging')
-option('gss-tsig', type: 'boolean', value: false, description: 'Enable GSS-TSIG support (experimental)')
option('experimental-pkcs11', type: 'feature', value: 'disabled', description: 'PKCS11 support')
+option('experimental-gss-tsig', type: 'feature', value: 'disabled', description: 'GSS-TSIG support')
option('socket-dir', type: 'string', value: '/var/run', description: 'Where the control socket lives')
option('module-bind', type: 'boolean', value: true, description: 'Bind backend')
option('module-bind-dyn', type: 'boolean', value: false, description: 'Bind backend (dynamically loadable)')