python: Start building winreg module.
[ira/wip.git] / source / librpc / config.mk
index fa4d5045f67e118a2cfcb359a2d8aa4928a9d6c6..55991f4953a8effbdfa805eff3a4b88d21729b9e 100644 (file)
@@ -10,11 +10,30 @@ OBJ_FILES = \
                ndr/ndr.o \
                ndr/ndr_basic.o \
                ndr/ndr_string.o \
-               ndr/ndr_misc.o
-PUBLIC_DEPENDENCIES = LIBSAMBA-ERRORS LIBTALLOC LIBSAMBA-UTIL
+               ndr/uuid.o
+PUBLIC_DEPENDENCIES = LIBSAMBA-ERRORS LIBTALLOC LIBSAMBA-UTIL CHARSET EXT_NSL \
+                                         LIBSAMBA-CONFIG
 # End SUBSYSTEM LIBNDR
 ################################################
 
+#################################
+# Start BINARY ndrdump
+[BINARY::ndrdump]
+INSTALLDIR = BINDIR
+OBJ_FILES = \
+               tools/ndrdump.o
+PRIVATE_DEPENDENCIES = \
+               LIBSAMBA-CONFIG \
+               LIBSAMBA-UTIL \
+               LIBPOPT \
+               POPT_SAMBA \
+               NDR_TABLE \
+               LIBSAMBA-ERRORS
+MANPAGE = tools/ndrdump.1
+# FIXME: ndrdump shouldn't have to depend on RPC...
+# End BINARY ndrdump
+#################################
+
 ################################################
 # Start SUBSYSTEM NDR_COMPRESSION
 [LIBRARY::NDR_COMPRESSION]
@@ -24,36 +43,24 @@ DESCRIPTION = NDR support for compressed subcontexts
 PRIVATE_PROTO_HEADER = ndr/ndr_compression.h
 OBJ_FILES = \
                ndr/ndr_compression.o
-PUBLIC_DEPENDENCIES = LIBCOMPRESSION
+PUBLIC_DEPENDENCIES = LIBCOMPRESSION LIBSAMBA-ERRORS LIBNDR
 # End SUBSYSTEM NDR_COMPRESSION
 ################################################
 
-[SUBSYSTEM::NDR_SECURITY_HELPER]
-PRIVATE_PROTO_HEADER = ndr/ndr_sec.h
-OBJ_FILES = ndr/ndr_sec_helper.o ndr/ndr_sec.o
-
-[LIBRARY::NDR_SECURITY]
-VERSION = 0.0.1
-SO_VERSION = 0
-OBJ_FILES = gen_ndr/ndr_security.o
+[SUBSYSTEM::NDR_SECURITY]
+OBJ_FILES = gen_ndr/ndr_security.o ndr/ndr_sec_helper.o 
 PUBLIC_HEADERS = gen_ndr/security.h
-PUBLIC_DEPENDENCIES = NDR_MISC NDR_SECURITY_HELPER
+PUBLIC_DEPENDENCIES = NDR_MISC LIBSECURITY
 
-[LIBRARY::NDR_AUDIOSRV]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_AUDIOSRV]
 OBJ_FILES = gen_ndr/ndr_audiosrv.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_DNSSERVER]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_DNSSERVER]
 OBJ_FILES = gen_ndr/ndr_dnsserver.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_WINSTATION]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_WINSTATION]
 OBJ_FILES = gen_ndr/ndr_winstation.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
@@ -61,264 +68,189 @@ PUBLIC_DEPENDENCIES = LIBNDR
 OBJ_FILES = gen_ndr/ndr_echo.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_IRPC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_IRPC]
 OBJ_FILES = gen_ndr/ndr_irpc.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY NDR_NBT
 
-[LIBRARY::NDR_DSBACKUP]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_DSBACKUP]
 OBJ_FILES = gen_ndr/ndr_dsbackup.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_EFS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_EFS]
 OBJ_FILES = gen_ndr/ndr_efs.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
 
 [SUBSYSTEM::NDR_MISC]
-OBJ_FILES = gen_ndr/ndr_misc.o
+OBJ_FILES = gen_ndr/ndr_misc.o ndr/ndr_misc.o
 PUBLIC_HEADERS = gen_ndr/misc.h gen_ndr/ndr_misc.h
 PUBLIC_DEPENDENCIES = LIBNDR
 
 [SUBSYSTEM::NDR_ROT]
 OBJ_FILES = gen_ndr/ndr_rot.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC
 
