1 |
# Makefile for erServer demonstration implementation |
2 |
# (c) 2000 Vadim Mikheev, PostgreSQL Inc. |
3 |
|
4 |
#vpath %.pl perl |
5 |
#vpath %.pm perl |
6 |
|
7 |
subdir = contrib/rserv |
8 |
top_builddir = ../.. |
9 |
include $(top_builddir)/src/Makefile.global |
10 |
|
11 |
NAME = rserv |
12 |
OBJS = $(NAME).o |
13 |
DOCS = README.$(NAME) |
14 |
SQLS = master.sql slave.sql |
15 |
TCLS = RservTest |
16 |
PERLS = MasterInit MasterAddTable Replicate MasterSync CleanLog |
17 |
PERLS += SlaveInit SlaveAddTable GetSyncID |
18 |
PERLS += PrepareSnapshot ApplySnapshot |
19 |
LIBS = RServ.pm |
20 |
SCRIPTS = InitRservTest |
21 |
MODS = $(OBJS:.o=$(DLSUFFIX)) |
22 |
|
23 |
override CPPFLAGS += -I$(srcdir) |
24 |
override CFLAGS += $(CFLAGS_SL) |
25 |
|
26 |
INPUTFILES = $(wildcard *.in) |
27 |
CLEANFILES = $(INPUTFILES:.in=) |
28 |
CLEANFILES += $(OBJS) $(MODS) |
29 |
|
30 |
.PHONY: all install installdirs tarball |
31 |
|
32 |
all: $(SQLS) $(TCLS) $(PERLS) $(SCRIPTS) $(MODS) |
33 |
|
34 |
install: all installdirs |
35 |
$(INSTALL_DATA) $(SQLS) $(libdir)/contrib |
36 |
$(INSTALL_SCRIPT) $(TCLS) $(PERLS) $(SCRIPTS) $(bindir) |
37 |
$(INSTALL_SCRIPT) $(LIBS) $(libdir)/contrib |
38 |
$(INSTALL_SHLIB) $(MODS) $(libdir)/contrib |
39 |
$(INSTALL_DATA) $(DOCS) $(docdir)/contrib/$(NAME) |
40 |
|
41 |
installdirs: |
42 |
$(mkinstalldirs) $(datadir)/contrib $(libdir)/contrib $(docdir)/contrib/$(NAME) |
43 |
|
44 |
%.sql: %.sql.in |
45 |
rm -f $@; \ |
46 |
C=`pwd`; \ |
47 |
sed -e "s:_OBJWD_:$(libdir)/contrib:g" \ |
48 |
-e "s:_DLSUFFIX_:$(DLSUFFIX):g" < $< > $@ |
49 |
|
50 |
%: %.in |
51 |
sed -e "s:_OBJWD_:$(libdir)/contrib:g" \ |
52 |
-e "s:_DLSUFFIX_:$(DLSUFFIX):g" \ |
53 |
-e "s:@SQLDIR@:$(libdir)/contrib:g" \ |
54 |
-e "s:@BINDIR@:$(bindir):g" \ |
55 |
-e "s:@LIBDIR@:$(libdir)/contrib:g" < $< > $@ |
56 |
chmod 775 $@ |
57 |
|
58 |
clean: |
59 |
# @echo "Removing $(CLEANFILES)" |
60 |
rm -f $(CLEANFILES) |