Merge pull request #340 from citusdata/bugfix/buildsystem

Small buildsystem fixes

cr: @jasonmp85
pull/1938/head
Jason Petersen 2016-02-17 17:14:46 -07:00
commit 22cea69fa8
5 changed files with 23 additions and 13 deletions

View File

@ -15,9 +15,9 @@ all: extension csql
# build extension # build extension
extension: extension:
$(MAKE) -C src/backend/distributed/ all $(MAKE) -C src/backend/distributed/ all
install-extension: install-extension: extension
$(MAKE) -C src/backend/distributed/ install $(MAKE) -C src/backend/distributed/ install
install-headers: install-headers: extension
$(MKDIR_P) '$(includedir_server)/distributed/' $(MKDIR_P) '$(includedir_server)/distributed/'
# generated headers are located in the build directory # generated headers are located in the build directory
$(INSTALL_DATA) src/include/citus_config.h '$(includedir_server)/' $(INSTALL_DATA) src/include/citus_config.h '$(includedir_server)/'
@ -33,7 +33,7 @@ clean: clean-extension
# build csql binary # build csql binary
csql: csql:
$(MAKE) -C src/bin/csql/ all $(MAKE) -C src/bin/csql/ all
install-csql: install-csql: csql
$(MAKE) -C src/bin/csql/ install $(MAKE) -C src/bin/csql/ install
clean-csql: clean-csql:
$(MAKE) -C src/bin/csql/ clean $(MAKE) -C src/bin/csql/ clean

View File

@ -19,6 +19,9 @@ vpath_build=@vpath_build@
ifeq ($(vpath_build),yes) ifeq ($(vpath_build),yes)
VPATH:=$(citus_abs_srcdir) VPATH:=$(citus_abs_srcdir)
USE_VPATH:=$(VPATH) USE_VPATH:=$(VPATH)
citus_top_srcdir:=$(citus_abs_top_srcdir)
else
citus_top_srcdir:=$(citus_top_builddir)
endif endif
# Citus is built using PostgreSQL's pgxs # Citus is built using PostgreSQL's pgxs
@ -32,17 +35,17 @@ include $(PGXS)
# with some outdated Makefile.global. # with some outdated Makefile.global.
# Make internally restarts whenever included Makefiles are # Make internally restarts whenever included Makefiles are
# regenerated. # regenerated.
$(citus_top_builddir)/Makefile.global: $(citus_top_builddir)/Makefile.global.in @top_srcdir@/configure $(citus_top_builddir)/config.status $(citus_top_builddir)/Makefile.global: $(citus_abs_top_srcdir)/configure $(citus_top_builddir)/Makefile.global.in $(citus_top_builddir)/config.status
cd @abs_top_builddir@ && ./config.status Makefile.global cd @abs_top_builddir@ && ./config.status Makefile.global
# Ensure configuration is generated by the most recent configure, # Ensure configuration is generated by the most recent configure,
# useful for longer existing build directories. # useful for longer existing build directories.
$(citus_top_builddir)/config.status: @top_srcdir@/configure $(citus_top_builddir)/config.status: $(citus_abs_top_srcdir)/configure
cd @abs_top_builddir@ && ./config.status --recheck cd @abs_top_builddir@ && ./config.status --recheck
# Regenerate configure if configure.in changed # Regenerate configure if configure.in changed
@top_srcdir@/configure: $(citus_abs_srcdir)/configure.in $(citus_abs_top_srcdir)/configure: $(citus_abs_top_srcdir)/configure.in
cd ${citus_abs_srcdir} && ./autogen.sh cd ${citus_abs_top_srcdir} && ./autogen.sh
# If specified via configure, replace the default compiler. Normally # If specified via configure, replace the default compiler. Normally
# we'll build with the one postgres was built with. But it's useful to # we'll build with the one postgres was built with. But it's useful to

5
configure vendored
View File

@ -1893,7 +1893,9 @@ fi
# Allow to overwrite the C compiler, default to the one postgres was # Allow to overwrite the C compiler, default to the one postgres was
# compiled with # compiled with. We don't want autoconf's default CFLAGS though, so save
# those.
SAVE_CFLAGS="$CFLAGS"
ac_ext=c ac_ext=c
ac_cpp='$CPP $CPPFLAGS' ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@ -2491,6 +2493,7 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu ac_compiler_gnu=$ac_cv_c_compiler_gnu
CFLAGS="$SAVE_CFLAGS"
# check for a number of CFLAGS that make development easier # check for a number of CFLAGS that make development easier

View File

@ -52,8 +52,11 @@ fi
AC_SUBST(vpath_build) AC_SUBST(vpath_build)
# Allow to overwrite the C compiler, default to the one postgres was # Allow to overwrite the C compiler, default to the one postgres was
# compiled with # compiled with. We don't want autoconf's default CFLAGS though, so save
# those.
SAVE_CFLAGS="$CFLAGS"
AC_PROG_CC([$($PG_CONFIG --cc)]) AC_PROG_CC([$($PG_CONFIG --cc)])
CFLAGS="$SAVE_CFLAGS"
# check for a number of CFLAGS that make development easier # check for a number of CFLAGS that make development easier

View File

@ -7,7 +7,8 @@ MODULE_big = citus
EXTENSION = citus EXTENSION = citus
EXTVERSION = 5.0 EXTVERSION = 5.0
DATA_built = $(EXTENSION)--$(EXTVERSION).sql DATA_built = $(EXTENSION)--$(EXTVERSION).sql
SCRIPTS = $(wildcard $(citus_top_builddir)/src/bin/scripts/*) # Install scripts in build and/or source directory, but only once if those are the same
SCRIPTS = $(sort $(wildcard $(citus_top_builddir)/src/bin/scripts/* $(citus_top_srcdir)/src/bin/scripts/*))
# directories with source files # directories with source files
SUBDIRS = . commands executor master planner relay test utils worker SUBDIRS = . commands executor master planner relay test utils worker
@ -17,13 +18,13 @@ SUBDIRS = . commands executor master planner relay test utils worker
OBJS += \ OBJS += \
$(patsubst $(citus_abs_srcdir)/%.c,%.o,$(foreach dir,$(SUBDIRS), $(wildcard $(citus_abs_srcdir)/$(dir)/*.c))) $(patsubst $(citus_abs_srcdir)/%.c,%.o,$(foreach dir,$(SUBDIRS), $(wildcard $(citus_abs_srcdir)/$(dir)/*.c)))
# be explicit about the default target
all:
# define build process for latest install file # define build process for latest install file
$(EXTENSION)--$(EXTVERSION).sql: $(EXTENSION).sql $(EXTENSION)--$(EXTVERSION).sql: $(EXTENSION).sql
cat $^ > $@ cat $^ > $@
# be explicit about the default target
all:
NO_PGXS = 1 NO_PGXS = 1
SHLIB_LINK = $(libpq) SHLIB_LINK = $(libpq)