diff options
author | Benedikt Tutzer <e1225461@student.tuwien.ac.at> | 2018-08-20 14:44:03 +0200 |
---|---|---|
committer | Benedikt Tutzer <e1225461@student.tuwien.ac.at> | 2018-08-20 14:44:03 +0200 |
commit | 5864db3c2bf353d4ee124d35aa2f911c4249edbc (patch) | |
tree | 2c6962b3114b44f91b3fbe016b9afc5fb38f0a0f /kernel/yosys.cc | |
parent | d79a2808cf2446fa21d91a6141f6fbe2318c03ec (diff) | |
download | yosys-5864db3c2bf353d4ee124d35aa2f911c4249edbc.tar.gz yosys-5864db3c2bf353d4ee124d35aa2f911c4249edbc.tar.bz2 yosys-5864db3c2bf353d4ee124d35aa2f911c4249edbc.zip |
Fixed issue when using a python plugin in the yosys shell
Diffstat (limited to 'kernel/yosys.cc')
-rw-r--r-- | kernel/yosys.cc | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/kernel/yosys.cc b/kernel/yosys.cc index 8e16ba01d..8380fe75d 100644 --- a/kernel/yosys.cc +++ b/kernel/yosys.cc @@ -55,6 +55,16 @@ # include <sys/sysctl.h> #endif +#ifdef WITH_PYTHON +#if PY_MAJOR_VERSION >= 3 +# define INIT_MODULE PyInit_libyosys + extern "C" PyObject* INIT_MODULE(); +#else +# define INIT_MODULE initlibyosys + extern "C" void INIT_MODULE(); +#endif +#endif + #include <limits.h> #include <errno.h> @@ -482,6 +492,7 @@ void yosys_setup() IdString::get_reference(empty_id.index_); #ifdef WITH_PYTHON + PyImport_AppendInittab((char*)"libyosys", INIT_MODULE); Py_Initialize(); PyRun_SimpleString("import sys"); PyRun_SimpleString("sys.path.append(\"./\")"); @@ -496,6 +507,11 @@ void yosys_setup() log_push(); } +bool yosys_already_setup() +{ + return already_setup; +} + bool already_shutdown = false; void yosys_shutdown() |