]> granicus.if.org Git - postgresql/commitdiff
NetBSD Shared Library Patch from Martin J. Laubach
authorMarc G. Fournier <scrappy@hub.org>
Sat, 15 Mar 1997 19:17:03 +0000 (19:17 +0000)
committerMarc G. Fournier <scrappy@hub.org>
Sat, 15 Mar 1997 19:17:03 +0000 (19:17 +0000)
src/interfaces/libpq/Makefile

index a16005dee3019b814366c0db4883a6d2a7703eaf..49afd4fcc9cf9e2504a0768c511607d8ed3eb631 100644 (file)
@@ -7,7 +7,7 @@
 #
 #
 # IDENTIFICATION
-#    $Header: /cvsroot/pgsql/src/interfaces/libpq/Makefile,v 1.28 1997/03/14 23:34:03 scrappy Exp $
+#    $Header: /cvsroot/pgsql/src/interfaces/libpq/Makefile,v 1.29 1997/03/15 19:17:03 scrappy Exp $
 #
 #-------------------------------------------------------------------------
 
@@ -23,21 +23,25 @@ ifdef KRBVERS
 CFLAGS+= $(KRBFLAGS)
 endif
 
-# dllist.c is found in backend/lib
-VPATH:= $(VPATH):../backend/lib
 OBJS= fe-auth.o fe-connect.o fe-exec.o fe-misc.o fe-lobj.o \
-         ../backend/lib/dllist.o pqsignal.o 
-
+         dllist.o pqsignal.o 
 
+# Shared library stuff
 shlib := 
 install-shlib-dep :=
 ifeq ($(PORTNAME), linux)
   ifdef LINUX_ELF
     install-shlib-dep := install-shlib
     shlib := libpq.so.1
+    LDFLAGS_SL = -shared
   endif
 endif
+ifeq ($(PORTNAME), BSD44_derived)
+  install-shlib-dep := install-shlib
+  shlib := libpq.so.1.0
+  LDFLAGS_SL = -x -Bshareable -Bforcearchive
+  CFLAGS += -fpic -DPIC
+endif
 
 all: libpq.a $(shlib) c.h
 
@@ -51,17 +55,19 @@ endif
 
 fe-lobj.o: ../backend/fmgr.h
 
+# We need to compile this with special options for shared libs,
+# so we can't use the object in ../backend
+dllist.c:      ../backend/lib/dllist.c
+       -ln ../backend/lib/dllist.c
+
 # The following rules cause dependencies in the backend directory to 
 # get made if they don't exist, but don't cause them to get remade if they
 # are out of date.
 ../backend/fmgr.h:
        $(MAKE) -C ../backend fmgr.h
 
-../backend/lib/dllist.o:
-       $(MAKE) -C ../backend/lib dllist.o
-
-libpq.so.1: $(OBJS)
-       gcc $(LDFLAGS) -shared -o $@ $(OBJS)
+$(shlib): $(OBJS)
+       $(LD) $(LDFLAGS) $(LDFLAGS_SL) -o $@ $(OBJS)
 
 c.h: ../include/c.h
        rm -f c.h