diff --git a/driver/build_string.c b/driver/build_string.c index ffbc85856..a719ac861 100644 --- a/driver/build_string.c +++ b/driver/build_string.c @@ -17,7 +17,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ #ifdef HAVE_CVS_IDENT -#ident "$Id: build_string.c,v 1.12 2003/09/22 01:12:09 steve Exp $" +#ident "$Id: build_string.c,v 1.13 2003/09/23 05:57:15 steve Exp $" #endif # include "config.h" @@ -53,7 +53,6 @@ int build_string(char*output, size_t olen, const char*pattern) tmp_buf[tail-pattern-1] = 0; if (((*pattern == 'v') && verbose_flag) - || ((*pattern == 'M') && depfile) || ((*pattern == 'N') && npath)) { int rc = build_string(output, olen, tmp_buf); @@ -84,14 +83,6 @@ int build_string(char*output, size_t olen, const char*pattern) } break; - case 'm': - if (mod_list) { - strcpy(output, mod_list); - output += strlen(mod_list); - olen -= strlen(mod_list); - } - break; - case 'N': if (npath) { strcpy(output, npath); @@ -121,6 +112,9 @@ int build_string(char*output, size_t olen, const char*pattern) /* * $Log: build_string.c,v $ + * Revision 1.13 2003/09/23 05:57:15 steve + * Pass -m flag from driver via iconfig file. + * * Revision 1.12 2003/09/22 01:12:09 steve * Pass more ivl arguments through the iconfig file. * diff --git a/driver/main.c b/driver/main.c index 5b679dba9..1461b5b76 100644 --- a/driver/main.c +++ b/driver/main.c @@ -17,7 +17,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ #ifdef HAVE_CVS_IDENT -#ident "$Id: main.c,v 1.54 2003/09/22 01:12:09 steve Exp $" +#ident "$Id: main.c,v 1.55 2003/09/23 05:57:15 steve Exp $" #endif # include "config.h" @@ -491,17 +491,7 @@ int main(int argc, char **argv) break; case 'm': - if (mod_list == 0) { - mod_list = malloc(strlen(" -m")+strlen(optarg)+1); - strcpy(mod_list, " -m"); - strcat(mod_list, optarg); - } else { - mod_list = realloc(mod_list, strlen(mod_list) - + strlen(" -m") - + strlen(optarg) + 1); - strcat(mod_list, " -m"); - strcat(mod_list, optarg); - } + fprintf(iconfig_file, "module:%s\n", optarg); break; case 'N': @@ -704,6 +694,9 @@ int main(int argc, char **argv) /* * $Log: main.c,v $ + * Revision 1.55 2003/09/23 05:57:15 steve + * Pass -m flag from driver via iconfig file. + * * Revision 1.54 2003/09/22 01:12:09 steve * Pass more ivl arguments through the iconfig file. * diff --git a/iverilog.conf b/iverilog.conf index 2c4bc15ae..25b49e64d 100644 --- a/iverilog.conf +++ b/iverilog.conf @@ -57,10 +57,10 @@ # These rules support synthesized and non-synthesized variants. [-tvvp -S] -%B/ivl %[v-v] -C%C %[N-N%N] -tdll -fDLL=%B/vvp.tgt -fVVP_EXECUTABLE=%B/../../bin/vvp -Fsynth2 -Fsynth -Fsyn-rules -Fcprop -Fnodangle %f %m -- - +%B/ivl %[v-v] -C%C %[N-N%N] -tdll -fDLL=%B/vvp.tgt -fVVP_EXECUTABLE=%B/../../bin/vvp -Fsynth2 -Fsynth -Fsyn-rules -Fcprop -Fnodangle %f -- - [-tvvp] -%B/ivl %[v-v] -C%C %[N-N%N] -tdll -fDLL=%B/vvp.tgt -fVVP_EXECUTABLE=%B/../../bin/vvp -Fcprop -Fnodangle %f %m -- - +%B/ivl %[v-v] -C%C %[N-N%N] -tdll -fDLL=%B/vvp.tgt -fVVP_EXECUTABLE=%B/../../bin/vvp -Fcprop -Fnodangle %f -- - # This is the XNF code generator. diff --git a/main.cc b/main.cc index 398bc1d70..02c2a72ee 100644 --- a/main.cc +++ b/main.cc @@ -19,7 +19,7 @@ const char COPYRIGHT[] = * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ #ifdef HAVE_CVS_IDENT -#ident "$Id: main.cc,v 1.69 2003/09/22 01:12:08 steve Exp $" +#ident "$Id: main.cc,v 1.70 2003/09/23 05:57:36 steve Exp $" #endif # include "config.h" @@ -169,6 +169,9 @@ static void process_generation_flag(const char*gen) * This specifies the ivlpp command line used to process * library modules as I read them in. * + * module: + * Load a VPI module. + * * out: * Path to the output file. * @@ -216,6 +219,9 @@ static void read_iconfig_file(const char*ipath) } else if (strcmp(buf, "ivlpp") == 0) { ivlpp_string = strdup(cp); + } else if (strcmp(buf,"module") == 0) { + flags["VPI_MODULE_LIST"] = flags["VPI_MODULE_LIST"]+","+cp; + } else if (strcmp(buf, "out") == 0) { flags["-o"] = cp; @@ -365,7 +371,7 @@ int main(int argc, char*argv[]) min_typ_max_flag = TYP; min_typ_max_warn = 10; - while ((opt = getopt(argc, argv, "C:F:f:g:hm:M:N:o:P:p:s:T:t:VvW:Y:y:")) != EOF) switch (opt) { + while ((opt = getopt(argc, argv, "C:F:f:hN:P:p:t:Vv")) != EOF) switch (opt) { case 'C': read_iconfig_file(optarg); @@ -388,9 +394,6 @@ int main(int argc, char*argv[]) case 'h': help_flag = true; break; - case 'm': - flags["VPI_MODULE_LIST"] = flags["VPI_MODULE_LIST"]+","+optarg; - break; case 'N': net_path = optarg; break; @@ -429,7 +432,6 @@ int main(int argc, char*argv[]) "\t-C Config file from driver.\n" "\t-F Apply netlist function .\n" "\t-h Print usage information, and exit.\n" -"\t-m Load vpi module .\n" "\t-N Dump the elaborated netlist to .\n" "\t-P Write the parsed input to .\n" "\t-p Set a parameter value.\n" @@ -658,6 +660,9 @@ int main(int argc, char*argv[]) /* * $Log: main.cc,v $ + * Revision 1.70 2003/09/23 05:57:36 steve + * Pass -m flag from driver via iconfig file. + * * Revision 1.69 2003/09/22 01:12:08 steve * Pass more ivl arguments through the iconfig file. *