X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=config;h=052e9991b16c46cb1cd78c1409e6a9a34d06e28c;hb=6cba59728737842b32077102280642d269b78d90;hp=e7a1f2bbbec9c120b4fa2784ff58d3b2baf5f754;hpb=4ea5a509cea333f6bd6c8226a6e71fa114a95a47;p=moe.git diff --git a/config b/config index e7a1f2b..052e999 100644 --- a/config +++ b/config @@ -1,5 +1,5 @@ # Configuration file for the MO Evaluator -# (c) 2001--2007 Martin Mares +# (c) 2001--2008 Martin Mares # The root of the whole directory hierarchy MO_ROOT=/mo @@ -33,26 +33,16 @@ 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: +### Programming language settings # Known source file extensions EXTENSIONS="c cc C cpp p pas" -# Extra compiler flags for C (null, but can be overriden) -EXTRA_CFLAGS= - -# Extra compiler flags for Pascal -EXTRA_PFLAGS= +## Variables which control compilation and execution +## (see below for values for individual languages) -# For each source extension, we must give compiler command -COMP_c='/usr/bin/gcc -std=gnu99 -O2 -g -o $EXE $EXTRA_CFLAGS $SRC -lm' -COMP_C='/usr/bin/g++ -O2 -g -o $EXE $EXTRA_CFLAGS $SRC -lm' -COMP_cpp="$COMP_C" -COMP_cc="$COMP_C" -COMP_p='/usr/bin/fpc -Ci -Cr -Ct -g -O2 -Sg -o$EXE $EXTRA_PFLAGS $SRC' -COMP_pas="$COMP_p" +# Command used to run the compiler +COMP=false # Sandbox options used when compiling COMP_SANDBOX_OPTS='-m262144 -w60 -e -i/dev/null' @@ -60,6 +50,31 @@ COMP_SANDBOX_OPTS='-m262144 -w60 -e -i/dev/null' # Sandbox initialization commands for compilation COMP_SANDBOX_INIT= +# Translation of runtime errors: a function, which receives the exit code as an argument and +# if it is recognized as a runtime error code, it prints its name to the standard output. +EXIT_CODE_HOOK= + +## Settings for individual languages + +# C +EXT_c_COMP='/usr/bin/gcc -std=gnu99 -O2 -g -o $EXE $EXTRA_CFLAGS $SRC -lm' +EXTRA_CFLAGS= + +# C++ +EXT_C_COMP='/usr/bin/g++ -O2 -g -o $EXE $EXTRA_CXXFLAGS $SRC -lm' +EXT_cpp_COMP="$EXT_C_COMP" +EXT_cc_COMP="$EXT_C_COMP" +EXTRA_CXXFLAGS= + +# Pascal +EXT_p_COMP='/usr/bin/fpc -Ci -Cr -Ct -g -O2 -Sg -o$EXE $EXTRA_PFLAGS $SRC' +EXT_pas_COMP="$EXT_p_COMP" +EXTRA_PFLAGS= +EXT_p_EXIT_CODE_HOOK=fpc-exit-code +EXT_pas_EXIT_CODE_HOOK=fpc-exit-code + +### Per-task configuration variables (default values, override in per-task config) + # List of extra files needed for compilation. They are copied to the compiler # sandbox from the problem's directory. #COMP_EXTRAS="extras.h" @@ -131,18 +146,20 @@ OUTPUT_CHECK='diff -bBu $TDIR/$TEST.ok $TDIR/$TEST.out' #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' +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 +### Debugging and testing # DEBUG: Let `ev' run sample tests, too. #EV_SAMPLE=1 -# DEBUG: Run `pedant' on all input data +# 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) @@ -150,3 +167,9 @@ FREE_PASCAL_RTE=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