X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=config;h=57a679047a2da9a278dc3bc988c4b06d5413d0f7;hb=107b5e8dc73f0180e2b3f35f8ed031662bbc57fb;hp=1eb34d3f674b42bc3b4fd8952b65e1be98c2890c;hpb=0ef7fd9921eb6018b54793ced6592d15979edbc0;p=moe.git diff --git a/config b/config index 1eb34d3..57a6790 100644 --- a/config +++ b/config @@ -1,8 +1,8 @@ # Configuration file for the MO Evaluator -# (c) 2001--2004 Martin Mares +# (c) 2001--2008 Martin Mares # The root of the whole directory hierarchy -MO_ROOT=/aux/mo +MO_ROOT=/mo # User and group used by the evaluator itself EVAL_USER=mo-eval @@ -14,21 +14,31 @@ EVAL_GROUP=mo-eval # with EVAL_USER privileges, but beware, this is INSECURE. #TEST_USER=${TEST_USER:-mo-test1} TEST_USERS="mo-test1 mo-test2" +TEST_GROUP=mo-test + +# These values are used when creating logins for eval and contestants +# (group id's are from the same range) +EVAL_UID_MIN=65000 +CT_UID_MIN=65100 +CT_UID_MAX=65199 # Sometimes we need to get a list of all contestants (not in the evaluator # itself, but in various auxiliary scripts). In such cases we call mo-get-users, -# which either scans /etc/passwd for users with UID in the following range, -# or uses an explicit list of contestants CT_USER_LIST (usernamefullname). -#CT_UID_MIN=65100 -#CT_UID_MAX=65199 +# which either uses an explicit list of contestants CT_USER_LIST (usernamefullname), +# or (if undefined) scans /etc/passwd for users with UID between CT_UID_MIN and CT_UID_MAX. CT_USER_LIST=userlist +# (optional) Use remote submitting +REMOTE_SUBMIT=1 +REMOTE_SUBMIT_USER=mo-submit +REMOTE_SUBMIT_GROUP=mo-submit + ### Per-task configuration variables (default values, override in per-task config) ## Compiler settings: # Known source file extensions -EXTENSIONS="c C cpp p pas" +EXTENSIONS="c cc C cpp p pas" # Extra compiler flags for C (null, but can be overriden) EXTRA_CFLAGS= @@ -37,16 +47,18 @@ EXTRA_CFLAGS= EXTRA_PFLAGS= # For each source extension, we must give compiler command -COMP_c='/usr/bin/gcc -O2 -g -o $EXE $EXTRA_CFLAGS $SRC' -COMP_C='/usr/bin/g++ -O2 -g -o $EXE $EXTRA_CFLAGS $SRC' -COMP_cpp="$COMP_C" -COMP_p='/usr/bin/fpc -Ci -Cr -g -O2 -So -Sg -o$EXE $EXTRA_PFLAGS $SRC' -COMP_pas="$COMP_p" +COMP=false +EXT_c_COMP='/usr/bin/gcc -std=gnu99 -O2 -g -o $EXE $EXTRA_CFLAGS $SRC -lm' +EXT_C_COMP='/usr/bin/g++ -O2 -g -o $EXE $EXTRA_CFLAGS $SRC -lm' +EXT_cpp_COMP="$EXT_C_COMP" +EXT_cc_COMP="$EXT_C_COMP" +EXT_p_COMP='/usr/bin/fpc -Ci -Cr -Ct -g -O2 -Sg -o$EXE $EXTRA_PFLAGS $SRC' +EXT_pas_COMP="$EXT_p_COMP" # Sandbox options used when compiling -COMP_SANDBOX_OPTS='-m65536 -t60 -w -e' +COMP_SANDBOX_OPTS='-m262144 -w60 -e -i/dev/null' -# Sandbox initializaton commands for compilation +# Sandbox initialization commands for compilation COMP_SANDBOX_INIT= # List of extra files needed for compilation. They are copied to the compiler @@ -87,12 +99,18 @@ SAMPLE_TESTS="0" # Number of points per test POINTS_PER_TEST=1 -# Time limit in seconds +# Time limit in seconds (can be fractional, but beware of noise) TIME_LIMIT=10 # Memory limit in kilobytes MEM_LIMIT=16384 +# Command used for filtering of program output (optional) +# If turned on, program output (*.raw) is ran through this filter and the +# checkers are applied to the output of the filter (*.out). +# Can exit with code 1 if there is a syntax error in the output. +#OUTPUT_FILTER='tr -d '\''\r'\'' <$TDIR/$TEST.raw >$TDIR/$TEST.out' + # Command used to check output syntax (optional) # Returns exit code 1 if syntax is wrong, 0 if correct # fd1 is connect to evaluator log, feel free to log anything @@ -108,14 +126,37 @@ OUTPUT_CHECK='diff -bBu $TDIR/$TEST.ok $TDIR/$TEST.out' # Checker for interactive tasks # Returns exit code 1 if test failed, 0 if passed -# fd1 is connect to evaluator log, feel free to log anything +# fd0 and fd1 are connected to fd1 and fd0 of the program tested # fd2 is an optional one-line verdict # The checker can generate $TDIR/$TEST.pts to assign points irregularly #IC_CHECK='$PDIR/checker $PDIR/$TEST.in $PDIR/$TEST.chk' # Sandbox options used when testing -TEST_SANDBOX_OPTS='-a2 -f -m$MEM_LIMIT -t$TIME_LIMIT' -# -w for wall clock measuring +TEST_SANDBOX_OPTS='-a2 -f -m$MEM_LIMIT -t$TIME_LIMIT $BOX_EXTRAS' + +# Extra options to be overridden in task configuration +BOX_EXTRAS= # Sandbox initialization commands SANDBOX_INIT= + +# Translate FreePascal exit codes to names of well-known runtime errors +FREE_PASCAL_RTE=1 + +# DEBUG: Let `ev' run sample tests, too. +#EV_SAMPLE=1 + +# DEBUG: Run `pedant' on all input data. Set either to `1' or to pedant's options. +#EV_PEDANT=1 + +# DEBUG: Skip checks (useful when generating output files by running model solution) +#EV_NOCHECK=1 + +# DEBUG: Skip output filters (if you suspect they are buggy) +#EV_NOFILTER=1 + +### Variables overrides (most variables can be overridden for specific tests or source extensions): + +#EXT_pas_TIME_LIMIT=100 +#TEST_1_TIME_LIMIT=100 +#EXT_pas_TEST_1_TIME_LIMIT=100