mirror of
https://github.com/postgres/postgres.git
synced 2025-05-01 01:04:50 +03:00
In mingw builds, make our own import library for libperl.
Borrow the method already used by plpython. This is pretty ugly, but it might fix the build failure exhibited by buildfarm member narwhal since commit 846e91e0223cf9f2821c3ad4dfffffbb929cb027. Hiroshi Inoue
This commit is contained in:
parent
a7983e989d
commit
02b61dd08f
@ -36,6 +36,27 @@ DATA = plperl.control plperl--1.0.sql plperl--unpackaged--1.0.sql \
|
||||
|
||||
PERLCHUNKS = plc_perlboot.pl plc_trusted.pl
|
||||
|
||||
# Perl on win32 ships with import libraries only for Microsoft Visual C++,
|
||||
# which are not compatible with mingw gcc. Therefore we need to build a
|
||||
# new import library to link with.
|
||||
ifeq ($(PORTNAME), win32)
|
||||
|
||||
perlwithver := $(subst -l,,$(filter -l%, $(perl_embed_ldflags)))
|
||||
PERLDLL := $(dir $(subst ',,$(PERL)))$(perlwithver).dll
|
||||
# we no longer want to include the original -l spec in SHLIB_LINK
|
||||
override perl_embed_ldflags :=
|
||||
|
||||
OBJS += lib$(perlwithver).a
|
||||
|
||||
lib$(perlwithver).a: $(perlwithver).def
|
||||
dlltool --dllname $(perlwithver).dll --def $(perlwithver).def --output-lib lib$(perlwithver).a
|
||||
|
||||
$(perlwithver).def: $(PERLDLL)
|
||||
pexports $^ > $@
|
||||
|
||||
endif # win32
|
||||
|
||||
|
||||
SHLIB_LINK = $(perl_embed_ldflags)
|
||||
|
||||
REGRESS_OPTS = --dbname=$(PL_TESTDB) --load-extension=plperl --load-extension=plperlu
|
||||
@ -105,6 +126,9 @@ submake:
|
||||
clean distclean maintainer-clean: clean-lib
|
||||
rm -f SPI.c Util.c $(OBJS) perlchunks.h plperl_opmask.h
|
||||
rm -rf $(pg_regress_clean_files)
|
||||
ifeq ($(PORTNAME), win32)
|
||||
rm -f $(perlwithver).def
|
||||
endif
|
||||
|
||||
else # can't build
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user