The branch, master has been updated via 4e0fb8b Revert "ldb: Add parameter to avoid NULL format string flagged by -Werror=format" via 33c79c8 build: Make -Werror=format check only run where NULL is still accepted via 0514a84 Rework recursive waf build to be a selftest-enabled not a developer build via dd8c0e5 build: Remove duplicate declaration of --enable-selftest via 49b2720 lib/param: Also enable vlp when --enable-selftest is specified from 1c7bd2b s3:smbd: remove unused variable in sesssetup.c
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 4e0fb8b4b1b7eadf315aeb599a079eb1d22a4d22 Author: Andrew Bartlett <abart...@samba.org> Date: Mon Aug 6 18:46:41 2012 +1000 Revert "ldb: Add parameter to avoid NULL format string flagged by -Werror=format" This reverts commit cddcaf7bd2c272bc578ac1e4f7ec438ab94fc243. -Werror=format is no longer uses when it would cause this to fail. This is a legitimate use of the ldb_search API. Andrew Bartlett Autobuild-User(master): Andrew Bartlett <abart...@samba.org> Autobuild-Date(master): Mon Aug 6 14:47:27 CEST 2012 on sn-devel-104 commit 33c79c8731ea0c1ab78583a7c50953c56aea539f Author: Andrew Bartlett <abart...@samba.org> Date: Mon Aug 6 18:46:30 2012 +1000 build: Make -Werror=format check only run where NULL is still accepted This is needed because ldb_search() allows a NULL parameter for the format string and this needs to be permitted by the format string checker before we want to make this error fatal. Andrew Bartlett commit 0514a84f7e7d44eae3c7fcc85fc804af6fbfda6b Author: Andrew Bartlett <abart...@samba.org> Date: Mon Aug 6 18:33:35 2012 +1000 Rework recursive waf build to be a selftest-enabled not a developer build This essentially reverts commit a943a9ba2f739e8aee630f774915e8204aa8cf3a. I've fixed this by making lib/param/parm_table.c honour --enable-selftest. Andrew Bartlett commit dd8c0e59a327c697e5f86a0fd3b18478c02c8c63 Author: Andrew Bartlett <abart...@samba.org> Date: Mon Aug 6 18:32:32 2012 +1000 build: Remove duplicate declaration of --enable-selftest commit 49b27203174647d66fbf6a35266d587cc9e2e5cc Author: Andrew Bartlett <abart...@samba.org> Date: Mon Aug 6 18:32:21 2012 +1000 lib/param: Also enable vlp when --enable-selftest is specified ----------------------------------------------------------------------- Summary of changes: buildtools/wafsamba/samba_autoconf.py | 21 ++++++++++++++++++--- lib/ldb/ldb_map/ldb_map.c | 2 +- lib/param/loadparm.h | 2 +- lib/param/param_table.c | 2 +- selftest/wscript | 4 ++++ source3/Makefile-smbtorture4 | 2 +- source3/param/loadparm.c | 2 +- source3/wscript | 3 --- 8 files changed, 27 insertions(+), 11 deletions(-) Changeset truncated at 500 lines: diff --git a/buildtools/wafsamba/samba_autoconf.py b/buildtools/wafsamba/samba_autoconf.py index cfab476..03c2b24 100644 --- a/buildtools/wafsamba/samba_autoconf.py +++ b/buildtools/wafsamba/samba_autoconf.py @@ -437,10 +437,10 @@ def CHECK_STRUCTURE_MEMBER(conf, structname, member, @conf -def CHECK_CFLAGS(conf, cflags): +def CHECK_CFLAGS(conf, cflags, fragment='int main(void) { return 0; }\n'): '''check if the given cflags are accepted by the compiler ''' - return conf.check(fragment='int main(void) { return 0; }\n', + return conf.check(fragment=fragment, execute=0, type='nolink', ccflags=cflags, @@ -622,11 +622,26 @@ def SAMBA_CONFIG_H(conf, path=None): if Options.options.developer: # we add these here to ensure that -Wstrict-prototypes is not set during configure - conf.ADD_CFLAGS('-Wall -g -Wshadow -Werror=strict-prototypes -Wstrict-prototypes -Werror=pointer-arith -Wpointer-arith -Wcast-align -Werror=write-strings -Wwrite-strings -Werror-implicit-function-declaration -Werror=format -Wformat=2 -Wno-format-y2k -Wmissing-prototypes -fno-common -Werror=address', + conf.ADD_CFLAGS('-Wall -g -Wshadow -Werror=strict-prototypes -Wstrict-prototypes -Werror=pointer-arith -Wpointer-arith -Wcast-align -Werror=write-strings -Wwrite-strings -Werror-implicit-function-declaration -Wformat=2 -Wno-format-y2k -Wmissing-prototypes -fno-common -Werror=address', testflags=True) conf.ADD_CFLAGS('-Wcast-qual', testflags=True) conf.env.DEVELOPER_MODE = True + # This check is because for ldb_search(), a NULL format string + # is not an error, but some compilers complain about that. + if CHECK_CFLAGS(conf, "-Werror=format", ''' +int testformat(char *format, ...) __attribute__ ((format (__printf__, 1, 2))); + +int main(void) { + testformat(0); + return 0; +} + +'''): + if not 'EXTRA_CFLAGS' in conf.env: + conf.env['EXTRA_CFLAGS'] = [] + conf.env['EXTRA_CFLAGS'].extend(TO_LIST("-Werror=format")) + if Options.options.picky_developer: conf.ADD_CFLAGS('-Werror', testflags=True) diff --git a/lib/ldb/ldb_map/ldb_map.c b/lib/ldb/ldb_map/ldb_map.c index af3d799..d35e5c6 100644 --- a/lib/ldb/ldb_map/ldb_map.c +++ b/lib/ldb/ldb_map/ldb_map.c @@ -1015,7 +1015,7 @@ static int map_init_dns(struct ldb_module *module, struct ldb_map_context *data, return LDB_ERR_OPERATIONS_ERROR; } - ret = ldb_search(ldb, data, &res, dn, LDB_SCOPE_BASE, attrs, "(|(objectClass=*)(dn=*))"); + ret = ldb_search(ldb, data, &res, dn, LDB_SCOPE_BASE, attrs, NULL); talloc_free(dn); if (ret != LDB_SUCCESS) { return ret; diff --git a/lib/param/loadparm.h b/lib/param/loadparm.h index eb9c768..8c4a7b1 100644 --- a/lib/param/loadparm.h +++ b/lib/param/loadparm.h @@ -157,7 +157,7 @@ enum acl_compatibility {ACL_COMPAT_AUTO, ACL_COMPAT_WINNT, ACL_COMPAT_WIN2K}; enum printing_types {PRINT_BSD,PRINT_SYSV,PRINT_AIX,PRINT_HPUX, PRINT_QNX,PRINT_PLP,PRINT_LPRNG,PRINT_SOFTQ, PRINT_CUPS,PRINT_LPRNT,PRINT_LPROS2,PRINT_IPRINT -#if defined(DEVELOPER) || defined(ENABLE_BUILD_FARM_HACKS) +#if defined(DEVELOPER) || defined(ENABLE_SELFTEST) || defined(ENABLE_BUILD_FARM_HACKS) ,PRINT_TEST,PRINT_VLP #endif /* DEVELOPER */ }; diff --git a/lib/param/param_table.c b/lib/param/param_table.c index a793695..ea0fa3d 100644 --- a/lib/param/param_table.c +++ b/lib/param/param_table.c @@ -190,7 +190,7 @@ static const struct enum_list enum_printing[] = { {PRINT_IPRINT, "iprint"}, {PRINT_LPRNT, "nt"}, {PRINT_LPROS2, "os2"}, -#if defined(DEVELOPER) || defined(ENABLE_BUILD_FARM_HACKS) +#if defined(DEVELOPER) || defined(ENABLE_SELFTEST) || defined(ENABLE_BUILD_FARM_HACKS) {PRINT_TEST, "test"}, {PRINT_VLP, "vlp"}, #endif /* DEVELOPER */ diff --git a/selftest/wscript b/selftest/wscript index 6359e1a..0277eb5 100644 --- a/selftest/wscript +++ b/selftest/wscript @@ -77,6 +77,10 @@ def configure(conf): conf.ADD_LDFLAGS('-lgcov', testflags=True) conf.ADD_CFLAGS('--coverage') + if Options.options.enable_selftest or Options.options.developer: + conf.DEFINE('ENABLE_SELFTEST', 1) + + def cmd_testonly(opt): '''run tests without doing a build first''' env = LOAD_ENVIRONMENT() diff --git a/source3/Makefile-smbtorture4 b/source3/Makefile-smbtorture4 index 4a60a58..dbc0e6d 100644 --- a/source3/Makefile-smbtorture4 +++ b/source3/Makefile-smbtorture4 @@ -6,7 +6,7 @@ SAMBA4_BINARIES="smbtorture,ndrdump" samba4-configure: @(cd .. && \ CFLAGS='' $(WAF) reconfigure || \ - CFLAGS='' $(WAF) configure --enable-socket-wrapper --enable-nss-wrapper --enable-uid-wrapper --nonshared-binary=$(SAMBA4_BINARIES) --enable-auto-reconfigure --abi-check-disable --enable-developer) + CFLAGS='' $(WAF) configure --enable-selftest --nonshared-binary=$(SAMBA4_BINARIES) --enable-auto-reconfigure --enable-debug) .PHONY: samba4-configure diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c index 59f74d7..dc23868 100644 --- a/source3/param/loadparm.c +++ b/source3/param/loadparm.c @@ -397,7 +397,7 @@ static void init_printer_values(struct loadparm_service *pService) string_set(&pService->szPrintcommand, "lp -r -P%p %s"); break; -#if defined(DEVELOPER) || defined(ENABLE_BUILD_FARM_HACKS) +#if defined(DEVELOPER) || defined(ENABLE_SELFTEST) || defined(ENABLE_BUILD_FARM_HACKS) case PRINT_TEST: case PRINT_VLP: { diff --git a/source3/wscript b/source3/wscript index 0be9a43..7b45116 100755 --- a/source3/wscript +++ b/source3/wscript @@ -21,9 +21,6 @@ def set_options(opt): opt.add_option('--with-shared-modules', help=("Comma-separated list of names of modules to build shared"), action="store", dest='shared_modules', default=None) - opt.add_option('--enable-selftest', - help=("enable options necessary for selftest"), - action="store_true", dest='enable_selftest', default=False) opt.SAMBA3_ADD_OPTION('winbind') opt.SAMBA3_ADD_OPTION('swat') -- Samba Shared Repository