File 0001-vvp-generate-libvvp-import-library-for-MinGW-builds.patch of Package iverilog

From 609567e19b847f3c1716750f5996cc29d6f6fe49 Mon Sep 17 00:00:00 2001
From: Ralf Habacker <ralf.habacker@freenet.de>
Date: Fri, 2 Jan 2026 16:41:56 +0100
Subject: [PATCH 1/2] vvp: generate libvvp import library for MinGW builds

MinGW requires an import library to link against DLLs.
Install a libvvp import library so downstream projects
can link against libvvp on Windows.
---
 vvp/Makefile.in | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/vvp/Makefile.in b/vvp/Makefile.in
index ee20300af..b8c69fef7 100644
--- a/vvp/Makefile.in
+++ b/vvp/Makefile.in
@@ -65,6 +65,11 @@ LIBS = @LIBS@ @EXTRALIBS@
 ifeq (@WIN32@,yes)
 SLDIR=$(bindir)
 SLEXT=dll
+ifeq (@MINGW32@,yes)
+IMPEXT=dll.a
+else
+IMPEXT=lib
+endif
 else
 SLDIR=$(libdir)
 SLEXT=so
@@ -144,8 +149,13 @@ CPPFLAGS+= -fpic
 vvp@EXEEXT@: main.o $(srcdir)/vvp.def libvvp$(suffix).$(SLEXT)
 	$(CXX) $(LDFLAGS) -o vvp@EXEEXT@ main.o -L. $(LDFLAGS) -lvvp$(suffix) $(LIBS)
 
+ifeq (@MINGW32@,yes)
+libvvp$(suffix).$(SLEXT): $O
+	$(CXX) -shared $(LDFLAGS) -o libvvp$(suffix).$(SLEXT) -Wl,--out-implib libvvp$(suffix).$(IMPEXT) $O $(LIBS) $(dllib)
+else
 libvvp$(suffix).$(SLEXT): $O
 	$(CXX) -shared $(LDFLAGS) -o libvvp$(suffix).$(SLEXT) $O $(LIBS) $(dllib)
+endif
 else
 ifeq (@WIN32@,yes)
 # To support cocotb, we export the VPI functions directly. This allows
@@ -234,7 +244,12 @@ installpdf: vvp.pdf installdirs
 installfiles: $(F) | installdirs
 	$(INSTALL_PROGRAM) ./vvp@EXEEXT@ "$(DESTDIR)$(bindir)/vvp$(suffix)@EXEEXT@"
 ifeq (@LIBVVP@,yes)
+ifeq (@WIN32@,yes)
+	$(INSTALL_PROGRAM) ./libvvp$(suffix).$(SLEXT) "$(DESTDIR)$(bindir)/libvvp$(suffix).$(SLEXT)"
+	$(INSTALL_PROGRAM) ./libvvp$(suffix).$(IMPEXT) "$(DESTDIR)$(libdir)/libvvp$(suffix).$(IMPEXT)"
+else
 	$(INSTALL_PROGRAM) ./libvvp$(suffix).$(SLEXT) "$(DESTDIR)$(SLDIR)/libvvp$(suffix).$(SLEXT)"
+endif
 	$(INSTALL_DATA) $(srcdir)/libvvp.h "$(DESTDIR)$(includedir)/libvvp.h"
 endif
 
-- 
2.51.0

openSUSE Build Service is sponsored by