From 2ddf89a2bc3c00b71dec230f071416e594f89113 Mon Sep 17 00:00:00 2001 From: Alexander Bokovoy Date: Mon, 21 May 2012 12:45:12 +0300 Subject: Introduce system MIT krb5 build with --with-system-mitkrb5 option. System MIT krb5 build also enabled by specifying --without-ad-dc When --with-system-mitkrb5 (or --withou-ad-dc) option is passed to top level configure in WAF build we are trying to detect and use system-wide MIT krb5 libraries. As result, Samba 4 DC functionality will be disabled due to the fact that it is currently impossible to implement embedded KDC server with MIT krb5. Thus, --with-system-mitkrb5/--without-ad-dc build will only produce * Samba 4 client libraries and their Python bindings * Samba 3 server (smbd, nmbd, winbindd from source3/) * Samba 3 client libraries In addition, Samba 4 DC server-specific tests will not be compiled into smbtorture. This in particular affects spoolss_win, spoolss_notify, and remote_pac rpc tests. --- source3/auth/wscript_build | 4 ++-- source3/configure.in | 2 +- source3/librpc/wscript_build | 2 +- source3/modules/getdate.h | 2 +- source3/modules/wscript_build | 8 ++++---- source3/passdb/wscript_build | 4 ++-- source3/winbindd/wscript_build | 4 ++-- source3/wscript | 4 ++-- source3/wscript_build | 10 ++++++---- 9 files changed, 21 insertions(+), 19 deletions(-) (limited to 'source3') diff --git a/source3/auth/wscript_build b/source3/auth/wscript_build index 54d710c95d..47dbea0a48 100644 --- a/source3/auth/wscript_build +++ b/source3/auth/wscript_build @@ -104,5 +104,5 @@ bld.SAMBA3_MODULE('auth_samba4', source='auth_samba4.c', init_function='', deps='auth4 samba_server_gensec gensec', - internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_samba4'), - enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_samba4')) + internal_module=bld.SAMBA3_IS_STATIC_MODULE('auth_samba4') and bld.AD_DC_BUILD_IS_ENABLED(), + enabled=bld.SAMBA3_IS_ENABLED_MODULE('auth_samba4') and bld.AD_DC_BUILD_IS_ENABLED()) diff --git a/source3/configure.in b/source3/configure.in index 43a090da18..3e35d8f6f6 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -3547,7 +3547,7 @@ if test x"$with_ads_support" != x"no"; then AC_MSG_WARN([Samba cannot be supported without GSSAPI]) use_ads=no else - AC_DEFINE(HAVE_LIBGSSAPI, , [Whether the platform has GSSAPI support]) + AC_DEFINE(HAVE_GSSAPI, , [Whether the platform has GSSAPI support]) fi AC_CHECK_FUNC_EXT(krb5_set_real_time, $KRB5_LIBS) diff --git a/source3/librpc/wscript_build b/source3/librpc/wscript_build index 8aa016135b..ab4c23f801 100644 --- a/source3/librpc/wscript_build +++ b/source3/librpc/wscript_build @@ -7,7 +7,7 @@ bld.SAMBA3_SUBSYSTEM('NDR_LIBNETAPI', bld.SAMBA3_SUBSYSTEM('NDR_LIBNET_JOIN', source='gen_ndr/ndr_libnet_join.c', - public_deps='ndr' + public_deps='ndr krb5samba' ) bld.SAMBA3_SUBSYSTEM('NDR_MESSAGING', diff --git a/source3/modules/getdate.h b/source3/modules/getdate.h index 93d95ddde0..80b4a9875b 100644 --- a/source3/modules/getdate.h +++ b/source3/modules/getdate.h @@ -13,7 +13,7 @@ You should have received a copy of the GNU General Public License along with this program; if not, see . */ -#if HAVE_CONFIG_H +#ifdef HAVE_CONFIG_H # include #endif diff --git a/source3/modules/wscript_build b/source3/modules/wscript_build index 3b257bcf66..b912b8c1b6 100644 --- a/source3/modules/wscript_build +++ b/source3/modules/wscript_build @@ -188,8 +188,8 @@ bld.SAMBA3_MODULE('vfs_posix_eadb', source='vfs_posix_eadb.c', deps='tdb-wrap posix_eadb', init_function='', - internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_posix_eadb'), - enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_posix_eadb')) + internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_posix_eadb') and bld.AD_DC_BUILD_IS_ENABLED(), + enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_posix_eadb') and bld.AD_DC_BUILD_IS_ENABLED()) bld.SAMBA3_MODULE('vfs_posixacl', subsystem='vfs', @@ -457,8 +457,8 @@ bld.SAMBA3_MODULE('vfs_dfs_samba4', source='vfs_dfs_samba4.c', deps='samba-util dfs_server_ad samdb tevent', init_function='', - internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_dfs_samba4'), - enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_dfs_samba4')) + internal_module=bld.SAMBA3_IS_STATIC_MODULE('vfs_dfs_samba4') and bld.AD_DC_BUILD_IS_ENABLED(), + enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_dfs_samba4') and bld.AD_DC_BUILD_IS_ENABLED()) PERFCOUNT_TEST_SRC = 'perfcount_test.c' diff --git a/source3/passdb/wscript_build b/source3/passdb/wscript_build index 82c96348c3..59a7f80697 100644 --- a/source3/passdb/wscript_build +++ b/source3/passdb/wscript_build @@ -51,8 +51,8 @@ bld.SAMBA3_MODULE('pdb_samba4', source='pdb_samba4.c', init_function='', deps='IDMAP samdb', - internal_module=bld.SAMBA3_IS_STATIC_MODULE('pdb_samba4'), - enabled=bld.SAMBA3_IS_ENABLED_MODULE('pdb_samba4')) + internal_module=bld.SAMBA3_IS_STATIC_MODULE('pdb_samba4') and bld.AD_DC_BUILD_IS_ENABLED(), + enabled=bld.SAMBA3_IS_ENABLED_MODULE('pdb_samba4') and bld.AD_DC_BUILD_IS_ENABLED()) bld.SAMBA3_PYTHON('pypassdb', source='py_passdb.c', diff --git a/source3/winbindd/wscript_build b/source3/winbindd/wscript_build index 07241e4982..3b5d1d3d93 100644 --- a/source3/winbindd/wscript_build +++ b/source3/winbindd/wscript_build @@ -37,7 +37,7 @@ bld.SAMBA3_SUBSYSTEM('IDMAP_ADEX', bld.SAMBA3_SUBSYSTEM('IDMAP_HASH', source=IDMAP_HASH_SRC, - deps='samba-util', + deps='samba-util krb5samba', vars=locals()) bld.SAMBA3_SUBSYSTEM('IDMAP_AD', @@ -142,7 +142,7 @@ bld.SAMBA3_LIBRARY('nss_info', bld.SAMBA3_MODULE('nss_info_template', subsystem='nss_info', source=NSS_INFO_TEMPLATE_SRC, - deps='samba-util', + deps='samba-util krb5samba', init_function='', internal_module=bld.SAMBA3_IS_STATIC_MODULE('nss_info_template'), enabled=bld.SAMBA3_IS_ENABLED_MODULE('nss_info_template')) diff --git a/source3/wscript b/source3/wscript index 8bf378cd4d..0b36b22e61 100755 --- a/source3/wscript +++ b/source3/wscript @@ -28,7 +28,6 @@ def set_options(opt): opt.SAMBA3_ADD_OPTION('winbind') opt.SAMBA3_ADD_OPTION('swat') opt.SAMBA3_ADD_OPTION('ads') - opt.SAMBA3_ADD_OPTION('mit-krb5-checks', default=False) opt.SAMBA3_ADD_OPTION('ldap') opt.SAMBA3_ADD_OPTION('cups', with_name="enable", without_name="disable") opt.SAMBA3_ADD_OPTION('iprint', with_name="enable", without_name="disable") @@ -1396,7 +1395,8 @@ main() { default_shared_modules.extend(TO_LIST('vfs_skel_opaque vfs_skel_transparent vfs_shadow_copy_test')) default_shared_modules.extend(TO_LIST('auth_skel pdb_test')) - default_static_modules.extend(TO_LIST('pdb_samba4 auth_samba4 vfs_dfs_samba4')) + if conf.CONFIG_SET('AD_DC_BUILD_IS_ENABLED'): + default_static_modules.extend(TO_LIST('pdb_samba4 auth_samba4 vfs_dfs_samba4')) if Options.options.with_acl_support and conf.CONFIG_SET('HAVE_POSIX_ACLS'): default_static_modules.extend(TO_LIST('vfs_posixacl')) diff --git a/source3/wscript_build b/source3/wscript_build index 69d988958d..f923463b6b 100755 --- a/source3/wscript_build +++ b/source3/wscript_build @@ -869,7 +869,7 @@ bld.SAMBA3_SUBSYSTEM('LIBADS_SERVER', bld.SAMBA3_SUBSYSTEM('LIBADS_PRINTER', source=LIBADS_PRINTER_SRC, - deps='samba-util', + deps='samba-util krb5samba', vars=locals()) bld.SAMBA3_SUBSYSTEM('LIBAFS', @@ -1025,7 +1025,8 @@ bld.SAMBA3_SUBSYSTEM('PASSCHANGE', source=PASSCHANGE_SRC, deps='''LIBCLI_SAMR INIT_LSA - msrpc3''', + msrpc3 + krb5samba''', vars=locals()) bld.SAMBA3_SUBSYSTEM('SAMBA_VERSION', @@ -1103,7 +1104,7 @@ bld.SAMBA3_SUBSYSTEM('LIBCLI_WINREG_INTERNAL', bld.SAMBA3_SUBSYSTEM('RPC_CLIENT_SCHANNEL', source=RPC_CLIENT_SCHANNEL_SRC, - deps='samba-util', + deps='samba-util krb5samba', vars=locals()) bld.SAMBA3_SUBSYSTEM('INIT_LSA', @@ -1421,7 +1422,8 @@ bld.SAMBA3_BINARY('smbcacls', talloc popt_samba3 msrpc3 - libcli_lsa3''', + libcli_lsa3 + krb5samba''', vars=locals()) bld.SAMBA3_BINARY('smbcquotas', -- cgit