elif entry['type'] == LType.Command:
file.write(f" ::arg().setCmd({oldname}, {helptxt});\n")
else:
- file.write(f" ::arg().set({oldname}, {helptxt}) = {quote(entry['default'])};\n")
+ cxxdef = 'SYSCONFDIR' if entry['default'] == 'SYSCONFDIR' else quote(entry['default'])
+ file.write(f" ::arg().set({oldname}, {helptxt}) = {cxxdef};\n")
file.write('}\n\n')
def gen_cxx_oldstylesettingstobridgestruct(file, entries):
return gen_rust_authzonevec_default_functions(name)
ret = f'// DEFAULT HANDLING for {name}\n'
ret += f'fn default_value_{name}() -> {rust_type} {{\n'
- ret += f" String::from({quote(entry['default'])})\n"
+ rustdef = 'env!("SYSCONFDIR")' if entry['default'] == 'SYSCONFDIR' else quote(entry['default'])
+ ret += f" String::from({rustdef})\n"
ret += '}\n'
if rust_type == 'String':
rust_type = 'str'
# should actually end up in a target specific dir...
libsettings.a lib.rs.h: src/bridge.rs src/lib.rs src/helpers.rs Cargo.toml Cargo.lock build.rs
- $(CARGO) build --release $(RUST_TARGET)
+ SYSCONFDIR=$(sysconfdir) $(CARGO) build --release $(RUST_TARGET)
cp target/$(RUSTC_TARGET_ARCH)/release/libsettings.a libsettings.a
cp target/$(RUSTC_TARGET_ARCH)/cxxbridge/settings/src/lib.rs.h lib.rs.h
cp target/$(RUSTC_TARGET_ARCH)/cxxbridge/rust/cxx.h cxx.h
'name' : 'config_dir',
'section' : 'recursor',
'type' : LType.String,
- 'default' : '/etc/powerdns',
+ 'default' : 'SYSCONFDIR',
'help' : 'Location of configuration directory (recursor.conf)',
'doc' : '''
Location of configuration directory (``recursor.conf``).