#!/usr/bin/perl

BEGIN { unshift @INC, '.' }

my $vf = shift(@ARGV);

require "$vf";

my $input_file = shift(@ARGV);
my $clean = 0;

if($input_file eq "CLEAN") {
  $clean = 1;
  $input_file = shift(@ARGV);
}

if($#ARGV != -1) {
  print STDERR "Too many arguments for file $input_file (@ARGV ($#ARGV))... Exiting...\n";
  exit 1;
}

my $output_file = $input_file;

foreach (keys %{$reps}) {
  $output_file =~ s/\@$_\@/$$reps{$_}/gi;
}
$output_file =~ s/\.in$//;


if($clean) {
  print STDERR "Removing file $output_file\n";
  system("rm", "-f", $output_file);
}
else {
  print STDERR "Converting from $input_file to $output_file\n";
  open(IN, $input_file);
  open(OUT, "> $output_file");
  while(<IN>) {
    foreach $key (keys %{$reps}) {
      s/\@$key\@/$$reps{$key}/gi;
    }
    print OUT $_;
  }
  close(OUT);
  close(IN);
}


