From 7e400d38ecfdbf2b0ba744b182db14fe286da404 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Mon, 21 Feb 2005 01:16:47 +0000 Subject: r5479: Add ODL input support. The ODL module can convert an ODL structure to an IDL structure so that: - The COM subsystem can use the ODL structure - The DCE/RPC subsystem can use the IDL structure (This used to be commit a339765d99c90c46f29e2bd71a6aa271febb096d) --- source4/build/pidl/pidl.pl | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'source4/build/pidl/pidl.pl') diff --git a/source4/build/pidl/pidl.pl b/source4/build/pidl/pidl.pl index eedbb91d4e..b535215d03 100755 --- a/source4/build/pidl/pidl.pl +++ b/source4/build/pidl/pidl.pl @@ -21,6 +21,7 @@ use client; use proxy; use stub; use ndr; +use odl; use eparser; use validator; use typelist; @@ -40,6 +41,7 @@ my($opt_parser) = 0; my($opt_eparser) = 0; my($opt_keep) = 0; my($opt_swig) = 0; +my($opt_odl) = 0; my($opt_output); my $idl_parser = new idl; @@ -79,6 +81,7 @@ sub ShowHelp() --swig create swig wrapper file --diff run diff on the idl and dumped output --keep keep the .pidl file + --odl accept ODL input \n"; exit(0); } @@ -96,6 +99,7 @@ GetOptions ( 'client' => \$opt_client, 'eparser' => \$opt_eparser, 'diff' => \$opt_diff, + 'odl' => \$opt_odl, 'keep' => \$opt_keep, 'swig' => \$opt_swig ); @@ -109,6 +113,7 @@ sub process_file($) { my $idl_file = shift; my $output; + my $podl; my $pidl; my $basename = basename($idl_file, ".idl"); @@ -143,6 +148,11 @@ sub process_file($) typelist::LoadIdl($pidl); } + if ($opt_odl) { + $podl = $pidl; + $pidl = ODL::ODL2IDL($podl); + } + if ($opt_header) { my($header) = util::ChangeExtension($output, ".h"); util::FileSave($header, IdlHeader::Parse($pidl)); -- cgit