--- /dev/null
+"""Produce BIND DNSSEC schema usable from C."""
+
+import sys
+
+sql_filename = sys.argv[1]
+
+with open(sql_filename, mode="r", encoding="utf-8") as f_in:
+ contents = f_in.read()
+
+ print("#pragma once")
+ print()
+ print("static char sqlCreate[] __attribute__((unused)) =")
+ for line in contents.split("\n"):
+ print(f'"{line}"')
+ print(";")
+libpdns_bind_dnssec_schema = custom_target(
+ 'libpdns-bind-dnssec-schema',
+ command: [
+ python_prog,
+ '@INPUT0@',
+ '@INPUT1@',
+ ],
+ input: [
+ 'generate-bind-dnssec-schema.py',
+ 'bind-dnssec.schema.sqlite3.sql',
+ ],
+ output: 'bind-dnssec.schema.sqlite3.sql.h',
+ capture: true,
+)
+libpdns_bind_dnssec_schema = declare_dependency(
+ sources: [libpdns_bind_dnssec_schema],
+)
+
libpdns_bind_parser = declare_dependency(
link_with: static_library(
'pdns-bind-parser',
'backends/gsql/ssql.hh',
'base32.hh',
'base64.hh',
- 'bind-dnssec.schema.sqlite3.sql.h',
'burtle.hh',
'cachecleaner.hh',
'circular_buffer.hh',
],
dependencies: [
deps,
+ libpdns_bind_dnssec_schema,
libpdns_bind_parser,
libpdns_lua,
libpdns_lua_records,