diff options
Diffstat (limited to 'source4/build/pidl/pidl.pl')
-rwxr-xr-x | source4/build/pidl/pidl.pl | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/source4/build/pidl/pidl.pl b/source4/build/pidl/pidl.pl index 5c09ca1842..a541bd2717 100755 --- a/source4/build/pidl/pidl.pl +++ b/source4/build/pidl/pidl.pl @@ -145,6 +145,12 @@ sub process_file($) my($eparserhdr) = dirname($output) . "/packet-dcerpc-$basename.h"; IdlEParser::RewriteHeader($pidl, $header, $eparserhdr); } + if ($opt_swig) { + my($filename) = $output; + $filename =~ s/\/ndr_/\//; + $filename = util::ChangeExtension($filename, ".i"); + IdlSwig::RewriteHeader($pidl, $header, $filename); + } } if ($opt_client) { @@ -210,13 +216,12 @@ $dcom my($eparser) = dirname($output) . "/packet-dcerpc-$basename.c"; IdlEParser::RewriteC($pidl, $parser, $eparser); } - } - - if ($opt_swig) { - my($filename) = $output; - $filename =~ s/\/ndr_/\//; - $filename = util::ChangeExtension($filename, ".i"); - util::FileSave($filename, IdlSwig::Parse($pidl)); + if ($opt_swig) { + my($filename) = $output; + $filename =~ s/\/ndr_/\//; + $filename = util::ChangeExtension($filename, ".i"); + IdlSwig::RewriteC($pidl, $parser, $filename); + } } if ($opt_diff) { |