Skip to content

Commit 239cc9f

Browse files
committed
core: init draft langs
1 parent 828ba55 commit 239cc9f

File tree

1 file changed

+51
-52
lines changed

1 file changed

+51
-52
lines changed

packages/hydrooj/setting.yaml

Lines changed: 51 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -59,43 +59,33 @@ langs:
5959
display: C
6060
version: /usr/bin/gcc --version
6161
cc:
62-
compile: /usr/bin/g++ -Wall -std=c++14 -o foo foo.cc -lm -I/include
62+
compile: /usr/bin/g++ -Wall {modifier:std} -o foo foo.cc -lm {modifier:optimize} -I/include
6363
code_file: foo.cc
6464
highlight: cpp
6565
monaco: cpp
6666
display: C++
6767
address_space_limit: true
6868
process_limit: 1
6969
version: /usr/bin/g++ --version
70-
cc.cc98:
71-
compile: /usr/bin/g++ -Wall -std=c++98 -o foo foo.cc -lm -I/include
72-
display: C++98
73-
cc.cc98o2:
74-
compile: /usr/bin/g++ -Wall -std=c++98 -o foo foo.cc -lm -O2 -I/include
75-
display: C++98(O2)
76-
cc.cc11:
77-
compile: /usr/bin/g++ -Wall -std=c++11 -o foo foo.cc -lm -I/include
78-
display: C++11
79-
cc.cc11o2:
80-
compile: /usr/bin/g++ -Wall -std=c++11 -o foo foo.cc -lm -O2 -I/include
81-
display: C++11(O2)
82-
cc.cc14:
83-
display: C++14
84-
cc.cc14o2:
85-
compile: /usr/bin/g++ -Wall -std=c++14 -o foo foo.cc -lm -O2 -I/include
86-
display: C++14(O2)
87-
cc.cc17:
88-
compile: /usr/bin/g++ -Wall -std=c++17 -o foo foo.cc -lm -I/include
89-
display: C++17
90-
cc.cc17o2:
91-
compile: /usr/bin/g++ -Wall -std=c++17 -o foo foo.cc -lm -O2 -I/include
92-
display: C++17(O2)
93-
cc.cc20:
94-
compile: /usr/bin/g++ -Wall -std=c++20 -o foo foo.cc -lm -I/include
95-
display: C++20
96-
cc.cc20o2:
97-
compile: /usr/bin/g++ -Wall -std=c++20 -o foo foo.cc -lm -O2 -I/include
98-
display: C++20(O2)
70+
modifier:
71+
optimize:
72+
name: Optimize
73+
type: single
74+
values:
75+
None: ''
76+
O2: -O2
77+
O3: -O3
78+
Ofast: -Ofast
79+
std:
80+
name: Standard
81+
type: single
82+
values:
83+
C++98: -std=c++98
84+
C++11: -std=c++11
85+
C++14: -std=c++14
86+
C++17: -std=c++17
87+
C++20: -std=c++20
88+
C++23: -std=c++23
9989
pas:
10090
compile: /usr/bin/fpc -O2 -o/w/foo foo.pas
10191
highlight: pascal
@@ -113,39 +103,48 @@ langs:
113103
compile_time_limit: 30000
114104
version: /usr/bin/javac -version
115105
kt:
116-
compile: echo "Invalid language selection"
106+
compile: ekotlinc -include-runtime -d foo.jar foo.kt
117107
code_file: foo.kt
118-
execute: echo "Invalid language selection"
108+
execute: /usr/bin/java -jar foo.jar
109+
target: foo.jar
110+
version: /usr/bin/kotlinc -version
111+
compile_time_limit: 30000
119112
time_limit_rate: 2
120113
highlight: kotlin
121114
monaco: kotlin
122115
display: Kotlin
123-
kt.jvm:
124-
compile: kotlinc -include-runtime -d foo.jar foo.kt
125-
target: foo.jar
126-
execute: /usr/bin/java -jar foo.jar
127-
display: Kotlin/JVM
128-
compile_time_limit: 30000
129-
version: /usr/bin/kotlinc -version
116+
modifier:
117+
version:
118+
name: Runtime
119+
type: single
120+
values:
121+
JVM: jvm
122+
Native:
123+
value: native
124+
disabled: true
130125
py:
131126
compile: /usr/bin/python -c "import py_compile; py_compile.compile('/w/foo.py', '/w/foo', doraise=True)"
132127
code_file: foo.py
133128
execute: /usr/bin/python foo
129+
version: /usr/bin/{modifier:version} --version
134130
highlight: python
135131
display: Python
136-
py.py2:
137-
display: Python 2
138-
disabled: true
139-
py.py3:
140-
compile: /usr/bin/python3 -c "import py_compile; py_compile.compile('/w/foo.py', '/w/foo', doraise=True)"
141-
execute: /usr/bin/python3 foo
142-
display: Python 3
143-
version: /usr/bin/python3 --version
144-
py.pypy3:
145-
compile: /bin/bash -c "/usr/bin/pypy3 -c \"import py_compile; py_compile.compile('/w/foo.py', '/w/foo', doraise=True)\" && mv foo.py foo"
146-
execute: /bin/bash -c 'mv foo foo.py && /usr/bin/pypy3 -B foo.py'
147-
display: PyPy3
148-
version: /usr/bin/pypy3 --version
132+
modifier:
133+
version:
134+
name: Version
135+
type: single
136+
values:
137+
Python2:
138+
value: python2
139+
disabled: true
140+
Python 3:
141+
value: python3
142+
compile: /usr/bin/python3 -c "import py_compile; py_compile.compile('/w/foo.py', '/w/foo', doraise=True)"
143+
execute: /usr/bin/python3 foo
144+
PyPy3:
145+
value: pypy3
146+
compile: /bin/bash -c "/usr/bin/pypy3 -c \"import py_compile; py_compile.compile('/w/foo.py', '/w/foo', doraise=True)\" && mv foo.py foo"
147+
execute: /bin/bash -c 'mv foo foo.py && /usr/bin/pypy3 -B foo.py'
149148
php:
150149
execute: /usr/bin/php foo.php
151150
display: PHP

0 commit comments

Comments
 (0)