diff --git a/contrib/hstore_plperl/Makefile b/contrib/hstore_plperl/Makefile index e7fbf23871..19a8ab4493 100644 --- a/contrib/hstore_plperl/Makefile +++ b/contrib/hstore_plperl/Makefile @@ -1,9 +1,10 @@ # contrib/hstore_plperl/Makefile MODULE_big = hstore_plperl -OBJS = hstore_plperl.o +OBJS = hstore_plperl.o $(WIN32RES) +PGFILEDESC = "hstore_plperl - hstore transform for plperl" -PG_CPPFLAGS = -I$(top_srcdir)/src/pl/plperl -I$(top_srcdir)/contrib/hstore -I$(perl_archlibexp)/CORE +PG_CPPFLAGS = -I$(top_srcdir)/src/pl/plperl -I$(top_srcdir)/contrib/hstore EXTENSION = hstore_plperl hstore_plperlu DATA = hstore_plperl--1.0.sql hstore_plperlu--1.0.sql @@ -22,7 +23,15 @@ include $(top_builddir)/src/Makefile.global include $(top_srcdir)/contrib/contrib-global.mk endif -# see plperl ifeq ($(PORTNAME), win32) +# these settings are the same as for plperl override CPPFLAGS += -DPLPERL_HAVE_UID_GID -Wno-comment +# This means we need an in-tree build on Windows, not a pgxs build +SHLIB_LINK += ../hstore/libhstore.a $(wildcard ../../src/pl/plperl/libperl*.a) endif + +# As with plperl we need to make sure that the CORE directory is included +# last, probably because it sometimes contains some header files with names +# that clash with some of ours, or with some that we include, notably on +# Windows. +override CPPFLAGS := $(CPPFLAGS) -I$(perl_archlibexp)/CORE diff --git a/contrib/hstore_plpython/Makefile b/contrib/hstore_plpython/Makefile index f5a6a882b5..6125ea4d2c 100644 --- a/contrib/hstore_plpython/Makefile +++ b/contrib/hstore_plpython/Makefile @@ -1,7 +1,8 @@ # contrib/hstore_plpython/Makefile MODULE_big = hstore_plpython$(python_majorversion) -OBJS = hstore_plpython.o +OBJS = hstore_plpython.o $(WIN32RES) +PGFILEDESC = "hstore_plpython - hstore transform for plpython" PG_CPPFLAGS = -I$(top_srcdir)/src/pl/plpython $(python_includespec) -I$(top_srcdir)/contrib/hstore @@ -22,6 +23,11 @@ include $(top_builddir)/src/Makefile.global include $(top_srcdir)/contrib/contrib-global.mk endif +ifeq ($(PORTNAME), win32) +# This means we need an in-tree build on Windows, not a pgxs build +SHLIB_LINK += ../hstore/libhstore.a $(wildcard ../../src/pl/plpython/libpython*.a) $(wildcard ../../src/pl/plpython/libplpython*.a) +endif + REGRESS_OPTS = --load-extension=hstore ifeq ($(python_majorversion),2) REGRESS_OPTS += --load-extension=plpythonu --load-extension=hstore_plpythonu diff --git a/contrib/ltree_plpython/Makefile b/contrib/ltree_plpython/Makefile index c358cfa88b..a0c107c2c3 100644 --- a/contrib/ltree_plpython/Makefile +++ b/contrib/ltree_plpython/Makefile @@ -1,7 +1,8 @@ # contrib/ltree_plpython/Makefile MODULE_big = ltree_plpython$(python_majorversion) -OBJS = ltree_plpython.o +OBJS = ltree_plpython.o $(WIN32RES) +PGFILEDESC = "ltree_plpython - ltree transform for plpython" PG_CPPFLAGS = -I$(top_srcdir)/src/pl/plpython $(python_includespec) -I$(top_srcdir)/contrib/ltree @@ -22,6 +23,11 @@ include $(top_builddir)/src/Makefile.global include $(top_srcdir)/contrib/contrib-global.mk endif +ifeq ($(PORTNAME), win32) +# This means we need an in-tree build on Windows, not a pgxs build +SHLIB_LINK += $(wildcard ../../src/pl/plpython/libpython*.a) +endif + REGRESS_OPTS = --load-extension=ltree ifeq ($(python_majorversion),2) REGRESS_OPTS += --load-extension=plpythonu --load-extension=ltree_plpythonu