mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-21 08:29:39 +08: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 846e91e022
.
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…
Reference in New Issue
Block a user