summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xlibrpc/build_idl.sh55
-rw-r--r--librpc/idl/remact.idl2
-rw-r--r--librpc/idl/scerpc.idl (renamed from source4/librpc/idl/scerpc.idl)0
-rw-r--r--source3/Makefile.in11
-rw-r--r--source3/librpc/gen_ndr/tables.c330
-rw-r--r--source3/samba4.mk4
-rw-r--r--source4/librpc/config.mk222
-rw-r--r--[-rwxr-xr-x]source4/librpc/idl-deps.pl30
-rwxr-xr-xsource4/librpc/scripts/build_idl.sh2
9 files changed, 522 insertions, 134 deletions
diff --git a/librpc/build_idl.sh b/librpc/build_idl.sh
new file mode 100755
index 0000000000..bd0e74e556
--- /dev/null
+++ b/librpc/build_idl.sh
@@ -0,0 +1,55 @@
+#!/bin/sh
+
+if [ "$1" = "--full" ]; then
+ FULL=1
+ shift 1
+else
+ FULL=0
+fi
+
+ARGS="--outputdir $PIDL_OUTPUTDIR --header --ndr-parser --samba3-ndr-server --samba3-ndr-client --server --client --python --dcom-proxy --com-header $PIDL_ARGS --"
+IDL_FILES="$*"
+
+oldpwd=`pwd`
+cd ${srcdir}
+
+[ -d $PIDL_OUTPUTDIR ] || mkdir -p $PIDL_OUTPUTDIR || exit 1
+
+PIDL="$PIDL $ARGS"
+
+if [ $FULL = 1 ]; then
+ echo "Rebuilding all idl files"
+ $PIDL $IDL_FILES || exit 1
+ exit 0
+fi
+
+##
+## Find newer files rather than rebuild all of them
+##
+
+list=""
+for f in ${IDL_FILES}; do
+ basename=`basename $f .idl`
+ ndr="$PIDL_OUTPUTDIR/ndr_$basename.c"
+
+ if [ -f $ndr ]; then
+ if [ "x`find $f -newer $ndr -print`" = "x$f" ]; then
+ list="$list $f"
+ fi
+ else
+ list="$list $f"
+ fi
+done
+
+##
+## generate the ndr stubs
+##
+
+if [ "x$list" != x ]; then
+ # echo "${PIDL} ${list}"
+ $PIDL $list || exit 1
+fi
+
+cd ${oldpwd}
+
+exit 0
diff --git a/librpc/idl/remact.idl b/librpc/idl/remact.idl
index 2165ecfc81..14fd6cedcf 100644
--- a/librpc/idl/remact.idl
+++ b/librpc/idl/remact.idl
@@ -23,7 +23,7 @@ interface IRemoteActivation
const uint32 MODE_GET_CLASS_OBJECT = 0xffffffff;
WERROR RemoteActivation (
- [in] ORPCTHIS this,
+ [in] ORPCTHIS this_object,
[out,ref] ORPCTHAT *that,
[in] GUID Clsid,
[in] [string,charset(UTF16)] uint16 *pwszObjectName,
diff --git a/source4/librpc/idl/scerpc.idl b/librpc/idl/scerpc.idl
index 2c3c4f865f..2c3c4f865f 100644
--- a/source4/librpc/idl/scerpc.idl
+++ b/librpc/idl/scerpc.idl
diff --git a/source3/Makefile.in b/source3/Makefile.in
index d33a719f36..1c77fd4a29 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -1228,16 +1228,7 @@ modules:: SHOWFLAGS $(MODULES)
## Perl IDL Compiler
samba3-idl::
@PIDL_OUTPUTDIR="../librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" PIDL="../pidl/pidl" \
- srcdir="$(srcdir)" ../librpc/build_idl.sh ../librpc/idl/lsa.idl \
- ../librpc/idl/dfs.idl ../librpc/idl/echo.idl ../librpc/idl/winreg.idl \
- ../librpc/idl/initshutdown.idl ../librpc/idl/srvsvc.idl ../librpc/idl/svcctl.idl \
- ../librpc/idl/eventlog.idl ../librpc/idl/wkssvc.idl ../librpc/idl/netlogon.idl \
- ../librpc/idl/epmapper.idl \
- ../librpc/idl/xattr.idl ../librpc/idl/misc.idl ../librpc/idl/samr.idl \
- ../librpc/idl/security.idl ../librpc/idl/dssetup.idl ../librpc/idl/krb5pac.idl \
- ../librpc/idl/ntsvcs.idl ../librpc/idl/drsuapi.idl \
- ../librpc/idl/drsblobs.idl ../librpc/idl/nbt.idl \
- ../librpc/idl/named_pipe_auth.idl
+ srcdir="$(srcdir)" ../librpc/build_idl.sh ../librpc/idl/*.idl
@PIDL_OUTPUTDIR="librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" PIDL="../pidl/pidl" \
srcdir="$(srcdir)" $(srcdir)/script/build_idl.sh \
librpc/idl/messaging.idl librpc/idl/libnetapi.idl librpc/idl/notify.idl
diff --git a/source3/librpc/gen_ndr/tables.c b/source3/librpc/gen_ndr/tables.c
index 09071f96d6..06127b135a 100644
--- a/source3/librpc/gen_ndr/tables.c
+++ b/source3/librpc/gen_ndr/tables.c
@@ -4,51 +4,213 @@
#include "includes.h"
#include "librpc/ndr/libndr.h"
#include "librpc/ndr/ndr_table.h"
+#include "../librpc/gen_ndr/ndr_atsvc_c.h"
+#include "../librpc/gen_ndr/ndr_atsvc.h"
+#include "../librpc/gen_ndr/ndr_audiosrv_c.h"
+#include "../librpc/gen_ndr/ndr_audiosrv.h"
+#include "../librpc/gen_ndr/ndr_browser_c.h"
+#include "../librpc/gen_ndr/ndr_browser.h"
+#include "../librpc/gen_ndr/ndr_dbgidl_c.h"
+#include "../librpc/gen_ndr/ndr_dbgidl.h"
+#include "../librpc/gen_ndr/ndr_dcom_c.h"
+#include "../librpc/gen_ndr/ndr_dcom.h"
#include "../librpc/gen_ndr/ndr_dfs_c.h"
#include "../librpc/gen_ndr/ndr_dfs.h"
+#include "../librpc/gen_ndr/ndr_dnsserver_c.h"
+#include "../librpc/gen_ndr/ndr_dnsserver.h"
#include "../librpc/gen_ndr/ndr_drsblobs_c.h"
#include "../librpc/gen_ndr/ndr_drsblobs.h"
#include "../librpc/gen_ndr/ndr_drsuapi_c.h"
#include "../librpc/gen_ndr/ndr_drsuapi.h"
+#include "../librpc/gen_ndr/ndr_dsbackup_c.h"
+#include "../librpc/gen_ndr/ndr_dsbackup.h"
#include "../librpc/gen_ndr/ndr_dssetup_c.h"
#include "../librpc/gen_ndr/ndr_dssetup.h"
#include "../librpc/gen_ndr/ndr_echo_c.h"
#include "../librpc/gen_ndr/ndr_echo.h"
+#include "../librpc/gen_ndr/ndr_efs_c.h"
+#include "../librpc/gen_ndr/ndr_efs.h"
#include "../librpc/gen_ndr/ndr_epmapper_c.h"
#include "../librpc/gen_ndr/ndr_epmapper.h"
#include "../librpc/gen_ndr/ndr_eventlog_c.h"
#include "../librpc/gen_ndr/ndr_eventlog.h"
+#include "../librpc/gen_ndr/ndr_frsapi_c.h"
+#include "../librpc/gen_ndr/ndr_frsapi.h"
+#include "../librpc/gen_ndr/ndr_frsrpc_c.h"
+#include "../librpc/gen_ndr/ndr_frsrpc.h"
#include "../librpc/gen_ndr/ndr_initshutdown_c.h"
#include "../librpc/gen_ndr/ndr_initshutdown.h"
+#include "../librpc/gen_ndr/ndr_keysvc_c.h"
+#include "../librpc/gen_ndr/ndr_keysvc.h"
#include "../librpc/gen_ndr/ndr_krb5pac_c.h"
#include "../librpc/gen_ndr/ndr_krb5pac.h"
#include "../librpc/gen_ndr/ndr_lsa_c.h"
#include "../librpc/gen_ndr/ndr_lsa.h"
+#include "../librpc/gen_ndr/ndr_mgmt_c.h"
+#include "../librpc/gen_ndr/ndr_mgmt.h"
+#include "../librpc/gen_ndr/ndr_msgsvc_c.h"
+#include "../librpc/gen_ndr/ndr_msgsvc.h"
#include "../librpc/gen_ndr/ndr_netlogon_c.h"
#include "../librpc/gen_ndr/ndr_netlogon.h"
#include "../librpc/gen_ndr/ndr_ntsvcs_c.h"
#include "../librpc/gen_ndr/ndr_ntsvcs.h"
+#include "../librpc/gen_ndr/ndr_oxidresolver_c.h"
+#include "../librpc/gen_ndr/ndr_oxidresolver.h"
+#include "../librpc/gen_ndr/ndr_policyagent_c.h"
+#include "../librpc/gen_ndr/ndr_policyagent.h"
+#include "../librpc/gen_ndr/ndr_protected_storage_c.h"
+#include "../librpc/gen_ndr/ndr_protected_storage.h"
+#include "../librpc/gen_ndr/ndr_remact_c.h"
+#include "../librpc/gen_ndr/ndr_remact.h"
+#include "../librpc/gen_ndr/ndr_rot_c.h"
+#include "../librpc/gen_ndr/ndr_rot.h"
#include "../librpc/gen_ndr/ndr_samr_c.h"
#include "../librpc/gen_ndr/ndr_samr.h"
+#include "../librpc/gen_ndr/ndr_spoolss_c.h"
+#include "../librpc/gen_ndr/ndr_spoolss.h"
#include "../librpc/gen_ndr/ndr_srvsvc_c.h"
#include "../librpc/gen_ndr/ndr_srvsvc.h"
#include "../librpc/gen_ndr/ndr_svcctl_c.h"
#include "../librpc/gen_ndr/ndr_svcctl.h"
+#include "../librpc/gen_ndr/ndr_trkwks_c.h"
+#include "../librpc/gen_ndr/ndr_trkwks.h"
+#include "../librpc/gen_ndr/ndr_unixinfo_c.h"
+#include "../librpc/gen_ndr/ndr_unixinfo.h"
+#include "../librpc/gen_ndr/ndr_w32time_c.h"
+#include "../librpc/gen_ndr/ndr_w32time.h"
#include "../librpc/gen_ndr/ndr_winreg_c.h"
#include "../librpc/gen_ndr/ndr_winreg.h"
#include "../librpc/gen_ndr/ndr_wkssvc_c.h"
#include "../librpc/gen_ndr/ndr_wkssvc.h"
+#include "../librpc/gen_ndr/ndr_wmi_c.h"
+#include "../librpc/gen_ndr/ndr_wmi.h"
+#include "../librpc/gen_ndr/ndr_wzcsvc_c.h"
+#include "../librpc/gen_ndr/ndr_wzcsvc.h"
NTSTATUS ndr_table_register_builtin_tables(void)
{
NTSTATUS status;
+ status = ndr_table_register(&ndr_table_atsvc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_atsvc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_audiosrv);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_audiosrv);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_browser);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_browser);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_dbgidl);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_dbgidl);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_dcom_Unknown);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IUnknown);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IClassFactory);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IRemUnknown);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IClassActivator);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ISCMLocalActivator);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IMachineLocalActivator);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ILocalObjectExporter);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ISystemActivator);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IRemUnknown2);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IDispatch);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IMarshal);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ICoffeeMachine);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IStream);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_dcom_Unknown);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IUnknown);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IClassFactory);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IRemUnknown);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IClassActivator);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ISCMLocalActivator);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IMachineLocalActivator);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ILocalObjectExporter);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ISystemActivator);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IRemUnknown2);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IDispatch);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IMarshal);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ICoffeeMachine);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IStream);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_netdfs);
if (NT_STATUS_IS_ERR(status)) return status;
status = ndr_table_register(&ndr_table_netdfs);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_dnsserver);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_dnsserver);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_drsblobs);
if (NT_STATUS_IS_ERR(status)) return status;
@@ -61,6 +223,18 @@ NTSTATUS ndr_table_register_builtin_tables(void)
status = ndr_table_register(&ndr_table_drsuapi);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_ad_backup);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ad_restore);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ad_backup);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_ad_restore);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_dssetup);
if (NT_STATUS_IS_ERR(status)) return status;
@@ -73,6 +247,12 @@ NTSTATUS ndr_table_register_builtin_tables(void)
status = ndr_table_register(&ndr_table_rpcecho);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_efs);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_efs);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_epmapper);
if (NT_STATUS_IS_ERR(status)) return status;
@@ -85,12 +265,30 @@ NTSTATUS ndr_table_register_builtin_tables(void)
status = ndr_table_register(&ndr_table_eventlog);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_frsapi);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_frsapi);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_frsrpc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_frsrpc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_initshutdown);
if (NT_STATUS_IS_ERR(status)) return status;
status = ndr_table_register(&ndr_table_initshutdown);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_keysvc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_keysvc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_krb5pac);
if (NT_STATUS_IS_ERR(status)) return status;
@@ -103,6 +301,24 @@ NTSTATUS ndr_table_register_builtin_tables(void)
status = ndr_table_register(&ndr_table_lsarpc);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_mgmt);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_mgmt);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_msgsvc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_msgsvcsend);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_msgsvc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_msgsvcsend);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_netlogon);
if (NT_STATUS_IS_ERR(status)) return status;
@@ -115,12 +331,48 @@ NTSTATUS ndr_table_register_builtin_tables(void)
status = ndr_table_register(&ndr_table_ntsvcs);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_IOXIDResolver);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IOXIDResolver);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_policyagent);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_policyagent);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_protected_storage);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_protected_storage);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IRemoteActivation);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IRemoteActivation);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_rot);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_rot);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_samr);
if (NT_STATUS_IS_ERR(status)) return status;
status = ndr_table_register(&ndr_table_samr);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_spoolss);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_spoolss);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_srvsvc);
if (NT_STATUS_IS_ERR(status)) return status;
@@ -133,6 +385,24 @@ NTSTATUS ndr_table_register_builtin_tables(void)
status = ndr_table_register(&ndr_table_svcctl);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_trkwks);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_trkwks);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_unixinfo);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_unixinfo);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_w32time);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_w32time);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
status = ndr_table_register(&ndr_table_winreg);
if (NT_STATUS_IS_ERR(status)) return status;
@@ -145,6 +415,66 @@ NTSTATUS ndr_table_register_builtin_tables(void)
status = ndr_table_register(&ndr_table_wkssvc);
if (NT_STATUS_IS_ERR(status)) return status;
+ status = ndr_table_register(&ndr_table_IWbemClassObject);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemServices);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IEnumWbemClassObject);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemContext);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemLevel1Login);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemWCOSmartEnum);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemFetchSmartEnum);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemCallResult);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemObjectSink);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemClassObject);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemServices);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IEnumWbemClassObject);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemContext);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemLevel1Login);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemWCOSmartEnum);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemFetchSmartEnum);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemCallResult);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_IWbemObjectSink);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_wzcsvc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
+ status = ndr_table_register(&ndr_table_wzcsvc);
+ if (NT_STATUS_IS_ERR(status)) return status;
+
return NT_STATUS_OK;
diff --git a/source3/samba4.mk b/source3/samba4.mk
index 18f7541333..8962d6b5de 100644
--- a/source3/samba4.mk
+++ b/source3/samba4.mk
@@ -36,6 +36,8 @@ SAMBA4_CFLAGS = -I.. -I$(samba4srcdir) -I$(samba4srcdir)/include \
# overrides are not specified first.
ifeq ($(MAKE_VERSION),3.81)
%.o: CFLAGS+=$(FLAGS)
+../librpc/gen_ndr/%_c.o: CFLAGS=$(SAMBA4_CFLAGS)
+../librpc/gen_ndr/py_%.o: CFLAGS=$(SAMBA4_CFLAGS)
$(samba4srcdir)/%.o: CFLAGS=$(SAMBA4_CFLAGS)
$(samba4srcdir)/%.ho: CFLAGS=$(SAMBA4_CFLAGS)
$(heimdalsrcdir)/%.o: CFLAGS=-I$(heimdalbuildsrcdir) $(SAMBA4_CFLAGS) -I$(srcdir)
@@ -45,6 +47,8 @@ $(heimdalsrcdir)/%.o: CFLAGS=-I$(heimdalbuildsrcdir) $(SAMBA4_CFLAGS) -I$(srcdir
$(heimdalsrcdir)/%.ho: CFLAGS=-I$(heimdalbuildsrcdir) $(SAMBA4_CFLAGS) -I$(srcdir)
$(samba4srcdir)/%.o: CFLAGS=$(SAMBA4_CFLAGS)
$(samba4srcdir)/%.ho: CFLAGS=$(SAMBA4_CFLAGS)
+../librpc/gen_ndr/%_c.o: CFLAGS=$(SAMBA4_CFLAGS)
+../librpc/gen_ndr/py_%.o: CFLAGS=$(SAMBA4_CFLAGS)
%.o: CFLAGS+=$(FLAGS)
endif
diff --git a/source4/librpc/config.mk b/source4/librpc/config.mk
index 902312542a..475d14ec4d 100644
--- a/source4/librpc/config.mk
+++ b/source4/librpc/config.mk
@@ -8,7 +8,7 @@ dcerpcsrcdir = $(librpcsrcdir)/rpc
PUBLIC_DEPENDENCIES = LIBSAMBA-ERRORS LIBTALLOC LIBSAMBA-UTIL CHARSET \
LIBSAMBA-HOSTCONFIG
-LIBNDR_OBJ_FILES = $(addprefix $(ndrsrcdir)/, ndr_string.o) ../librpc/ndr/ndr_basic.o ../librpc/ndr/uuid.o ../librpc/ndr/ndr.o $(gen_ndrsrcdir)/ndr_misc.o ../librpc/ndr/ndr_misc.o
+LIBNDR_OBJ_FILES = $(addprefix $(ndrsrcdir)/, ndr_string.o) ../librpc/ndr/ndr_basic.o ../librpc/ndr/uuid.o ../librpc/ndr/ndr.o ../librpc/gen_ndr/ndr_misc.o ../librpc/ndr/ndr_misc.o
PC_FILES += ../librpc/ndr.pc
LIBNDR_VERSION = 0.0.1
@@ -18,7 +18,7 @@ LIBNDR_SOVERSION = 0
################################################
PUBLIC_HEADERS += ../librpc/ndr/libndr.h
-PUBLIC_HEADERS += $(gen_ndrsrcdir)/misc.h $(gen_ndrsrcdir)/ndr_misc.h
+PUBLIC_HEADERS += ../librpc/gen_ndr/misc.h ../librpc/gen_ndr/ndr_misc.h
#################################
# Start BINARY ndrdump
@@ -52,27 +52,27 @@ NDR_COMPRESSION_OBJ_FILES = ../librpc/ndr/ndr_compression.o
[SUBSYSTEM::NDR_SECURITY]
PUBLIC_DEPENDENCIES = LIBNDR LIBSECURITY
-NDR_SECURITY_OBJ_FILES = $(gen_ndrsrcdir)/ndr_security.o \
+NDR_SECURITY_OBJ_FILES = ../librpc/gen_ndr/ndr_security.o \
../librpc/ndr/ndr_sec_helper.o \
$(gen_ndrsrcdir)/ndr_server_id.o
-PUBLIC_HEADERS += $(addprefix $(gen_ndrsrcdir)/, security.h)
+PUBLIC_HEADERS += ../librpc/gen_ndr/security.h)
[SUBSYSTEM::NDR_AUDIOSRV]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_AUDIOSRV_OBJ_FILES = $(gen_ndrsrcdir)/ndr_audiosrv.o
+NDR_AUDIOSRV_OBJ_FILES = ../librpc/gen_ndr/ndr_audiosrv.o
[SUBSYSTEM::NDR_NAMED_PIPE_AUTH]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_NAMED_PIPE_AUTH_OBJ_FILES = $(gen_ndrsrcdir)/ndr_named_pipe_auth.o
+NDR_NAMED_PIPE_AUTH_OBJ_FILES = ../librpc/gen_ndr/ndr_named_pipe_auth.o
[SUBSYSTEM::NDR_DNSSERVER]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_DNSSERVER_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dnsserver.o
+NDR_DNSSERVER_OBJ_FILES = ../librpc/gen_ndr/ndr_dnsserver.o
[SUBSYSTEM::NDR_WINSTATION]
PUBLIC_DEPENDENCIES = LIBNDR
@@ -82,7 +82,7 @@ NDR_WINSTATION_OBJ_FILES = $(gen_ndrsrcdir)/ndr_winstation.o
[SUBSYSTEM::NDR_ECHO]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_ECHO_OBJ_FILES = $(gen_ndrsrcdir)/ndr_echo.o
+NDR_ECHO_OBJ_FILES = ../librpc/gen_ndr/ndr_echo.o
[SUBSYSTEM::NDR_IRPC]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY NDR_NBT
@@ -92,59 +92,59 @@ NDR_IRPC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_irpc.o
[SUBSYSTEM::NDR_DCOM]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY NDR_ORPC
-NDR_DCOM_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dcom.o
+NDR_DCOM_OBJ_FILES = ../librpc/gen_ndr/ndr_dcom.o
[SUBSYSTEM::NDR_WMI]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY NDR_DCOM
-NDR_WMI_OBJ_FILES = $(gen_ndrsrcdir)/ndr_wmi.o ../librpc/ndr/ndr_wmi.o
+NDR_WMI_OBJ_FILES = ../librpc/gen_ndr/ndr_wmi.o ../librpc/ndr/ndr_wmi.o
[SUBSYSTEM::NDR_DSBACKUP]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_DSBACKUP_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dsbackup.o
+NDR_DSBACKUP_OBJ_FILES = ../librpc/gen_ndr/ndr_dsbackup.o
[SUBSYSTEM::NDR_EFS]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
-NDR_EFS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_efs.o
+NDR_EFS_OBJ_FILES = ../librpc/gen_ndr/ndr_efs.o
[SUBSYSTEM::NDR_ROT]
PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC
-NDR_ROT_OBJ_FILES = $(gen_ndrsrcdir)/ndr_rot.o
+NDR_ROT_OBJ_FILES = ../librpc/gen_ndr/ndr_rot.o
[SUBSYSTEM::NDR_LSA]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
-NDR_LSA_OBJ_FILES = $(gen_ndrsrcdir)/ndr_lsa.o
+NDR_LSA_OBJ_FILES = ../librpc/gen_ndr/ndr_lsa.o
-PUBLIC_HEADERS += $(gen_ndrsrcdir)/lsa.h
+PUBLIC_HEADERS += ../librpc/gen_ndr/lsa.h
[SUBSYSTEM::NDR_DFS]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_DFS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dfs.o
+NDR_DFS_OBJ_FILES = ../librpc/gen_ndr/ndr_dfs.o
[SUBSYSTEM::NDR_FRSRPC]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_FRSRPC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_frsrpc.o
+NDR_FRSRPC_OBJ_FILES = ../librpc/gen_ndr/ndr_frsrpc.o
[SUBSYSTEM::NDR_FRSAPI]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_FRSAPI_OBJ_FILES = $(gen_ndrsrcdir)/ndr_frsapi.o
+NDR_FRSAPI_OBJ_FILES = ../librpc/gen_ndr/ndr_frsapi.o
[SUBSYSTEM::NDR_DRSUAPI]
PUBLIC_DEPENDENCIES = LIBNDR NDR_COMPRESSION NDR_SECURITY NDR_SAMR ASN1_UTIL
-NDR_DRSUAPI_OBJ_FILES = $(gen_ndrsrcdir)/ndr_drsuapi.o ../librpc/ndr/ndr_drsuapi.o
+NDR_DRSUAPI_OBJ_FILES = ../librpc/gen_ndr/ndr_drsuapi.o ../librpc/ndr/ndr_drsuapi.o
[SUBSYSTEM::NDR_DRSBLOBS]
PUBLIC_DEPENDENCIES = LIBNDR NDR_DRSUAPI
-NDR_DRSBLOBS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_drsblobs.o ../librpc/ndr/ndr_drsblobs.o
+NDR_DRSBLOBS_OBJ_FILES = ../librpc/gen_ndr/ndr_drsblobs.o ../librpc/ndr/ndr_drsblobs.o
[SUBSYSTEM::NDR_SASL_HELPERS]
PUBLIC_DEPENDENCIES = LIBNDR
@@ -154,17 +154,17 @@ NDR_SASL_HELPERS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_sasl_helpers.o
[SUBSYSTEM::NDR_POLICYAGENT]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_POLICYAGENT_OBJ_FILES = $(gen_ndrsrcdir)/ndr_policyagent.o
+NDR_POLICYAGENT_OBJ_FILES = ../librpc/gen_ndr/ndr_policyagent.o
[SUBSYSTEM::NDR_UNIXINFO]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
-NDR_UNIXINFO_OBJ_FILES = $(gen_ndrsrcdir)/ndr_unixinfo.o
+NDR_UNIXINFO_OBJ_FILES = ../librpc/gen_ndr/ndr_unixinfo.o
[SUBSYSTEM::NDR_SAMR]
PUBLIC_DEPENDENCIES = LIBNDR NDR_LSA NDR_SECURITY
-NDR_SAMR_OBJ_FILES = $(gen_ndrsrcdir)/ndr_samr.o
+NDR_SAMR_OBJ_FILES = ../librpc/gen_ndr/ndr_samr.o
PUBLIC_HEADERS += $(addprefix $(librpcsrcdir)/, gen_ndr/samr.h gen_ndr/ndr_samr.h gen_ndr/ndr_samr_c.h)
@@ -176,7 +176,7 @@ NDR_NFS4ACL_OBJ_FILES = $(gen_ndrsrcdir)/ndr_nfs4acl.o
[SUBSYSTEM::NDR_SPOOLSS]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SPOOLSS_BUF NDR_SECURITY
-NDR_SPOOLSS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_spoolss.o
+NDR_SPOOLSS_OBJ_FILES = ../librpc/gen_ndr/ndr_spoolss.o
[SUBSYSTEM::NDR_SPOOLSS_BUF]
@@ -187,51 +187,51 @@ $(eval $(call proto_header_template,$(ndrsrcdir)/ndr_spoolss_buf.h,$(NDR_SPOOLSS
[SUBSYSTEM::NDR_WKSSVC]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SRVSVC NDR_SECURITY
-NDR_WKSSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_wkssvc.o
+NDR_WKSSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_wkssvc.o
[SUBSYSTEM::NDR_SRVSVC]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SVCCTL NDR_SECURITY
-NDR_SRVSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_srvsvc.o
+NDR_SRVSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_srvsvc.o
[SUBSYSTEM::NDR_SVCCTL]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_SVCCTL_OBJ_FILES = $(gen_ndrsrcdir)/ndr_svcctl.o
+NDR_SVCCTL_OBJ_FILES = ../librpc/gen_ndr/ndr_svcctl.o
PUBLIC_HEADERS += $(addprefix $(librpcsrcdir)/, gen_ndr/ndr_svcctl.h gen_ndr/svcctl.h)
[SUBSYSTEM::NDR_ATSVC]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_ATSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_atsvc.o
+NDR_ATSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_atsvc.o
-PUBLIC_HEADERS += $(addprefix $(librpcsrcdir)/, gen_ndr/atsvc.h gen_ndr/ndr_atsvc.h)
+PUBLIC_HEADERS += $(addprefix ../librpc/gen_ndr, atsvc.h ndr_atsvc.h)
[SUBSYSTEM::NDR_EVENTLOG]
PUBLIC_DEPENDENCIES = LIBNDR NDR_LSA
-NDR_EVENTLOG_OBJ_FILES = $(gen_ndrsrcdir)/ndr_eventlog.o
+NDR_EVENTLOG_OBJ_FILES = ../librpc/gen_ndr/ndr_eventlog.o
[SUBSYSTEM::NDR_EPMAPPER]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_EPMAPPER_OBJ_FILES = $(gen_ndrsrcdir)/ndr_epmapper.o
+NDR_EPMAPPER_OBJ_FILES = ../librpc/gen_ndr/ndr_epmapper.o
[SUBSYSTEM::NDR_DBGIDL]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_DBGIDL_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dbgidl.o
+NDR_DBGIDL_OBJ_FILES = ../librpc/gen_ndr/ndr_dbgidl.o
[SUBSYSTEM::NDR_DSSETUP]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_DSSETUP_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dssetup.o
+NDR_DSSETUP_OBJ_FILES = ../librpc/gen_ndr/ndr_dssetup.o
[SUBSYSTEM::NDR_MSGSVC]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_MSGSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_msgsvc.o
+NDR_MSGSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_msgsvc.o
[SUBSYSTEM::NDR_WINS]
PUBLIC_DEPENDENCIES = LIBNDR
@@ -241,89 +241,89 @@ NDR_WINS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_wins.o
[SUBSYSTEM::NDR_WINREG]
PUBLIC_DEPENDENCIES = LIBNDR NDR_INITSHUTDOWN NDR_SECURITY
-NDR_WINREG_OBJ_FILES = $(gen_ndrsrcdir)/ndr_winreg.o
+NDR_WINREG_OBJ_FILES = ../librpc/gen_ndr/ndr_winreg.o
[SUBSYSTEM::NDR_INITSHUTDOWN]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_INITSHUTDOWN_OBJ_FILES = $(gen_ndrsrcdir)/ndr_initshutdown.o
+NDR_INITSHUTDOWN_OBJ_FILES = ../librpc/gen_ndr/ndr_initshutdown.o
[SUBSYSTEM::NDR_MGMT]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_MGMT_OBJ_FILES = $(gen_ndrsrcdir)/ndr_mgmt.o
+NDR_MGMT_OBJ_FILES = ../librpc/gen_ndr/ndr_mgmt.o
[SUBSYSTEM::NDR_PROTECTED_STORAGE]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_PROTECTED_STORAGE_OBJ_FILES = $(gen_ndrsrcdir)/ndr_protected_storage.o
+NDR_PROTECTED_STORAGE_OBJ_FILES = ../librpc/gen_ndr/ndr_protected_storage.o
[SUBSYSTEM::NDR_ORPC]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_ORPC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_orpc.o ../librpc/ndr/ndr_orpc.o
+NDR_ORPC_OBJ_FILES = ../librpc/gen_ndr/ndr_orpc.o ../librpc/ndr/ndr_orpc.o
[SUBSYSTEM::NDR_OXIDRESOLVER]
PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC
-NDR_OXIDRESOLVER_OBJ_FILES = $(gen_ndrsrcdir)/ndr_oxidresolver.o
+NDR_OXIDRESOLVER_OBJ_FILES = ../librpc/gen_ndr/ndr_oxidresolver.o
[SUBSYSTEM::NDR_REMACT]
PUBLIC_DEPENDENCIES = LIBNDR NDR_ORPC
-NDR_REMACT_OBJ_FILES = $(gen_ndrsrcdir)/ndr_remact.o
+NDR_REMACT_OBJ_FILES = ../librpc/gen_ndr/ndr_remact.o
[SUBSYSTEM::NDR_WZCSVC]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_WZCSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_wzcsvc.o
+NDR_WZCSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_wzcsvc.o
[SUBSYSTEM::NDR_BROWSER]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_BROWSER_OBJ_FILES = $(gen_ndrsrcdir)/ndr_browser.o
+NDR_BROWSER_OBJ_FILES = ../librpc/gen_ndr/ndr_browser.o
[SUBSYSTEM::NDR_W32TIME]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_W32TIME_OBJ_FILES = $(gen_ndrsrcdir)/ndr_w32time.o
+NDR_W32TIME_OBJ_FILES = ../librpc/gen_ndr/ndr_w32time.o
[SUBSYSTEM::NDR_SCERPC]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_SCERPC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_scerpc.o
+NDR_SCERPC_OBJ_FILES = ../librpc/gen_ndr/ndr_scerpc.o
[SUBSYSTEM::NDR_NTSVCS]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_NTSVCS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_ntsvcs.o
+NDR_NTSVCS_OBJ_FILES = ../librpc/gen_ndr/ndr_ntsvcs.o
[SUBSYSTEM::NDR_NETLOGON]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SAMR NDR_LSA NDR_SECURITY
-NDR_NETLOGON_OBJ_FILES = $(gen_ndrsrcdir)/ndr_netlogon.o ../librpc/ndr/ndr_netlogon.o
+NDR_NETLOGON_OBJ_FILES = ../librpc/gen_ndr/ndr_netlogon.o ../librpc/ndr/ndr_netlogon.o
-PUBLIC_HEADERS += $(addprefix $(librpcsrcdir)/, gen_ndr/netlogon.h)
+PUBLIC_HEADERS += ../librpc/gen_ndr/netlogon.h
[SUBSYSTEM::NDR_TRKWKS]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_TRKWKS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_trkwks.o
+NDR_TRKWKS_OBJ_FILES = ../librpc/gen_ndr/ndr_trkwks.o
[SUBSYSTEM::NDR_KEYSVC]
PUBLIC_DEPENDENCIES = LIBNDR
-NDR_KEYSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_keysvc.o
+NDR_KEYSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_keysvc.o
[SUBSYSTEM::NDR_KRB5PAC]
PUBLIC_DEPENDENCIES = LIBNDR NDR_NETLOGON NDR_SECURITY
-NDR_KRB5PAC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_krb5pac.o ../librpc/ndr/ndr_krb5pac.o
+NDR_KRB5PAC_OBJ_FILES = ../librpc/gen_ndr/ndr_krb5pac.o ../librpc/ndr/ndr_krb5pac.o
[SUBSYSTEM::NDR_XATTR]
PUBLIC_DEPENDENCIES = LIBNDR NDR_SECURITY
-NDR_XATTR_OBJ_FILES = $(gen_ndrsrcdir)/ndr_xattr.o
+NDR_XATTR_OBJ_FILES = ../librpc/gen_ndr/ndr_xattr.o
[SUBSYSTEM::NDR_OPENDB]
PUBLIC_DEPENDENCIES = LIBNDR
@@ -343,9 +343,9 @@ NDR_SCHANNEL_OBJ_FILES = $(gen_ndrsrcdir)/ndr_schannel.o
[SUBSYSTEM::NDR_NBT]
PUBLIC_DEPENDENCIES = LIBNDR NDR_NBT_BUF NDR_SVCCTL NDR_SECURITY NDR_SAMR LIBCLI_NDR_NETLOGON
-NDR_NBT_OBJ_FILES = $(gen_ndrsrcdir)/ndr_nbt.o
+NDR_NBT_OBJ_FILES = ../librpc/gen_ndr/ndr_nbt.o
-PUBLIC_HEADERS += $(gen_ndrsrcdir)/nbt.h
+PUBLIC_HEADERS += ../librpc/gen_ndr/nbt.h
[SUBSYSTEM::NDR_NTP_SIGND]
PUBLIC_DEPENDENCIES = LIBNDR
@@ -395,62 +395,62 @@ NDR_TABLE_OBJ_FILES = ../librpc/ndr/ndr_table.o $(gen_ndrsrcdir)/tables.o
[SUBSYSTEM::RPC_NDR_ROT]
PUBLIC_DEPENDENCIES = NDR_ROT dcerpc
-RPC_NDR_ROT_OBJ_FILES = $(gen_ndrsrcdir)/ndr_rot_c.o
+RPC_NDR_ROT_OBJ_FILES = ../librpc/gen_ndr/ndr_rot_c.o
[SUBSYSTEM::RPC_NDR_AUDIOSRV]
PUBLIC_DEPENDENCIES = NDR_AUDIOSRV dcerpc
-RPC_NDR_AUDIOSRV_OBJ_FILES = $(gen_ndrsrcdir)/ndr_audiosrv_c.o
+RPC_NDR_AUDIOSRV_OBJ_FILES = ../librpc/gen_ndr/ndr_audiosrv_c.o
[SUBSYSTEM::RPC_NDR_ECHO]
PUBLIC_DEPENDENCIES = dcerpc NDR_ECHO
-RPC_NDR_ECHO_OBJ_FILES = $(gen_ndrsrcdir)/ndr_echo_c.o
+RPC_NDR_ECHO_OBJ_FILES = ../librpc/gen_ndr/ndr_echo_c.o
[SUBSYSTEM::RPC_NDR_DSBACKUP]
PUBLIC_DEPENDENCIES = dcerpc NDR_DSBACKUP
-RPC_NDR_DSBACKUP_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dsbackup_c.o
+RPC_NDR_DSBACKUP_OBJ_FILES = ../librpc/gen_ndr/ndr_dsbackup_c.o
[SUBSYSTEM::RPC_NDR_EFS]
PUBLIC_DEPENDENCIES = dcerpc NDR_EFS
-RPC_NDR_EFS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_efs_c.o
+RPC_NDR_EFS_OBJ_FILES = ../librpc/gen_ndr/ndr_efs_c.o
[SUBSYSTEM::RPC_NDR_LSA]
PUBLIC_DEPENDENCIES = dcerpc NDR_LSA
-RPC_NDR_LSA_OBJ_FILES = $(gen_ndrsrcdir)/ndr_lsa_c.o
+RPC_NDR_LSA_OBJ_FILES = ../librpc/gen_ndr/ndr_lsa_c.o
[SUBSYSTEM::RPC_NDR_DFS]
PUBLIC_DEPENDENCIES = dcerpc NDR_DFS
-RPC_NDR_DFS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dfs_c.o
+RPC_NDR_DFS_OBJ_FILES = ../librpc/gen_ndr/ndr_dfs_c.o
[SUBSYSTEM::RPC_NDR_FRSAPI]
PUBLIC_DEPENDENCIES = dcerpc NDR_FRSAPI
-RPC_NDR_FRSAPI_OBJ_FILES = $(gen_ndrsrcdir)/ndr_frsapi_c.o
+RPC_NDR_FRSAPI_OBJ_FILES = ../librpc/gen_ndr/ndr_frsapi_c.o
[SUBSYSTEM::RPC_NDR_DRSUAPI]
PUBLIC_DEPENDENCIES = dcerpc NDR_DRSUAPI
-RPC_NDR_DRSUAPI_OBJ_FILES = $(gen_ndrsrcdir)/ndr_drsuapi_c.o
+RPC_NDR_DRSUAPI_OBJ_FILES = ../librpc/gen_ndr/ndr_drsuapi_c.o
[SUBSYSTEM::RPC_NDR_POLICYAGENT]
PUBLIC_DEPENDENCIES = dcerpc NDR_POLICYAGENT
-RPC_NDR_POLICYAGENT_OBJ_FILES = $(gen_ndrsrcdir)/ndr_policyagent_c.o
+RPC_NDR_POLICYAGENT_OBJ_FILES = ../librpc/gen_ndr/ndr_policyagent_c.o
[SUBSYSTEM::RPC_NDR_UNIXINFO]
PUBLIC_DEPENDENCIES = dcerpc NDR_UNIXINFO
-RPC_NDR_UNIXINFO_OBJ_FILES = $(gen_ndrsrcdir)/ndr_unixinfo_c.o
+RPC_NDR_UNIXINFO_OBJ_FILES = ../librpc/gen_ndr/ndr_unixinfo_c.o
[SUBSYSTEM::RPC_NDR_BROWSER]
PUBLIC_DEPENDENCIES = dcerpc NDR_BROWSER
-RPC_NDR_BROWSER_OBJ_FILES = $(gen_ndrsrcdir)/ndr_browser_c.o
+RPC_NDR_BROWSER_OBJ_FILES = ../librpc/gen_ndr/ndr_browser_c.o
[SUBSYSTEM::RPC_NDR_IRPC]
PUBLIC_DEPENDENCIES = dcerpc NDR_IRPC
@@ -464,29 +464,29 @@ PC_FILES += $(librpcsrcdir)/dcerpc_samr.pc
dcerpc_samr_VERSION = 0.0.1
dcerpc_samr_SOVERSION = 0
-dcerpc_samr_OBJ_FILES = $(gen_ndrsrcdir)/ndr_samr_c.o
+dcerpc_samr_OBJ_FILES = ../librpc/gen_ndr/ndr_samr_c.o
[SUBSYSTEM::RPC_NDR_SPOOLSS]
PUBLIC_DEPENDENCIES = dcerpc NDR_SPOOLSS
-RPC_NDR_SPOOLSS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_spoolss_c.o
+RPC_NDR_SPOOLSS_OBJ_FILES = ../librpc/gen_ndr/ndr_spoolss_c.o
[SUBSYSTEM::RPC_NDR_WKSSVC]
PUBLIC_DEPENDENCIES = dcerpc NDR_WKSSVC
-RPC_NDR_WKSSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_wkssvc_c.o
+RPC_NDR_WKSSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_wkssvc_c.o
[SUBSYSTEM::RPC_NDR_SRVSVC]
PUBLIC_DEPENDENCIES = dcerpc NDR_SRVSVC
-RPC_NDR_SRVSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_srvsvc_c.o
+RPC_NDR_SRVSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_srvsvc_c.o
[SUBSYSTEM::RPC_NDR_SVCCTL]
PUBLIC_DEPENDENCIES = dcerpc NDR_SVCCTL
-RPC_NDR_SVCCTL_OBJ_FILES = $(gen_ndrsrcdir)/ndr_svcctl_c.o
+RPC_NDR_SVCCTL_OBJ_FILES = ../librpc/gen_ndr/ndr_svcctl_c.o
-PUBLIC_HEADERS += $(gen_ndrsrcdir)/ndr_svcctl_c.h
+PUBLIC_HEADERS += ../librpc/gen_ndr/ndr_svcctl_c.h
[LIBRARY::dcerpc_atsvc]
PUBLIC_DEPENDENCIES = dcerpc NDR_ATSVC
@@ -494,35 +494,35 @@ PUBLIC_DEPENDENCIES = dcerpc NDR_ATSVC
dcerpc_atsvc_VERSION = 0.0.1
dcerpc_atsvc_SOVERSION = 0
-dcerpc_atsvc_OBJ_FILES = $(gen_ndrsrcdir)/ndr_atsvc_c.o
+dcerpc_atsvc_OBJ_FILES = ../librpc/gen_ndr/ndr_atsvc_c.o
PC_FILES += $(librpcsrcdir)/dcerpc_atsvc.pc
-PUBLIC_HEADERS += $(gen_ndrsrcdir)/ndr_atsvc_c.h
+PUBLIC_HEADERS += ../librpc/gen_ndr/ndr_atsvc_c.h
[SUBSYSTEM::RPC_NDR_EVENTLOG]
PUBLIC_DEPENDENCIES = dcerpc NDR_EVENTLOG
-RPC_NDR_EVENTLOG_OBJ_FILES = $(gen_ndrsrcdir)/ndr_eventlog_c.o
+RPC_NDR_EVENTLOG_OBJ_FILES = ../librpc/gen_ndr/ndr_eventlog_c.o
[SUBSYSTEM::RPC_NDR_EPMAPPER]
PUBLIC_DEPENDENCIES = NDR_EPMAPPER
-RPC_NDR_EPMAPPER_OBJ_FILES = $(gen_ndrsrcdir)/ndr_epmapper_c.o
+RPC_NDR_EPMAPPER_OBJ_FILES = ../librpc/gen_ndr/ndr_epmapper_c.o
[SUBSYSTEM::RPC_NDR_DBGIDL]
PUBLIC_DEPENDENCIES = dcerpc NDR_DBGIDL
-RPC_NDR_DBGIDL_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dbgidl_c.o
+RPC_NDR_DBGIDL_OBJ_FILES = ../librpc/gen_ndr/ndr_dbgidl_c.o
[SUBSYSTEM::RPC_NDR_DSSETUP]
PUBLIC_DEPENDENCIES = dcerpc NDR_DSSETUP
-RPC_NDR_DSSETUP_OBJ_FILES = $(gen_ndrsrcdir)/ndr_dssetup_c.o
+RPC_NDR_DSSETUP_OBJ_FILES = ../librpc/gen_ndr/ndr_dssetup_c.o
[SUBSYSTEM::RPC_NDR_MSGSVC]
PUBLIC_DEPENDENCIES = dcerpc NDR_MSGSVC
-RPC_NDR_MSGSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_msgsvc_c.o
+RPC_NDR_MSGSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_msgsvc_c.o
[SUBSYSTEM::RPC_NDR_WINS]
PUBLIC_DEPENDENCIES = dcerpc NDR_WINS
@@ -532,67 +532,67 @@ RPC_NDR_WINS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_wins_c.o
[SUBSYSTEM::RPC_NDR_WINREG]
PUBLIC_DEPENDENCIES = dcerpc NDR_WINREG
-RPC_NDR_WINREG_OBJ_FILES = $(gen_ndrsrcdir)/ndr_winreg_c.o
+RPC_NDR_WINREG_OBJ_FILES = ../librpc/gen_ndr/ndr_winreg_c.o
[SUBSYSTEM::RPC_NDR_INITSHUTDOWN]
PUBLIC_DEPENDENCIES = dcerpc NDR_INITSHUTDOWN
-RPC_NDR_INITSHUTDOWN_OBJ_FILES = $(gen_ndrsrcdir)/ndr_initshutdown_c.o
+RPC_NDR_INITSHUTDOWN_OBJ_FILES = ../librpc/gen_ndr/ndr_initshutdown_c.o
[SUBSYSTEM::RPC_NDR_MGMT]
PRIVATE_DEPENDENCIES = NDR_MGMT
-RPC_NDR_MGMT_OBJ_FILES = $(gen_ndrsrcdir)/ndr_mgmt_c.o
+RPC_NDR_MGMT_OBJ_FILES = ../librpc/gen_ndr/ndr_mgmt_c.o
[SUBSYSTEM::RPC_NDR_PROTECTED_STORAGE]
PUBLIC_DEPENDENCIES = dcerpc NDR_PROTECTED_STORAGE
-RPC_NDR_PROTECTED_STORAGE_OBJ_FILES = $(gen_ndrsrcdir)/ndr_protected_storage_c.o
+RPC_NDR_PROTECTED_STORAGE_OBJ_FILES = ../librpc/gen_ndr/ndr_protected_storage_c.o
[SUBSYSTEM::RPC_NDR_OXIDRESOLVER]
PUBLIC_DEPENDENCIES = dcerpc NDR_OXIDRESOLVER
-RPC_NDR_OXIDRESOLVER_OBJ_FILES = $(gen_ndrsrcdir)/ndr_oxidresolver_c.o
+RPC_NDR_OXIDRESOLVER_OBJ_FILES = ../librpc/gen_ndr/ndr_oxidresolver_c.o
[SUBSYSTEM::RPC_NDR_REMACT]
PUBLIC_DEPENDENCIES = dcerpc NDR_REMACT
-RPC_NDR_REMACT_OBJ_FILES = $(gen_ndrsrcdir)/ndr_remact_c.o
+RPC_NDR_REMACT_OBJ_FILES = ../librpc/gen_ndr/ndr_remact_c.o
[SUBSYSTEM::RPC_NDR_WZCSVC]
PUBLIC_DEPENDENCIES = dcerpc NDR_WZCSVC
-RPC_NDR_WZCSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_wzcsvc_c.o
+RPC_NDR_WZCSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_wzcsvc_c.o
[SUBSYSTEM::RPC_NDR_W32TIME]
PUBLIC_DEPENDENCIES = dcerpc NDR_W32TIME
-RPC_NDR_W32TIME_OBJ_FILES = $(gen_ndrsrcdir)/ndr_w32time_c.o
+RPC_NDR_W32TIME_OBJ_FILES = ../librpc/gen_ndr/ndr_w32time_c.o
[SUBSYSTEM::RPC_NDR_SCERPC]
PUBLIC_DEPENDENCIES = dcerpc NDR_SCERPC
-RPC_NDR_SCERPC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_scerpc_c.o
+RPC_NDR_SCERPC_OBJ_FILES = ../librpc/gen_ndr/ndr_scerpc_c.o
[SUBSYSTEM::RPC_NDR_NTSVCS]
PUBLIC_DEPENDENCIES = dcerpc NDR_NTSVCS
-RPC_NDR_NTSVCS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_ntsvcs_c.o
+RPC_NDR_NTSVCS_OBJ_FILES = ../librpc/gen_ndr/ndr_ntsvcs_c.o
[SUBSYSTEM::RPC_NDR_NETLOGON]
PUBLIC_DEPENDENCIES = NDR_NETLOGON
-RPC_NDR_NETLOGON_OBJ_FILES = $(gen_ndrsrcdir)/ndr_netlogon_c.o
+RPC_NDR_NETLOGON_OBJ_FILES = ../librpc/gen_ndr/ndr_netlogon_c.o
[SUBSYSTEM::RPC_NDR_TRKWKS]
PUBLIC_DEPENDENCIES = dcerpc NDR_TRKWKS
-RPC_NDR_TRKWKS_OBJ_FILES = $(gen_ndrsrcdir)/ndr_trkwks_c.o
+RPC_NDR_TRKWKS_OBJ_FILES = ../librpc/gen_ndr/ndr_trkwks_c.o
[SUBSYSTEM::RPC_NDR_KEYSVC]
PUBLIC_DEPENDENCIES = dcerpc NDR_KEYSVC
-RPC_NDR_KEYSVC_OBJ_FILES = $(gen_ndrsrcdir)/ndr_keysvc_c.o
+RPC_NDR_KEYSVC_OBJ_FILES = ../librpc/gen_ndr/ndr_keysvc_c.o
[SUBSYSTEM::NDR_DCERPC]
PUBLIC_DEPENDENCIES = LIBNDR
@@ -644,85 +644,85 @@ $(eval $(call python_py_module_template,samba/dcerpc/__init__.py,$(dcerpcsrcdir)
LIBRARY_REALNAME = samba/dcerpc/echo.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = RPC_NDR_ECHO PYTALLOC param swig_credentials python_dcerpc
-python_echo_OBJ_FILES = $(gen_ndrsrcdir)/py_echo.o
+python_echo_OBJ_FILES = ../librpc/gen_ndr/py_echo.o
[PYTHON::python_winreg]
LIBRARY_REALNAME = samba/dcerpc/winreg.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = RPC_NDR_WINREG python_misc PYTALLOC param swig_credentials python_dcerpc_misc python_lsa python_dcerpc
-python_winreg_OBJ_FILES = $(gen_ndrsrcdir)/py_winreg.o
+python_winreg_OBJ_FILES = ../librpc/gen_ndr/py_winreg.o
[PYTHON::python_dcerpc_misc]
LIBRARY_REALNAME = samba/dcerpc/misc.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = PYTALLOC python_dcerpc
-python_dcerpc_misc_OBJ_FILES = $(gen_ndrsrcdir)/py_misc.o
+python_dcerpc_misc_OBJ_FILES = ../librpc/gen_ndr/py_misc.o
[PYTHON::python_initshutdown]
LIBRARY_REALNAME = samba/dcerpc/initshutdown.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = RPC_NDR_INITSHUTDOWN PYTALLOC param swig_credentials python_lsa python_dcerpc_security python_dcerpc
-python_initshutdown_OBJ_FILES = $(gen_ndrsrcdir)/py_initshutdown.o
+python_initshutdown_OBJ_FILES = ../librpc/gen_ndr/py_initshutdown.o
[PYTHON::python_epmapper]
LIBRARY_REALNAME = samba/dcerpc/epmapper.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = dcerpc PYTALLOC param swig_credentials python_dcerpc_misc python_dcerpc
-python_epmapper_OBJ_FILES = $(gen_ndrsrcdir)/py_epmapper.o
+python_epmapper_OBJ_FILES = ../librpc/gen_ndr/py_epmapper.o
[PYTHON::python_mgmt]
LIBRARY_REALNAME = samba/dcerpc/mgmt.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = PYTALLOC param swig_credentials dcerpc python_dcerpc_misc python_dcerpc
-python_mgmt_OBJ_FILES = $(gen_ndrsrcdir)/py_mgmt.o
+python_mgmt_OBJ_FILES = ../librpc/gen_ndr/py_mgmt.o
[PYTHON::python_atsvc]
LIBRARY_REALNAME = samba/dcerpc/atsvc.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = dcerpc_atsvc PYTALLOC param swig_credentials python_dcerpc
-python_atsvc_OBJ_FILES = $(gen_ndrsrcdir)/py_atsvc.o
+python_atsvc_OBJ_FILES = ../librpc/gen_ndr/py_atsvc.o
[PYTHON::python_dcerpc_nbt]
LIBRARY_REALNAME = samba/nbt.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = NDR_NBT PYTALLOC param swig_credentials python_dcerpc python_dcerpc_misc python_dcerpc_security
-python_dcerpc_nbt_OBJ_FILES = $(gen_ndrsrcdir)/py_nbt.o
+python_dcerpc_nbt_OBJ_FILES = ../librpc/gen_ndr/py_nbt.o
[PYTHON::python_samr]
LIBRARY_REALNAME = samba/dcerpc/samr.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = dcerpc_samr PYTALLOC python_dcerpc_security python_lsa python_dcerpc_misc swig_credentials param python_dcerpc
-python_samr_OBJ_FILES = $(gen_ndrsrcdir)/py_samr.o
+python_samr_OBJ_FILES = ../librpc/gen_ndr/py_samr.o
[PYTHON::python_svcctl]
LIBRARY_REALNAME = samba/dcerpc/svcctl.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = RPC_NDR_SVCCTL PYTALLOC param swig_credentials python_dcerpc_misc python_dcerpc
-python_svcctl_OBJ_FILES = $(gen_ndrsrcdir)/py_svcctl.o
+python_svcctl_OBJ_FILES = ../librpc/gen_ndr/py_svcctl.o
[PYTHON::python_lsa]
LIBRARY_REALNAME = samba/dcerpc/lsa.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = RPC_NDR_LSA PYTALLOC param swig_credentials python_dcerpc_security python_dcerpc
-python_lsa_OBJ_FILES = $(gen_ndrsrcdir)/py_lsa.o
+python_lsa_OBJ_FILES = ../librpc/gen_ndr/py_lsa.o
[PYTHON::python_wkssvc]
LIBRARY_REALNAME = samba/dcerpc/wkssvc.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = RPC_NDR_WKSSVC PYTALLOC param swig_credentials python_lsa python_dcerpc_security python_dcerpc
-python_wkssvc_OBJ_FILES = $(gen_ndrsrcdir)/py_wkssvc.o
+python_wkssvc_OBJ_FILES = ../librpc/gen_ndr/py_wkssvc.o
[PYTHON::python_dfs]
LIBRARY_REALNAME = samba/dcerpc/dfs.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = RPC_NDR_DFS PYTALLOC param swig_credentials python_dcerpc_misc python_dcerpc
-python_dfs_OBJ_FILES = $(gen_ndrsrcdir)/py_dfs.o
+python_dfs_OBJ_FILES = ../librpc/gen_ndr/py_dfs.o
[PYTHON::python_unixinfo]
LIBRARY_REALNAME = samba/dcerpc/unixinfo.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = RPC_NDR_UNIXINFO PYTALLOC param swig_credentials python_dcerpc_security python_dcerpc_misc python_dcerpc
-python_unixinfo_OBJ_FILES = $(gen_ndrsrcdir)/py_unixinfo.o
+python_unixinfo_OBJ_FILES = ../librpc/gen_ndr/py_unixinfo.o
[PYTHON::python_irpc]
LIBRARY_REALNAME = samba/irpc.$(SHLIBEXT)
@@ -734,13 +734,13 @@ python_irpc_OBJ_FILES = $(gen_ndrsrcdir)/py_irpc.o
LIBRARY_REALNAME = samba/dcerpc/drsuapi.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = RPC_NDR_DRSUAPI PYTALLOC param swig_credentials python_dcerpc_misc python_dcerpc_security python_dcerpc
-python_drsuapi_OBJ_FILES = $(gen_ndrsrcdir)/py_drsuapi.o
+python_drsuapi_OBJ_FILES = ../librpc/gen_ndr/py_drsuapi.o
[PYTHON::python_dcerpc_security]
LIBRARY_REALNAME = samba/dcerpc/security.$(SHLIBEXT)
PRIVATE_DEPENDENCIES = PYTALLOC python_dcerpc_misc python_dcerpc
-python_dcerpc_security_OBJ_FILES = $(gen_ndrsrcdir)/py_security.o
+python_dcerpc_security_OBJ_FILES = ../librpc/gen_ndr/py_security.o
$(IDL_HEADER_FILES) $(IDL_NDR_PARSE_H_FILES) $(IDL_NDR_PARSE_C_FILES) \
$(IDL_NDR_CLIENT_C_FILES) $(IDL_NDR_CLIENT_H_FILES) \
@@ -748,9 +748,11 @@ $(IDL_HEADER_FILES) $(IDL_NDR_PARSE_H_FILES) $(IDL_NDR_PARSE_C_FILES) \
$(IDL_NDR_PY_C_FILES) $(IDL_NDR_PY_H_FILES): idl
idl_full:: $(pidldir)/lib/Parse/Pidl/IDL.pm $(pidldir)/lib/Parse/Pidl/Expr.pm
- @CPP="$(CPP)" PIDL="$(PIDL)" $(librpcsrcdir)/scripts/build_idl.sh FULL $(librpcsrcdir)/gen_ndr $(IDL_FILES)
+ @PIDL_OUTPUTDIR="../librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" srcdir="$(srcdir)" PIDL="$(PIDL)" ../librpc/build_idl.sh --full ../librpc/idl/*.idl
+ @CPP="$(CPP)" PIDL="$(PIDL)" $(librpcsrcdir)/scripts/build_idl.sh FULL $(librpcsrcdir)/gen_ndr $(librpcsrcdir)/idl/*.idl
idl:: $(pidldir)/lib/Parse/Pidl/IDL.pm $(pidldir)/lib/Parse/Pidl/Expr.pm
- @CPP="$(CPP)" PIDL="$(PIDL)" $(librpcsrcdir)/scripts/build_idl.sh PARTIAL $(librpcsrcdir)/gen_ndr $(IDL_FILES)
+ @PIDL_OUTPUTDIR="../librpc/gen_ndr" PIDL_ARGS="$(PIDL_ARGS)" CPP="$(CPP)" srcdir="$(srcdir)" PIDL="$(PIDL)" ../librpc/build_idl.sh ../librpc/idl/*.idl
+ @CPP="$(CPP)" PIDL="$(PIDL)" $(librpcsrcdir)/scripts/build_idl.sh PARTIAL $(librpcsrcdir)/gen_ndr $(librpcsrcdir)/idl/*.idl
diff --git a/source4/librpc/idl-deps.pl b/source4/librpc/idl-deps.pl
index 856a0e2ded..4d97139fc5 100755..100644
--- a/source4/librpc/idl-deps.pl
+++ b/source4/librpc/idl-deps.pl
@@ -1,5 +1,6 @@
#!/usr/bin/perl
use strict;
+use File::Basename;
sub add($$)
{
@@ -12,20 +13,25 @@ my %vars = ();
foreach(@ARGV) {
my $f = $_;
- my $b = $_; $b =~ s/.*\/(.*?).idl$/$1/;
+ my $b = basename($f);
+
+ $b =~ s/\.idl//;
+
+ my $gen_ndr = dirname($f);
+ $gen_ndr =~ s/\/idl$/\/gen_ndr/;
print "# $f\n";
add("IDL_FILES", $f);
- add("IDL_HEADER_FILES", "\$(librpcsrcdir)/gen_ndr/$b.h");
- add("IDL_NDR_PARSE_H_FILES", "\$(librpcsrcdir)/gen_ndr/ndr_$b.h");
- add("IDL_NDR_PARSE_C_FILES", "\$(librpcsrcdir)/gen_ndr/ndr_$b.c");
- add("IDL_NDR_CLIENT_C_FILES", "\$(librpcsrcdir)/gen_ndr/ndr_$b\_c.c");
- add("IDL_NDR_CLIENT_H_FILES", "\$(librpcsrcdir)/gen_ndr/ndr_$b\_c.h");
- add("IDL_SWIG_FILES", "\$(librpcsrcdir)/gen_ndr/$b.i");
- add("IDL_NDR_SERVER_C_FILES", "\$(librpcsrcdir)/gen_ndr/ndr_$b\_s.c");
- add("IDL_NDR_EJS_C_FILES", "\$(librpcsrcdir)/gen_ndr/ndr_$b\_ejs.c");
- add("IDL_NDR_EJS_H_FILES", "\$(librpcsrcdir)/gen_ndr/ndr_$b\_ejs.h");
- add("IDL_NDR_PY_C_FILES", "\$(librpcsrcdir)/gen_ndr/py_$b.c");
- add("IDL_NDR_PY_H_FILES", "\$(librpcsrcdir)/gen_ndr/py_$b.h");
+ add("IDL_HEADER_FILES", "$gen_ndr/$b.h");
+ add("IDL_NDR_PARSE_H_FILES", "$gen_ndr/ndr_$b.h");
+ add("IDL_NDR_PARSE_C_FILES", "$gen_ndr/ndr_$b.c");
+ add("IDL_NDR_CLIENT_C_FILES", "$gen_ndr/ndr_$b\_c.c");
+ add("IDL_NDR_CLIENT_H_FILES", "$gen_ndr/ndr_$b\_c.h");
+ add("IDL_SWIG_FILES", "$gen_ndr/$b.i");
+ add("IDL_NDR_SERVER_C_FILES", "$gen_ndr/ndr_$b\_s.c");
+ add("IDL_NDR_EJS_C_FILES", "$gen_ndr/ndr_$b\_ejs.c");
+ add("IDL_NDR_EJS_H_FILES", "$gen_ndr/ndr_$b\_ejs.h");
+ add("IDL_NDR_PY_C_FILES", "$gen_ndr/py_$b.c");
+ add("IDL_NDR_PY_H_FILES", "$gen_ndr/py_$b.h");
print "\n";
}
diff --git a/source4/librpc/scripts/build_idl.sh b/source4/librpc/scripts/build_idl.sh
index 230939bb48..714f6d1f6a 100755
--- a/source4/librpc/scripts/build_idl.sh
+++ b/source4/librpc/scripts/build_idl.sh
@@ -7,7 +7,7 @@ IDL_FILES="$*"
[ -d $OUTDIR ] || mkdir -p $OUTDIR || exit 1
-PIDL="$PIDL --outputdir $OUTDIR --header --ndr-parser --server --client --swig --python --dcom-proxy --com-header --includedir ../librpc/idl -- "
+PIDL="$PIDL --outputdir $OUTDIR --header --ndr-parser --server --client --python --dcom-proxy --com-header --includedir ../librpc/idl -- "
if [ x$FULLBUILD = xFULL ]; then
echo Rebuilding all idl files in $IDLDIR