diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2005-02-21 01:16:47 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:10:49 -0500 |
commit | 7e400d38ecfdbf2b0ba744b182db14fe286da404 (patch) | |
tree | 60117d7f2c282e2959e6d199f96bc445871c42fb /source4/build/pidl/pidl.pl | |
parent | e770d5696ee0265661fd6cc2fa24a24b19a0b889 (diff) | |
download | samba-7e400d38ecfdbf2b0ba744b182db14fe286da404.tar.gz samba-7e400d38ecfdbf2b0ba744b182db14fe286da404.tar.bz2 samba-7e400d38ecfdbf2b0ba744b182db14fe286da404.zip |
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)
Diffstat (limited to 'source4/build/pidl/pidl.pl')
-rwxr-xr-x | source4/build/pidl/pidl.pl | 10 |
1 files changed, 10 insertions, 0 deletions
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)); |