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 2d98d1438e8267940aff8536044e3d3e622d430e..bc9c4f5d252ea4f88b8ef26d33b6ce1d99efae49 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 d11803fa6156d6d1880a4815923f5378ad73bb3a..1bb57583633f53402c9e83cad2ceeb256f2f4c16 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 100a78e269a79720b56f28d9b49ed47cf5c142cc..09a09bd6647e33eb3678f454b3b34781374e2efd 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.015522 seconds and 4 git commands to generate.