home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1999 mARCH / PCWK3A99.iso / Linux / DDD331 / DDD-3_1_.000 / DDD-3_1_ / ddd-3.1.1 / ddd / vsl2c.sed < prev    next >
Text File  |  1998-04-03  |  2KB  |  56 lines

  1. # $Id: vsl2c.sed,v 1.8 1998/04/03 15:24:02 zeller Exp $ -*- text -*-
  2. #
  3. # vsl2c: Convert VSL file to C strings declarations.
  4.  
  5. # Copyright (C) 1995 Technische Universitaet Braunschweig, Germany.
  6. # Written by Andreas Zeller <zeller@ips.cs.tu-bs.de>.
  7. # This file is part of DDD.
  8. # DDD is free software; you can redistribute it and/or
  9. # modify it under the terms of the GNU General Public
  10. # License as published by the Free Software Foundation; either
  11. # version 2 of the License, or (at your option) any later version.
  12. # DDD is distributed in the hope that it will be useful,
  13. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  15. # See the GNU General Public License for more details.
  16. # You should have received a copy of the GNU General Public
  17. # License along with DDD -- see the file COPYING.
  18. # If not, write to the Free Software Foundation, Inc.,
  19. # 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  20. # DDD is the data display debugger.
  21. # For details, see the DDD World-Wide-Web page, 
  22. # `http://www.cs.tu-bs.de/softech/ddd/',
  23. # or send a mail to the DDD developers <ddd@ips.cs.tu-bs.de>.
  24.  
  25. # Strip C++ comments
  26. s,//[^"]*$,,
  27. s,[^"]*//.*$,,
  28.  
  29. # Add real line info
  30. s/^# *\([1-9][0-9]*\)[^"]*\("[^"]*\)tmp.c".*/#line \1 \2ddd.vsl"/
  31. s/^# *\([1-9][0-9]*\)[^"]*\("[^"]*"\).*/#line \1 \2/
  32. s/^# *\([1-9][0-9]*\)[^"]*$/#line \1/
  33.  
  34. # Remove leading and trailing whitespace
  35. s/^\([^"     ]*\)[     ]*/\1 /g
  36. s/^[     ]*//
  37. s/[     ]*$//
  38.  
  39. # Delete empty lines
  40. # /^[     ]*$/d
  41.  
  42. # Quote strings
  43. s/\\/\\&/g
  44. s/"/\\"/g
  45.  
  46. # Add newlines
  47. s/$/&\\n/
  48.  
  49. # Enclose in double quotes
  50. s/.*/"&"/
  51.