Use same tcl initialization as in OpenROAD

In https://github.com/The-OpenROAD-Project/OpenROAD/pull/10041
we have a new way to initializa the tcl subsystem which
will allow to be entirely independent of separate files
once we can switch to Tcl9.

Signed-off-by: Henner Zeller <h.zeller@acm.org>
This commit is contained in:
Henner Zeller 2026-04-05 08:53:54 +02:00
parent 3d2bcb1dd1
commit 385f4fdb79
2 changed files with 12 additions and 1 deletions

2
BUILD
View File

@ -272,7 +272,6 @@ cc_binary(
"app/Main.cc",
":StaApp",
":StaTclInitVar",
"//bazel:runfiles",
],
copts = [
"-Wno-error",
@ -297,6 +296,7 @@ cc_binary(
visibility = ["//visibility:public"],
deps = [
":opensta_lib",
"//bazel:tcl_library_init",
"@rules_cc//cc/runfiles",
"@tcl_lang//:tcl",
],

View File

@ -30,6 +30,11 @@
#include <filesystem>
#include <string_view>
#include <tcl.h>
#ifdef BAZEL_CURRENT_REPOSITORY
#include "bazel/tcl_library_init.h"
#endif
#if TCL_READLINE
#include <tclreadline.h>
#endif
@ -109,6 +114,12 @@ staTclAppInit(int argc,
std::string_view init_filename,
Tcl_Interp *interp)
{
#ifdef BAZEL_CURRENT_REPOSITORY
if (in_bazel::SetupTclEnvironment(interp) == TCL_ERROR) {
return TCL_ERROR;
}
#endif
// source init.tcl
if (Tcl_Init(interp) == TCL_ERROR)
return TCL_ERROR;