From 4f5f485d10cad372a3a0cd8dd70780f1a32f43f0 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Wed, 19 Feb 2014 19:34:50 -0500
Subject: [PATCH] Avoid using dllwrap to build pgevent in Mingw builds.

If this works, we can get rid of configure's support for locating dllwrap
... but let's see what the buildfarm says, first.

Hiroshi Inoue
---
 src/bin/pgevent/Makefile    | 25 ++++++++-----------------
 src/bin/pgevent/exports.txt |  5 +++++
 2 files changed, 13 insertions(+), 17 deletions(-)
 create mode 100644 src/bin/pgevent/exports.txt

diff --git a/src/bin/pgevent/Makefile b/src/bin/pgevent/Makefile
index 1d902762c56..d3c73297a7e 100644
--- a/src/bin/pgevent/Makefile
+++ b/src/bin/pgevent/Makefile
@@ -17,30 +17,21 @@ include $(top_builddir)/src/Makefile.global
 ifeq ($(PORTNAME), win32)
 
 OBJS=pgevent.o pgmsgevent.o
-NAME=pgevent.dll
+NAME=pgevent
 
-all: $(NAME)
+SHLIB_LINK =
+SHLIB_EXPORTS = exports.txt
+
+all: all-lib
 
 install: all install-lib
 
-pgevent.dll: pgevent.def $(OBJS)
-	$(DLLWRAP) --def $< -o $(NAME) $(OBJS)
+include $(top_srcdir)/src/Makefile.shlib
 
 pgmsgevent.o: pgmsgevent.rc win32ver.rc
 	$(WINDRES) $< -o $@ --include-dir=$(top_builddir)/src/include --include-dir=$(top_srcdir)/src/include --include-dir=$(srcdir) --include-dir=.
 
-all-lib: $(NAME)
-
-install-lib: $(NAME)
-	$(INSTALL_STLIB) $< '$(DESTDIR)$(libdir)/$<'
-
-uninstall-lib:
-	rm -f '$(DESTDIR)$(libdir)/$(NAME)'
-
-clean distclean:
-	rm -f $(OBJS) $(NAME) win32ver.rc
-
-clean-lib:
-	rm -f $(NAME)
+clean distclean: clean-lib
+	rm -f $(OBJS) win32ver.rc
 
 endif
diff --git a/src/bin/pgevent/exports.txt b/src/bin/pgevent/exports.txt
new file mode 100644
index 00000000000..70dcd25bd8e
--- /dev/null
+++ b/src/bin/pgevent/exports.txt
@@ -0,0 +1,5 @@
+; dlltool --output-def pgevent.def pgevent.o pgmsgevent.o
+EXPORTS
+	DllUnregisterServer@0 ;
+	DllRegisterServer@0 ;
+	DllInstall ;
-- 
GitLab