1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-31 22:04:40 +03:00

Install dynamically loadable modules into a private subdirectory

under libdir, for a cleaner separation in the installation layout
and compatibility with binary packaging standards.  Point backend's
default search location there.  The contrib modules are also
installed in the said location, giving them the benefit of the
default search path as well.  No changes in user interface
nevertheless.
This commit is contained in:
Peter Eisentraut
2001-09-16 16:11:11 +00:00
parent d20a50de33
commit 264f8f2b6c
21 changed files with 123 additions and 88 deletions

View File

@ -1,4 +1,4 @@
# $Header: /cvsroot/pgsql/contrib/contrib-global.mk,v 1.1 2001/09/06 10:49:29 petere Exp $
# $Header: /cvsroot/pgsql/contrib/contrib-global.mk,v 1.2 2001/09/16 16:11:08 petere Exp $
# This file contains generic rules to build many kinds of simple
# contrib modules. You only need to set a few variables and include
@ -78,8 +78,8 @@ ifneq (,$(DATA)$(DATA_built))
endif # DATA
ifdef MODULES
@for file in $(addsuffix $(DLSUFFIX), $(MODULES)); do \
echo "$(INSTALL_SHLIB) $$file $(DESTDIR)$(libdir)/contrib"; \
$(INSTALL_SHLIB) $$file $(DESTDIR)$(libdir)/contrib; \
echo "$(INSTALL_SHLIB) $$file $(DESTDIR)$(pkglibdir)"; \
$(INSTALL_SHLIB) $$file $(DESTDIR)$(pkglibdir); \
done
endif # MODULES
ifdef DOCS
@ -92,12 +92,12 @@ ifdef PROGRAM
$(INSTALL_PROGRAM) $(PROGRAM)$(X) $(DESTDIR)$(bindir)
endif # PROGRAM
ifdef MODULE_big
$(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(libdir)/contrib/$(MODULE_big)$(DLSUFFIX)
$(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/$(MODULE_big)$(DLSUFFIX)
endif # MODULE_big
ifdef SCRIPTS
@for file in $(addprefix $(srcdir)/, $(SCRIPTS)); do \
echo "$(INSTALL_SCRIPT) $$file $(DESTDIR)$(bindir)"; \
$(INSTALL_DATA) $$file $(DESTDIR)$(bindir); \
$(INSTALL_SCRIPT) $$file $(DESTDIR)$(bindir); \
done
endif # SCRIPTS
@ -107,7 +107,7 @@ ifneq (,$(DATA)$(DATA_built))
$(mkinstalldirs) $(DESTDIR)$(datadir)/contrib
endif
ifneq (,$(MODULES)$(MODULE_big))
$(mkinstalldirs) $(DESTDIR)$(libdir)/contrib
$(mkinstalldirs) $(DESTDIR)$(pkglibdir)
endif
ifdef DOCS
$(mkinstalldirs) $(DESTDIR)$(docdir)/contrib
@ -122,7 +122,7 @@ ifneq (,$(DATA)$(DATA_built))
rm -f $(addprefix $(DESTDIR)$(datadir)/contrib/, $(DATA) $(DATA_built))
endif
ifdef MODULES
rm -f $(addprefix $(DESTDIR)$(libdir)/contrib/, $(addsuffix $(DLSUFFIX), $(MODULES)))
rm -f $(addprefix $(DESTDIR)$(pkglibdir)/, $(addsuffix $(DLSUFFIX), $(MODULES)))
endif
ifdef DOCS
rm -f $(addprefix $(DESTDIR)$(docdir)/contrib/, $(DOCS))
@ -131,7 +131,7 @@ ifdef PROGRAM
rm -f $(DESTDIR)$(bindir)/$(PROGRAM)$(X)
endif
ifdef MODULE_big
rm -f $(DESTDIR)$(libdir)/contrib/$(MODULE_big)$(DLSUFFIX)
rm -f $(DESTDIR)$(pkglibdir)/$(MODULE_big)$(DLSUFFIX)
endif
ifdef SCRIPTS
rm -f $(addprefix $(DESTDIR)$(bindir)/, $(SCRIPTS))
@ -193,7 +193,7 @@ endif # REGRESS
ifneq (,$(MODULES)$(MODULE_big))
%.sql: %.sql.in
sed 's,MODULE_PATHNAME,$(libdir)/contrib/$*,g' $< >$@
sed 's,MODULE_PATHNAME,$$libdir/$*,g' $< >$@
endif
ifdef PROGRAM

View File

@ -1,5 +1,5 @@
#
# $Header: /cvsroot/pgsql/contrib/pgcrypto/Makefile,v 1.5 2001/08/21 00:42:41 momjian Exp $
# $Header: /cvsroot/pgsql/contrib/pgcrypto/Makefile,v 1.6 2001/09/16 16:11:09 petere Exp $
#
subdir = contrib/pgcrypto
@ -47,13 +47,14 @@ SO_MINOR_VERSION = 1
override CPPFLAGS += $(CRYPTO_CFLAGS) -I$(srcdir)
override DLLLIBS := $(BE_DLLLIBS) $(DLLLIBS)
rpath :=
all: all-lib $(NAME).sql
include $(top_srcdir)/src/Makefile.shlib
$(NAME).sql: $(NAME).sql.in
sed 's,@MODULE_FILENAME@,$(libdir)/contrib/pgcrypto$(DLSUFFIX),g' $< >$@
sed 's,@MODULE_FILENAME@,$$libdir/$(NAME),g' $< >$@
rijndael.o: rijndael.tbl
@ -62,15 +63,15 @@ rijndael.tbl:
./gen-rtab > rijndael.tbl
install: all installdirs
$(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(libdir)/contrib/pgcrypto$(DLSUFFIX)
$(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(pkglibdir)/pgcrypto$(DLSUFFIX)
$(INSTALL_DATA) $(NAME).sql $(DESTDIR)$(datadir)/contrib/$(NAME).sql
$(INSTALL_DATA) README.$(NAME) $(DESTDIR)$(docdir)/contrib/README.$(NAME)
installdirs:
$(mkinstalldirs) $(libdir)/contrib $(datadir)/contrib $(docdir)/contrib
$(mkinstalldirs) $(pkglibdir) $(datadir)/contrib $(docdir)/contrib
uninstall: uninstall-lib
rm -f $(DESTDIR)$(libdir)/contrib/pgcrypto$(DLSUFFIX) $(datadir)/contrib/$(NAME).sql $(docdir)/contrib/README.$(NAME)
rm -f $(DESTDIR)$(pkglibdir)/pgcrypto$(DLSUFFIX) $(datadir)/contrib/$(NAME).sql $(docdir)/contrib/README.$(NAME)
clean distclean maintainer-clean: clean-lib
rm -f $(OBJS) $(NAME).sql gen-rtab

View File

@ -22,15 +22,13 @@ override DLLLIBS := $(BE_DLLLIBS) $(DLLLIBS)
all: $(SQLS) $(TCLS) $(PERLS) $(SCRIPTS) $(SONAME)
%.sql: %.sql.in
sed -e "s:_OBJWD_:$(libdir)/contrib:g" \
-e "s:_DLSUFFIX_:$(DLSUFFIX):g" $< >$@
sed 's,@MODULE_FILENAME@,$$libdir/$(NAME),g' $< >$@
$(PERLS) $(TCLS) $(SCRIPTS): %: %.in
sed -e "s:_OBJWD_:$(libdir)/contrib:g" \
-e "s:_DLSUFFIX_:$(DLSUFFIX):g" \
-e "s:@SQLDIR@:$(datadir)/contrib:g" \
-e "s:@BINDIR@:$(bindir):g" \
-e "s:@LIBDIR@:$(datadir)/contrib:g" $< >$@
sed -e 's,@MODULE_FILENAME@,$$libdir/$(NAME),g' \
-e 's:@SQLDIR@:$(datadir)/contrib:g' \
-e 's:@BINDIR@:$(bindir):g' \
-e 's:@LIBDIR@:$(datadir)/contrib:g' $< >$@
chmod a+x $@
@ -42,12 +40,12 @@ install: all installdirs
$(INSTALL_SCRIPT) $$file $(DESTDIR)$(bindir) || exit ; \
done
$(INSTALL_DATA) $(srcdir)/RServ.pm $(DESTDIR)$(datadir)/contrib
$(INSTALL_SHLIB) $(SONAME) $(DESTDIR)$(libdir)/contrib
$(INSTALL_SHLIB) $(SONAME) $(DESTDIR)$(pkglibdir)
$(INSTALL_DATA) $(srcdir)/README.$(NAME) $(DESTDIR)$(docdir)/contrib
installdirs:
$(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(datadir)/contrib \
$(DESTDIR)$(libdir)/contrib $(DESTDIR)$(docdir)/contrib
$(DESTDIR)$(pkglibdir) $(DESTDIR)$(docdir)/contrib
clean distclean maintainer-clean:

View File

@ -90,15 +90,15 @@ $result = $conn->exec("create sequence _rserv_sync_seq_");
RollbackAndQuit($conn) if ($result->resultStatus ne PGRES_COMMAND_OK);
$result = $conn->exec("CREATE FUNCTION _rserv_log_() RETURNS opaque" .
" AS '_OBJWD_/rserv_DLSUFFIX_' LANGUAGE 'c'");
" AS '@MODULE_FILENAME@' LANGUAGE 'c'");
RollbackAndQuit($conn) if ($result->resultStatus ne PGRES_COMMAND_OK);
$result = $conn->exec("CREATE FUNCTION _rserv_sync_(int4) RETURNS int4" .
" AS '_OBJWD_/rserv_DLSUFFIX_' LANGUAGE 'c'");
" AS '@MODULE_FILENAME@' LANGUAGE 'c'");
RollbackAndQuit($conn) if ($result->resultStatus ne PGRES_COMMAND_OK);
$result = $conn->exec("CREATE FUNCTION _rserv_debug_(int4) RETURNS int4" .
" AS '_OBJWD_/rserv_DLSUFFIX_' LANGUAGE 'c'");
" AS '@MODULE_FILENAME@' LANGUAGE 'c'");
RollbackAndQuit($conn) if ($result->resultStatus ne PGRES_COMMAND_OK);
$result = $conn->exec("COMMIT");

View File

@ -80,7 +80,7 @@ drop function _rserv_log_();
CREATE FUNCTION _rserv_log_()
RETURNS opaque
AS '_OBJWD_/rserv_DLSUFFIX_'
AS '@MODULE_FILENAME@'
LANGUAGE 'c'
;
@ -88,7 +88,7 @@ drop function _rserv_sync_(int4);
CREATE FUNCTION _rserv_sync_(int4)
RETURNS int4
AS '_OBJWD_/rserv_DLSUFFIX_'
AS '@MODULE_FILENAME@'
LANGUAGE 'c'
;
@ -96,6 +96,6 @@ drop function _rserv_debug_(int4);
CREATE FUNCTION _rserv_debug_(int4)
RETURNS int4
AS '_OBJWD_/rserv_DLSUFFIX_'
AS '@MODULE_FILENAME@'
LANGUAGE 'c'
;