couch/shaders/makeheaders.pl

28 lines
604 B
Perl

use strict;
use warnings;
use File::Basename;
my ($filename, $outfilename) = @ARGV;
my $headerguard = basename $outfilename;
$headerguard =~ tr/a-z./A-Z_/;
my $constname = basename "$filename";
$constname =~ tr/./_/;
open(my $fin, '<', $filename) or die("Couldn't find $filename");
open my $fout, '>', $outfilename;
print $fout "#ifndef $headerguard \n#define $headerguard\nconst char * $constname = \n";
while(my $line = <$fin>) {
$line =~ s/(\r?\n)/\\n/;
print $fout "\"$line\"\n";
}
print $fout ";\n#endif // $headerguard\n";
close $fin;
close $fout;
print "Generated $outfilename\n";