@@ -87,14 +87,16 @@ def write_arg_file(arg_file, args):
87
87
raise Exception ('Single quote in argument: ' + arg )
88
88
f .write ("'" + arg .replace ('\\ ' , '/' ) + "'\n " )
89
89
90
- def compile_to_dir (build_dir , srcs , classpath , java_classpath , output ):
90
+ def compile_to_dir (build_dir , srcs , language_version , classpath , java_classpath , output ):
91
91
# Use kotlinc to compile .kt files:
92
92
kotlin_arg_file = build_dir + '/kotlin.args'
93
93
kotlin_args = ['-Werror' ,
94
94
'-opt-in=kotlin.RequiresOptIn' ,
95
95
'-opt-in=org.jetbrains.kotlin.ir.symbols.IrSymbolInternals' ,
96
96
'-d' , output ,
97
97
'-module-name' , 'codeql-kotlin-extractor' ,
98
+ '-Xsuppress-version-warnings' ,
99
+ '-language-version' , language_version ,
98
100
'-no-reflect' , '-no-stdlib' ,
99
101
'-jvm-target' , '1.8' ,
100
102
'-classpath' , classpath ] + srcs
@@ -114,14 +116,14 @@ def compile_to_dir(build_dir, srcs, classpath, java_classpath, output):
114
116
run_process ([javac , '@' + java_arg_file ])
115
117
116
118
117
- def compile_to_jar (build_dir , tmp_src_dir , srcs , classpath , java_classpath , output ):
119
+ def compile_to_jar (build_dir , tmp_src_dir , srcs , language_version , classpath , java_classpath , output ):
118
120
class_dir = build_dir + '/classes'
119
121
120
122
if os .path .exists (class_dir ):
121
123
shutil .rmtree (class_dir )
122
124
os .makedirs (class_dir )
123
125
124
- compile_to_dir (build_dir , srcs , classpath , java_classpath , class_dir )
126
+ compile_to_dir (build_dir , srcs , language_version , classpath , java_classpath , class_dir )
125
127
126
128
run_process (['jar' , 'cf' , output ,
127
129
'-C' , class_dir , '.' ,
@@ -192,14 +194,16 @@ def compile(jars, java_jars, dependency_folder, transform_to_embeddable, output,
192
194
# copy and overwrite files from the version folder to the include folder
193
195
shutil .copytree (d , include_version_folder , dirs_exist_ok = True )
194
196
197
+ language_version = str (parsed_current_version [0 ]) + '.' + str (parsed_current_version [1 ])
198
+
195
199
# remove all version folders:
196
200
shutil .rmtree (tmp_src_dir + '/main/kotlin/utils/versions' )
197
201
198
202
srcs = find_sources (tmp_src_dir )
199
203
200
204
transform_to_embeddable (srcs )
201
205
202
- compile_to_jar (build_dir , tmp_src_dir , srcs , classpath , java_classpath , output )
206
+ compile_to_jar (build_dir , tmp_src_dir , srcs , language_version , classpath , java_classpath , output )
203
207
204
208
shutil .rmtree (tmp_src_dir )
205
209
0 commit comments