[SCM] Samba Shared Repository - branch master updated

Jelmer Vernooij jelmer at samba.org
Sat Aug 20 20:54:03 MDT 2011


The branch, master has been updated
       via  9fa8f27 talloc: Fix talloc-compat pc files/headers.
       via  3191278 wafsamba: Only install .pc files if libraries are public.
       via  a5025a3 tdb: Install pkg-config file.
       via  8cb6449 wafsamba: Require public libraries to have headers.
       via  9d668c4 dcerpc-binding: Install header file.
       via  a0eac61 gensec: Install header file.
       via  c292599 samdb: Install header file.
       via  c0fe5e0 s4/libpolicy: Install header file.
       via  12e1fdf wafsamba: Require public libraries to have a pc file specified, or explicitly specified that they don't need one.
       via  2b40283 wbclient: Add pkg-config file.
       via  7ebdd3f samba-credentials: Add pkg-config file.
      from  e25345a Ensure we never wait past absolute entime to do a get_cached_ldap_connect().

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 9fa8f27ed848b86778880da1ae13b4c4daef87a8
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sun Aug 21 03:19:17 2011 +0200

    talloc: Fix talloc-compat pc files/headers.
    
    Autobuild-User: Jelmer Vernooij <jelmer at samba.org>
    Autobuild-Date: Sun Aug 21 04:53:07 CEST 2011 on sn-devel-104

commit 31912781ca84db9b27264b5182729d1097c0661d
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sun Aug 21 03:02:58 2011 +0200

    wafsamba: Only install .pc files if libraries are public.

commit a5025a3c2fa83c67e0a53611ad8fbe264888a590
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sun Aug 21 02:54:53 2011 +0200

    tdb: Install pkg-config file.

commit 8cb6449130284e8cab76b044a1a406c4a9074cc1
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sun Aug 21 02:26:51 2011 +0200

    wafsamba: Require public libraries to have headers.

commit 9d668c495c5841fe3d62a6eb9a0c505500a2d7f5
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sun Aug 21 02:24:50 2011 +0200

    dcerpc-binding: Install header file.

commit a0eac61ace01635780474624b9578d85d17a7a50
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sun Aug 21 02:24:36 2011 +0200

    gensec: Install header file.

commit c29259924070aa01a40063ee863fdb9610d24f52
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sun Aug 21 02:24:25 2011 +0200

    samdb: Install header file.

commit c0fe5e095df4b39e7b048c289e8e46de2b836dad
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sun Aug 21 02:24:12 2011 +0200

    s4/libpolicy: Install header file.

commit 12e1fdf0899c8f9176f4a7e789faa2758c4eaa70
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sun Aug 21 02:09:14 2011 +0200

    wafsamba: Require public libraries to have a pc file specified, or explicitly specified that they don't need one.

commit 2b4028359135058700456eb3720ece105611425f
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Aug 20 02:34:16 2011 +0200

    wbclient: Add pkg-config file.

commit 7ebdd3f68306d7d36ee5dfbc294815603525b6db
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Sat Aug 20 02:32:58 2011 +0200

    samba-credentials: Add pkg-config file.

-----------------------------------------------------------------------

Summary of changes:
 buildtools/wafsamba/wafsamba.py                    |   20 +++++++++++++++-----
 lib/ldb/wscript                                    |    8 ++------
 lib/talloc/wscript                                 |   11 +++++------
 lib/tdb/wscript                                    |    2 +-
 lib/tevent/wscript                                 |    2 +-
 lib/util/wscript_build                             |    3 ++-
 librpc/wscript_build                               |    8 +++++---
 .../libwbclient/wbclient.pc.in                     |    6 +++---
 nsswitch/libwbclient/wscript_build                 |    1 +
 source3/wscript_build                              |    4 ++++
 .../samba-credentials.pc.in}                       |    6 +++---
 source4/auth/credentials/wscript_build             |    1 +
 source4/auth/gensec/wscript_build                  |    1 +
 source4/dsdb/wscript_build                         |    1 +
 source4/lib/policy/gp_filesys.c                    |    3 +--
 source4/lib/policy/gp_ldap.c                       |    3 +--
 source4/lib/policy/policy.h                        |    5 ++---
 source4/lib/policy/wscript_build                   |    3 ++-
 18 files changed, 51 insertions(+), 37 deletions(-)
 copy source4/auth/gensec/gensec.pc.in => nsswitch/libwbclient/wbclient.pc.in (69%)
 copy source4/auth/{gensec/gensec.pc.in => credentials/samba-credentials.pc.in} (64%)


