--- meson.build.orig	2026-06-10 08:51:36 UTC
+++ meson.build
@@ -458,6 +458,14 @@ endif
   )
 endif

+libpdns_sqlbackend = declare_dependency(
+  link_whole: static_library(
+    'pdns-sqlbackend',
+    sources: files(src_dir / 'backends' / 'gsql' / 'gsqlbackend.cc', src_dir / 'backends' / 'gsql' / 'gsqlbackend.hh', src_dir / 'backends' / 'gsql' / 'ssql.hh'),
+    dependencies: deps,
+  )
+)
+
 # This needs to be link_whole'd because it's needed by auth backends.
 libpdns_ssqlite3 = dependency('', required: false)
 if dep_sqlite3.found()
@@ -465,7 +473,7 @@ if dep_sqlite3.found()
     link_whole: static_library(
       'pdns-ssqlite3',
       sources: files(src_dir / 'ssqlite3.cc', src_dir / 'ssqlite3.hh'),
-      dependencies: deps,
+      dependencies: [deps, libpdns_sqlbackend],
     )
   )
 endif
@@ -497,9 +505,6 @@ common_sources += files(
   src_dir / 'auth-zonecache.hh',
   src_dir / 'axfr-retriever.cc',
   src_dir / 'axfr-retriever.hh',
-  src_dir / 'backends' / 'gsql' / 'gsqlbackend.cc', # TODO Move to a separate module.
-  src_dir / 'backends' / 'gsql' / 'gsqlbackend.hh', # TODO Move to a separate module.
-  src_dir / 'backends' / 'gsql' / 'ssql.hh',        # TODO Move to a separate module.
   src_dir / 'base32.cc',
   src_dir / 'base32.hh',
   src_dir / 'base64.cc',
--- modules/gmysqlbackend/meson.build.orig	2026-06-10 08:51:36 UTC
+++ modules/gmysqlbackend/meson.build
@@ -19,4 +19,4 @@ module_resources = files(
   'schema.mysql.sql',
 )

-module_deps = [deps, dep_mysql]
+module_deps = [deps, dep_mysql, libpdns_sqlbackend]
--- modules/godbcbackend/meson.build.orig	2026-06-10 08:51:36 UTC
+++ modules/godbcbackend/meson.build
@@ -15,4 +15,4 @@ module_resources = files(
   '4.3.0_to_4.7.0_schema.mssql.sql',
 )

-module_deps = [deps, dep_odbc]
+module_deps = [deps, dep_odbc, libpdns_sqlbackend]
--- modules/gpgsqlbackend/meson.build.orig	2026-06-10 08:51:36 UTC
+++ modules/gpgsqlbackend/meson.build
@@ -18,4 +18,4 @@ module_resources = files(
   '4.3.0_to_4.7.0_schema.pgsql.sql',
 )

-module_deps = [deps, dep_pgsql]
+module_deps = [deps, dep_pgsql, libpdns_sqlbackend]
--- modules/gsqlite3backend/meson.build.orig	2026-06-10 08:51:36 UTC
+++ modules/gsqlite3backend/meson.build
@@ -17,4 +17,4 @@ module_resources = files(
   'schema.sqlite3.sql',
 )

-module_deps = [deps, dep_sqlite3]
+module_deps = [deps, dep_sqlite3, libpdns_ssqlite3]
