[SCM] Samba Shared Repository - branch master updated

Alexander Bokovoy ab at samba.org
Thu Jun 7 09:03:03 MDT 2012


The branch, master has been updated
       via  e102350 waf: fix parsing krb5-config --version for MIT krb5
       via  23aac20 waf: support --without-ad-dc for Heimdal (embedded and system) as well
      from  8778e41 build: fix typo that breaks the HP-UX build

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit e1023501d92dea532736d86c6efecb8cde92327d
Author: Alexander Bokovoy <ab at samba.org>
Date:   Thu Jun 7 14:22:33 2012 +0300

    waf: fix parsing krb5-config --version for MIT krb5
    
    krb5-config --version may return a string that ends with a suffix after
    version number (1.X-prerelease or 1.X-beta1, for example). Detect and
    ignore the suffix.
    
    Autobuild-User(master): Alexander Bokovoy <ab at samba.org>
    Autobuild-Date(master): Thu Jun  7 17:03:01 CEST 2012 on sn-devel-104

commit 23aac2039d921abdde1a2b6e2bdb4a3d0bcab8ee
Author: Alexander Bokovoy <ab at samba.org>
Date:   Thu Jun 7 13:38:20 2012 +0300

    waf: support --without-ad-dc for Heimdal (embedded and system) as well
    
    --without-ad-dc was hardwired to mean --with-system-mitkrb5. With this change
    it also possible to build source3/ code and source4/ client side without
    building AD DC functionality using Heimdal (embedded or system).

-----------------------------------------------------------------------

Summary of changes:
 source4/torture/ndr/ndr.c        |    2 +-
 source4/torture/rpc/rpc.c        |    2 +-
 source4/torture/wscript_build    |    2 +-
 wscript                          |    6 +++---
 wscript_configure_system_mitkrb5 |   10 ++++++++--
 5 files changed, 14 insertions(+), 8 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/torture/ndr/ndr.c b/source4/torture/ndr/ndr.c
index b446242..1fb3bdb 100644
--- a/source4/torture/ndr/ndr.c
+++ b/source4/torture/ndr/ndr.c
@@ -372,7 +372,7 @@ struct torture_suite *torture_local_ndr(TALLOC_CTX *mem_ctx)
 	torture_suite_add_suite(suite, ndr_drsblobs_suite(suite));
 	torture_suite_add_suite(suite, ndr_nbt_suite(suite));
 	torture_suite_add_suite(suite, ndr_ntlmssp_suite(suite));
-#ifdef SAMBA4_USES_HEIMDAL /* Add Heimdal-specific KDC test */
+#ifdef AD_DC_BUILD_IS_ENABLED /* Add Heimdal-specific KDC test */
 	torture_suite_add_suite(suite, ndr_backupkey_suite(suite));
 #endif
 	torture_suite_add_suite(suite, ndr_string_suite(suite));
diff --git a/source4/torture/rpc/rpc.c b/source4/torture/rpc/rpc.c
index 37ff085..7250eb5 100644
--- a/source4/torture/rpc/rpc.c
+++ b/source4/torture/rpc/rpc.c
@@ -528,7 +528,7 @@ NTSTATUS torture_rpc_init(void)
 	torture_suite_add_simple_test(suite, "asyncbind", torture_async_bind);
 	torture_suite_add_suite(suite, torture_rpc_ntsvcs(suite));
 	torture_suite_add_suite(suite, torture_rpc_bind(suite));
-#ifdef SAMBA4_USES_HEIMDAL /* Add Heimdal-specific KDC test */
+#ifdef AD_DC_BUILD_IS_ENABLED /* Add Heimdal-specific KDC test */
 	torture_suite_add_suite(suite, torture_rpc_backupkey(suite));
 #endif
 
diff --git a/source4/torture/wscript_build b/source4/torture/wscript_build
index 70829f5..5b445bd 100755
--- a/source4/torture/wscript_build
+++ b/source4/torture/wscript_build
@@ -35,7 +35,7 @@ bld.RECURSE('libsmbclient')
 heimdal_specific = dict()
 heimdal_specific['ndr'] = ('','')
 heimdal_specific['rpc'] = ('','')
-if bld.CONFIG_SET('SAMBA4_USES_HEIMDAL'):
+if bld.CONFIG_SET('AD_DC_BUILD_IS_ENABLED'):
 	heimdal_specific['ndr'] = (' ndr/backupkey.c','')
 	heimdal_specific['rpc'] = (' rpc/backupkey.c rpc/spoolss_notify.c rpc/spoolss_win.c',
 				    ' RPC_NDR_BACKUPKEY SMB_SERVER dcerpc_server ntvfs')
diff --git a/wscript b/wscript
index 168e17d..cccd193 100755
--- a/wscript
+++ b/wscript
@@ -52,8 +52,8 @@ def set_options(opt):
                    action='callback', callback=system_mitkrb5_callback, dest='with_system_mitkrb5', default=False)
 
     opt.add_option('--without-ad-dc',
-                   help='disable AD DC functionality (enables Samba 4 client and Samba 3 code base). Requires system MIT krb5',
-                   action='store_true', dest='with_system_mitkrb5', default=False)
+                   help='disable AD DC functionality (enables Samba 4 client and Samba 3 code base).',
+                   action='store_true', dest='without_ad_dc', default=False)
 
     gr = opt.option_group('developer options')
     gr.add_option('--enable-build-farm',
@@ -110,7 +110,7 @@ def configure(conf):
 
     if Options.options.with_system_mitkrb5:
         conf.PROCESS_SEPARATE_RULE('system_mitkrb5')
-    else:
+    if not (Options.options.without_ad_dc or Options.options.with_system_mitkrb5):
         conf.DEFINE('AD_DC_BUILD_IS_ENABLED', 1)
     # Only process heimdal_build for non-MIT KRB5 builds
     # When MIT KRB5 checks are done as above, conf.env.KRB5_VENDOR will be set
diff --git a/wscript_configure_system_mitkrb5 b/wscript_configure_system_mitkrb5
index 1ad6d20..31ed7f7 100644
--- a/wscript_configure_system_mitkrb5
+++ b/wscript_configure_system_mitkrb5
@@ -37,9 +37,15 @@ if conf.env.KRB5_CONFIG:
         conf.define('USING_SYSTEM_KRB5', 1)
         del conf.env.HEIMDAL_KRB5_CONFIG
         kversion = conf.cmd_and_log("%(path)s --version" % dict(path=conf.env.KRB5_CONFIG), dict()).strip()
-        kversion_split = map(int, kversion.split(" ")[-1].split("."))
-        if kversion_split < [1, 9]:
+        kversion_split = kversion.split(' ')[-1].split('.')
+        # drop '-prerelease' suffix
+        if kversion_split[-1].find('-') > 0:
+            last_digit = kversion_split[-1].split('-')[0]
+            kversion_split[-1] = last_digit
+        kversion_check = map(int, kversion_split)
+        if kversion_check < [1, 9]:
             Logs.error('ERROR: MIT krb5 build requires at least 1.9.0. %s is found and cannot be used' % (kversion))
+            Logs.error('ERROR: You may try to build with embedded Heimdal Kerebros by not specifying --with-system-mitkrb5')
             sys.exit(1)
         else:
             Logs.info('%s is detected, MIT krb5 build can proceed' % (kversion))


-- 
Samba Shared Repository


More information about the samba-cvs mailing list