svn commit: samba r6836 - in branches/SAMBA_4_0/source/build/pidl: .

jelmer at samba.org jelmer at samba.org
Mon May 16 23:30:34 GMT 2005


Author: jelmer
Date: 2005-05-16 23:30:34 +0000 (Mon, 16 May 2005)
New Revision: 6836

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=6836

Log:
Allow optionally passing in a destination filename for NDR parsers 
and NDR headers

Modified:
   branches/SAMBA_4_0/source/build/pidl/pidl.pl


Changeset:
Modified: branches/SAMBA_4_0/source/build/pidl/pidl.pl
===================================================================
--- branches/SAMBA_4_0/source/build/pidl/pidl.pl	2005-05-16 22:55:25 UTC (rev 6835)
+++ branches/SAMBA_4_0/source/build/pidl/pidl.pl	2005-05-16 23:30:34 UTC (rev 6836)
@@ -34,11 +34,11 @@
 my($opt_parse) = 0;
 my($opt_dump) = 0;
 my($opt_diff) = 0;
-my($opt_header) = 0;
+my($opt_header);
 my($opt_template) = 0;
 my($opt_client) = 0;
 my($opt_server) = 0;
-my($opt_parser) = 0;
+my($opt_parser);
 my($opt_eparser) = 0;
 my($opt_keep) = 0;
 my($opt_swig) = 0;
@@ -59,7 +59,6 @@
     return $idl;
 }
 
-
 #########################################
 # display help text
 sub ShowHelp()
@@ -72,11 +71,11 @@
 
        Options:
          --help                this help page
-         --output OUTNAME      put output in OUTNAME.*
+         --output=OUTNAME      put output in OUTNAME.*
          --parse               parse a idl file to a .pidl file
          --dump                dump a pidl file back to idl
-         --header              create a C NDR header file
-         --parser              create a C NDR parser
+         --header[=OUTFILE]    create a C NDR header file
+         --parser[=OUTFILE]    create a C NDR parser
          --client              create a C NDR client
          --server              create server boilerplate
          --template            print a template for a pipe
@@ -97,10 +96,10 @@
 	    'output=s' => \$opt_output,
 	    'parse' => \$opt_parse,
 	    'dump' => \$opt_dump,
-	    'header' => \$opt_header,
+	    'header:s' => \$opt_header,
 	    'server' => \$opt_server,
 	    'template' => \$opt_template,
-	    'parser' => \$opt_parser,
+	    'parser:s' => \$opt_parser,
         'client' => \$opt_client,
 	    'eparser' => \$opt_eparser,
 	    'diff' => \$opt_diff,
@@ -186,8 +185,12 @@
 		$pidl = ODL::ODL2IDL($pidl);
 	}
 
-	if ($opt_header) {
-		my($header) = util::ChangeExtension($output, ".h");
+	if (defined($opt_header)) {
+		my $header = $opt_header;
+		if ($header eq "") {
+			$header = util::ChangeExtension($output, ".h");
+		}
+
 		util::FileSave($header, NdrHeader::Parse($pidl));
 		if ($opt_eparser) {
 		  my($eparserhdr) = dirname($output) . "/packet-dcerpc-$basename.h";
@@ -248,8 +251,11 @@
 		}
 	}
 
-	if ($opt_parser) {
-		my($parser) = util::ChangeExtension($output, ".c");
+	if (defined($opt_parser)) {
+		my $parser = $opt_parser;
+		if ($parser eq "") {
+			$parser = util::ChangeExtension($output, ".c");
+		}
 		util::FileSave($parser, NdrParser::Parse($pidl, $parser));
 		if($opt_eparser) {
 		  my($eparser) = dirname($output) . "/packet-dcerpc-$basename.c";



More information about the samba-cvs mailing list