diff --git a/Makefile.in b/Makefile.in index 4b01f6730..2503db9c7 100644 --- a/Makefile.in +++ b/Makefile.in @@ -140,12 +140,13 @@ dosify$(BUILDEXT): $(srcdir)/dosify.c $(BUILDCC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -o dosify$(BUILDEXT) $(srcdir)/dosify.c endif -# This rule rules the compiler in the trivial hello.vl program to make -# sure the basics were compiled properly. +# This rule runs the compiler using the trivial hello.vl program to make sure +# the base programs are compiled properly. check: all $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) $@ && ) true + rm -f check.vvp test -r check.conf || cp $(srcdir)/check.conf . - driver/iverilog@EXEEXT@ -B. -BMvpi -BPivlpp -tcheck -ocheck.vvp $(srcdir)/examples/hello.vl + driver/iverilog@EXEEXT@ -B. -BMvpi -BPivlpp -tcheck -ocheck.vvp $(srcdir)/examples/hello.vl && \ $(ENV_VVP) vvp/vvp$(suffix)@EXEEXT@ -M- -M./vpi ./check.vvp | grep 'Hello, World' check-installed check-installed-vpi check-installed-vvp check-installed-vvp-py: diff --git a/configure.ac b/configure.ac index 5560dc981..9ad90e571 100644 --- a/configure.ac +++ b/configure.ac @@ -98,21 +98,19 @@ AC_SUBST(EXEEXT) # Combined check for Microsoft-related bogosities; sets WIN32 if found AX_WIN32 -# detect msys shell -AC_MSG_CHECKING([whether the shell is an MSYS2 runtime shell]) +# Detect which directory/file separator to use +AC_MSG_CHECKING([for directory/file separator]) AS_CASE([$host_os:$MSYSTEM], - [*mingw*:UCRT64|*mingw*:MINGW64|*mingw*:MINGW32|*mingw*:CLANG64], [ - MSYS_SHELL=true - msys_shell_result=yes + [*mingw*:UCRT64|*mingw*:MINGW64|*mingw*:MINGW32|*mingw*:CLANG64|*mingw*:CLANGARM64], [ + PATH_SEP=\\\\ ], [ - MSYS_SHELL=false - msys_shell_result=no + PATH_SEP=/ ] ) -AC_MSG_RESULT([$msys_shell_result]) -AC_SUBST([MSYS_SHELL]) +AC_MSG_RESULT([$PATH_SEP]) +AC_SUBST([PATH_SEP]) # Check to see if we are using the Sun compiler. If so then configure # some of the flags to match the Sun compiler syntax. This is also used diff --git a/driver/Makefile.in b/driver/Makefile.in index 910d50599..91e472816 100644 --- a/driver/Makefile.in +++ b/driver/Makefile.in @@ -19,7 +19,7 @@ SHELL = /bin/sh EXEEXT = @EXEEXT@ ENV_VVP=@ENV_VVP@ -MSYS_SHELL=@MSYS_SHELL@ +PATH_SEP=@PATH_SEP@ suffix = @install_suffix@ @@ -64,19 +64,16 @@ O = main.o substit.o cflexor.o cfparse.o all: dep iverilog@EXEEXT@ iverilog.man check: all - @if $(MSYS_SHELL); then \ - echo "iverilog: execution from a build directory not suppported for this runtime"; \ - else \ - echo "iverilog: create .vpp from .v file and run it"; \ - $(builddir)/iverilog@EXEEXT@ \ - -B$(top_builddir)/tgt-vvp \ - -BI$(top_builddir) \ - -BM$(top_builddir)/vpi \ - -BP$(top_builddir)/ivlpp \ - -Bt$(top_builddir)/tgt-vvp \ - $(verbose) -o top.vvp -s top $(srcdir)/hello_world.v; \ - $(ENV_VVP) $(top_builddir)/vvp/vvp$(suffix)@EXEEXT@ top.vvp; \ - fi + @echo "driver/iverilog: create a vvp file and then run it." + @rm -f top.vvp + @$(builddir)/iverilog@EXEEXT@ \ + -B$(top_builddir)$(PATH_SEP)tgt-vvp \ + -BI$(top_builddir) \ + -BM$(top_builddir)$(PATH_SEP)vpi \ + -BP$(top_builddir)$(PATH_SEP)ivlpp \ + -Bt$(top_builddir)$(PATH_SEP)tgt-vvp \ + $(verbose) -o top.vvp -s top $(srcdir)/hello_world.v && \ + $(ENV_VVP) $(top_builddir)/vvp/vvp$(suffix)@EXEEXT@ top.vvp clean: rm -f *.o cflexor.c cfparse.c cfparse.h cfparse.output