]> mj.ucw.cz Git - moe.git/blob - config
Reworked the installation machinery.
[moe.git] / config
1 # Configuration file for the MO Evaluator
2 # (c) 2001--2007 Martin Mares <mj@ucw.cz>
3
4 # The root of the whole directory hierarchy
5 if [ -z "$MO_ROOT" ] ; then
6         MO_ROOT=/mo
7 fi
8
9 # User and group used by the evaluator itself
10 EVAL_USER=mo-eval
11 EVAL_GROUP=mo-eval
12
13 # Test user for the sandbox. You can let mo-setup create more test users
14 # and then run several evaluators in parallel, each in its own sandbox.
15 # For testing, you can also leave TEST_USER undefined and run the sandbox
16 # with EVAL_USER privileges, but beware, this is INSECURE.
17 #TEST_USER=${TEST_USER:-mo-test1}
18 TEST_USERS="mo-test1 mo-test2"
19 TEST_GROUP=mo-test
20
21 # These values are used when creating logins for eval and contestants
22 # (group id's are from the same range)
23 EVAL_UID_MIN=65000
24 CT_UID_MIN=65100
25 CT_UID_MAX=65199
26
27 # Sometimes we need to get a list of all contestants (not in the evaluator
28 # itself, but in various auxiliary scripts). In such cases we call mo-get-users,
29 # which either uses an explicit list of contestants CT_USER_LIST (username<tab>fullname),
30 # or (if undefined) scans /etc/passwd for users with UID between CT_UID_MIN and CT_UID_MAX.
31 CT_USER_LIST=userlist
32
33 # (optional) Use remote submitting
34 REMOTE_SUBMIT=1
35 REMOTE_SUBMIT_USER=mo-submit
36 REMOTE_SUBMIT_GROUP=mo-submit
37
38 ### Per-task configuration variables (default values, override in per-task config)
39
40 ## Compiler settings:
41
42 # Known source file extensions
43 EXTENSIONS="c cc C cpp p pas"
44
45 # Extra compiler flags for C (null, but can be overriden)
46 EXTRA_CFLAGS=
47
48 # Extra compiler flags for Pascal
49 EXTRA_PFLAGS=
50
51 # For each source extension, we must give compiler command
52 COMP_c='/usr/bin/gcc -std=gnu99 -O2 -g -o $EXE $EXTRA_CFLAGS $SRC'
53 COMP_C='/usr/bin/g++ -O2 -g -o $EXE $EXTRA_CFLAGS $SRC'
54 COMP_cpp="$COMP_C"
55 COMP_cc="$COMP_C"
56 COMP_p='/usr/bin/fpc -Ci -Cr -Ct -g -O2 -Sg -o$EXE $EXTRA_PFLAGS $SRC'
57 COMP_pas="$COMP_p"
58
59 # Sandbox options used when compiling
60 COMP_SANDBOX_OPTS='-m65536 -t60 -w -e -i/dev/null'
61
62 # Sandbox initialization commands for compilation
63 COMP_SANDBOX_INIT=
64
65 # List of extra files needed for compilation. They are copied to the compiler
66 # sandbox from the problem's directory.
67 #COMP_EXTRAS="extras.h"
68
69 ## Tester settings (most can be overriden in per-test config):
70
71 # The following variables are automatically set by the evaluator:
72 # PROBLEM       name of the problem
73 # HDIR          home directory of the evaluator (i.e., this file is $HDIR/config)
74 # PDIR          directory containing problem data
75 # SDIR          directory containing contestant's solution
76 # TDIR          directory containing testing results
77 # TMPDIR        directory containing temporary files
78 # TEST          name of the current test
79
80 # Task type:
81 # offline       off-line task
82 # interactive   interactive task communicating via stdio with a testing program
83 # open-data     open-data task (i.e., we don't submit program, but output files)
84 TASK_TYPE=file
85
86 # I/O type (IO_TYPE sets defaults for IN_TYPE and OUT_TYPE)
87 # file          input from $PROBLEM.in, output to $PROBLEM.out (possible even for interactive tasks)
88 # stdio         input from stdin, output to stdout
89 # none          no input/output
90 IO_TYPE=stdio
91 #IN_TYPE=stdio
92 #OUT_TYPE=stdio
93
94 # A list of all tests
95 TESTS="1 2 3 4 5 6 7 8 9 10"
96
97 # A list of public tests (executed by submit and check scripts)
98 SAMPLE_TESTS="0"
99
100 # Number of points per test
101 POINTS_PER_TEST=1
102
103 # Time limit in seconds
104 TIME_LIMIT=10
105
106 # Memory limit in kilobytes
107 MEM_LIMIT=16384
108
109 # Command used to check output syntax (optional)
110 # Returns exit code 1 if syntax is wrong, 0 if correct
111 # fd1 is connect to evaluator log, feel free to log anything
112 # fd2 is an optional one-line verdict
113 #SYNTAX_CHECK='grep -v -- - $TDIR/$TEST.out'
114
115 # Command used to check output correctness
116 # Returns exit code 1 if output is incorrect, 0 if correct
117 # fd1 is connect to evaluator log, feel free to log anything
118 # fd2 is an optional one-line verdict
119 # The checker can generate $TDIR/$TEST.pts to assign points irregularly
120 OUTPUT_CHECK='diff -bBu $TDIR/$TEST.ok $TDIR/$TEST.out'
121
122 # Checker for interactive tasks
123 # Returns exit code 1 if test failed, 0 if passed
124 # fd1 is connect to evaluator log, feel free to log anything
125 # fd2 is an optional one-line verdict
126 # The checker can generate $TDIR/$TEST.pts to assign points irregularly
127 #IC_CHECK='$PDIR/checker $PDIR/$TEST.in $PDIR/$TEST.chk'
128
129 # Sandbox options used when testing
130 TEST_SANDBOX_OPTS='-a2 -f -m$MEM_LIMIT -t$TIME_LIMIT'
131 # -w for wall clock measuring
132
133 # Sandbox initialization commands
134 SANDBOX_INIT=