pg_probackup
/
Makefile
89 строк · 3.3 Кб
1PROGRAM = pg_probackup2WORKDIR ?= $(CURDIR)3BUILDDIR = $(WORKDIR)/build/4PBK_GIT_REPO = https://github.com/postgrespro/pg_probackup5
6# utils
7OBJS = src/utils/configuration.o src/utils/json.o src/utils/logger.o \8src/utils/parray.o src/utils/pgut.o src/utils/thread.o src/utils/remote.o src/utils/file.o
9
10OBJS += src/archive.o src/backup.o src/catalog.o src/checkdb.o src/configure.o src/data.o \11src/delete.o src/dir.o src/fetch.o src/help.o src/init.o src/merge.o \
12src/parsexlog.o src/ptrack.o src/pg_probackup.o src/restore.o src/show.o src/stream.o \
13src/util.o src/validate.o src/datapagemap.o src/catchup.o
14
15# borrowed files
16OBJS += src/pg_crc.o src/receivelog.o src/streamutil.o \17src/xlogreader.o
18
19EXTRA_CLEAN = src/pg_crc.c \20src/receivelog.c src/receivelog.h src/streamutil.c src/streamutil.h \
21src/xlogreader.c src/instr_time.h
22
23ifdef top_srcdir24srchome := $(abspath $(top_srcdir))25else
26top_srcdir=../..27ifneq (,$(wildcard ../../../contrib/pg_probackup))28# separate build directory support
29srchome := $(abspath $(top_srcdir)/..)30else
31srchome := $(abspath $(top_srcdir))32endif
33endif
34
35# OBJS variable must be finally defined before invoking the include directive
36ifneq (,$(wildcard $(srchome)/src/bin/pg_basebackup/walmethods.c))37OBJS += src/walmethods.o38EXTRA_CLEAN += src/walmethods.c src/walmethods.h39endif
40
41ifdef USE_PGXS42PG_CONFIG = pg_config43PGXS := $(shell $(PG_CONFIG) --pgxs)44include $(PGXS)45else
46subdir=contrib/pg_probackup47top_builddir=../..48include $(top_builddir)/src/Makefile.global49include $(top_srcdir)/contrib/contrib-global.mk50endif
51
52PG_CPPFLAGS = -I$(libpq_srcdir) ${PTHREAD_CFLAGS} -Isrc -I$(srchome)/$(subdir)/src53override CPPFLAGS := -DFRONTEND $(CPPFLAGS) $(PG_CPPFLAGS)54PG_LIBS_INTERNAL = $(libpq_pgport) ${PTHREAD_CFLAGS}55
56src/utils/configuration.o: src/datapagemap.h57src/archive.o: src/instr_time.h58src/backup.o: src/receivelog.h src/streamutil.h59
60src/instr_time.h: $(srchome)/src/include/portability/instr_time.h61rm -f $@ && $(LN_S) $(srchome)/src/include/portability/instr_time.h $@62src/pg_crc.c: $(srchome)/src/backend/utils/hash/pg_crc.c63rm -f $@ && $(LN_S) $(srchome)/src/backend/utils/hash/pg_crc.c $@64src/receivelog.c: $(srchome)/src/bin/pg_basebackup/receivelog.c65rm -f $@ && $(LN_S) $(srchome)/src/bin/pg_basebackup/receivelog.c $@66ifneq (,$(wildcard $(srchome)/src/bin/pg_basebackup/walmethods.c))67src/receivelog.h: src/walmethods.h $(srchome)/src/bin/pg_basebackup/receivelog.h68else
69src/receivelog.h: $(srchome)/src/bin/pg_basebackup/receivelog.h70endif
71rm -f $@ && $(LN_S) $(srchome)/src/bin/pg_basebackup/receivelog.h $@72src/streamutil.c: $(srchome)/src/bin/pg_basebackup/streamutil.c73rm -f $@ && $(LN_S) $(srchome)/src/bin/pg_basebackup/streamutil.c $@74src/streamutil.h: $(srchome)/src/bin/pg_basebackup/streamutil.h75rm -f $@ && $(LN_S) $(srchome)/src/bin/pg_basebackup/streamutil.h $@76src/xlogreader.c: $(srchome)/src/backend/access/transam/xlogreader.c77rm -f $@ && $(LN_S) $(srchome)/src/backend/access/transam/xlogreader.c $@78src/walmethods.c: $(srchome)/src/bin/pg_basebackup/walmethods.c79rm -f $@ && $(LN_S) $(srchome)/src/bin/pg_basebackup/walmethods.c $@80src/walmethods.h: $(srchome)/src/bin/pg_basebackup/walmethods.h81rm -f $@ && $(LN_S) $(srchome)/src/bin/pg_basebackup/walmethods.h $@82
83ifeq ($(PORTNAME), aix)84CC=xlc_r85endif
86
87include packaging/Makefile.pkg88include packaging/Makefile.repo89include packaging/Makefile.test90