-[LIBRARY::NDR_LSA]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_LSA]
 OBJ_FILES = gen_ndr/ndr_lsa.o
 PUBLIC_HEADERS = gen_ndr/lsa.h
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
 
-[LIBRARY::NDR_DFS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_DFS]
 OBJ_FILES = gen_ndr/ndr_dfs.o
+PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC
+
+[SUBSYSTEM::NDR_FRSRPC]
+OBJ_FILES = gen_ndr/ndr_frsrpc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_DRSUAPI]
-VERSION = 0.0.1
-SO_VERSION = 0
-OBJ_FILES = gen_ndr/ndr_drsuapi.o
-PUBLIC_DEPENDENCIES = LIBNDR NDR_DRSUAPI_PRINT NDR_COMPRESSION NDR_SECURITY
+[SUBSYSTEM::NDR_FRSAPI]
+OBJ_FILES = gen_ndr/ndr_frsapi.o
+PUBLIC_DEPENDENCIES = LIBNDR
 
-[SUBSYSTEM::NDR_DRSUAPI_PRINT]
-PRIVATE_PROTO_HEADER = ndr/ndr_drsuapi.h
-OBJ_FILES = ndr/ndr_drsuapi.o
+[SUBSYSTEM::NDR_DRSUAPI]
+OBJ_FILES = gen_ndr/ndr_drsuapi.o ndr/ndr_drsuapi.o
+PUBLIC_DEPENDENCIES = LIBNDR NDR_COMPRESSION NDR_SECURITY NDR_SAMR ASN1_UTIL
 
-[LIBRARY::NDR_DRSBLOBS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_DRSBLOBS]
 OBJ_FILES = gen_ndr/ndr_drsblobs.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC NDR_DRSUAPI
 
 [SUBSYSTEM::NDR_SASL_HELPERS]
 OBJ_FILES = gen_ndr/ndr_sasl_helpers.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_POLICYAGENT]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_POLICYAGENT]
 OBJ_FILES = gen_ndr/ndr_policyagent.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_UNIXINFO]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_UNIXINFO]
 OBJ_FILES = gen_ndr/ndr_unixinfo.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
 
-[LIBRARY::NDR_SAMR]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_SAMR]
 OBJ_FILES = gen_ndr/ndr_samr.o
-PUBLIC_HEADERS = gen_ndr/samr.h
+PUBLIC_HEADERS = gen_ndr/samr.h gen_ndr/ndr_samr.h gen_ndr/ndr_samr_c.h
 PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC NDR_LSA NDR_SECURITY
 
-[LIBRARY::NDR_SPOOLSS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_NFS4ACL]
+OBJ_FILES = gen_ndr/ndr_nfs4acl.o
+PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC NDR_SECURITY
+
+[SUBSYSTEM::NDR_SPOOLSS]
 OBJ_FILES = gen_ndr/ndr_spoolss.o
-PUBLIC_DEPENDENCIES = LIBNDR NDR_SPOOLSS_BUF
+PUBLIC_DEPENDENCIES = LIBNDR NDR_SPOOLSS_BUF NDR_SECURITY
 
 [SUBSYSTEM::NDR_SPOOLSS_BUF]
 PRIVATE_PROTO_HEADER = ndr/ndr_spoolss_buf.h
 OBJ_FILES = ndr/ndr_spoolss_buf.o
 
-[LIBRARY::NDR_WKSSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_WKSSVC]
 OBJ_FILES = gen_ndr/ndr_wkssvc.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_SRVSVC NDR_MISC NDR_SECURITY
 
-[LIBRARY::NDR_SRVSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_SRVSVC]
 OBJ_FILES = gen_ndr/ndr_srvsvc.o
-PUBLIC_DEPENDENCIES = LIBNDR NDR_SVCCTL
+PUBLIC_DEPENDENCIES = LIBNDR NDR_SVCCTL NDR_SECURITY
 
-[LIBRARY::NDR_SVCCTL]
-VERSION = 0.0.1
-PUBLIC_HEADERS = gen_ndr/svcctl.h
-SO_VERSION = 0
+[SUBSYSTEM::NDR_SVCCTL]
 OBJ_FILES = gen_ndr/ndr_svcctl.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_HEADERS = gen_ndr/ndr_svcctl.h gen_ndr/svcctl.h
+PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC
 
-[LIBRARY::NDR_ATSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_ATSVC]
 OBJ_FILES = gen_ndr/ndr_atsvc.o
+PUBLIC_HEADERS = gen_ndr/atsvc.h gen_ndr/ndr_atsvc.h
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_EVENTLOG]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_EVENTLOG]
 OBJ_FILES = gen_ndr/ndr_eventlog.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_LSA
 
-[LIBRARY::NDR_EPMAPPER]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_EPMAPPER]
 OBJ_FILES = gen_ndr/ndr_epmapper.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC
 
-[LIBRARY::NDR_DBGIDL]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_DBGIDL]
 OBJ_FILES = gen_ndr/ndr_dbgidl.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_DSSETUP]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_DSSETUP]
 OBJ_FILES = gen_ndr/ndr_dssetup.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC
 
-[LIBRARY::NDR_MSGSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_MSGSVC]
 OBJ_FILES = gen_ndr/ndr_msgsvc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_WINS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_WINS]
 OBJ_FILES = gen_ndr/ndr_wins.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_WINREG]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_WINREG]
 OBJ_FILES = gen_ndr/ndr_winreg.o
-PUBLIC_DEPENDENCIES = LIBNDR NDR_INITSHUTDOWN
+PUBLIC_DEPENDENCIES = LIBNDR NDR_INITSHUTDOWN NDR_SECURITY NDR_MISC
 
-[LIBRARY::NDR_INITSHUTDOWN]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_INITSHUTDOWN]
 OBJ_FILES = gen_ndr/ndr_initshutdown.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_MGMT]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_MGMT]
 OBJ_FILES = gen_ndr/ndr_mgmt.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR 
 
-[LIBRARY::NDR_PROTECTED_STORAGE]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_PROTECTED_STORAGE]
 OBJ_FILES = gen_ndr/ndr_protected_storage.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[SUBSYSTEM::NDR_DCOM]
-OBJ_FILES = gen_ndr/ndr_dcom.o
-PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC
-
-[SUBSYSTEM::NDR_ORPC_MANUAL]
-PRIVATE_PROTO_HEADER = ndr/ndr_orpc.h
-OBJ_FILES = ndr/ndr_orpc.o 
-
 [SUBSYSTEM::NDR_ORPC]
-OBJ_FILES = gen_ndr/ndr_orpc.o
-PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC_MANUAL
+OBJ_FILES = gen_ndr/ndr_orpc.o ndr/ndr_orpc.o 
+PUBLIC_DEPENDENCIES = LIBNDR 
 
-[LIBRARY::NDR_OXIDRESOLVER]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_OXIDRESOLVER]
 OBJ_FILES = gen_ndr/ndr_oxidresolver.o
-PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC
+PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC NDR_MISC
 
-[LIBRARY::NDR_REMACT]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_REMACT]
 OBJ_FILES = gen_ndr/ndr_remact.o
-PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC
+PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC NDR_MISC
 
-[LIBRARY::NDR_WZCSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_WZCSVC]
 OBJ_FILES = gen_ndr/ndr_wzcsvc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_BROWSER]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_BROWSER]
 OBJ_FILES = gen_ndr/ndr_browser.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_W32TIME]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_W32TIME]
 OBJ_FILES = gen_ndr/ndr_w32time.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_SCERPC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_SCERPC]
 OBJ_FILES = gen_ndr/ndr_scerpc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_NTSVCS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_NTSVCS]
 OBJ_FILES = gen_ndr/ndr_ntsvcs.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_NETLOGON]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_NETLOGON]
 OBJ_FILES = gen_ndr/ndr_netlogon.o
 PUBLIC_HEADERS = gen_ndr/netlogon.h
-PUBLIC_DEPENDENCIES = LIBNDR NDR_SAMR NDR_LSA
+PUBLIC_DEPENDENCIES = LIBNDR NDR_SAMR NDR_LSA NDR_SECURITY
 
-[LIBRARY::NDR_TRKWKS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_TRKWKS]
 OBJ_FILES = gen_ndr/ndr_trkwks.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
-[LIBRARY::NDR_KEYSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_KEYSVC]
 OBJ_FILES = gen_ndr/ndr_keysvc.o
 PUBLIC_DEPENDENCIES = LIBNDR
 
 [SUBSYSTEM::NDR_KRB5PAC]
-OBJ_FILES = gen_ndr/ndr_krb5pac.o
-PUBLIC_DEPENDENCIES = LIBNDR NDR_KRB5PAC_UTIL NDR_NETLOGON
+OBJ_FILES = gen_ndr/ndr_krb5pac.o ndr/ndr_krb5pac.o
+PUBLIC_DEPENDENCIES = LIBNDR NDR_NETLOGON NDR_SECURITY
 
-[SUBSYSTEM::NDR_KRB5PAC_UTIL]
-PRIVATE_PROTO_HEADER = ndr/ndr_krb5pac.h
-OBJ_FILES = ndr/ndr_krb5pac.o
-
-[LIBRARY::NDR_XATTR]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_XATTR]
 OBJ_FILES = gen_ndr/ndr_xattr.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
 
@@ -332,34 +264,33 @@ PUBLIC_DEPENDENCIES = LIBNDR
 
 [SUBSYSTEM::NDR_SCHANNEL]
 OBJ_FILES = gen_ndr/ndr_schannel.o
-PUBLIC_DEPENDENCIES = LIBNDR
+PUBLIC_DEPENDENCIES = LIBNDR NDR_NBT
 
 [SUBSYSTEM::NDR_NBT]
 OBJ_FILES = gen_ndr/ndr_nbt.o
 PUBLIC_HEADERS = gen_ndr/nbt.h
-PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC NDR_NBT_BUF NDR_SVCCTL
+PUBLIC_DEPENDENCIES = LIBNDR NDR_MISC NDR_NBT_BUF NDR_SVCCTL NDR_SECURITY
 
-[LIBRARY::NDR_WINSREPL]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::NDR_WINSREPL]
 OBJ_FILES = gen_ndr/ndr_winsrepl.o
 PUBLIC_DEPENDENCIES = LIBNDR NDR_NBT
 
