macros.pl
上传用户:yuppie_zhu
上传日期:2007-01-08
资源大小:535k
文件大小:1k
源码类别:

编译器/解释器

开发平台:

C/C++

  1. #!/usr/bin/perl
  2. #
  3. # macros.pl   produce macros.c from standard.mac
  4. #
  5. # The Netwide Assembler is copyright (C) 1996 Simon Tatham and
  6. # Julian Hall. All rights reserved. The software is
  7. # redistributable under the licence given in the file "Licence"
  8. # distributed in the NASM archive.
  9. $fname = "standard.mac" unless $fname = $ARGV[0];
  10. open INPUT,$fname || die "unable to open $fnamen";
  11. open OUTPUT,">macros.c" || die "unable to open macros.cn";
  12. print OUTPUT "/* This file auto-generated from standard.mac by macros.pl" .
  13.         " - don't edit it */nnstatic char *stdmac[] = {n";
  14. while (<INPUT>) {
  15.   chomp;
  16.   # this regexp ought to match anything at all, so why bother with
  17.   # a sensible error message ;-)
  18.   die "swirly thing alert" unless /^s*((s*([^"';s]+|"[^"]*"|'[^']*'))*)/;
  19.   $_ = $1;
  20.   s/\/\\/g;
  21.   s/"/\"/g;
  22.   print OUTPUT "    "$_",n" if length > 0;
  23. }
  24. print OUTPUT "    NULLn};n"