22 save_waveform: bool =
False,
23 run_stdout_callback: Optional[Callable[[str],
None]] =
None,
24 run_stderr_callback: Optional[Callable[[str],
None]] =
None,
25 compile_stdout_callback: Optional[Callable[[str],
None]] =
None,
26 compile_stderr_callback: Optional[Callable[[str],
None]] =
None,
27 make_default_logs: bool =
True,
28 macro_definitions: Optional[Dict[str, str]] =
None,
30 suppressed_questa_errors: Optional[List[int]] =
None):
35 save_waveform=save_waveform,
36 run_stdout_callback=run_stdout_callback,
37 run_stderr_callback=run_stderr_callback,
38 compile_stdout_callback=compile_stdout_callback,
39 compile_stderr_callback=compile_stderr_callback,
40 make_default_logs=make_default_logs,
41 macro_definitions=macro_definitions,
133 server_only: bool =
False) -> int:
134 """Override the Simulator.run() to add a link in the run directory (to
135 the work directory) before running vsim the usual way."""
140 workDir = self.
run_dir /
"work"
141 compiledWork = Path(os.getcwd()) /
"work"
142 if not workDir.exists()
and compiledWork.exists():
146 import subprocess
as _sp
148 [
"cmd",
"/c",
"mklink",
"/J",
156 os.symlink(compiledWork, workDir, target_is_directory=
True)
159 return super().
run(inner_command, gui, server_only=server_only)