diff options
author | Miodrag Milanović <mmicko@gmail.com> | 2022-11-25 18:12:43 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-25 18:12:43 +0100 |
commit | fd01d9eb8bfd487521c25156a819a0e08a79d56e (patch) | |
tree | be5d65da31df4c7f622b3033191ac0d664ac84b5 /kernel/yosys.cc | |
parent | 448a796e155416884c5fa45465da4e5ecc9f75a4 (diff) | |
parent | 2450e6be2223b4895bfa239364996c882c0229af (diff) | |
download | yosys-fd01d9eb8bfd487521c25156a819a0e08a79d56e.tar.gz yosys-fd01d9eb8bfd487521c25156a819a0e08a79d56e.tar.bz2 yosys-fd01d9eb8bfd487521c25156a819a0e08a79d56e.zip |
Merge pull request #3561 from YosysHQ/tcl_shell
Add TCL interactive shell mode
Diffstat (limited to 'kernel/yosys.cc')
-rw-r--r-- | kernel/yosys.cc | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/kernel/yosys.cc b/kernel/yosys.cc index a56a066fe..4a22d0a7b 100644 --- a/kernel/yosys.cc +++ b/kernel/yosys.cc @@ -740,13 +740,19 @@ static int tcl_yosys_cmd(ClientData, Tcl_Interp *interp, int argc, const char *a return TCL_OK; } +int yosys_tcl_iterp_init(Tcl_Interp *interp) +{ + if (Tcl_Init(interp)!=TCL_OK) + log_warning("Tcl_Init() call failed - %s\n",Tcl_ErrnoMsg(Tcl_GetErrno())); + Tcl_CreateCommand(interp, "yosys", tcl_yosys_cmd, NULL, NULL); + return TCL_OK ; +} + extern Tcl_Interp *yosys_get_tcl_interp() { if (yosys_tcl_interp == NULL) { yosys_tcl_interp = Tcl_CreateInterp(); - if (Tcl_Init(yosys_tcl_interp)!=TCL_OK) - log_warning("Tcl_Init() call failed - %s\n",Tcl_ErrnoMsg(Tcl_GetErrno())); - Tcl_CreateCommand(yosys_tcl_interp, "yosys", tcl_yosys_cmd, NULL, NULL); + yosys_tcl_iterp_init(yosys_tcl_interp); } return yosys_tcl_interp; } |