diff --git a/src/Makefile.shlib b/src/Makefile.shlib
index 4b89aa49279a3003e5858f2089f0156de1de3bf4..34f805ed98ba3819b0b83ab8b6ca89cd2263c762 100644
--- a/src/Makefile.shlib
+++ b/src/Makefile.shlib
@@ -6,7 +6,7 @@
 # Copyright (c) 1998, Regents of the University of California
 #
 # IDENTIFICATION
-#    $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.54 2001/09/22 22:54:32 petere Exp $
+#    $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.55 2001/10/05 21:15:38 petere Exp $
 #
 #-------------------------------------------------------------------------
 
@@ -113,7 +113,7 @@ endif
 
 ifeq ($(PORTNAME), darwin)
   shlib			:= lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
-  LINK.shared		= $(COMPILER) $(CFLAGS_SL)
+  LINK.shared		= $(COMPILER) $(DARWIN_NAMESPACE_SPEC) -bundle -undefined suppress
 endif
 
 ifeq ($(PORTNAME), openbsd)
diff --git a/src/makefiles/Makefile.darwin b/src/makefiles/Makefile.darwin
index b6619165b0c453b373536a8456f597d6171fc3b4..3d58055b9b3ce10ee06d3703b81f6e530e4f456d 100644
--- a/src/makefiles/Makefile.darwin
+++ b/src/makefiles/Makefile.darwin
@@ -2,9 +2,12 @@ AROPT = cr
 AWK= awk
  
 DLSUFFIX = .so
-CFLAGS_SL = -bundle -undefined suppress
+CFLAGS_SL =
+ifeq (,$(filter $(host_os), darwin1.0 darwin1.1 darwin1.2))
+DARWIN_NAMESPACE_SPEC = -flat_namespace
+endif
  
 %.so: %.o
-	$(CC) $(CFLAGS) $(CFLAGS_SL) -o $@ $<
+	$(CC) $(DARWIN_NAMESPACE_SPEC) -bundle -undefined suppress -o $@ $<
 
 sqlmansect = 7