Update POD
authorMarius Gavrilescu <marius@ieval.ro>
Mon, 3 Feb 2014 10:30:16 +0000 (12:30 +0200)
committerMarius Gavrilescu <marius@ieval.ro>
Mon, 3 Feb 2014 10:30:16 +0000 (12:30 +0200)
gruntmaster-compile
gruntmaster-exec
gruntmasterd

index 2d98d14..bc9c4f5 100755 (executable)
@@ -13,11 +13,78 @@ if ($ret) {
        exit $? >> 8
 } else {
        given ($format){
-               exec 'gcc', qw/-DONLINE_JUDGE -std=gnu11 -Wextra -O2 -o/, $basename, $name when 'C';
-               exec 'g++', qw/-DONLINE_JUDGE -std=gnu++11 -fabi-version=6 -Wextra -O2 -o/, $basename, $name when 'CPP';
+               exec 'gcc', qw/-DONLINE_JUDGE -std=gnu11 -Wall -Wextra -O2 -o/, $basename, $name when 'C';
+               exec 'g++', qw/-DONLINE_JUDGE -std=gnu++11 -fabi-version=6 -Wall -Wextra -O2 -o/, $basename, $name when 'CPP';
                exec 'gmcs', '-d:ONLINE_JUDGE', $name when  'MONO';
                exec 'javac', $name when 'JAVA';
                exec 'fpc', qw/-dONLINE_JUDGE -O2 -n/, $name when 'PASCAL';
                copy $name, $basename when ['PERL', 'PYTHON']
        }
 }
+
+__END__
+
+=encoding utf-8
+
+=head1 NAME
+
+gruntmaster-compile - Gruntmaster 6000 compiler frontend
+
+=head1 SYNOPSIS
+
+  gruntmaster-compile CPP file.cpp
+  gruntmaster-compile JAVA file.java
+
+=head1 DESCRIPTION
+
+gruntmaster-compile is a very simple frontend to various comilers. It takes two arguments: the file format and the file name, and produces a compiled executable. The executable's name is the basename of the input file.
+
+Compile commands for each format:
+
+=over
+
+=item C
+
+  gcc -DONLINE_JUDGE -std=gnu11 -Wall -Wextra -O2 -o $output $input
+
+=item CPP
+
+  g++ -DONLINE_JUDGE -std=gnu11 -fabi-version=6 -Wall -Wextra -O2 -o $output $input
+
+=item MONO
+
+  gmcs -d:ONLINE_JUDGE $input
+
+=item JAVA
+
+  javac $input
+
+=item PASCAL
+
+  fpc -dONLINE_JUDGE -O2 -n $input
+
+=item PERL
+
+  cp $input $output
+
+=item PYTHON
+
+  cp $input $output
+
+=back
+
+=head1 AUTHOR
+
+Marius Gavrilescu E<lt>marius@ieval.roE<gt>
+
+=head1 COPYRIGHT AND LICENSE
+
+Copyright (C) 2014 by Marius Gavrilescu
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+
+=cut
index d11803f..1bb5758 100755 (executable)
@@ -14,3 +14,36 @@ setrlimit RLIMIT_FSIZE, $olimit, $olimit or die $! if $olimit;
 
 %ENV = (ONLINE_JUDGE => 1, PATH => $ENV{PATH}, HOME => $ENV{PATH});
 exec @args;
+
+__END__
+
+=encoding utf-8
+
+=head1 NAME
+
+gruntmaster-exec - Gruntmaster 6000 executor
+
+=head1 SYNOPSIS
+
+  gruntmaster-exec 20000000 111 echo 'Hello, world!'
+
+=head1 DESCRIPTION
+
+gruntmaster-exec is the script used by gruntmasterd to run programs.
+
+The first argument is the address space limit (in bytes), the second argument is the output limit (also in bytes). The rest of the arguments are the command that should be run and its arguments.
+
+gruntmaster-exec sets the resource limits, cleans the environment (except for PATH and HOME), adds the ONLINE_JUDGE environment variable with value 1, and finally C<exec>s the given command.
+
+=head1 AUTHOR
+
+Marius Gavrilescu E<lt>marius@ieval.roE<gt>
+
+=head1 COPYRIGHT AND LICENSE
+
+Copyright (C) 2014 by Marius Gavrilescu
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
index 100a78e..09a09bd 100755 (executable)
@@ -3,3 +3,35 @@ use v5.14;
 use Gruntmaster::Daemon;
 
 Gruntmaster::Daemon->run;
+
+__END__
+
+=head1 NAME
+
+gruntmasterd - Gruntmaster 6000 Online Judge -- daemon
+
+=head1 SYNOPSIS
+
+  gruntmasterd
+
+=head1 DESCRIPTION
+
+Gruntmaster::Daemon is the daemon component of the Gruntmaster 6000 online judge.
+
+gruntmasterd is a shortcut for calling C<< Gruntmaster::Daemon->run >>. It takes no arguments.
+
+=head1 AUTHOR
+
+Marius Gavrilescu E<lt>marius@ieval.roE<gt>
+
+=head1 COPYRIGHT AND LICENSE
+
+Copyright (C) 2014 by Marius Gavrilescu
+
+This library is free software: you can redistribute it and/or modify
+it under the terms of the GNU Affero General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+
+=cut
This page took 0.034177 seconds and 4 git commands to generate.