diff options
author | N. Engelhardt <nak@symbioticeda.com> | 2019-09-23 17:25:30 +0200 |
---|---|---|
committer | N. Engelhardt <nak@symbioticeda.com> | 2019-09-23 17:47:05 +0200 |
commit | 3bed4cb18a41e87e8c61f03d6e581d5c0eae3a95 (patch) | |
tree | 9c4ad319ce1c74f9626db756dde23d1412b1d563 /passes/cmds/show.cc | |
parent | 0a2d8db793fee47d8237c472c1d2d5ca4e21f865 (diff) | |
download | yosys-3bed4cb18a41e87e8c61f03d6e581d5c0eae3a95.tar.gz yosys-3bed4cb18a41e87e8c61f03d6e581d5c0eae3a95.tar.bz2 yosys-3bed4cb18a41e87e8c61f03d6e581d5c0eae3a95.zip |
fix show command for macos
Diffstat (limited to 'passes/cmds/show.cc')
-rw-r--r-- | passes/cmds/show.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/passes/cmds/show.cc b/passes/cmds/show.cc index 2e9fc72af..a3e969ef1 100644 --- a/passes/cmds/show.cc +++ b/passes/cmds/show.cc @@ -26,6 +26,10 @@ # include <dirent.h> #endif +#ifdef __APPLE__ +# include <unistd.h> +#endif + #ifdef YOSYS_ENABLE_READLINE # include <readline/readline.h> #endif @@ -866,7 +870,11 @@ struct ShowPass : public Pass { log_cmd_error("Shell command failed!\n"); } else if (format.empty()) { + #ifdef __APPLE__ + std::string cmd = stringf("ps -fu %d | grep -q '[ ]%s' || xdot '%s' &", getuid(), dot_file.c_str(), dot_file.c_str()); + #else std::string cmd = stringf("{ test -f '%s.pid' && fuser -s '%s.pid'; } || ( echo $$ >&3; exec xdot '%s'; ) 3> '%s.pid' &", dot_file.c_str(), dot_file.c_str(), dot_file.c_str(), dot_file.c_str()); + #endif log("Exec: %s\n", cmd.c_str()); if (run_command(cmd) != 0) log_cmd_error("Shell command failed!\n"); |