summaryrefslogtreecommitdiff
path: root/wscript_configure_system_mitkrb5
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2018-12-05 13:30:07 +0100
committerStefan Metzmacher <metze@samba.org>2018-12-06 16:53:33 +0100
commit2f68c436cc857dd6c56ec75e03664388f5d1da2b (patch)
treed4fa4d339b8d24cecebf1002e1e349ce2ed86222 /wscript_configure_system_mitkrb5
parentbd4bdced5ff310a5e5e3fe05ed491cf1826407d1 (diff)
downloadsamba-2f68c436cc857dd6c56ec75e03664388f5d1da2b.tar.gz
wscript_configure_system_mitkrb5: reject a system heimdal krb5-config
Review with: git show -w Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Thu Dec 6 16:53:33 CET 2018 on sn-devel-144
Diffstat (limited to 'wscript_configure_system_mitkrb5')
-rw-r--r--wscript_configure_system_mitkrb540
1 files changed, 21 insertions, 19 deletions
diff --git a/wscript_configure_system_mitkrb5 b/wscript_configure_system_mitkrb5
index 534818b9dcb..b05ac3f3e50 100644
--- a/wscript_configure_system_mitkrb5
+++ b/wscript_configure_system_mitkrb5
@@ -1,5 +1,5 @@
import sys
-from waflib import Logs, Options
+from waflib import Logs, Options, Errors
# Check for kerberos
have_gssapi=False
@@ -56,24 +56,26 @@ if conf.env.KRB5_CONFIG:
vendor = conf.cmd_and_log(conf.env.KRB5_CONFIG+['--vendor'])
conf.env.KRB5_VENDOR = vendor.strip().lower()
- if conf.env.KRB5_VENDOR != 'heimdal':
- conf.define('USING_SYSTEM_KRB5', 1)
- del conf.env.HEIMDAL_KRB5_CONFIG
- krb5_conf_version = conf.cmd_and_log(conf.env.KRB5_CONFIG+['--version']).strip()
-
- krb5_version = krb5_conf_version.split()[-1]
-
- # drop '-prerelease' suffix
- if krb5_version.find('-') > 0:
- krb5_version = krb5_version.split("-")[0]
-
- if parse_version(krb5_version) < parse_version(krb5_required_version):
- Logs.error('ERROR: The MIT KRB5 build with Samba AD requires at least %s. %s has been found and cannot be used' % (krb5_required_version, krb5_version))
- Logs.error('ERROR: If you want to just build Samba FS (File Server) use the option --without-ad-dc which requires version %s' % (krb5_min_required_version))
- Logs.error('ERROR: You may try to build with embedded Heimdal Kerberos by not specifying --with-system-mitkrb5')
- sys.exit(1)
- else:
- Logs.info('MIT Kerberos %s detected, MIT krb5 build can proceed' % (krb5_version))
+ if conf.env.KRB5_VENDOR == 'heimdal':
+ raise Errors.WafError('--with-system-mitkrb5 cannot be used with system heimdal')
+
+ conf.define('USING_SYSTEM_KRB5', 1)
+ del conf.env.HEIMDAL_KRB5_CONFIG
+ krb5_conf_version = conf.cmd_and_log(conf.env.KRB5_CONFIG+['--version']).strip()
+
+ krb5_version = krb5_conf_version.split()[-1]
+
+ # drop '-prerelease' suffix
+ if krb5_version.find('-') > 0:
+ krb5_version = krb5_version.split("-")[0]
+
+ if parse_version(krb5_version) < parse_version(krb5_required_version):
+ Logs.error('ERROR: The MIT KRB5 build with Samba AD requires at least %s. %s has been found and cannot be used' % (krb5_required_version, krb5_version))
+ Logs.error('ERROR: If you want to just build Samba FS (File Server) use the option --without-ad-dc which requires version %s' % (krb5_min_required_version))
+ Logs.error('ERROR: You may try to build with embedded Heimdal Kerberos by not specifying --with-system-mitkrb5')
+ sys.exit(1)
+ else:
+ Logs.info('MIT Kerberos %s detected, MIT krb5 build can proceed' % (krb5_version))
conf.CHECK_CFG(args="--cflags --libs", package="com_err", uselib_store="com_err")
conf.CHECK_FUNCS_IN('_et_list', 'com_err')