diff options
author | whitequark <whitequark@whitequark.org> | 2019-11-11 09:23:06 +0000 |
---|---|---|
committer | whitequark <whitequark@whitequark.org> | 2020-04-30 18:56:25 +0000 |
commit | b43c282e4e0de53b9323a5d8d85b07bc73324a17 (patch) | |
tree | ab7a0beb69f8f4cb7588128fbe248343665b1d7d /kernel/register.cc | |
parent | bc380b0b56e0fa269a0d5844280cc4419d438d3a (diff) | |
download | yosys-b43c282e4e0de53b9323a5d8d85b07bc73324a17.tar.gz yosys-b43c282e4e0de53b9323a5d8d85b07bc73324a17.tar.bz2 yosys-b43c282e4e0de53b9323a5d8d85b07bc73324a17.zip |
Add WASI platform support.
This includes the following significant changes:
* Patching ezsat and minisat to disable resource limiting code
on WASM/WASI, since the POSIX functions they use are unavailable.
* Adding a new definition, YOSYS_DISABLE_SPAWN, present if platform
does not support spawning subprocesses (i.e. Emscripten or WASI).
This definition hides the definition of `run_command()`.
* Adding a new Makefile flag, DISABLE_SPAWN, present in the same
condition. This flag disables all passes that require spawning
subprocesses for their function.
Diffstat (limited to 'kernel/register.cc')
-rw-r--r-- | kernel/register.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/register.cc b/kernel/register.cc index 925d0d776..02974e534 100644 --- a/kernel/register.cc +++ b/kernel/register.cc @@ -238,6 +238,7 @@ void Pass::call(RTLIL::Design *design, std::string command) return; if (tok[0] == '!') { +#if !defined(YOSYS_DISABLE_SPAWN) cmd_buf = command.substr(command.find('!') + 1); while (!cmd_buf.empty() && (cmd_buf.back() == ' ' || cmd_buf.back() == '\t' || cmd_buf.back() == '\r' || cmd_buf.back() == '\n')) @@ -247,6 +248,9 @@ void Pass::call(RTLIL::Design *design, std::string command) if (retCode != 0) log_cmd_error("Shell command returned error code %d.\n", retCode); return; +#else + log_cmd_error("Shell is not available.\n"); +#endif } while (!tok.empty()) { |