[SCM] Samba Shared Repository - branch master updated
Ralph Böhme
slow at samba.org
Thu Aug 20 17:11:03 UTC 2015
The branch, master has been updated
via ba4c9bd script/autobuild.py: make sure --nonshared-binary=smbtorture,smbd/smbd keeps working
via 86fa1d9 script/autobuild.py: test some --with-{static,shared}-modules combinations
via 3b1aa7a script/autobuild.py: use -Wmissing-prototypes and --picky-developer for samba-libs*
via 3030325 script/autobuild.py: split out a samba_libs_configure variable
via 43d1c92 s3:wscript: make --with-{static,shared}-modules options more flexible
via d830cec s3:wscript: simplify ABI matching for pdb_*_init()
via bbd82b0 s3:winbindd/idmap_*: make function prototypes available via static_decl_idmap;
via 7b2ff4c s3:modules/perfcount_*: make function prototypes available via static_decl_perfcount;
via 37b2677 s3:modules/vfs_*: make function prototypes available via static_decl_vfs;
via fd6eb8b examples/VFS: make function prototypes available via static_decl_vfs;
via 4451d0a examples/pdb: fix and validate pdb_test_init() prototype via static_decl_pdb;
via f8fca7d s4:ntvfs/posix: fix forward declaration of struct pvfs_state
via 72e0885 s3:wscript: remove leftover from vfs_notify_fam
via a184951 s3:idmap: we need to allow undefined symbols in idmap_tdb
via 5134d29 s3:wscript: fix the build without any idmap module
from 345ef6b smbd: Remove an unnecessary else branch
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit ba4c9bd08c09e77df5f653dc7c39be9e2908cfc0
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 10:32:46 2015 +0200
script/autobuild.py: make sure --nonshared-binary=smbtorture,smbd/smbd keeps working
- It's very useful to have a static smbtorture binary that can be copied arround.
- It's sometimes also useful to have a static smbd binary in order avoid
runtime overhead via do_lookup_x() (in ld*.so), note that
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
Autobuild-User(master): Ralph Böhme <slow at samba.org>
Autobuild-Date(master): Thu Aug 20 19:10:19 CEST 2015 on sn-devel-104
commit 86fa1d9059f90bc62c64adeb25b9534517b9a960
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 17:38:43 2015 +0200
script/autobuild.py: test some --with-{static,shared}-modules combinations
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit 3b1aa7a665215f6a95a2ee7c5caf361a4063e9c1
Author: Stefan Metzmacher <metze at samba.org>
Date: Fri Aug 14 08:40:37 2015 +0200
script/autobuild.py: use -Wmissing-prototypes and --picky-developer for samba-libs*
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit 303032559d7b68d125642ea25a1ad68df3de8d6d
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 17:34:42 2015 +0200
script/autobuild.py: split out a samba_libs_configure variable
The avoids too long lines.
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit 43d1c92e6202b27db7f8b8820c55bffb2c486d4b
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 14:22:45 2015 +0200
s3:wscript: make --with-{static,shared}-modules options more flexible
'!module' disables a non-required module for a static/shared build.
'!DEFAULT' disables all modules defaulting to a static/shared build.
'!FORCED' disables all (non-required) modules forced to a static/shared build.
'ALL' switches the default for all non forced modules from static to shared
or from shared to static.
The most specific specification wins
e.g.
--with-static-modules='!FORCED,!DEFAULT' --with-shared-modules='!FORCED,!DEFAULT' will only
build modules which are required for the compilation. Might be useful
if someone only wants to use client utils.
--with-static-modules=ALL will build all modules statically linked.
--with-static-modules='!DEFAULT,ALL' --with-shared-modules='!DEFAULT,ALL'
might be useful for testing, it reverses the default build for all modules
which can be build shared or static.
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit d830cecd03697c68bdcc5f8eaf325abb7f0c425e
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 18:57:19 2015 +0200
s3:wscript: simplify ABI matching for pdb_*_init()
The init functions of all static modules should be ignored.
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit bbd82b0fee4cc4b8491ce30550b9ae8539116e3c
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 18:16:20 2015 +0200
s3:winbindd/idmap_*: make function prototypes available via static_decl_idmap;
This allows the static build of the modules.
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit 7b2ff4cbd31fec2cc601e349ebb63f66df004bed
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 18:16:20 2015 +0200
s3:modules/perfcount_*: make function prototypes available via static_decl_perfcount;
This allows the static build of the modules.
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit 37b2677648108e35a159dcf680cc7ffb581e9643
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 18:16:20 2015 +0200
s3:modules/vfs_*: make function prototypes available via static_decl_vfs;
This allows the static build of the modules.
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit fd6eb8bd448f9e9d209ca407a494d4011b2e97f1
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 18:16:20 2015 +0200
examples/VFS: make function prototypes available via static_decl_vfs;
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit 4451d0a5cda71b61f4d7a7529c14d831b91574bb
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 18:16:20 2015 +0200
examples/pdb: fix and validate pdb_test_init() prototype via static_decl_pdb;
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit f8fca7d3155e6ff92d40d9de1a3a2043aeb995ca
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 18:15:36 2015 +0200
s4:ntvfs/posix: fix forward declaration of struct pvfs_state
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit 72e0885413d1de4206ceec2046b5e7a610116faf
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 18:15:03 2015 +0200
s3:wscript: remove leftover from vfs_notify_fam
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit a184951673ef6cd69c1356e6ea0ee4622bd01312
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 20:07:59 2015 +0200
s3:idmap: we need to allow undefined symbols in idmap_tdb
When idmap_tdb is build as shared module we need to allow undefined symbols
which callback into winbindd code.
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
commit 5134d29cbb2edcc2326de8896c5465afb3a0f392
Author: Stefan Metzmacher <metze at samba.org>
Date: Thu Aug 13 15:04:14 2015 +0200
s3:wscript: fix the build without any idmap module
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
-----------------------------------------------------------------------
Summary of changes:
examples/VFS/shadow_copy_test.c | 1 +
examples/VFS/skel_opaque.c | 1 +
examples/VFS/skel_transparent.c | 1 +
examples/pdb/test.c | 4 +-
script/autobuild.py | 39 +++++++--
source3/modules/perfcount_test.c | 1 +
source3/modules/vfs_acl_tdb.c | 1 +
source3/modules/vfs_acl_xattr.c | 1 +
source3/modules/vfs_aio_linux.c | 1 +
source3/modules/vfs_audit.c | 1 +
source3/modules/vfs_catia.c | 1 +
source3/modules/vfs_dirsort.c | 1 +
source3/modules/vfs_extd_audit.c | 1 +
source3/modules/vfs_full_audit.c | 1 +
source3/modules/vfs_posix_eadb.c | 2 +-
source3/modules/vfs_scannedonly.c | 1 +
source3/modules/vfs_smb_traffic_analyzer.c | 1 +
source3/modules/vfs_syncops.c | 1 +
source3/modules/wscript_build | 4 -
source3/winbindd/idmap_ad.c | 1 +
source3/winbindd/idmap_autorid.c | 1 +
source3/winbindd/idmap_hash/idmap_hash.c | 1 +
source3/winbindd/idmap_rfc2307.c | 1 +
source3/winbindd/idmap_rid.c | 1 +
source3/winbindd/idmap_script.c | 1 +
source3/winbindd/idmap_tdb2.c | 1 +
source3/winbindd/wscript_build | 16 ++--
source3/wscript | 123 ++++++++++++++++++++++-------
source3/wscript_build | 12 +--
source4/ntvfs/posix/posix_eadb.h | 2 +-
30 files changed, 164 insertions(+), 60 deletions(-)
Changeset truncated at 500 lines:
diff --git a/examples/VFS/shadow_copy_test.c b/examples/VFS/shadow_copy_test.c
index b3a99ca..05d6e16 100644
--- a/examples/VFS/shadow_copy_test.c
+++ b/examples/VFS/shadow_copy_test.c
@@ -83,6 +83,7 @@ static struct vfs_fn_pointers vfs_test_shadow_copy_fns = {
.get_shadow_copy_data_fn = test_get_shadow_copy_data
};
+static_decl_vfs;
NTSTATUS vfs_shadow_copy_test_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
diff --git a/examples/VFS/skel_opaque.c b/examples/VFS/skel_opaque.c
index 7021998..29fe6f4 100644
--- a/examples/VFS/skel_opaque.c
+++ b/examples/VFS/skel_opaque.c
@@ -961,6 +961,7 @@ struct vfs_fn_pointers skel_opaque_fns = {
.set_offline_fn = skel_set_offline
};
+static_decl_vfs;
NTSTATUS vfs_skel_opaque_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "skel_opaque",
diff --git a/examples/VFS/skel_transparent.c b/examples/VFS/skel_transparent.c
index 6c6adea..c5a36a6 100644
--- a/examples/VFS/skel_transparent.c
+++ b/examples/VFS/skel_transparent.c
@@ -1070,6 +1070,7 @@ struct vfs_fn_pointers skel_transparent_fns = {
.set_offline_fn = skel_set_offline
};
+static_decl_vfs;
NTSTATUS vfs_skel_transparent_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "skel_transparent",
diff --git a/examples/pdb/test.c b/examples/pdb/test.c
index 5780130..6d68d87 100644
--- a/examples/pdb/test.c
+++ b/examples/pdb/test.c
@@ -107,8 +107,8 @@ static NTSTATUS testsam_init(struct pdb_methods **pdb_method, const char *locati
return NT_STATUS_OK;
}
-NTSTATUS pdb_testsam_init(void);
-NTSTATUS pdb_testsam_init(void)
+static_decl_pdb;
+NTSTATUS pdb_test_init(void)
{
return smb_register_passdb(PASSDB_INTERFACE_VERSION, "testsam",
testsam_init);
diff --git a/script/autobuild.py b/script/autobuild.py
index d2662b9..c91ff2c 100755
--- a/script/autobuild.py
+++ b/script/autobuild.py
@@ -41,6 +41,13 @@ defaulttasks = [ "ctdb", "samba", "samba-xc", "samba-ctdb", "samba-libs", "ldb",
samba_configure_params = " --picky-developer ${PREFIX} --with-profiling-data"
+samba_libs_envvars = "PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH"
+samba_libs_envvars += " PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig"
+samba_libs_envvars += " ADDITIONAL_CFLAGS='-Wmissing-prototypes'"
+samba_libs_configure_base = samba_libs_envvars + " ./configure --abi-check --enable-debug --picky-developer -C ${PREFIX}"
+samba_libs_configure_libs = samba_libs_configure_base + " --bundled-libraries=NONE"
+samba_libs_configure_samba = samba_libs_configure_base + " --bundled-libraries=!talloc,!tdb,!pytdb,!ldb,!pyldb,!tevent,!pytevent"
+
tasks = {
"ctdb" : [ ("random-sleep", "../script/random-sleep.sh 60 600", "text/plain"),
("configure", "./configure ${PREFIX}", "text/plain"),
@@ -89,26 +96,46 @@ tasks = {
"samba-libs" : [
("random-sleep", "script/random-sleep.sh 60 600", "text/plain"),
- ("talloc-configure", "cd lib/talloc && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --abi-check --enable-debug -C ${PREFIX}", "text/plain"),
+ ("talloc-configure", "cd lib/talloc && " + samba_libs_configure_libs, "text/plain"),
("talloc-make", "cd lib/talloc && make", "text/plain"),
("talloc-install", "cd lib/talloc && make install", "text/plain"),
- ("tdb-configure", "cd lib/tdb && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --abi-check --enable-debug -C ${PREFIX}", "text/plain"),
+ ("tdb-configure", "cd lib/tdb && " + samba_libs_configure_libs, "text/plain"),
("tdb-make", "cd lib/tdb && make", "text/plain"),
("tdb-install", "cd lib/tdb && make install", "text/plain"),
- ("tevent-configure", "cd lib/tevent && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --abi-check --enable-debug -C ${PREFIX}", "text/plain"),
+ ("tevent-configure", "cd lib/tevent && " + samba_libs_configure_libs, "text/plain"),
("tevent-make", "cd lib/tevent && make", "text/plain"),
("tevent-install", "cd lib/tevent && make install", "text/plain"),
- ("ldb-configure", "cd lib/ldb && PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=NONE --abi-check --enable-debug -C ${PREFIX}", "text/plain"),
+ ("ldb-configure", "cd lib/ldb && " + samba_libs_configure_libs, "text/plain"),
("ldb-make", "cd lib/ldb && make", "text/plain"),
("ldb-install", "cd lib/ldb && make install", "text/plain"),
- ("configure", "PYTHONPATH=${PYTHON_PREFIX}/site-packages:$PYTHONPATH PKG_CONFIG_PATH=$PKG_CONFIG_PATH:${PREFIX_DIR}/lib/pkgconfig ./configure --bundled-libraries=!talloc,!tdb,!pytdb,!ldb,!pyldb,!tevent,!pytevent --abi-check --enable-debug -C ${PREFIX}", "text/plain"),
+ ("configure", samba_libs_configure_samba, "text/plain"),
("make", "make", "text/plain"),
("install", "make install", "text/plain"),
- ("dist", "make dist", "text/plain")],
+ ("dist", "make dist", "text/plain"),
+
+ # retry with all modules shared
+ ("allshared-distclean", "make distclean", "text/plain"),
+ ("allshared-configure", samba_libs_configure_samba + " --with-shared-modules=ALL", "text/plain"),
+ ("allshared-make", "make", "text/plain"),
+
+ # retry with all modules static
+ ("allstatic-distclean", "make distclean", "text/plain"),
+ ("allstatic-configure", samba_libs_configure_samba + " --with-static-modules=ALL", "text/plain"),
+ ("allstatic-make", "make", "text/plain"),
+
+ # retry without any required modules
+ ("none-distclean", "make distclean", "text/plain"),
+ ("none-configure", samba_libs_configure_samba + " --with-static-modules=!FORCED,!DEFAULT --with-shared-modules=!FORCED,!DEFAULT", "text/plain"),
+ ("none-make", "make", "text/plain"),
+
+ # retry with nonshared smbd and smbtorture
+ ("nonshared-distclean", "make distclean", "text/plain"),
+ ("nonshared-configure", samba_libs_configure_base + " --bundled-libraries=talloc,tdb,pytdb,ldb,pyldb,tevent,pytevent --with-static-modules=ALL --nonshared-binary=smbtorture,smbd/smbd", "text/plain"),
+ ("nonshared-make", "make", "text/plain")],
"ldb" : [
("random-sleep", "../../script/random-sleep.sh 60 600", "text/plain"),
diff --git a/source3/modules/perfcount_test.c b/source3/modules/perfcount_test.c
index 0dc073c..ccc74dd 100644
--- a/source3/modules/perfcount_test.c
+++ b/source3/modules/perfcount_test.c
@@ -385,6 +385,7 @@ static struct smb_perfcount_handlers perfcount_test_handlers = {
perfcount_test_end
};
+static_decl_perfcount;
NTSTATUS perfcount_test_init(void)
{
return smb_register_perfcounter(SMB_PERFCOUNTER_INTERFACE_VERSION,
diff --git a/source3/modules/vfs_acl_tdb.c b/source3/modules/vfs_acl_tdb.c
index 1537ba3..c7acf43 100644
--- a/source3/modules/vfs_acl_tdb.c
+++ b/source3/modules/vfs_acl_tdb.c
@@ -403,6 +403,7 @@ static struct vfs_fn_pointers vfs_acl_tdb_fns = {
.sys_acl_set_fd_fn = sys_acl_set_fd_tdb
};
+static_decl_vfs;
NTSTATUS vfs_acl_tdb_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "acl_tdb",
diff --git a/source3/modules/vfs_acl_xattr.c b/source3/modules/vfs_acl_xattr.c
index c1b0a60..710fbf3 100644
--- a/source3/modules/vfs_acl_xattr.c
+++ b/source3/modules/vfs_acl_xattr.c
@@ -214,6 +214,7 @@ static struct vfs_fn_pointers vfs_acl_xattr_fns = {
.sys_acl_set_fd_fn = sys_acl_set_fd_xattr
};
+static_decl_vfs;
NTSTATUS vfs_acl_xattr_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "acl_xattr",
diff --git a/source3/modules/vfs_aio_linux.c b/source3/modules/vfs_aio_linux.c
index 5b515d8..db5f075 100644
--- a/source3/modules/vfs_aio_linux.c
+++ b/source3/modules/vfs_aio_linux.c
@@ -348,6 +348,7 @@ static struct vfs_fn_pointers vfs_aio_linux_fns = {
.fsync_recv_fn = aio_linux_int_recv,
};
+static_decl_vfs;
NTSTATUS vfs_aio_linux_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
diff --git a/source3/modules/vfs_audit.c b/source3/modules/vfs_audit.c
index 6963c37..02e8f35 100644
--- a/source3/modules/vfs_audit.c
+++ b/source3/modules/vfs_audit.c
@@ -283,6 +283,7 @@ static struct vfs_fn_pointers vfs_audit_fns = {
.fchmod_acl_fn = audit_fchmod_acl
};
+static_decl_vfs;
NTSTATUS vfs_audit_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "audit",
diff --git a/source3/modules/vfs_catia.c b/source3/modules/vfs_catia.c
index f455afd..c17ffa8 100644
--- a/source3/modules/vfs_catia.c
+++ b/source3/modules/vfs_catia.c
@@ -1005,6 +1005,7 @@ static struct vfs_fn_pointers vfs_catia_fns = {
.setxattr_fn = catia_setxattr,
};
+static_decl_vfs;
NTSTATUS vfs_catia_init(void)
{
NTSTATUS ret;
diff --git a/source3/modules/vfs_dirsort.c b/source3/modules/vfs_dirsort.c
index 224229f..d164088 100644
--- a/source3/modules/vfs_dirsort.c
+++ b/source3/modules/vfs_dirsort.c
@@ -358,6 +358,7 @@ static struct vfs_fn_pointers vfs_dirsort_fns = {
.closedir_fn = dirsort_closedir,
};
+static_decl_vfs;
NTSTATUS vfs_dirsort_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "dirsort",
diff --git a/source3/modules/vfs_extd_audit.c b/source3/modules/vfs_extd_audit.c
index 93ae7e6..7d6b4d3 100644
--- a/source3/modules/vfs_extd_audit.c
+++ b/source3/modules/vfs_extd_audit.c
@@ -360,6 +360,7 @@ static struct vfs_fn_pointers vfs_extd_audit_fns = {
.fchmod_acl_fn = audit_fchmod_acl,
};
+static_decl_vfs;
NTSTATUS vfs_extd_audit_init(void)
{
NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
diff --git a/source3/modules/vfs_full_audit.c b/source3/modules/vfs_full_audit.c
index 6de22b1..11f5d82 100644
--- a/source3/modules/vfs_full_audit.c
+++ b/source3/modules/vfs_full_audit.c
@@ -2323,6 +2323,7 @@ static struct vfs_fn_pointers vfs_full_audit_fns = {
.set_offline_fn = smb_full_audit_set_offline,
};
+static_decl_vfs;
NTSTATUS vfs_full_audit_init(void)
{
NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
diff --git a/source3/modules/vfs_posix_eadb.c b/source3/modules/vfs_posix_eadb.c
index 993c919..20679e1 100644
--- a/source3/modules/vfs_posix_eadb.c
+++ b/source3/modules/vfs_posix_eadb.c
@@ -431,7 +431,7 @@ static struct vfs_fn_pointers vfs_posix_eadb_fns = {
.connect_fn = posix_eadb_connect,
};
-NTSTATUS vfs_posix_eadb_init(void);
+static_decl_vfs;
NTSTATUS vfs_posix_eadb_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "posix_eadb",
diff --git a/source3/modules/vfs_scannedonly.c b/source3/modules/vfs_scannedonly.c
index 0232a15..128374a 100644
--- a/source3/modules/vfs_scannedonly.c
+++ b/source3/modules/vfs_scannedonly.c
@@ -1036,6 +1036,7 @@ static struct vfs_fn_pointers vfs_scannedonly_fns = {
.connect_fn = scannedonly_connect
};
+static_decl_vfs;
NTSTATUS vfs_scannedonly_init(void)
{
return smb_register_vfs(SMB_VFS_INTERFACE_VERSION, "scannedonly",
diff --git a/source3/modules/vfs_smb_traffic_analyzer.c b/source3/modules/vfs_smb_traffic_analyzer.c
index 4938ff7..73ebf63 100644
--- a/source3/modules/vfs_smb_traffic_analyzer.c
+++ b/source3/modules/vfs_smb_traffic_analyzer.c
@@ -919,6 +919,7 @@ static struct vfs_fn_pointers vfs_smb_traffic_analyzer_fns = {
};
/* Module initialization */
+static_decl_vfs;
NTSTATUS vfs_smb_traffic_analyzer_init(void)
{
NTSTATUS ret = smb_register_vfs(SMB_VFS_INTERFACE_VERSION,
diff --git a/source3/modules/vfs_syncops.c b/source3/modules/vfs_syncops.c
index 8ff283d..99f6178 100644
--- a/source3/modules/vfs_syncops.c
+++ b/source3/modules/vfs_syncops.c
@@ -291,6 +291,7 @@ static struct vfs_fn_pointers vfs_syncops_fns = {
.close_fn = syncops_close,
};
+static_decl_vfs;
NTSTATUS vfs_syncops_init(void)
{
NTSTATUS ret;
diff --git a/source3/modules/wscript_build b/source3/modules/wscript_build
index e618b08..e6576ac 100644
--- a/source3/modules/wscript_build
+++ b/source3/modules/wscript_build
@@ -281,10 +281,6 @@ bld.SAMBA3_MODULE('vfs_gpfs',
enabled=bld.SAMBA3_IS_ENABLED_MODULE('vfs_gpfs'),
includes=bld.CONFIG_GET('CPPPATH_GPFS'))
-vfs_notify_fam_deps='samba-util '
-if bld.CONFIG_SET('SAMBA_FAM_LIBS'):
- vfs_notify_fam_deps += bld.CONFIG_GET('SAMBA_FAM_LIBS')
-
bld.SAMBA3_MODULE('vfs_readahead',
subsystem='vfs',
source='vfs_readahead.c',
diff --git a/source3/winbindd/idmap_ad.c b/source3/winbindd/idmap_ad.c
index 5f7ab63..bc9d785 100644
--- a/source3/winbindd/idmap_ad.c
+++ b/source3/winbindd/idmap_ad.c
@@ -962,6 +962,7 @@ static struct nss_info_methods nss_sfu20_methods = {
Initialize the plugins
***********************************************************************/
+static_decl_idmap;
NTSTATUS idmap_ad_init(void)
{
static NTSTATUS status_idmap_ad = NT_STATUS_UNSUCCESSFUL;
diff --git a/source3/winbindd/idmap_autorid.c b/source3/winbindd/idmap_autorid.c
index eeac2b0..76dccaa 100644
--- a/source3/winbindd/idmap_autorid.c
+++ b/source3/winbindd/idmap_autorid.c
@@ -824,6 +824,7 @@ static struct idmap_methods autorid_methods = {
.allocate_id = idmap_autorid_allocate_id
};
+static_decl_idmap;
NTSTATUS idmap_autorid_init(void)
{
return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION,
diff --git a/source3/winbindd/idmap_hash/idmap_hash.c b/source3/winbindd/idmap_hash/idmap_hash.c
index 1dbd300..51bbf5b 100644
--- a/source3/winbindd/idmap_hash/idmap_hash.c
+++ b/source3/winbindd/idmap_hash/idmap_hash.c
@@ -366,6 +366,7 @@ static struct nss_info_methods hash_nss_methods = {
state.
**********************************************************************/
+static_decl_idmap;
NTSTATUS idmap_hash_init(void)
{
static NTSTATUS idmap_status = NT_STATUS_UNSUCCESSFUL;
diff --git a/source3/winbindd/idmap_rfc2307.c b/source3/winbindd/idmap_rfc2307.c
index e9d04c3..6b3ab4a 100644
--- a/source3/winbindd/idmap_rfc2307.c
+++ b/source3/winbindd/idmap_rfc2307.c
@@ -861,6 +861,7 @@ static struct idmap_methods rfc2307_methods = {
.sids_to_unixids = idmap_rfc2307_sids_to_unixids,
};
+static_decl_idmap;
NTSTATUS idmap_rfc2307_init(void)
{
return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "rfc2307",
diff --git a/source3/winbindd/idmap_rid.c b/source3/winbindd/idmap_rid.c
index 099f68c..d6c649b 100644
--- a/source3/winbindd/idmap_rid.c
+++ b/source3/winbindd/idmap_rid.c
@@ -185,6 +185,7 @@ static struct idmap_methods rid_methods = {
.sids_to_unixids = idmap_rid_sids_to_unixids,
};
+static_decl_idmap;
NTSTATUS idmap_rid_init(void)
{
return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "rid", &rid_methods);
diff --git a/source3/winbindd/idmap_script.c b/source3/winbindd/idmap_script.c
index 3a0d685..e758b4e 100644
--- a/source3/winbindd/idmap_script.c
+++ b/source3/winbindd/idmap_script.c
@@ -388,6 +388,7 @@ static struct idmap_methods db_methods = {
.sids_to_unixids = idmap_script_sids_to_unixids,
};
+static_decl_idmap;
NTSTATUS idmap_script_init(void)
{
return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "script", &db_methods);
diff --git a/source3/winbindd/idmap_tdb2.c b/source3/winbindd/idmap_tdb2.c
index ddd4dbf..1b75936 100644
--- a/source3/winbindd/idmap_tdb2.c
+++ b/source3/winbindd/idmap_tdb2.c
@@ -609,6 +609,7 @@ static struct idmap_methods db_methods = {
.allocate_id = idmap_tdb_common_get_new_id
};
+static_decl_idmap;
NTSTATUS idmap_tdb2_init(void)
{
return smb_register_idmap(SMB_IDMAP_INTERFACE_VERSION, "tdb2", &db_methods);
diff --git a/source3/winbindd/wscript_build b/source3/winbindd/wscript_build
index 2f7e74d..3ee280c 100644
--- a/source3/winbindd/wscript_build
+++ b/source3/winbindd/wscript_build
@@ -2,7 +2,7 @@
bld.SAMBA3_LIBRARY('idmap',
source='idmap.c idmap_util.c',
- deps='samba-util',
+ deps='samba-util pdb',
allow_undefined_symbols=True,
private_library=True)
@@ -16,12 +16,13 @@ bld.SAMBA3_SUBSYSTEM('IDMAP_TDB_COMMON',
bld.SAMBA3_SUBSYSTEM('IDMAP_HASH',
source='idmap_hash/idmap_hash.c idmap_hash/mapfile.c',
- deps='samba-util krb5samba')
+ deps='samba-util krb5samba',
+ enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_hash'))
bld.SAMBA3_SUBSYSTEM('IDMAP_AD',
source='idmap_ad.c',
deps='ads nss_info',
- enabled=bld.CONFIG_SET("HAVE_LDAP"))
+ enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_ad'))
bld.SAMBA3_MODULE('idmap_ad',
subsystem='idmap',
@@ -30,7 +31,7 @@ bld.SAMBA3_MODULE('idmap_ad',
deps='IDMAP_AD',
init_function='',
internal_module=bld.SAMBA3_IS_STATIC_MODULE('idmap_ad'),
- enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_ad') and bld.CONFIG_SET("HAVE_LDAP"))
+ enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_ad'))
bld.SAMBA3_MODULE('idmap_rfc2307',
subsystem='idmap',
@@ -39,7 +40,7 @@ bld.SAMBA3_MODULE('idmap_rfc2307',
init_function='',
deps='ads',
internal_module=bld.SAMBA3_IS_STATIC_MODULE('idmap_rfc2307'),
- enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_rfc2307') and bld.CONFIG_SET("HAVE_LDAP"))
+ enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_rfc2307'))
bld.SAMBA3_MODULE('idmap_rid',
subsystem='idmap',
@@ -79,6 +80,7 @@ bld.SAMBA3_MODULE('idmap_tdb',
source='idmap_tdb.c',
deps='samba-util tdb IDMAP_TDB_COMMON',
init_function='',
+ allow_undefined_symbols=True,
internal_module=bld.SAMBA3_IS_STATIC_MODULE('idmap_tdb'),
enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_tdb'))
@@ -141,7 +143,7 @@ bld.SAMBA3_MODULE('nss_info_rfc2307',
allow_undefined_symbols=True,
init_function='',
internal_module=bld.SAMBA3_IS_STATIC_MODULE('idmap_ad'),
- enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_ad') and bld.CONFIG_SET("HAVE_LDAP"))
+ enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_ad'))
bld.SAMBA3_MODULE('nss_info_sfu20',
subsystem='nss_info',
@@ -150,7 +152,7 @@ bld.SAMBA3_MODULE('nss_info_sfu20',
allow_undefined_symbols=True,
init_function='',
internal_module=bld.SAMBA3_IS_STATIC_MODULE('idmap_ad'),
- enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_ad') and bld.CONFIG_SET("HAVE_LDAP"))
+ enabled=bld.SAMBA3_IS_ENABLED_MODULE('idmap_ad'))
bld.SAMBA3_MODULE('nss_info_sfu',
subsystem='nss_info',
diff --git a/source3/wscript b/source3/wscript
index 4e940fa..4918951 100644
--- a/source3/wscript
+++ b/source3/wscript
@@ -16,10 +16,24 @@ Options.default_prefix = '/usr/local/samba'
def set_options(opt):
opt.add_option('--with-static-modules',
- help=("Comma-separated list of names of modules to statically link in"),
+ help=("Comma-separated list of names of modules to statically link in. "+
+ "May include !module to disable 'module'. "+
+ "Can be '!FORCED' to disable all non-required static only modules. "+
+ "Can be '!DEFAULT' to disable all modules defaulting to a static build. "+
+ "Can be 'ALL' to build all default shared modules static. "+
+ "The most specific one wins, while the order is ignored "+
+ "and --with-static-modules is evaluated before "+
+ "--with-shared-modules"),
action="store", dest='static_modules', default=None)
opt.add_option('--with-shared-modules',
- help=("Comma-separated list of names of modules to build shared"),
+ help=("Comma-separated list of names of modules to build shared. "+
+ "May include !module to disable 'module'. "+
+ "Can be '!FORCED' to disable all non-required shared only modules. "+
+ "Can be '!DEFAULT' to disable all modules defaulting to a shared build. "+
+ "Can be 'ALL' to build all default static modules shared. "+
+ "The most specific one wins, while the order is ignored "+
+ "and --with-static-modules is evaluated before "+
+ "--with-shared-modules"),
action="store", dest='shared_modules', default=None)
opt.SAMBA3_ADD_OPTION('winbind')
@@ -69,6 +83,9 @@ def configure(conf):
default_static_modules = []
default_shared_modules = []
+ required_static_modules = []
+ forced_static_modules = []
+ forced_shared_modules = []
if Options.options.developer:
conf.ADD_CFLAGS('-DDEVELOPER -DDEBUG_PASSWORD')
@@ -77,6 +94,9 @@ def configure(conf):
if sys.platform != 'openbsd5':
conf.ADD_LDFLAGS("-Wl,--export-dynamic", testflags=True)
+ # We crash without vfs_default
+ required_static_modules.extend(TO_LIST('vfs_default'))
+
conf.CHECK_HEADERS('execinfo.h libexc.h libunwind.h netdb.h')
--
Samba Shared Repository
More information about the samba-cvs
mailing list