summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilipp Gesang <philipp.gesang@intra2net.com>2018-09-25 14:09:18 +0200
committerAndrew Bartlett <abartlet@samba.org>2018-09-26 20:41:07 +0200
commitc98f9971922342cbcfd2f55ca076835ba2305c63 (patch)
tree75e4c93bdf04a2b75f4bafc4bbfa0e43e2629be5
parentcb8e61b5234a614c1203db6e5ac55afb7513985d (diff)
downloadsamba-c98f9971922342cbcfd2f55ca076835ba2305c63.tar.gz
turn --with-json-audit into global --with-json
Fold the build option --with-json-audit into the toplevel wscript to reflect the fact that JSON support is no longer local to the audit subsystem. Signed-off-by: Philipp Gesang <philipp.gesang@intra2net.com> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
-rw-r--r--docs-xml/smbdotconf/logging/loglevel.xml2
-rw-r--r--lib/audit_logging/wscript36
-rwxr-xr-xscript/autobuild.py2
-rw-r--r--wscript31
4 files changed, 31 insertions, 40 deletions
diff --git a/docs-xml/smbdotconf/logging/loglevel.xml b/docs-xml/smbdotconf/logging/loglevel.xml
index 9a029263070..42912720655 100644
--- a/docs-xml/smbdotconf/logging/loglevel.xml
+++ b/docs-xml/smbdotconf/logging/loglevel.xml
@@ -56,7 +56,7 @@
<para>Authentication and authorization audit information is logged
under the auth_audit, and if Samba was not compiled with
- --without-json-audit, a JSON representation is logged under
+ --without-json, a JSON representation is logged under
auth_json_audit.</para>
<para>Support is comprehensive for all authentication and authorisation
diff --git a/lib/audit_logging/wscript b/lib/audit_logging/wscript
deleted file mode 100644
index f99df055731..00000000000
--- a/lib/audit_logging/wscript
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/env python
-
-from waflib import Logs, Options, Errors
-import samba3
-
-def options(opt):
- help = ("Build with JSON auth audit support (default=True). "
- "This requires the jansson devel package.")
-
- opt.SAMBA3_ADD_OPTION('json-audit', default=None, help=(help))
-
- return
-
-def configure(conf):
- conf.SET_TARGET_TYPE('jansson', 'EMPTY')
-
- if Options.options.with_json_audit != False:
- if conf.CHECK_CFG(package='jansson', args='--cflags --libs',
- msg='Checking for jansson'):
- conf.CHECK_FUNCS_IN('json_object', 'jansson')
-
- if not conf.CONFIG_GET('HAVE_JSON_OBJECT'):
- if Options.options.with_json_audit != False:
- conf.fatal("Jansson JSON support not found. "
- "Try installing libjansson-dev or jansson-devel. "
- "Otherwise, use --without-json-audit to build without "
- "JSON support. "
- "JSON support is required for the JSON "
- "formatted audit log feature and the AD DC")
- if not Options.options.without_ad_dc:
- raise Errors.WafError('--without-json-audit requires '
- '--without-ad-dc. '
- 'Jansson JSON library is required for '
- 'building the AD DC')
- Logs.info("Building without Jansson JSON log support")
-
diff --git a/script/autobuild.py b/script/autobuild.py
index 02fff41204b..1dbdf8ccc26 100755
--- a/script/autobuild.py
+++ b/script/autobuild.py
@@ -135,7 +135,7 @@ tasks = {
# We split out this so the isolated ad_dc tests do not wait for ad_dc_ntvfs tests (which are long)
"samba-fileserver": [("random-sleep", "script/random-sleep.sh 60 600", "text/plain"),
- ("configure", "./configure.developer --without-ad-dc --without-ldap --without-ads --without-json-audit --with-selftest-prefix=./bin/ab" + samba_configure_params, "text/plain"),
+ ("configure", "./configure.developer --without-ad-dc --without-ldap --without-ads --without-json --with-selftest-prefix=./bin/ab" + samba_configure_params, "text/plain"),
("make", "make -j", "text/plain"),
("test", "make test FAIL_IMMEDIATELY=1 "
"TESTS='${PY3_ONLY}"
diff --git a/wscript b/wscript
index 155de7c2826..ae1b929c495 100644
--- a/wscript
+++ b/wscript
@@ -35,7 +35,6 @@ def system_mitkrb5_callback(option, opt, value, parser):
def options(opt):
opt.BUILTIN_DEFAULT('NONE')
opt.PRIVATE_EXTENSION_DEFAULT('samba4')
- opt.RECURSE('lib/audit_logging')
opt.RECURSE('lib/replace')
opt.RECURSE('dynconfig')
opt.RECURSE('packaging')
@@ -103,6 +102,13 @@ def options(opt):
opt.load('python') # options for disabling pyc or pyo compilation
# enable options related to building python extensions
+ opt.add_option('--with-json',
+ action='store_true', dest='with_json',
+ help=("Build with JSON support (default=True). This "
+ "requires the jansson development headers."))
+ opt.add_option('--without-json',
+ action='store_false', dest='with_json',
+ help=("Build without JSON support."))
def configure(conf):
version = samba_version.load_version(env=conf.env)
@@ -234,7 +240,6 @@ def configure(conf):
# system-provided or embedded Heimdal build
if conf.CONFIG_GET('KRB5_VENDOR') in (None, 'heimdal'):
conf.RECURSE('source4/heimdal_build')
- conf.RECURSE('lib/audit_logging')
conf.RECURSE('source4/lib/tls')
conf.RECURSE('source4/dsdb/samdb/ldb_modules')
conf.RECURSE('source4/ntvfs/sysdep')
@@ -274,6 +279,28 @@ def configure(conf):
Logs.warn("pthreadpool support cannot be enabled when __thread support was not found")
conf.undefine('WITH_PTHREADPOOL')
+ conf.SET_TARGET_TYPE('jansson', 'EMPTY')
+
+ if Options.options.with_json != False:
+ if conf.CHECK_CFG(package='jansson', args='--cflags --libs',
+ msg='Checking for jansson'):
+ conf.CHECK_FUNCS_IN('json_object', 'jansson')
+
+ if not conf.CONFIG_GET('HAVE_JSON_OBJECT'):
+ if Options.options.with_json != False:
+ conf.fatal("Jansson JSON support not found. "
+ "Try installing libjansson-dev or jansson-devel. "
+ "Otherwise, use --without-json to build without "
+ "JSON support. "
+ "JSON support is required for the JSON "
+ "formatted audit log feature, the AD DC, and "
+ "the JSON printers of the net utility")
+ if not Options.options.without_ad_dc:
+ raise Errors.WafError('--without-json requires --without-ad-dc. '
+ 'Jansson JSON library is required for '
+ 'building the AD DC')
+ Logs.info("Building without Jansson JSON log support")
+
conf.RECURSE('source3')
conf.RECURSE('lib/texpect')
conf.RECURSE('python')