]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
wscript: Add --with-systemd-userdb option
authorSamuel Cabrero <scabrero@samba.org>
Tue, 21 Jan 2025 11:12:55 +0000 (12:12 +0100)
committerAndreas Schneider <asn@cryptomilk.org>
Thu, 20 Feb 2025 08:07:32 +0000 (08:07 +0000)
Signed-off-by: Samuel Cabrero <scabrero@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
source3/wscript
wscript

index 26327cba32fb32fb475aa705f6eb0e51dc54e7bc..fdb9436dafac508a62d951fc19c6b8f6c91924e7 100644 (file)
@@ -595,6 +595,16 @@ msg.msg_accrightslen = sizeof(fd);
         conf.env.build_winbind = True
         conf.DEFINE('WITH_WINBIND', '1')
 
+    if Options.options.with_systemd_userdb:
+        conf.CHECK_CFG(package='libvarlink', args='"libvarlink >= 24" --cflags --libs',
+                       msg='Checking for libvarlink >= 24', mandatory=True)
+        if conf.CHECK_HEADERS('varlink.h', lib='varlink') and conf.CHECK_LIB('varlink', shlib=True):
+            if conf.CHECK_FUNCS_IN('varlink_service_new', 'varlink', headers='varlink.h'):
+                conf.env.with_systemd_userdb = True
+                conf.DEFINE('WITH_SYSTEMD_USERDB', '1')
+        if not conf.env.with_systemd_userdb:
+            conf.fatal("libvarlink not found.")
+
     conf.find_program('awk', var='AWK')
 
     conf.CHECK_HEADERS('asm/types.h')
diff --git a/wscript b/wscript
index c454a718b7336609a4226333c7ae9cfd9d7dc753..dcdde5b97122a0f00cce2e40cfbb36cb27df34b7 100644 (file)
--- a/wscript
+++ b/wscript
@@ -173,6 +173,11 @@ def options(opt):
                   help=('Build with Azure Entra ID support.'),
                   action='store_true', dest='enable_himmelblau')
 
+    opt.samba_add_onoff_option('systemd-userdb',
+                               help=("Build winbind with support for systemd "
+                                     "User/Group Record Lookup API via "
+                                     "Varlink"),
+                               default=False)
 
 def configure(conf):
     if Options.options.SAMBA_VERSION_VENDOR_SUFFIX: