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 <jel...@samba.org> Date: Sun Aug 21 03:19:17 2011 +0200 talloc: Fix talloc-compat pc files/headers. Autobuild-User: Jelmer Vernooij <jel...@samba.org> Autobuild-Date: Sun Aug 21 04:53:07 CEST 2011 on sn-devel-104 commit 31912781ca84db9b27264b5182729d1097c0661d Author: Jelmer Vernooij <jel...@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 <jel...@samba.org> Date: Sun Aug 21 02:54:53 2011 +0200 tdb: Install pkg-config file. commit 8cb6449130284e8cab76b044a1a406c4a9074cc1 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Aug 21 02:26:51 2011 +0200 wafsamba: Require public libraries to have headers. commit 9d668c495c5841fe3d62a6eb9a0c505500a2d7f5 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Aug 21 02:24:50 2011 +0200 dcerpc-binding: Install header file. commit a0eac61ace01635780474624b9578d85d17a7a50 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Aug 21 02:24:36 2011 +0200 gensec: Install header file. commit c29259924070aa01a40063ee863fdb9610d24f52 Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Aug 21 02:24:25 2011 +0200 samdb: Install header file. commit c0fe5e095df4b39e7b048c289e8e46de2b836dad Author: Jelmer Vernooij <jel...@samba.org> Date: Sun Aug 21 02:24:12 2011 +0200 s4/libpolicy: Install header file. commit 12e1fdf0899c8f9176f4a7e789faa2758c4eaa70 Author: Jelmer Vernooij <jel...@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 <jel...@samba.org> Date: Sat Aug 20 02:34:16 2011 +0200 wbclient: Add pkg-config file. commit 7ebdd3f68306d7d36ee5dfbc294815603525b6db Author: Jelmer Vernooij <jel...@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