From 0d3b8e9a5025fe1ad2ee158025d6da5d61ec022e Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Mon, 8 Nov 2004 05:23:26 +0000
Subject: [PATCH] Allow win32/cygwin link against the first matching library
 symbol rather than erroring out.  This is the Unix behavior.

---
 src/bin/pg_dump/Makefile | 8 +-------
 src/template/cygwin      | 5 +++++
 src/template/win32       | 4 ++++
 3 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/src/bin/pg_dump/Makefile b/src/bin/pg_dump/Makefile
index 6fe3af18dc..bdb8a9bec1 100644
--- a/src/bin/pg_dump/Makefile
+++ b/src/bin/pg_dump/Makefile
@@ -5,7 +5,7 @@
 # Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
 # Portions Copyright (c) 1994, Regents of the University of California
 #
-# $PostgreSQL: pgsql/src/bin/pg_dump/Makefile,v 1.57 2004/10/07 13:45:48 momjian Exp $
+# $PostgreSQL: pgsql/src/bin/pg_dump/Makefile,v 1.58 2004/11/08 05:23:23 momjian Exp $
 #
 #-------------------------------------------------------------------------
 
@@ -22,12 +22,6 @@ OBJS=	pg_backup_archiver.o pg_backup_db.o pg_backup_custom.o \
 
 EXTRA_OBJS = $(top_builddir)/src/backend/parser/keywords.o
 
-# Not sure why MinGW needs this but it prevents a link failure
-# of duplicate definitions for pg_tolower().  2004-10-06
-ifeq ($(PORTNAME), win32)
-EXTRA_OBJS += $(top_builddir)/src/port/exec.o
-endif
-
 all: submake-libpq submake-libpgport submake-backend pg_dump pg_restore pg_dumpall
 
 pg_dump: pg_dump.o common.o pg_dump_sort.o $(OBJS) $(libpq_builddir)/libpq.a 
diff --git a/src/template/cygwin b/src/template/cygwin
index 9b342ba8ab..ae7bb16bd1 100644
--- a/src/template/cygwin
+++ b/src/template/cygwin
@@ -1 +1,6 @@
 SRCH_LIB="/usr/local/lib"
+
+# This is required to link pg_dump because it finds pg_toupper() in
+# libpq and pgport
+LDFLAGS="-Wl,--allow-multiple-definition"
+
diff --git a/src/template/win32 b/src/template/win32
index e69de29bb2..e9ab1fe7a5 100644
--- a/src/template/win32
+++ b/src/template/win32
@@ -0,0 +1,4 @@
+# This is required to link pg_dump because it finds pg_toupper() in
+# libpq and pgport
+LDFLAGS="-Wl,--allow-multiple-definition"
+
-- 
2.40.0