diff lib-src/make-mswin-unicode.pl @ 778:2923009caf47

[xemacs-hg @ 2002-03-16 10:38:59 by ben] cm.c, file-coding.c: fix warnings. .cvsignore: Those pesky *.tmp files. mule\arabic.el, mule\canna-leim.el, mule\china-util.el, mule\chinese.el, mule\cyril-util.el, mule\cyrillic.el, mule\devan-util.el, mule\devanagari.el, mule\english.el, mule\ethio-util.el, mule\ethiopic.el, mule\european.el, mule\greek.el, mule\hebrew.el, mule\indian.el, mule\japan-util.el, mule\japanese.el, mule\korea-util.el, mule\korean.el, mule\lao-util.el, mule\lao.el, mule\misc-lang.el, mule\mule-charset.el, mule\mule-cmds.el, mule\thai-util.el, mule\thai.el, mule\tibet-util.el, mule\tibetan.el, mule\viet-util.el, mule\vietnamese.el, unicode.el: Fix lots of warnings. Sync up some files to FSF 21.1. Copy over all charset definitions from FSF 21.1, convert them to our format, and stick them in the relevant files. Eventually we will actually be able to dump these files (though they may not quite work). autoload.el: Support defun*, defmacro*. mule/mule-composite.el, mule/mule-composite-stub.el: New file, stubs for nonexistent composition funs/vars. mule/viet-chars.el, dumped-lisp.el: Account for these changes. font.el, mouse.el, msw-font-menu.el, printer.el, startup.el: fix warnings.
author ben
date Sat, 16 Mar 2002 10:39:19 +0000
parents 943eaba38521
children a5954632b187
line wrap: on
line diff
--- a/lib-src/make-mswin-unicode.pl	Fri Mar 15 11:00:56 2002 +0000
+++ b/lib-src/make-mswin-unicode.pl	Sat Mar 16 10:39:19 2002 +0000
@@ -56,7 +56,6 @@
 occur in a single file.  Processed lines begin with a command word,
 followed by one or more args (no quotes are necessary for spaces):
 
-dir sets the directory for include files.
 file specifies a file to start reading from.
 yes indicates a function to be automatically Unicode-encapsulated.
    (All parameters either need no special processing or are LPTSTR or
@@ -88,6 +87,7 @@
 	     \%options,
 	     'c-output=s',
 	     'h-output=s',
+             'includedir=s',
 	     'help',
 	    );
 
@@ -96,7 +96,15 @@
 my $in_script;
 my $slurp;
 
-my ($cout, $hout) = ($options{"c-output"}, $options{"h-output"});
+my ($cout, $hout, $dir) = ($options{"c-output"},
+                          $options{"h-output"},
+                          $options{"includedir"});
+if (!$dir)
+  {
+    $dir=$ENV{"MSVCDIR"} or die "Environment variable MSVCDIR undefined - run vcvars32.bat from your MSVC installation";
+    $dir.='/include';
+  }
+die "Can't find MSVC include files in \"$dir\"" unless (-f $dir.'/WINDOWS.H');
 
 open (COUT, ">$cout") or die "Can't open C output file $cout: $!";
 open (HOUT, ">$hout") or die "Can't open C output file $hout: $!";
@@ -144,14 +152,10 @@
       {
 	next if (m!^//!);
 	next if (/^[ \t]*$/);
-	if (/(dir|file|yes|soon|no|skip|split|begin-bracket|end-bracket)(?: (.*))?/)
+	if (/(file|yes|soon|no|skip|split|begin-bracket|end-bracket)(?: (.*))?/)
 	  {
 	    my ($command, $parms) = ($1, $2);
-	    if ($command eq "dir")
-	      {
-		chdir $parms or die "Can't chdir to $parms: $!";
-	      }
-	    elsif ($command eq "file")
+	    if ($command eq "file")
 	      {
 		$current_file = $parms;
 	      }
@@ -400,7 +404,7 @@
 sub FileContents
 {
   local $/ = undef;
-  open (FILE, "< $_[0]") or die "$_[0]: $!";
+  open (FILE, "< $dir/$_[0]") or die "$dir/$_[0]: $!";
   my $retval = scalar <FILE>;
   # must hack away CRLF junk.
   $retval =~ s/\r\n/\n/g;