Add SBCL
[gruntmaster-daemon.git] / gruntmaster-compile
index be900b9ac565fc4b2f2ac2b757b8f1710ae126c2..af72ff81f211197c9d15bf5ab3480c509de94566 100755 (executable)
@@ -9,8 +9,8 @@ my ($format, $name) = @ARGV;
 my $basename = fileparse $name, qr/\..*/;
 
 given ($format){
-       exec 'gcc', qw/-DONLINE_JUDGE -std=gnu11 -Wall -Wextra -O2 -o/, $basename, $name when 'C';
-       exec 'g++', qw/-DONLINE_JUDGE -std=gnu++11 -Wall -Wextra -O2 -o/, $basename, $name when 'CPP';
+       exec 'gcc', qw/-DONLINE_JUDGE -std=gnu11 -Wall -Wextra -lm -O2 -o/, $basename, $name when 'C';
+       exec 'g++', qw/-DONLINE_JUDGE -std=gnu++11 -Wall -Wextra -lm -O2 -o/, $basename, $name when 'CPP';
        when ('MONO') {
                system 'gmcs', '-d:ONLINE_JUDGE', $name and die "gmcs failed: errno=$! return=$?";
                rename "$basename.exe", $basename;
@@ -28,6 +28,12 @@ given ($format){
        exec 'go', qw/build -compiler gc/, $name when 'GOLANG';
        exec 'go', qw/build -compiler gccgo/, $name, when 'GCCGO';
        exec 'ghc', qw/-DONLINE_JUDGE -Wall -O2 -o/, $basename, $name when 'HASKELL';
+       when ('SBCL') {
+               system 'sbcl', '--noinform', '--eval', qq/(compile-file "$name")/, '--quit' and die "sbcl failed: errno=$! return=$?";
+               rename "$basename.fasl", $basename;
+               chmod 0755, $basename;
+               exit
+       }
 
        when ([qw/PERL PYTHON/]){
                open IN, '<', $name;
This page took 0.009552 seconds and 4 git commands to generate.