+[SUBSYSTEM::NDR_WINBIND]
+OBJ_FILES = gen_ndr/ndr_winbind.o
+PUBLIC_HEADERS = gen_ndr/winbind.h
+PUBLIC_DEPENDENCIES = LIBNDR NDR_NETLOGON
+
+include ../heimdal_build/perl_path_wrapper.sh ../librpc/idl-deps.pl librpc/idl/*.idl|
+
 librpc/gen_ndr/tables.c: $(IDL_NDR_PARSE_H_FILES)
        @echo Generating librpc/gen_ndr/tables.c
        @$(PERL) $(srcdir)/librpc/tables.pl --output=librpc/gen_ndr/tables.c $(IDL_NDR_PARSE_H_FILES) > librpc/gen_ndr/tables.x
        mv librpc/gen_ndr/tables.x librpc/gen_ndr/tables.c
 
-[SUBSYSTEM::NDR_IFACE_TABLE]
-OBJ_FILES = gen_ndr/tables.o
-
-[LIBRARY::NDR_TABLE]
-VERSION = 0.0.1
-SO_VERSION = 0
-OBJ_FILES = rpc/table.o 
-PRIVATE_PROTO_HEADER = rpc/dcerpc_table.h
+[SUBSYSTEM::NDR_TABLE]
+OBJ_FILES = ndr/ndr_table.o gen_ndr/tables.o
+PRIVATE_PROTO_HEADER = ndr/ndr_table.h
 PUBLIC_DEPENDENCIES = \
-       NDR_IFACE_TABLE \
        NDR_AUDIOSRV NDR_ECHO NDR_DCERPC \
        NDR_DSBACKUP NDR_EFS NDR_MISC NDR_LSA NDR_DFS NDR_DRSUAPI \
        NDR_POLICYAGENT NDR_UNIXINFO NDR_SAMR NDR_SPOOLSS NDR_WKSSVC NDR_SRVSVC NDR_ATSVC \
@@ -368,220 +299,161 @@ PUBLIC_DEPENDENCIES = \
        NDR_REMACT NDR_WZCSVC NDR_BROWSER NDR_W32TIME NDR_SCERPC NDR_NTSVCS \
        NDR_NETLOGON NDR_TRKWKS NDR_KEYSVC NDR_KRB5PAC NDR_XATTR NDR_SCHANNEL \
        NDR_ROT NDR_DRSBLOBS NDR_SVCCTL NDR_NBT NDR_WINSREPL NDR_SECURITY \
-       NDR_INITSHUTDOWN NDR_DNSSERVER NDR_WINSTATION NDR_IRPC NDR_DCOM NDR_OPENDB \
-       NDR_SASL_HELPERS NDR_NOTIFY
+       NDR_INITSHUTDOWN NDR_DNSSERVER NDR_WINSTATION NDR_IRPC NDR_OPENDB \
+       NDR_SASL_HELPERS NDR_NOTIFY NDR_WINBIND NDR_FRSRPC NDR_FRSAPI NDR_NFS4ACL
 
-[LIBRARY::RPC_NDR_ROT]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_ROT]
 OBJ_FILES = gen_ndr/ndr_rot_c.o
 PUBLIC_DEPENDENCIES = NDR_ROT dcerpc
 
-[LIBRARY::RPC_NDR_AUDIOSRV]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_AUDIOSRV]
 OBJ_FILES = gen_ndr/ndr_audiosrv_c.o
 PUBLIC_DEPENDENCIES = NDR_AUDIOSRV dcerpc
 
-[LIBRARY::RPC_NDR_ECHO]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_ECHO]
 OBJ_FILES = gen_ndr/ndr_echo_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_ECHO
 
-[LIBRARY::RPC_NDR_DSBACKUP]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_DSBACKUP]
 OBJ_FILES = gen_ndr/ndr_dsbackup_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DSBACKUP
 
-[LIBRARY::RPC_NDR_EFS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_EFS]
 OBJ_FILES = gen_ndr/ndr_efs_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_EFS
 
-[LIBRARY::RPC_NDR_LSA]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_LSA]
 OBJ_FILES = gen_ndr/ndr_lsa_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_LSA
 
-[LIBRARY::RPC_NDR_DFS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_DFS]
 OBJ_FILES = gen_ndr/ndr_dfs_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DFS
 
-[LIBRARY::RPC_NDR_DRSUAPI]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_FRSAPI]
+OBJ_FILES = gen_ndr/ndr_frsapi_c.o
+PUBLIC_DEPENDENCIES = dcerpc NDR_FRSAPI
+
+[SUBSYSTEM::RPC_NDR_DRSUAPI]
 OBJ_FILES = gen_ndr/ndr_drsuapi_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DRSUAPI
 
-[LIBRARY::RPC_NDR_POLICYAGENT]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_POLICYAGENT]
 OBJ_FILES = gen_ndr/ndr_policyagent_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_POLICYAGENT
 
-[LIBRARY::RPC_NDR_UNIXINFO]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_UNIXINFO]
 OBJ_FILES = gen_ndr/ndr_unixinfo_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_UNIXINFO
 
-[LIBRARY::RPC_NDR_SAMR]
-VERSION = 0.0.1
-SO_VERSION = 0
+[LIBRARY::dcerpc_samr]
 OBJ_FILES = gen_ndr/ndr_samr_c.o
-PUBLIC_DEPENDENCIES = dcerpc NDR_SAMR
-
-[LIBRARY::RPC_NDR_SPOOLSS]
+PUBLIC_DEPENDENCIES = dcerpc NDR_SAMR 
 VERSION = 0.0.1
 SO_VERSION = 0
+DESCRIPTION = DCE/RPC client library - SAMR
+
+[SUBSYSTEM::RPC_NDR_SPOOLSS]
 OBJ_FILES = gen_ndr/ndr_spoolss_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_SPOOLSS
 
-[LIBRARY::RPC_NDR_WKSSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_WKSSVC]
 OBJ_FILES = gen_ndr/ndr_wkssvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_WKSSVC
 
-[LIBRARY::RPC_NDR_SRVSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_SRVSVC]
 OBJ_FILES = gen_ndr/ndr_srvsvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_SRVSVC
 
-[LIBRARY::RPC_NDR_SVCCTL]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_SVCCTL]
 OBJ_FILES = gen_ndr/ndr_svcctl_c.o
+PUBLIC_HEADERS = gen_ndr/ndr_svcctl_c.h
 PUBLIC_DEPENDENCIES = dcerpc NDR_SVCCTL
 
-[LIBRARY::RPC_NDR_ATSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[LIBRARY::dcerpc_atsvc]
 OBJ_FILES = gen_ndr/ndr_atsvc_c.o
+PUBLIC_HEADERS = gen_ndr/ndr_atsvc_c.h
 PUBLIC_DEPENDENCIES = dcerpc NDR_ATSVC
-
-[LIBRARY::RPC_NDR_EVENTLOG]
 VERSION = 0.0.1
 SO_VERSION = 0
+DESCRIPTION = DCE/RPC client library - ATSVC
+
+[SUBSYSTEM::RPC_NDR_EVENTLOG]
 OBJ_FILES = gen_ndr/ndr_eventlog_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_EVENTLOG
 
-[LIBRARY::RPC_NDR_EPMAPPER]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_EPMAPPER]
 OBJ_FILES = gen_ndr/ndr_epmapper_c.o
-PUBLIC_DEPENDENCIES = NDR_EPMAPPER
+PUBLIC_DEPENDENCIES = NDR_EPMAPPER 
 
-[LIBRARY::RPC_NDR_DBGIDL]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_DBGIDL]
 OBJ_FILES = gen_ndr/ndr_dbgidl_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DBGIDL
 
-[LIBRARY::RPC_NDR_DSSETUP]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_DSSETUP]
 OBJ_FILES = gen_ndr/ndr_dssetup_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_DSSETUP
 
-[LIBRARY::RPC_NDR_MSGSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_MSGSVC]
 OBJ_FILES = gen_ndr/ndr_msgsvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_MSGSVC
 
-[LIBRARY::RPC_NDR_WINS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_WINS]
 OBJ_FILES = gen_ndr/ndr_wins_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_WINS
 
-[LIBRARY::RPC_NDR_WINREG]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_WINREG]
 OBJ_FILES = gen_ndr/ndr_winreg_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_WINREG
 
-[LIBRARY::RPC_NDR_INITSHUTDOWN]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_INITSHUTDOWN]
 OBJ_FILES = gen_ndr/ndr_initshutdown_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_INITSHUTDOWN
 
-[LIBRARY::RPC_NDR_MGMT]
-VERSION = 0.0.1
-SO_VERSION = 0
+[LIBRARY::dcerpc_mgmt]
 OBJ_FILES = gen_ndr/ndr_mgmt_c.o
-PUBLIC_DEPENDENCIES = dcerpc NDR_MGMT
-
-[LIBRARY::RPC_NDR_PROTECTED_STORAGE]
+PRIVATE_DEPENDENCIES = NDR_MGMT
 VERSION = 0.0.1
 SO_VERSION = 0
+DESCRIPTION = DCE/RPC client library - MGMT
+
+[SUBSYSTEM::RPC_NDR_PROTECTED_STORAGE]
 OBJ_FILES = gen_ndr/ndr_protected_storage_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_PROTECTED_STORAGE
 
-[SUBSYSTEM::DCOM_PROXY_DCOM]
-OBJ_FILES = gen_ndr/ndr_dcom_c.o
-PUBLIC_DEPENDENCIES = dcerpc NDR_DCOM
-
-[LIBRARY::RPC_NDR_OXIDRESOLVER]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_OXIDRESOLVER]
 OBJ_FILES = gen_ndr/ndr_oxidresolver_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_OXIDRESOLVER
 
-[LIBRARY::RPC_NDR_REMACT]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_REMACT]
 OBJ_FILES = gen_ndr/ndr_remact_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_REMACT
 
-[LIBRARY::RPC_NDR_WZCSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_WZCSVC]
 OBJ_FILES = gen_ndr/ndr_wzcsvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_WZCSVC
 
-[LIBRARY::RPC_NDR_W32TIME]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_W32TIME]
 OBJ_FILES = gen_ndr/ndr_w32time_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_W32TIME
 
-[LIBRARY::RPC_NDR_SCERPC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_SCERPC]
 OBJ_FILES = gen_ndr/ndr_scerpc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_SCERPC
 
-[LIBRARY::RPC_NDR_NTSVCS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_NTSVCS]
 OBJ_FILES = gen_ndr/ndr_ntsvcs_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_NTSVCS
 
-[LIBRARY::RPC_NDR_NETLOGON]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_NETLOGON]
 OBJ_FILES = gen_ndr/ndr_netlogon_c.o
 PUBLIC_DEPENDENCIES = NDR_NETLOGON
 
-[LIBRARY::RPC_NDR_TRKWKS]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_TRKWKS]
 OBJ_FILES = gen_ndr/ndr_trkwks_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_TRKWKS
 
-[LIBRARY::RPC_NDR_KEYSVC]
-VERSION = 0.0.1
-SO_VERSION = 0
+[SUBSYSTEM::RPC_NDR_KEYSVC]
 OBJ_FILES = gen_ndr/ndr_keysvc_c.o
 PUBLIC_DEPENDENCIES = dcerpc NDR_KEYSVC
 
@@ -596,7 +468,9 @@ PUBLIC_HEADERS = gen_ndr/dcerpc.h gen_ndr/ndr_dcerpc.h
 VERSION = 0.0.1
 SO_VERSION = 0
 DESCRIPTION = DCE/RPC client library
-PUBLIC_HEADERS = rpc/dcerpc.h
+PUBLIC_HEADERS = rpc/dcerpc.h \
+                       gen_ndr/mgmt.h gen_ndr/ndr_mgmt.h gen_ndr/ndr_mgmt_c.h \
+                       gen_ndr/epmapper.h gen_ndr/ndr_epmapper.h gen_ndr/ndr_epmapper_c.h
 PUBLIC_PROTO_HEADER = rpc/dcerpc_proto.h
 OBJ_FILES = \
                rpc/dcerpc.o \
@@ -607,13 +481,15 @@ OBJ_FILES = \
                rpc/dcerpc_smb.o \
                rpc/dcerpc_smb2.o \
                rpc/dcerpc_sock.o \
-               rpc/dcerpc_connect.o
-PUBLIC_DEPENDENCIES = \
-               SOCKET LIBSMB \
-               LIBNDR NDR_DCERPC \
-               RPC_NDR_EPMAPPER \
+               rpc/dcerpc_connect.o \
+               rpc/dcerpc_secondary.o
+PRIVATE_DEPENDENCIES = \
+               samba-socket LIBCLI_RESOLVE LIBCLI_SMB LIBCLI_SMB2 \
+               LIBNDR NDR_DCERPC RPC_NDR_EPMAPPER \
                NDR_SCHANNEL RPC_NDR_NETLOGON \
-               gensec
+               gensec LIBCLI_AUTH LIBCLI_RAW \
+               LP_RESOLVE
+PUBLIC_DEPENDENCIES = CREDENTIALS 
 # End SUBSYSTEM dcerpc
 ################################################
 
@@ -621,96 +497,111 @@ PUBLIC_DEPENDENCIES = \
 INIT_FUNCTION = ejs_init_rpcecho
 OBJ_FILES = gen_ndr/ndr_echo_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_ECHO EJSRPC
+PRIVATE_DEPENDENCIES = dcerpc NDR_ECHO EJSRPC
 
 [MODULE::RPC_EJS_MISC]
 INIT_FUNCTION = ejs_init_misc
 OBJ_FILES = gen_ndr/ndr_misc_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_MISC EJSRPC
+PRIVATE_DEPENDENCIES = dcerpc NDR_MISC EJSRPC
 
 [MODULE::RPC_EJS_SAMR]
 INIT_FUNCTION = ejs_init_samr
 OBJ_FILES = gen_ndr/ndr_samr_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_SAMR EJSRPC RPC_EJS_LSA RPC_EJS_SECURITY RPC_EJS_MISC
+PRIVATE_DEPENDENCIES = dcerpc NDR_SAMR EJSRPC RPC_EJS_LSA RPC_EJS_SECURITY RPC_EJS_MISC
 
 [MODULE::RPC_EJS_SECURITY]
 INIT_FUNCTION = ejs_init_security
 OBJ_FILES = gen_ndr/ndr_security_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_SECURITY EJSRPC
+PRIVATE_DEPENDENCIES = dcerpc NDR_SECURITY EJSRPC
 
 [MODULE::RPC_EJS_LSA]
 INIT_FUNCTION = ejs_init_lsarpc
 OBJ_FILES = gen_ndr/ndr_lsa_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_LSA EJSRPC RPC_EJS_SECURITY RPC_EJS_MISC
+PRIVATE_DEPENDENCIES = dcerpc NDR_LSA EJSRPC RPC_EJS_SECURITY RPC_EJS_MISC
 
 [MODULE::RPC_EJS_DFS]
 INIT_FUNCTION = ejs_init_netdfs
 OBJ_FILES = gen_ndr/ndr_dfs_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_DFS EJSRPC
+PRIVATE_DEPENDENCIES = dcerpc NDR_DFS EJSRPC
 
 [MODULE::RPC_EJS_DRSUAPI]
 INIT_FUNCTION = ejs_init_drsuapi
 OBJ_FILES = gen_ndr/ndr_drsuapi_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_DRSUAPI EJSRPC RPC_EJS_MISC
+PRIVATE_DEPENDENCIES = dcerpc NDR_DRSUAPI EJSRPC RPC_EJS_MISC RPC_EJS_SAMR
 
 [MODULE::RPC_EJS_SPOOLSS]
 INIT_FUNCTION = ejs_init_spoolss
 OBJ_FILES = gen_ndr/ndr_spoolss_ejs.o
 SUBSYSTEM = smbcalls
 ENABLE = NO
-PUBLIC_DEPENDENCIES = dcerpc NDR_SPOOLSS EJSRPC
+PRIVATE_DEPENDENCIES = dcerpc NDR_SPOOLSS EJSRPC
 
 [MODULE::RPC_EJS_WKSSVC]
 INIT_FUNCTION = ejs_init_wkssvc
 OBJ_FILES = gen_ndr/ndr_wkssvc_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_WKSSVC EJSRPC RPC_EJS_SRVSVC RPC_EJS_MISC
+PRIVATE_DEPENDENCIES = dcerpc NDR_WKSSVC EJSRPC RPC_EJS_SRVSVC RPC_EJS_MISC
 
 [MODULE::RPC_EJS_SRVSVC]
 INIT_FUNCTION = ejs_init_srvsvc
 OBJ_FILES = gen_ndr/ndr_srvsvc_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_SRVSVC EJSRPC RPC_EJS_MISC RPC_EJS_SVCCTL
+PRIVATE_DEPENDENCIES = dcerpc NDR_SRVSVC EJSRPC RPC_EJS_MISC RPC_EJS_SVCCTL RPC_EJS_SECURITY
 
 [MODULE::RPC_EJS_EVENTLOG]
 INIT_FUNCTION = ejs_init_eventlog
 OBJ_FILES = gen_ndr/ndr_eventlog_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_EVENTLOG EJSRPC RPC_EJS_MISC
+PRIVATE_DEPENDENCIES = dcerpc NDR_EVENTLOG EJSRPC RPC_EJS_MISC
 
 [MODULE::RPC_EJS_WINREG]
 INIT_FUNCTION = ejs_init_winreg
 OBJ_FILES = gen_ndr/ndr_winreg_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_WINREG EJSRPC RPC_EJS_INITSHUTDOWN \
+PRIVATE_DEPENDENCIES = dcerpc NDR_WINREG EJSRPC RPC_EJS_INITSHUTDOWN \
                                          RPC_EJS_MISC RPC_EJS_SECURITY
 
 [MODULE::RPC_EJS_INITSHUTDOWN]
 INIT_FUNCTION = ejs_init_initshutdown
 OBJ_FILES = gen_ndr/ndr_initshutdown_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_INITSHUTDOWN EJSRPC
+PRIVATE_DEPENDENCIES = dcerpc NDR_INITSHUTDOWN EJSRPC
 
 [MODULE::RPC_EJS_NETLOGON]
 INIT_FUNCTION = ejs_init_netlogon
 OBJ_FILES = gen_ndr/ndr_netlogon_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_NETLOGON EJSRPC RPC_EJS_SAMR RPC_EJS_SECURITY RPC_EJS_MISC
+PRIVATE_DEPENDENCIES = dcerpc NDR_NETLOGON EJSRPC RPC_EJS_SAMR RPC_EJS_SECURITY RPC_EJS_MISC
 
 [MODULE::RPC_EJS_SVCCTL]
 INIT_FUNCTION = ejs_init_svcctl
 OBJ_FILES = gen_ndr/ndr_svcctl_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_SVCCTL EJSRPC RPC_EJS_MISC
+PRIVATE_DEPENDENCIES = dcerpc NDR_SVCCTL EJSRPC RPC_EJS_MISC
 
 [MODULE::RPC_EJS_IRPC]
 INIT_FUNCTION = ejs_init_irpc
 OBJ_FILES = gen_ndr/ndr_irpc_ejs.o
 SUBSYSTEM = smbcalls
-PUBLIC_DEPENDENCIES = dcerpc NDR_IRPC EJSRPC
+PRIVATE_DEPENDENCIES = dcerpc NDR_IRPC EJSRPC
+
+[PYTHON::swig_dcerpc]
+SWIG_FILE = rpc/dcerpc.i
+PUBLIC_DEPENDENCIES = LIBCLI_SMB NDR_MISC LIBSAMBA-UTIL LIBSAMBA-CONFIG dcerpc_samr RPC_NDR_LSA DYNCONFIG
+
+[PYTHON::python_echo]
+OBJ_FILES = gen_ndr/py_echo.o
+PRIVATE_DEPENDENCIES = RPC_NDR_ECHO
+
+[PYTHON::python_winreg]
+OBJ_FILES = gen_ndr/py_winreg.o
+PRIVATE_DEPENDENCIES = RPC_NDR_WINREG python_misc
+
+[PYTHON::python_dcerpc_misc]
+OBJ_FILES = gen_ndr/py_misc.o