:
eval 'exec perl -S $0 ${1+"$@"}'
    if $running_under_some_shell;
##
##  asc2c -- convert an ASCII file into a statically initialised
##           C array of characters
##
##  Copyright (c) Ralf S. Engelschall, All Rights Reserved.
##

$filein  = $ARGV[0];
$fileout = $ARGV[1];
$name    = $ARGV[2];

if ($#ARGV ne 2) {
	printf(STDERR "Usage: $0 ascii-file c-file buffer-name\n");
    exit(1);
}

open(IN,   "<$filein");
#open(OUTH, ">$fileout.h");
open(OUTC, ">$fileout.c");

print OUTC "/* $filein.c -- automatically generated by asc2c */\n";
print OUTC "\n";
print OUTC "char *$name = \\\n";

while (<IN>) {
	#next if m|^[ \t]*$|;
	#next if m|^[ \t]*#.*$|;
	s|\n$||;
	s|\\|\\\\|g;
	s|\"|\\\"|g;
	s|^|\"|;
	s|$|\\n\"\\|;
	printf(OUTC "%s\n", $_);
}

print OUTC ";\n";
print OUTC "\n";
print OUTC "/*EOF*/\n";

$filename = "$fileout.h";
$filename =~ tr|a-z.|A-Z_|;

#print OUTH "/* $fileout.h -- automatically generated by asc2c */\n";
#print OUTH "#ifndef __$filename\n";
#print OUTH "#define __$filename\n";
#print OUTH "\n";
#print OUTH "extern char *$name;\n";
#print OUTH "\n";
#print OUTH "#endif /* __$filename */\n";

close(IN);
#close(OUTH);
close(OUTC);

##EOF##
