ports collection ...
# Copyright (c) 1998, Regents of the University of California
#
# IDENTIFICATION
-# $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.8 1999/04/30 02:04:49 momjian Exp $
+# $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.9 1999/05/17 04:13:24 scrappy Exp $
#
#-------------------------------------------------------------------------
ifeq ($(PORTNAME), freebsd)
ifdef BSD_SHLIB
install-shlib-dep := install-shlib
- shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
ifdef ELF_SYSTEM
- LDFLAGS_SL := -x -Bshareable
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
+ LDFLAGS_SL := -x -shared -soname $(shlib)
else
+ shlib := lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
LDFLAGS_SL := -x -Bshareable -Bforcearchive
endif
CFLAGS += $(CFLAGS_SL)
void *vp;
char buf[BUFSIZ];
+#ifndef __ELF__
if (*name != '_')
{
sprintf(buf, "_%s", name);
name = buf;
}
+#endif
if ((vp = dlsym(handle, (char *) name)) == (void *) NULL)
sprintf(error_message, "dlsym (%s) failed", name);
return vp;
aux*) os=aux need_tas=no ;;
linux*) os=linux need_tas=no ;;
bsdi*) os=bsdi need_tas=no ;;
- freebsd3*|freebsd4*) os=freebsd need_tas=no elf=yes ;;
freebsd1*|freebsd2*) os=freebsd need_tas=no ;;
+ freebsd*) os=freebsd need_tas=no elf=yes ;;
netbsd*)
os=bsd need_tas=no
case "$host_cpu" in
aux*) os=aux need_tas=no ;;
linux*) os=linux need_tas=no ;;
bsdi*) os=bsdi need_tas=no ;;
- freebsd3*|freebsd4*) os=freebsd need_tas=no elf=yes ;;
freebsd1*|freebsd2*) os=freebsd need_tas=no ;;
+ freebsd*) os=freebsd need_tas=no elf=yes ;;
netbsd*)
os=bsd need_tas=no
case "$host_cpu" in
+ifdef ELF_SYSTEM
+LDFLAGS+= -export-dynamic
+endif
+
%.so: %.o
+ifdef ELF_SYSTEM
+ $(LD) -x -shared -o $@ $<
+else
$(LD) -x -r -o $<.obj $<
@echo building shared object $@
@rm -f $@.pic
@${AR} cq $@.pic `lorder $<.obj | tsort`
${RANLIB} $@.pic
@rm -f $@
-ifdef ELF_SYSTEM
- $(LD) -x -Bshareable -o $@ $@.pic
-else
$(LD) -x -Bshareable -Bforcearchive -o $@ $@.pic
endif