summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2002-10-09 16:23:55 +0000
committerBruce Momjian <bruce@momjian.us>2002-10-09 16:23:55 +0000
commit0215dc9b0f2b0f8cdd22642cf93694fc101ab93e (patch)
tree2ee9ddcdcf4c04816894ff80dd01f3006d0b6d93
parent33a6b67b517e55908fa8ad96d5e8a3aaac5c751d (diff)
Well, this patch makes Makefile for contrib/rserv use the
contrib/contrib-global.mk library and _generally_ behave like Makefiles for other contrib modules. Besides it fixes Perl's interpolation of $libdir variable, which should be passed to backend instead. This patch is done against PostgreSQL 7.3b2 Besides, I want to thank Peter Eisentraut for his very friendly and helpful attitude and politely ask him to check whether contrib modules actually continue to work after he implements another major change to their build process. Alexey Borzov
-rw-r--r--contrib/rserv/Makefile44
-rw-r--r--contrib/rserv/MasterInit.in8
2 files changed, 20 insertions, 32 deletions
diff --git a/contrib/rserv/Makefile b/contrib/rserv/Makefile
index 984a839415d..f6b202db505 100644
--- a/contrib/rserv/Makefile
+++ b/contrib/rserv/Makefile
@@ -6,47 +6,33 @@ top_builddir = ../..
include $(top_builddir)/src/Makefile.global
NAME = rserv
-SONAME = $(NAME)$(DLSUFFIX)
-SQLS = master.sql slave.sql
-TCLS = RservTest
-PERLS = MasterInit MasterAddTable Replicate MasterSync CleanLog
-PERLS += SlaveInit SlaveAddTable GetSyncID
-PERLS += PrepareSnapshot ApplySnapshot
-SCRIPTS = InitRservTest
+MODULES = rserv
+DATA = RServ.pm
+DATA_built = master.sql slave.sql
+SQLS = $(DATA_built)
+DOCS = README.rserv
+SCRIPTS = RservTest
+SCRIPTS += MasterInit MasterAddTable Replicate MasterSync CleanLog
+SCRIPTS += SlaveInit SlaveAddTable GetSyncID
+SCRIPTS += PrepareSnapshot ApplySnapshot
+SCRIPTS += InitRservTest
+EXTRA_CLEAN = $(SCRIPTS)
override CPPFLAGS := -I$(srcdir) $(CPPFLAGS)
override CFLAGS += $(CFLAGS_SL)
SHLIB_LINK = $(BE_DLLLIBS)
-all: $(SQLS) $(TCLS) $(PERLS) $(SCRIPTS) $(SONAME)
+all: $(SCRIPTS) $(SQLS) $(addsuffix $(DLSUFFIX), $(MODULES))
-%.sql: %.sql.in
+$(SQLS): %.sql: %.sql.in
sed 's,@MODULE_FILENAME@,$$libdir/$(NAME),g' $< >$@
-$(PERLS) $(TCLS) $(SCRIPTS): %: %.in
+$(SCRIPTS): %: %.in
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 $@
-
-install: all installdirs
- for file in $(SQLS); do \
- $(INSTALL_DATA) $$file $(DESTDIR)$(datadir)/contrib || exit ; \
- done
- for file in $(TCLS) $(PERLS) $(SCRIPTS); do \
- $(INSTALL_SCRIPT) $$file $(DESTDIR)$(bindir) || exit ; \
- done
- $(INSTALL_DATA) $(srcdir)/RServ.pm $(DESTDIR)$(datadir)/contrib
- $(INSTALL_SHLIB) $(SONAME) $(DESTDIR)$(pkglibdir)
- $(INSTALL_DATA) $(srcdir)/README.$(NAME) $(DESTDIR)$(docdir)/contrib
-
-installdirs:
- $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(datadir)/contrib \
- $(DESTDIR)$(pkglibdir) $(DESTDIR)$(docdir)/contrib
-
-
-clean distclean maintainer-clean:
- rm -f $(SQLS) $(TCLS) $(PERLS) $(SCRIPTS) $(SONAME) $(NAME).o
+include $(top_srcdir)/contrib/contrib-global.mk
diff --git a/contrib/rserv/MasterInit.in b/contrib/rserv/MasterInit.in
index 1bfe1c9776e..0c9b648c21d 100644
--- a/contrib/rserv/MasterInit.in
+++ b/contrib/rserv/MasterInit.in
@@ -22,6 +22,8 @@ if (defined($opt_help) || (scalar(@ARGV) < 1)) {
exit ((scalar(@ARGV) < 1)? 1:0);
}
+my $module_filename = '@MODULE_FILENAME@';
+
my $master = $ARGV[0] || "master";
my $minfo = "dbname=$master";
@@ -90,15 +92,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 trigger" .
- " AS '@MODULE_FILENAME@' 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 '@MODULE_FILENAME@' 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 '@MODULE_FILENAME@' LANGUAGE 'c'");
+ " AS '$module_filename' LANGUAGE 'c'");
RollbackAndQuit($conn) if ($result->resultStatus ne PGRES_COMMAND_OK);
$result = $conn->exec("COMMIT");