Changeset truncated at 500 lines:

diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py
index 3858770..338bc3d 100644
--- a/buildtools/wafsamba/wafsamba.py
+++ b/buildtools/wafsamba/wafsamba.py
@@ -191,13 +191,22 @@ def SAMBA_LIBRARY(bld, libname, source,
     link_name = bld.map_shlib_extension(link_name, python=(target_type=='PYTHON'))
 
     # we don't want any public libraries without version numbers
-    if not private_library and vnum is None and soname is None and target_type != 'PYTHON' and not realname:
-        raise Utils.WafError("public library '%s' must have a vnum" % libname)
+    if (not private_library and target_type != 'PYTHON' and not realname):
+        if vnum is None and soname is None:
+            raise Utils.WafError("public library '%s' must have a vnum" %
+                    libname)
+        if pc_files is None:
+            raise Utils.WafError("public library '%s' must have pkg-config file" %
+                       libname)
+        if public_headers is None:
+            raise Utils.WafError("public library '%s' must have header files" %
+                       libname)
 
     if target_type == 'PYTHON' or realname or not private_library:
         bundled_name = libname.replace('_', '-')
     else:
-        bundled_name = PRIVATE_NAME(bld, libname, bundled_extension, private_library)
+        bundled_name = PRIVATE_NAME(bld, libname, bundled_extension,
+            private_library)
 
     ldflags = TO_LIST(ldflags)
 
@@ -270,10 +279,11 @@ def SAMBA_LIBRARY(bld, libname, source,
     if link_name:
         t.link_name = link_name
 
-    if pc_files is not None:
+    if pc_files is not None and not private_library:
         bld.PKG_CONFIG_FILES(pc_files, vnum=vnum)
 
-    if manpages is not None and 'XSLTPROC_MANPAGES' in bld.env and bld.env['XSLTPROC_MANPAGES']:
+    if (manpages is not None and 'XSLTPROC_MANPAGES' in bld.env and 
+        bld.env['XSLTPROC_MANPAGES']):
         bld.MANPAGES(manpages)
 
 
diff --git a/lib/ldb/wscript b/lib/ldb/wscript
index bf1b4a6..0713464 100755
--- a/lib/ldb/wscript
+++ b/lib/ldb/wscript
@@ -84,12 +84,8 @@ def build(bld):
 
     if bld.env.standalone_ldb:
         private_library = False
-        ldb_pc_files='ldb.pc'
-        pyldb_pc_files='pyldb-util.pc'
     else:
         private_library = True
-        ldb_pc_files=None
-        pyldb_pc_files=None
 
     LDB_MAP_SRC = bld.SUBDIR('ldb_map',
                              'ldb_map.c ldb_map_inbound.c ldb_map_outbound.c')
@@ -123,7 +119,7 @@ def build(bld):
                           public_headers_install=not private_library,
                           vnum=VERSION,
                           private_library=private_library,
-                          pc_files=pyldb_pc_files,
+                          pc_files='pyldb-util.pc',
                           pyext=True,
                           abi_directory='ABI',
                           abi_match='pyldb_*')
@@ -145,7 +141,7 @@ def build(bld):
                           public_headers='include/ldb.h include/ldb_errors.h '\
                           'include/ldb_module.h include/ldb_handlers.h',
                           public_headers_install=not private_library,
-                          pc_files=ldb_pc_files,
+                          pc_files='ldb.pc',
                           vnum=VERSION,
                           private_library=private_library,
                           manpages='man/ldb.3',
diff --git a/lib/talloc/wscript b/lib/talloc/wscript
index c43c661..54635f6 100644
--- a/lib/talloc/wscript
+++ b/lib/talloc/wscript
@@ -74,7 +74,6 @@ def build(bld):
     if bld.env.standalone_talloc:
         bld.env.PKGCONFIGDIR = '${LIBDIR}/pkgconfig'
         bld.env.TALLOC_VERSION = VERSION
-        bld.PKG_CONFIG_FILES('talloc.pc', vnum=VERSION)
         private_library = False
 
         # should we also install the symlink to libtalloc1.so here?
@@ -82,10 +81,9 @@ def build(bld):
                           'compat/talloc_compat1.c',
                           public_deps='talloc',
                           soname='libtalloc.so.1',
+                          pc_files=[],
+                          public_headers=[],
                           enabled=bld.env.TALLOC_COMPAT1)
-
-        if not bld.env.disable_python:
-            bld.PKG_CONFIG_FILES('pytalloc-util.pc', vnum=VERSION)
     else:
         private_library = True
 
@@ -99,12 +97,12 @@ def build(bld):
                           hide_symbols=True,
                           vnum=VERSION,
                           public_headers='talloc.h',
+                          pc_files='talloc.pc',
                           public_headers_install=not private_library,
                           private_library=private_library,
                           manpages='talloc.3')
 
     if not bld.CONFIG_SET('USING_SYSTEM_PYTALLOC_UTIL') and not bld.env.disable_python:
-
         bld.SAMBA_LIBRARY('pytalloc-util',
             source='pytalloc_util.c',
             public_deps='talloc',
@@ -114,7 +112,8 @@ def build(bld):
             abi_directory='ABI',
             abi_match='pytalloc_*',
             private_library=private_library,
-            public_headers='pytalloc.h'
+            public_headers='pytalloc.h',
+            pc_files='pytalloc-util.pc'
             )
         bld.SAMBA_PYTHON('pytalloc',
                          'pytalloc.c',
diff --git a/lib/tdb/wscript b/lib/tdb/wscript
index 58a747f..02f009b 100644
--- a/lib/tdb/wscript
+++ b/lib/tdb/wscript
@@ -65,7 +65,6 @@ def build(bld):
 
     if bld.env.standalone_tdb:
         bld.env.PKGCONFIGDIR = '${LIBDIR}/pkgconfig'
-        bld.PKG_CONFIG_FILES('tdb.pc', vnum=VERSION)
         private_library = False
     else:
         private_library = True
@@ -81,6 +80,7 @@ def build(bld):
                           vnum=VERSION,
                           public_headers='include/tdb.h',
                           public_headers_install=not private_library,
+                          pc_files='tdb.pc',
                           private_library=private_library)
 
         bld.SAMBA_BINARY('tdbtorture',
diff --git a/lib/tevent/wscript b/lib/tevent/wscript
index 68430ea..9c4d4c3 100644
--- a/lib/tevent/wscript
+++ b/lib/tevent/wscript
@@ -70,7 +70,6 @@ def build(bld):
 
     if bld.env.standalone_tevent:
         bld.env.PKGCONFIGDIR = '${LIBDIR}/pkgconfig'
-        bld.PKG_CONFIG_FILES('tevent.pc', vnum=VERSION)
         private_library = False
     else:
         private_library = True
@@ -86,6 +85,7 @@ def build(bld):
                           vnum=VERSION,
                           public_headers='tevent.h',
                           public_headers_install=not private_library,
+                          pc_files='tevent.pc',
                           private_library=private_library)
 
     bld.SAMBA_PYTHON('pytevent',
diff --git a/lib/util/wscript_build b/lib/util/wscript_build
index 82af65c..553748a 100755
--- a/lib/util/wscript_build
+++ b/lib/util/wscript_build
@@ -54,7 +54,8 @@ bld.SAMBA_LIBRARY('tevent-util',
 	public_deps='tevent',
 	public_headers='tevent_ntstatus.h tevent_unix.h tevent_werror.h',
 	header_path=[ ('*', 'util') ],
-		  vnum='0.0.1'
+	pc_files=[],
+	vnum='0.0.1'
 	)
 
 
diff --git a/librpc/wscript_build b/librpc/wscript_build
index 444cb94..1ac6645 100644
--- a/librpc/wscript_build
+++ b/librpc/wscript_build
@@ -588,6 +588,8 @@ bld.SAMBA_LIBRARY('ndr',
 	)
 
 bld.SAMBA_LIBRARY('dcerpc-binding',
-                  source='rpc/dcerpc_error.c rpc/binding.c rpc/dcerpc_util.c rpc/binding_handle.c',
-                  deps='ndr tevent NDR_DCERPC LIBTSOCKET tevent-util',
-                  vnum='0.0.1')
+	  source='rpc/dcerpc_error.c rpc/binding.c rpc/dcerpc_util.c rpc/binding_handle.c',
+	  deps='ndr tevent NDR_DCERPC LIBTSOCKET tevent-util',
+	  pc_files=[],
+	  public_headers='rpc/rpc_common.h',
+	  vnum='0.0.1')
diff --git a/source4/auth/gensec/gensec.pc.in b/nsswitch/libwbclient/wbclient.pc.in
similarity index 69%
copy from source4/auth/gensec/gensec.pc.in
copy to nsswitch/libwbclient/wbclient.pc.in
index f32226d..c7b199b 100644
--- a/source4/auth/gensec/gensec.pc.in
+++ b/nsswitch/libwbclient/wbclient.pc.in
@@ -4,8 +4,8 @@ libdir=@libdir@
 includedir=@includedir@
 modulesdir=${prefix}/modules/gensec
 
-Name: gensec
-Description: Generic Security Library
+Name: wbclient
+Description: Winbind client
 Version: @PACKAGE_VERSION@
-Libs: @LIB_RPATH@ -L${libdir} -lgensec
+Libs: @LIB_RPATH@ -L${libdir} -lwbclient
 Cflags: -I${includedir}  -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/nsswitch/libwbclient/wscript_build b/nsswitch/libwbclient/wscript_build
index d925515..2b7fc08 100644
--- a/nsswitch/libwbclient/wscript_build
+++ b/nsswitch/libwbclient/wscript_build
@@ -3,6 +3,7 @@
 bld.SAMBA_LIBRARY('wbclient',
 	source='wbc_guid.c wbc_idmap.c wbclient.c wbc_pam.c wbc_pwd.c wbc_sid.c wbc_util.c',
 	deps='winbind-client',
+	pc_files='wbclient.pc',
 	public_headers='wbclient.h',
 	vnum='0'
 	)
diff --git a/source3/wscript_build b/source3/wscript_build
index 3cc8471..8d4a02f 100755
--- a/source3/wscript_build
+++ b/source3/wscript_build
@@ -670,6 +670,7 @@ bld.SAMBA3_LIBRARY('netapi',
                     RPC_NDR_SRVSVC RPC_NDR_WKSSVC RPC_NDR_INITSHUTDOWN
                     INIT_NETLOGON INIT_SAMR popt_samba3''',
                     public_headers='../source3/lib/netapi/netapi.h',
+                    pc_files=[],
                     vnum='0',
                     vars=locals())
 
@@ -679,6 +680,7 @@ bld.SAMBA3_LIBRARY('libsmb/smbclient',
                     LIBMSRPC_GEN msrpc3 libcli_lsa3 RPC_NDR_SRVSVC popt_samba3''',
                     public_headers='include/libsmbclient.h',
                     vnum='0',
+                    pc_files=[],
                     vars=locals())
 
 bld.SAMBA3_LIBRARY('smbsharemodes',
@@ -686,6 +688,7 @@ bld.SAMBA3_LIBRARY('smbsharemodes',
                     public_deps='''talloc tdb_compat''',
                     deps='''ccan''',
                     public_headers='include/smb_share_modes.h',
+                    pc_files=[],
                     vnum='0',
                     vars=locals())
 
@@ -886,6 +889,7 @@ bld.SAMBA3_LIBRARY('smbconf',
                    deps='''LIBSMBCONF smbregistry REG_SMBCONF talloc param
                    util_reg samba-util errors3 charset SAMBA_VERSION''',
                    public_headers='../lib/smbconf/smbconf.h',
+                   pc_files=[],
                    vnum='0')
 
 bld.SAMBA3_LIBRARY('smbd_conn',
diff --git a/source4/auth/gensec/gensec.pc.in b/source4/auth/credentials/samba-credentials.pc.in
similarity index 64%
copy from source4/auth/gensec/gensec.pc.in
copy to source4/auth/credentials/samba-credentials.pc.in
index f32226d..9a0db50 100644
--- a/source4/auth/gensec/gensec.pc.in
+++ b/source4/auth/credentials/samba-credentials.pc.in
@@ -4,8 +4,8 @@ libdir=@libdir@
 includedir=@includedir@
 modulesdir=${prefix}/modules/gensec
 
-Name: gensec
-Description: Generic Security Library
+Name: samba-credentials
+Description: Credentials management
 Version: @PACKAGE_VERSION@
-Libs: @LIB_RPATH@ -L${libdir} -lgensec
+Libs: @LIB_RPATH@ -L${libdir} -lsamba-credentials
 Cflags: -I${includedir}  -DHAVE_IMMEDIATE_STRUCTURES=1
diff --git a/source4/auth/credentials/wscript_build b/source4/auth/credentials/wscript_build
index c708e7e..2c46b43 100644
--- a/source4/auth/credentials/wscript_build
+++ b/source4/auth/credentials/wscript_build
@@ -4,6 +4,7 @@ bld.SAMBA_LIBRARY('samba-credentials',
 	source='credentials.c',
 	autoproto='credentials_proto.h',
 	public_headers='credentials.h',
+	pc_files='samba-credentials.pc',
 	deps='LIBCRYPTO errors events LIBCLI_AUTH security CREDENTIALS_SECRETS CREDENTIALS_KRB5',
 	vnum='0.0.1'
 	)
diff --git a/source4/auth/gensec/wscript_build b/source4/auth/gensec/wscript_build
index be32502..ec4a83c 100644
--- a/source4/auth/gensec/wscript_build
+++ b/source4/auth/gensec/wscript_build
@@ -4,6 +4,7 @@ bld.SAMBA_LIBRARY('gensec',
 	source='gensec_start.c socket.c gensec_tstream.c',
 	pc_files='gensec.pc',
 	autoproto='gensec_proto.h',
+	public_headers='../../../auth/gensec/gensec.h',
 	public_deps='tevent-util samba-util errors LIBPACKET auth_system_session gensec_runtime',
 	deps='com_err',
 	vnum='0.0.1'
diff --git a/source4/dsdb/wscript_build b/source4/dsdb/wscript_build
index 1180410..7645ae7 100644
--- a/source4/dsdb/wscript_build
+++ b/source4/dsdb/wscript_build
@@ -7,6 +7,7 @@ bld.SAMBA_LIBRARY('samdb',
 	pc_files='samdb.pc',
 	autoproto='samdb/samdb_proto.h',
 	public_deps='krb5',
+	public_headers='',
 	vnum='0.0.1',
 	deps='ndr NDR_DRSUAPI NDR_DRSBLOBS auth_system_session LIBCLI_AUTH ndr SAMDB_SCHEMA ldbsamba samdb-common LIBCLI_DRSUAPI cli-ldap-common samba-util com_err authkrb5 samba-credentials ldbwrap errors',
 	)
diff --git a/source4/lib/policy/gp_filesys.c b/source4/lib/policy/gp_filesys.c
index 6e0cbed..55180cb 100644
--- a/source4/lib/policy/gp_filesys.c
+++ b/source4/lib/policy/gp_filesys.c
@@ -164,10 +164,9 @@ static NTSTATUS gp_cli_connect(struct gp_context *gp_ctx)
 	lpcfg_smbcli_options(gp_ctx->lp_ctx, &options);
 	lpcfg_smbcli_session_options(gp_ctx->lp_ctx, &session_options);
 
-
 	return smbcli_full_connection(gp_ctx,
 			&gp_ctx->cli,
-			gp_ctx->active_dc.name,
+			gp_ctx->active_dc->name,
 			lpcfg_smb_ports(gp_ctx->lp_ctx),
 			"sysvol",
 			NULL,
diff --git a/source4/lib/policy/gp_ldap.c b/source4/lib/policy/gp_ldap.c
index de56e4c..c390be2 100644
--- a/source4/lib/policy/gp_ldap.c
+++ b/source4/lib/policy/gp_ldap.c
@@ -177,7 +177,6 @@ NTSTATUS gp_init(TALLOC_CTX *mem_ctx,
 		return NT_STATUS_UNSUCCESSFUL;
 	}
 
-
 	*gp_ctx = talloc_zero(mem_ctx, struct gp_context);
 	NT_STATUS_HAVE_NO_MEMORY(gp_ctx);
 
@@ -185,7 +184,7 @@ NTSTATUS gp_init(TALLOC_CTX *mem_ctx,
 	(*gp_ctx)->credentials = credentials;
 	(*gp_ctx)->ev_ctx = ev_ctx;
 	(*gp_ctx)->ldb_ctx = ldb_ctx;
-	(*gp_ctx)->active_dc = io->out.dcs[0];
+	(*gp_ctx)->active_dc = talloc_reference(*gp_ctx, &io->out.dcs[0]);
 
 	/* We don't need to keep the libnet context */
 	talloc_free(net_ctx);
diff --git a/source4/lib/policy/policy.h b/source4/lib/policy/policy.h
index e6ce15c..fd26e59 100644
--- a/source4/lib/policy/policy.h
+++ b/source4/lib/policy/policy.h
@@ -20,16 +20,15 @@
 
 #ifndef __POLICY_H__
 #define __POLICY_H__
-#include "libcli/libcli.h"
 
 #define GPLINK_OPT_DISABLE		(1 << 0)
 #define GPLINK_OPT_ENFORCE		(1 << 1)
 
-
 #define GPO_FLAG_USER_DISABLE		(1 << 0)
 #define GPO_FLAG_MACHINE_DISABLE	(1 << 1)
 
 struct security_token;
+struct nbt_dc_name;
 
 enum gpo_inheritance {
 	GPO_INHERIT = 0,
@@ -42,7 +41,7 @@ struct gp_context {
 	struct cli_credentials *credentials;
 	struct tevent_context *ev_ctx;
 	struct smbcli_state *cli;
-	struct nbt_dc_name active_dc;
+	struct nbt_dc_name *active_dc;
 };
 
 struct gp_object {
diff --git a/source4/lib/policy/wscript_build b/source4/lib/policy/wscript_build
index 3896357..b8ba638 100644
--- a/source4/lib/policy/wscript_build
+++ b/source4/lib/policy/wscript_build
@@ -5,7 +5,8 @@ bld.SAMBA_LIBRARY('samba-policy',
 	pc_files='samba-policy.pc',
 	public_deps='ldb samba-net',
 	vnum='0.0.1',
-	pyembed=True
+	pyembed=True,
+	public_headers='policy.h'
 	)
 
 bld.SAMBA_PYTHON('py_policy',


-- 
Samba Shared Repository


More information about the samba-cvs mailing list