# -*-makefile-*-
-# $PostgreSQL: pgsql/src/Makefile.global.in,v 1.204 2004/10/20 02:12:07 neilc Exp $
+# $PostgreSQL: pgsql/src/Makefile.global.in,v 1.205 2004/11/19 00:41:38 tgl Exp $
#------------------------------------------------------------------------------
# All PostgreSQL makefiles include this file and use the variables it sets,
# Pull in platform-specific magic
include $(top_builddir)/src/Makefile.port
+# Set up rpath if enabled. By default it will point to our libdir,
+# but individual Makefiles can force other rpath paths if needed.
+rpathdir = $(libdir)
+
ifeq ($(enable_rpath), yes)
LDFLAGS += $(rpath)
endif
ifeq ($(DLSUFFIX), .so)
CFLAGS_SL = -fpic
-rpath = -Wl,-rpath,$(libdir)
+rpath = -Wl,-rpath,$(rpathdir)
export_dynamic = -export-dynamic
shlib_symbolic = -Wl,-Bsymbolic
else
ifdef ELF_SYSTEM
export_dynamic = -export-dynamic
-rpath = -R$(libdir)
+rpath = -R$(rpathdir)
shlib_symbolic = -Wl,-Bsymbolic -lc
endif
# correctly in the LP64 data model.
LIBS := -lxnet $(LIBS)
-# Embed 'libdir' as the shared library search path so that the executables
-# don't need SHLIB_PATH to be set. (We do not observe the --enable-rpath
-# switch here because you'd get rather bizarre behavior if you leave this
-# option off.)
+# Set up rpath so that the executables don't need SHLIB_PATH to be set.
+# (Note: --disable-rpath is a really bad idea on this platform...)
ifeq ($(with_gnu_ld), yes)
- LDFLAGS += -Wl,-rpath -Wl,$(libdir)
+ rpath = -Wl,-rpath,$(rpathdir)
else
- LDFLAGS += -Wl,+b -Wl,$(libdir)
+ rpath = -Wl,+b,$(rpathdir)
endif
# catch null pointer dereferences
MK_NO_LORDER= true
AROPT = crs
-rpath = -Wl,-rpath,$(libdir)
+rpath = -Wl,-rpath,$(rpathdir)
shlib_symbolic = -Wl,-B,symbolic
DLSUFFIX = .so
AROPT = crs
export_dynamic = -Wl,-E
-rpath = -Wl,-rpath,$(libdir)
+rpath = -Wl,-rpath,$(rpathdir)
shlib_symbolic = -Wl,-Bsymbolic
allow_nonpic_in_shlib = yes
DLSUFFIX = .so
ifdef ELF_SYSTEM
export_dynamic = -Wl,-E
-rpath = -Wl,-R$(libdir)
+rpath = -Wl,-R$(rpathdir)
shlib_symbolic = -Wl,-Bsymbolic -lc
else
-rpath = -R$(libdir)
+rpath = -R$(rpathdir)
endif
DLSUFFIX = .so
ifdef ELF_SYSTEM
export_dynamic = -Wl,-E
-rpath = -R$(libdir)
+rpath = -R$(rpathdir)
shlib_symbolic = -Wl,-Bsymbolic
endif
AROPT = crs
DLSUFFIX = .so
CFLAGS_SL =
-rpath = -rpath $(libdir)
+rpath = -rpath $(rpathdir)
%.so: %.o
$(LD) -shared -expect_unresolved '*' -o $@ $<
-# $PostgreSQL: pgsql/src/makefiles/Makefile.solaris,v 1.10 2003/11/29 19:52:12 pgsql Exp $
+# $PostgreSQL: pgsql/src/makefiles/Makefile.solaris,v 1.11 2004/11/19 00:41:39 tgl Exp $
AROPT = crs
ifeq ($(with_gnu_ld), yes)
export_dynamic = -Wl,-E
-rpath = -Wl,-rpath,$(libdir)
+rpath = -Wl,-rpath,$(rpathdir)
else
-rpath = -R$(libdir)
+rpath = -R$(rpathdir)
endif
shlib_symbolic = -Wl,-Bsymbolic
ifeq ($(ld_R_works), yes)
ifeq ($(with_gnu_ld), yes)
- rpath = -Wl,-rpath,$(libdir)
+ rpath = -Wl,-rpath,$(rpathdir)
else
- rpath = -Wl,-R$(libdir)
+ rpath = -Wl,-R$(rpathdir)
endif
endif
shlib_symbolic = -Wl,-Bsymbolic