1# ---------- 2# Makefile for src/slony_logshipper 3# 4# Copyright (c) 2003-2009, PostgreSQL Global Development Group 5# Author: Jan Wieck, Afilias USA INC. 6# 7# 8# ---------- 9 10slony_subdir = src/slony_logshipper 11slony_top_builddir = ../.. 12SLFILEDESC="Slony command interpreter" 13include $(slony_top_builddir)/Makefile.global 14CPPFLAGS:=$(CPPFLAGS_CLIENT) 15ifeq ($(PORTNAME), aix) 16 CFLAGS += -D_LARGE_FILES 17endif 18 19CFLAGS += -I$(slony_top_builddir) -DPGSHARE="\"$(pgsharedir)\"" 20 21 22PROG = slony_logshipper 23 24ifeq ($(PORTNAME), win) 25PROG = slony_logshipper.exe 26LDFLAG = $(LDFLAG) -lpgport 27endif 28ifeq ($(PORTNAME), win32) 29PROG = slony_logshipper.exe 30LDFLAG = $(LDFLAG) -lpgport 31endif 32 33OBJS = \ 34 slony_logshipper.o \ 35 dbutil.o \ 36 ipcutil.o \ 37 parser.o $(WIN32RES) \ 38 ../parsestatements/scanner.o \ 39 scan.o 40 41DISTFILES = Makefile $(wildcard *.c) $(wildcard *.h) $(wildcard *.l) $(wildcard *.y) 42 43ALL = \ 44 $(PROG) 45 46 47all: $(ALL) 48 49$(PROG): $(OBJS) 50 $(CC) $(CFLAGS) $(OBJS) $(LDFLAGS) -o $(PROG) 51slony_logshipper.o: slony_logshipper.c slony_logshipper.h 52dbutil.o: dbutil.c slony_logshipper.h 53parser.o: parser.c scan.c 54parser.c: parser.y slony_logshipper.h 55ifdef YACC 56 $(YACC) -d $(YFLAGS) $< 57 mv -f y.tab.c parser.c 58else 59 @echo "Missing yacc $< $@" 60 @exit 1 61endif 62 63scan.c: SCANNER_HEADER=scan.h 64scan.c: scan.l slony_logshipper.h 65ifdef FLEX 66 $(FLEX) $(FLEXFLAGS) --header-file=$(SCANNER_HEADER) -o'$@' $< 67else 68 @echo "Missing flex $< $@" 69 @exit 70endif 71 72clean distclean: 73 rm -f $(ALL) $(OBJS) $(PROG).core 74 75maintainer-clean: clean 76 rm -f parser.c scan.c y.tab.h 77 78install: all installdirs 79 $(INSTALL_SCRIPT) $(PROG) $(DESTDIR)$(slonbindir) 80 81 82installdirs: 83 $(mkinstalldirs) $(DESTDIR)$(slonbindir) 84 85 86distdir: $(DISTFILES) 87 mkdir $(distdir)/$(subdir) 88 -chmod 777 $(distdir)/$(subdir) 89 for file in $(DISTFILES) ; do \ 90 cp $$file $(distdir)/$(subdir)/$$file || exit; \ 91 done 92