vvp: Only support one path separator in IVERILOG_VPI_MODULE_PATH (issue #608)
Previously both ':' and ';' were recognised as path separators on all platforms, but ':' can't be used in Windows. So now we only recognise ';' when running in Windows and ':' when running in any other OS.
This commit is contained in:
parent
4c36b2a8a7
commit
673b0d3066
|
|
@ -64,12 +64,18 @@ void vpip_add_env_and_default_module_paths()
|
||||||
if (disable_default_paths)
|
if (disable_default_paths)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
#ifdef __MINGW32__
|
||||||
|
const char path_sep = ';';
|
||||||
|
#else
|
||||||
|
const char path_sep = ':';
|
||||||
|
#endif
|
||||||
|
|
||||||
if (char *var = ::getenv("IVERILOG_VPI_MODULE_PATH")) {
|
if (char *var = ::getenv("IVERILOG_VPI_MODULE_PATH")) {
|
||||||
char *ptr = var;
|
char *ptr = var;
|
||||||
char *end = var+strlen(var);
|
char *end = var+strlen(var);
|
||||||
int len = 0;
|
int len = 0;
|
||||||
while (ptr <= end) {
|
while (ptr <= end) {
|
||||||
if (*ptr == 0 || *ptr == ':' || *ptr == ';') {
|
if (*ptr == 0 || *ptr == path_sep) {
|
||||||
if (len > 0) {
|
if (len > 0) {
|
||||||
vpip_add_module_path(strndup(var, len));
|
vpip_add_module_path(strndup(var, len));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
.TH vvp 1 "May 10th, 2015" "" "Version %M.%n %E"
|
.TH vvp 1 "March 25th, 2022" "" "Version %M.%n %E"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
vvp - Icarus Verilog vvp runtime engine
|
vvp - Icarus Verilog vvp runtime engine
|
||||||
|
|
||||||
|
|
@ -171,7 +171,7 @@ output, a time-saver for regression tests.
|
||||||
This adds additional components to the VPI module search path. Paths
|
This adds additional components to the VPI module search path. Paths
|
||||||
specified in this way are searched after paths specified with \-M, but
|
specified in this way are searched after paths specified with \-M, but
|
||||||
before the default search path. Multiple paths can be separated with
|
before the default search path. Multiple paths can be separated with
|
||||||
colons or semicolons.
|
colons (semicolons if using Windows).
|
||||||
|
|
||||||
.SH INTERACTIVE MODE
|
.SH INTERACTIVE MODE
|
||||||
.PP
|
.PP
|
||||||
|
|
@ -196,7 +196,7 @@ iverilog\-vpi(1),
|
||||||
|
|
||||||
.SH COPYRIGHT
|
.SH COPYRIGHT
|
||||||
.nf
|
.nf
|
||||||
Copyright \(co 2001\-2015 Stephen Williams
|
Copyright \(co 2001\-2022 Stephen Williams
|
||||||
|
|
||||||
This document can be freely redistributed according to the terms of the
|
This document can be freely redistributed according to the terms of the
|
||||||
GNU General Public License version 2.0
|
GNU General Public License version 2.0
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue