@@ -185,21 +185,22 @@ def run_be_check(
185185 log_path = f"{ output_directory } /logs"
186186 report_path = f"{ output_directory } /outputs/reports"
187187 log_file_path = f"{ log_path } /{ check } _check.log"
188- tmp_dir = f"{ output_directory } /tmp"
189-
190- for d in [log_path , tmp_dir , f"{ output_directory } /outputs" , report_path ]:
191- os .makedirs (d , exist_ok = True )
192188
193189 if check == "LVS" :
194190 be_script = "run_be_checks"
195191 extra_args = "--nooeb"
192+ tmp_dir = f"{ output_directory } /tmp"
196193 elif check == "OEB" :
197194 be_script = "run_oeb_check"
198- extra_args = ""
195+ extra_args = "--noextract" if (Path (report_path ) / f"{ design_name } .gds.spice.gz" ).exists () else ""
196+ tmp_dir = f"{ output_directory } /tmp_oeb"
199197 else :
200198 logging .error (f"Unknown backend check: { check } " )
201199 return False
202200
201+ for d in [log_path , tmp_dir , f"{ output_directory } /outputs" , report_path ]:
202+ os .makedirs (d , exist_ok = True )
203+
203204 be_checks_dir = str (Path (__file__ ).parent / "be_checks" )
204205
205206 be_env : dict = {}
@@ -229,7 +230,7 @@ def run_be_check(
229230
230231 be_env .update (os .environ )
231232 with open (log_file_path , "w" ) as be_log :
232- logging .info (f"Running: { be_script } " )
233+ logging .info (f"Running: { be_script } { extra_args } " )
233234 logging .info (f"{ check } output directory: { output_directory } " )
234235 p = subprocess .run (be_cmd , stderr = be_log , stdout = be_log , env = be_env )
235236 stat = p .returncode
0 commit comments