From dc53350652950250123d63f6342da309a41cc1d6 Mon Sep 17 00:00:00 2001 From: Sait Talha Nisanci Date: Mon, 13 Jul 2020 00:04:26 +0300 Subject: [PATCH] Update Makefile to link libbacktrace We will compile and install libbacktrace to vendor/libbacktrace/build. When it is installed the headers will be in vendor/libbacktrace/build/include and the static library file will be in vendor/libbacktrace/build/lib. --- src/backend/distributed/Makefile | 18 ++++++++++++++++-- vendor/libbacktrace/.gitignore | 1 + 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/backend/distributed/Makefile b/src/backend/distributed/Makefile index 0bf248987..cf0307582 100644 --- a/src/backend/distributed/Makefile +++ b/src/backend/distributed/Makefile @@ -7,6 +7,12 @@ safestringlib_builddir = $(citus_top_builddir)/vendor/safestringlib/build safestringlib_a = $(safestringlib_builddir)/libsafestring_static.a safestringlib_sources = $(wildcard $(safestringlib_srcdir)/safeclib/*) +libbacktrace_srcdir = $(citus_abs_top_srcdir)/vendor/libbacktrace +libbacktrace_builddir = $(citus_abs_top_srcdir)/vendor/libbacktrace/build +libbacktrace_a = $(libbacktrace_builddir)/lib/libbacktrace.a +libbacktrace_sources = $(wildcard $(libbacktrace_srcdir)/*) + + MODULE_big = citus EXTENSION = citus @@ -47,12 +53,19 @@ utils/citus_version.o: $(CITUS_VERSION_INVALIDATE) SHLIB_LINK += $(filter -lssl -lcrypto -lssleay32 -leay32, $(LIBS)) -override LDFLAGS += /usr/lib/gcc/x86_64-linux-gnu/7/libbacktrace.a -override CPPFLAGS += -I$(libpq_srcdir) -I$(safestringlib_srcdir)/include -I/usr/lib/gcc/x86_64-linux-gnu/7/include/ -L/usr/lib/gcc/x86_64-linux-gnu/7/ -lbacktrace +override LDFLAGS += $(libbacktrace_a) +override CPPFLAGS += -I$(libpq_srcdir) -I$(safestringlib_srcdir)/include -I$(libbacktrace_builddir)/include/ SQL_DEPDIR=.deps/sql SQL_BUILDDIR=build/sql +$(libbacktrace_a): $(libbacktrace_sources) + rm -rf $(libbacktrace_builddir) + mkdir -p $(libbacktrace_builddir) + cd $(libbacktrace_builddir) && $(libbacktrace_srcdir)/configure --prefix $(libbacktrace_builddir) CFLAGS=-fPIC && make install -j6 + +citus.so: $(libbacktrace_a) + $(generated_sql_files): $(citus_abs_srcdir)/build/%: % @mkdir -p $(citus_abs_srcdir)/$(SQL_DEPDIR) $(citus_abs_srcdir)/$(SQL_BUILDDIR) cd $(citus_abs_srcdir) && cpp -undef -w -P -MMD -MP -MF$(SQL_DEPDIR)/$(*F).Po -MT$@ $< > $@ @@ -72,3 +85,4 @@ install: cleanup-before-install clean-full: make clean rm -rf $(safestringlib_builddir) + rm -rf $(libbacktrace_builddir) diff --git a/vendor/libbacktrace/.gitignore b/vendor/libbacktrace/.gitignore index 86a40a0e2..281925357 100644 --- a/vendor/libbacktrace/.gitignore +++ b/vendor/libbacktrace/.gitignore @@ -3,3 +3,4 @@ *.lo *.a *.la +build/