X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=src%2Fssic.pl;h=f9744a95d800ca38d2b46fa13692154a5166a0bd;hb=87f192ab8edd589c14c609d45fad4c73852caadf;hp=80e2071b41db0ccecf3f8ce9402f182009f871de;hpb=ffb38283618851c4697a359824da679780c4564e;p=ssic.git
diff --git a/src/ssic.pl b/src/ssic.pl
old mode 100644
new mode 100755
index 80e2071..f9744a9
--- a/src/ssic.pl
+++ b/src/ssic.pl
@@ -1,4 +1,19 @@
#!/usr/bin/perl
+#
+# Copyright (C) 2013 Patrick "P. J." McDermott
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see .
use strict;
use warnings;
@@ -9,6 +24,7 @@ use CGI::SSI;
sub main
{
my %opts;
+ my $ssi;
my $input;
my $output;
@@ -19,6 +35,7 @@ sub main
if (not GetOptions(\%opts,
"o=s",
"D=s%",
+ "I=s",
"h|help",
"V|version",
)) {
@@ -27,29 +44,34 @@ sub main
}
if (exists($opts{'h'})) {
- help(*STDERR);
+ help(*STDOUT);
exit(0);
}
if (exists($opts{'V'})) {
- version(*STDERR);
+ version(*STDOUT);
exit(0);
}
if ($#ARGV lt 0) {
error(4, "No input files\n");
}
+
+ $ssi = init_compiler($opts{'D'}, $opts{'I'});
+
if (exists($opts{'o'})) {
if ($#ARGV gt 0) {
error(4, "Cannot specify -o with multiple files\n");
}
- compile($ARGV[0], $opts{'o'}, $opts{'D'});
+ compile($ssi, $ARGV[0], $opts{'o'});
} else {
for $input (@ARGV) {
$output = $input;
$output =~ s/\.[^.]+$/.html/;
- compile($input, $output, $opts{'D'});
+ compile($ssi, $input, $output);
}
}
+
+ undef $ssi;
}
sub usage
@@ -66,6 +88,7 @@ sub help
usage($fh);
print("Options:\n");
print(" -D = Set the variable to \n");
+ print(" -I Set the document root to \n");
print(" -o