Copy the libpq DLL to the bin directory on Mingw and Cygwin.
authorAndrew Dunstan <andrew@dunslane.net>
Sat, 1 Feb 2014 20:16:06 +0000 (15:16 -0500)
committerAndrew Dunstan <andrew@dunslane.net>
Sat, 1 Feb 2014 20:16:06 +0000 (15:16 -0500)
This has long been done by the MSVC build system, and has caused
confusion in the past when programs like psql have failed to start
because they can't find the DLL. If it's in the same directory as it now
will be they will find it.

Backpatch to all live branches.

src/interfaces/libpq/Makefile

index 7ed79c4f27c625d6eaa270c9dd21662d68a9064f..b676b58118af7bee1b56870d199efab22f58c1ab 100644 (file)
@@ -121,12 +121,18 @@ install: all installdirs install-lib
    $(INSTALL_DATA) $(srcdir)/libpq-int.h '$(DESTDIR)$(includedir_internal)'
    $(INSTALL_DATA) $(srcdir)/pqexpbuffer.h '$(DESTDIR)$(includedir_internal)'
    $(INSTALL_DATA) $(srcdir)/pg_service.conf.sample '$(DESTDIR)$(datadir)/pg_service.conf.sample'
+ifneq (,$findstring($(PORTNAME), win32 cygwin))
+   $(INSTALL_DATA) $(shlib) '$(DESTDIR)$(bindir)/$(shlib)'
+endif
 
 installcheck:
    $(MAKE) -C test $@
 
 installdirs: installdirs-lib
    $(MKDIR_P) '$(DESTDIR)$(includedir)' '$(DESTDIR)$(includedir_internal)' '$(DESTDIR)$(datadir)'
+ifneq (,$findstring($(PORTNAME), win32 cygwin))
+   $(MKDIR_P) '$(DESTDIR)$(bindir)'
+endif
 
 uninstall: uninstall-lib
    rm -f '$(DESTDIR)$(includedir)/libpq-fe.h'
@@ -134,6 +140,9 @@ uninstall: uninstall-lib
    rm -f '$(DESTDIR)$(includedir_internal)/libpq-int.h'
    rm -f '$(DESTDIR)$(includedir_internal)/pqexpbuffer.h'
    rm -f '$(DESTDIR)$(datadir)/pg_service.conf.sample'
+ifneq (,$findstring($(PORTNAME), win32 cygwin))
+   rm -f '$(DESTDIR)$(bindir)/$(shlib)'
+endif
 
 clean distclean: clean-lib
    $(MAKE) -C test $@