From: Clifford Wolf Date: Tue, 3 Feb 2015 22:04:58 +0000 (+0100) Subject: Added "yosys -L logfile" X-Git-Tag: yosys-0.5~32 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8514fe79dbabb8ed95b24d29e98c16e4027dfc57;p=yosys.git Added "yosys -L logfile" --- diff --git a/kernel/driver.cc b/kernel/driver.cc index e95ef48d3..116df542c 100644 --- a/kernel/driver.cc +++ b/kernel/driver.cc @@ -127,6 +127,9 @@ int main(int argc, char **argv) printf(" -l logfile\n"); printf(" write log messages to the specified file\n"); printf("\n"); + printf(" -L logfile\n"); + printf(" like -l but open log file in line buffered mode\n"); + printf("\n"); printf(" -o outfile\n"); printf(" write the design to the specified file on exit\n"); printf("\n"); @@ -183,7 +186,7 @@ int main(int argc, char **argv) } int opt; - while ((opt = getopt(argc, argv, "MXAQTVSm:f:Hh:b:o:p:l:qv:tds:c:")) != -1) + while ((opt = getopt(argc, argv, "MXAQTVSm:f:Hh:b:o:p:l:L:qv:tds:c:")) != -1) { switch (opt) { @@ -231,11 +234,14 @@ int main(int argc, char **argv) got_output_filename = true; break; case 'l': + case 'L': log_files.push_back(fopen(optarg, "wt")); if (log_files.back() == NULL) { fprintf(stderr, "Can't open log file `%s' for writing!\n", optarg); exit(1); } + if (opt == 'L') + setvbuf(log_files.back(), NULL, _IOLBF, 0); break; case 'q': mode_q = true;