Peter Eisentraut <peter_e@gmx.net> writes:
> Tom Lane writes:
>> On HPUX 10.20, using perl 5.6.1, plperl builds without complaint but
>> SIGSEGV's upon use. AFAIR this worked last time I tried it; any idea
>> what you might have changed?
> I have written it so that the commands that are executed during the build
> should be the same. Can you send me the build output from current and
> from before the change (7.2 should work), and the generated Makefile from
> before the change?
Attached. However, I have just found that in fact the 7.2 build does
not work either :-( ... which is peculiar, because it worked fine in
January. (I think. It could be that I tested the changes I made in
January on a different machine --- can't recall for sure. I am pretty
sure that I tested plperl on this machine last June.)
I am suspicious of the -D symbols that were used before and are not
being supplied now. (A less appetizing prospect is that gcc code just
plain won't interoperate with cc-generated code.) The perl installation
is vanilla 5.6.1 configuration except for requesting that a shared
libperl be built.
regards, tom lane
Current sources "make" log:
make[3]: Entering directory `/home/postgres/pgsql/src/pl/plperl'
gcc -O1 -g -fPIC -I. -I/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE -I../../../src/include -c -o plperl.o plperl.c
gcc -O1 -g -fPIC -I. -I/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE -I../../../src/include -c -o eloglvl.o eloglvl.c
/opt/perl5.6.1/bin/perl /opt/perl5.6.1/lib/5.6.1/ExtUtils/xsubpp -typemap /opt/perl5.6.1/lib/5.6.1/ExtUtils/typemap
SPI.xs>SPI.c
gcc -O1 -g -fPIC -I. -I/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE -I../../../src/include -c -o SPI.o SPI.c
ar crs libplperl.a `lorder plperl.o eloglvl.o SPI.o | tsort`
ranlib libplperl.a
/usr/ccs/bin/ld -b +b /home/postgres/testversion/lib plperl.o eloglvl.o SPI.o -L/usr/local/lib
/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/auto/DynaLoader/DynaLoader.a-L/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE -lperl
-lnsl_s-ldld -lm -lc -lndir -lcrypt -lsec -o libplperl.sl
/usr/ccs/bin/ld: (Warning) At least one PA 2.0 object file
(/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/auto/DynaLoader/DynaLoader.a(DynaLoader.o))was detected. The linked output may not
runon a PA 1.x system.
rm -f libplperl.sl.0
ln -s libplperl.sl libplperl.sl.0
make[3]: Leaving directory `/home/postgres/pgsql/src/pl/plperl'
REL7_2 "make" log:
make[3]: Entering directory `/home/postgres/REL7_2/pgsql/src/pl/plperl'
plperl_installdir='$(DESTDIR)/home/postgres/version72/lib' \
/opt/perl5.6.1/bin/perl Makefile.PL INC='-I. -I../../../src/include'
Writing Makefile for plperl
make -f Makefile all VPATH=
make[4]: Entering directory `/home/postgres/REL7_2/pgsql/src/pl/plperl'
cc -c -I. -I../../../src/include -D_HPUX_SOURCE -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Ae -O
-DVERSION=\"0.10\" -DXS_VERSION=\"0.10\" +z -I/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE plperl.c
cpp: "perl.h", line 2155: warning 2001: Redefinition of macro DEBUG.
cc: "plperl.c", line 244: warning 558: Empty declaration.
cc -c -I. -I../../../src/include -D_HPUX_SOURCE -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Ae -O
-DVERSION=\"0.10\" -DXS_VERSION=\"0.10\" +z -I/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE eloglvl.c
/opt/perl5.6.1/bin/perl -I/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0 -I/opt/perl5.6.1/lib/5.6.1
/opt/perl5.6.1/lib/5.6.1/ExtUtils/xsubpp -typemap /opt/perl5.6.1/lib/5.6.1/ExtUtils/typemap SPI.xs > SPI.c
cc -c -I. -I../../../src/include -D_HPUX_SOURCE -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Ae -O
-DVERSION=\"0.10\" -DXS_VERSION=\"0.10\" +z -I/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE SPI.c
cpp: "perl.h", line 2155: warning 2001: Redefinition of macro DEBUG.
Running Mkbootstrap for plperl ()
chmod 644 plperl.bs
rm -f blib/arch/auto/plperl/plperl.sl
LD_RUN_PATH="" ld -b +vnocompatwarnings -L/usr/local/lib plperl.o eloglvl.o SPI.o -L/usr/local/lib
/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/auto/DynaLoader/DynaLoader.a-L/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE -lperl
-lnsl_s-ldld -lm -lc -lndir -lcrypt -lsec -o blib/arch/auto/plperl/plperl.sl
chmod 755 blib/arch/auto/plperl/plperl.sl
cp plperl.bs blib/arch/auto/plperl/plperl.bs
chmod 644 blib/arch/auto/plperl/plperl.bs
make[4]: Leaving directory `/home/postgres/REL7_2/pgsql/src/pl/plperl'
make[3]: Leaving directory `/home/postgres/REL7_2/pgsql/src/pl/plperl'
REL7_2 generated Makefile:
# This Makefile is for the plperl extension to perl.
#
# It was generated automatically by MakeMaker version
# 5.45 (Revision: 1.222) from the contents of
# Makefile.PL. Don't edit this file, edit Makefile.PL instead.
#
# ANY CHANGES MADE HERE WILL BE LOST!
#
# MakeMaker ARGV: (q[INC=-I. -I../../../src/include])
#
# MakeMaker Parameters:
# NAME => q[plperl]
# OBJECT => q[plperl.o eloglvl.o SPI.o]
# XS => { SPI.xs=>q[SPI.c] }
# dynamic_lib => { OTHERLDFLAGS=>q[ -L/usr/local/lib
/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/auto/DynaLoader/DynaLoader.a-L/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE -lperl
-lnsl_s-ldld -lm -lc -lndir -lcrypt -lsec ] }
# --- MakeMaker post_initialize section:
# --- MakeMaker const_config section:
# These definitions are from config.sh (via /opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/Config.pm)
# They may have been overridden via Makefile.PL or on the command line
AR = ar
CC = cc
CCCDLFLAGS = +z
CCDLFLAGS = -Wl,-E -Wl,-B,deferred
DLEXT = sl
DLSRC = dl_hpux.xs
LD = ld
LDDLFLAGS = -b +vnocompatwarnings -L/usr/local/lib
LDFLAGS = -L/usr/local/lib
LIBC = /lib/libc.sl
LIB_EXT = .a
OBJ_EXT = .o
OSNAME = hpux
OSVERS = 10.20
RANLIB = :
SO = sl
EXE_EXT =
FULL_AR = /usr/bin/ar
# --- MakeMaker constants section:
AR_STATIC_ARGS = cr
NAME = plperl
DISTNAME = plperl
NAME_SYM = plperl
VERSION = 0.10
VERSION_SYM = 0_10
XS_VERSION = 0.10
INST_BIN = blib/bin
INST_EXE = blib/script
INST_LIB = blib/lib
INST_ARCHLIB = blib/arch
INST_SCRIPT = blib/script
PREFIX = /opt/perl5.6.1
INSTALLDIRS = site
INSTALLPRIVLIB = $(PREFIX)/lib/5.6.1
INSTALLARCHLIB = $(PREFIX)/lib/5.6.1/PA-RISC2.0
INSTALLSITELIB = $(PREFIX)/lib/site_perl/5.6.1
INSTALLSITEARCH = $(PREFIX)/lib/site_perl/5.6.1/PA-RISC2.0
INSTALLBIN = $(PREFIX)/bin
INSTALLSCRIPT = $(PREFIX)/bin
PERL_LIB = /opt/perl5.6.1/lib/5.6.1
PERL_ARCHLIB = /opt/perl5.6.1/lib/5.6.1/PA-RISC2.0
SITELIBEXP = /opt/perl5.6.1/lib/site_perl/5.6.1
SITEARCHEXP = /opt/perl5.6.1/lib/site_perl/5.6.1/PA-RISC2.0
LIBPERL_A = libperl.a
FIRST_MAKEFILE = Makefile
MAKE_APERL_FILE = Makefile.aperl
PERLMAINCC = $(CC)
PERL_INC = /opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE
PERL = /opt/perl5.6.1/bin/perl
FULLPERL = /opt/perl5.6.1/bin/perl
FULL_AR = /usr/bin/ar
VERSION_MACRO = VERSION
DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\"
XS_VERSION_MACRO = XS_VERSION
XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\"
PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc
-Dcalloc=Perl_calloc
MAKEMAKER = /opt/perl5.6.1/lib/5.6.1/ExtUtils/MakeMaker.pm
MM_VERSION = 5.45
# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle).
# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle)
# ROOTEXT = Directory part of FULLEXT with leading slash (eg /DBD) !!! Deprecated from MM 5.32 !!!
# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar)
# DLBASE = Basename part of dynamic library. May be just equal BASEEXT.
FULLEXT = plperl
BASEEXT = plperl
DLBASE = $(BASEEXT)
INC = -I. -I../../../src/include
OBJECT = plperl$(OBJ_EXT) eloglvl$(OBJ_EXT) SPI$(OBJ_EXT)
LDFROM = $(OBJECT)
LINKTYPE = dynamic
# Handy lists of source code files:
XS_FILES= SPI.xs
C_FILES = SPI.c \eloglvl.c \plperl.c
O_FILES = SPI.o \eloglvl.o \plperl.o
H_FILES = eloglvl.h \ppport.h
HTMLLIBPODS =
HTMLSCRIPTPODS =
MAN1PODS =
MAN3PODS =
HTMLEXT = html
INST_MAN1DIR = blib/man1
INSTALLMAN1DIR = $(PREFIX)/man/man1
MAN1EXT = 1
INST_MAN3DIR = blib/man3
INSTALLMAN3DIR = $(PREFIX)/man/man3
MAN3EXT = 3
PERM_RW = 644
PERM_RWX = 755
# work around a famous dec-osf make(1) feature(?):
makemakerdflt: all
.SUFFIXES: .xs .c .C .cpp .cxx .cc $(OBJ_EXT)
# Nick wanted to get rid of .PRECIOUS. I don't remember why. I seem to recall, that
# some make implementations will delete the Makefile when we rebuild it. Because
# we call false(1) when we rebuild it. So make(1) is not completely wrong when it
# does so. Our milage may vary.
# .PRECIOUS: Makefile # seems to be not necessary anymore
.PHONY: all config static dynamic test linkext manifest
# Where is the Config information that we are using/depend on
CONFIGDEP = $(PERL_ARCHLIB)/Config.pm $(PERL_INC)/config.h
# Where to put things:
INST_LIBDIR = $(INST_LIB)
INST_ARCHLIBDIR = $(INST_ARCHLIB)
INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT)
INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT)
INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT)
INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT)
INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs
EXPORT_LIST =
PERL_ARCHIVE =
PERL_ARCHIVE_AFTER =
TO_INST_PM =
PM_TO_BLIB =
# --- MakeMaker tool_autosplit section:
# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto
AUTOSPLITFILE = $(PERL) "-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)" -e 'use AutoSplit;autosplit($$ARGV[0], $$ARGV[1], 0, 1, 1)
;'
# --- MakeMaker tool_xsubpp section:
XSUBPPDIR = /opt/perl5.6.1/lib/5.6.1/ExtUtils
XSUBPP = $(XSUBPPDIR)/xsubpp
XSPROTOARG =
XSUBPPDEPS = $(XSUBPPDIR)/typemap $(XSUBPP)
XSUBPPARGS = -typemap $(XSUBPPDIR)/typemap
# --- MakeMaker tools_other section:
SHELL = /bin/sh
CHMOD = chmod
CP = cp
LD = ld
MV = mv
NOOP = $(SHELL) -c true
RM_F = rm -f
RM_RF = rm -rf
TEST_F = test -f
TOUCH = touch
UMASK_NULL = umask 0
DEV_NULL = > /dev/null 2>&1
# The following is a portable way to say mkdir -p
# To see which directories are created, change the if 0 to if 1
MKPATH = $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -MExtUtils::Command -e mkpath
# This helps us to minimize the effect of the .exists files A yet
# better solution would be to have a stable file in the perl
# distribution with a timestamp of zero. But this solution doesn't
# need any changes to the core distribution and works with older perls
EQUALIZE_TIMESTAMP = $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -MExtUtils::Command -e eqtime
# Here we warn users that an old packlist file was found somewhere,
# and that they should call some uninstall routine
WARN_IF_OLD_PACKLIST = $(PERL) -we 'exit unless -f $$ARGV[0];' \
-e 'print "WARNING: I have found an old package in\n";' \
-e 'print "\t$$ARGV[0].\n";' \
-e 'print "Please make sure the two installations are not conflicting\n";'
UNINST=0
VERBINST=0
MOD_INSTALL = $(PERL) -I$(INST_LIB) -I$(PERL_LIB) -MExtUtils::Install \
-e "install({@ARGV},'$(VERBINST)',0,'$(UNINST)');"
DOC_INSTALL = $(PERL) -e '$$\="\n\n";' \
-e 'print "=head2 ", scalar(localtime), ": C<", shift, ">", " L<", $$arg=shift, "|", $$arg, ">";' \
-e 'print "=over 4";' \
-e 'while (defined($$key = shift) and defined($$val = shift)){print "=item *";print "C<$$key: $$val>";}' \
-e 'print "=back";'
UNINSTALL = $(PERL) -MExtUtils::Install \
-e 'uninstall($$ARGV[0],1,1); print "\nUninstall is deprecated. Please check the";' \
-e 'print " packlist above carefully.\n There may be errors. Remove the";' \
-e 'print " appropriate files manually.\n Sorry for the inconveniences.\n"'
# --- MakeMaker dist section:
DISTVNAME = $(DISTNAME)-$(VERSION)
TAR = tar
TARFLAGS = cvf
ZIP = zip
ZIPFLAGS = -r
COMPRESS = gzip --best
SUFFIX = .gz
SHAR = shar
PREOP = @$(NOOP)
POSTOP = @$(NOOP)
TO_UNIX = @$(NOOP)
CI = ci -u
RCS_LABEL = rcs -Nv$(VERSION_SYM): -q
DIST_CP = best
DIST_DEFAULT = tardist
# --- MakeMaker macro section:
# --- MakeMaker depend section:
# --- MakeMaker cflags section:
CCFLAGS = -D_HPUX_SOURCE -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Ae
OPTIMIZE = -O
PERLTYPE =
MPOLLUTE =
# --- MakeMaker const_loadlibs section:
# plperl might depend on some other libraries:
# See ExtUtils::Liblist for details
#
LD_RUN_PATH =
# --- MakeMaker const_cccmd section:
CCCMD = $(CC) -c $(INC) $(CCFLAGS) $(OPTIMIZE) \$(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \$(XS_DEFINE_VERSION)
# --- MakeMaker post_constants section:
# --- MakeMaker pasthru section:
PASTHRU = LIB="$(LIB)"\LIBPERL_A="$(LIBPERL_A)"\LINKTYPE="$(LINKTYPE)"\PREFIX="$(PREFIX)"\OPTIMIZE="$(OPTIMIZE)"
# --- MakeMaker c_o section:
.c$(OBJ_EXT):$(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $<
.C$(OBJ_EXT):$(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $<
.cpp$(OBJ_EXT):$(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $<
.cxx$(OBJ_EXT):$(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $<
.cc$(OBJ_EXT):$(CCCMD) $(CCCDLFLAGS) -I$(PERL_INC) $(DEFINE) $<
# --- MakeMaker xs_c section:
.xs.c:$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) $(XSUBPP) $(XSPROTOARG) $(XSUBPPARGS) $< > $@
# --- MakeMaker xs_o section:
# --- MakeMaker top_targets section:
#all :: config $(INST_PM) subdirs linkext manifypods
all :: pure_all htmlifypods manifypods@$(NOOP)
pure_all :: config pm_to_blib subdirs linkext@$(NOOP)
subdirs :: $(MYEXTLIB)@$(NOOP)
config :: Makefile $(INST_LIBDIR)/.exists@$(NOOP)
config :: $(INST_ARCHAUTODIR)/.exists@$(NOOP)
config :: $(INST_AUTODIR)/.exists@$(NOOP)
$(INST_AUTODIR)/.exists :: /opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE/perl.h@$(MKPATH)
$(INST_AUTODIR)@$(EQUALIZE_TIMESTAMP)/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE/perl.h $(INST_AUTODIR)/.exists
-@$(CHMOD) $(PERM_RWX) $(INST_AUTODIR)
$(INST_LIBDIR)/.exists :: /opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE/perl.h@$(MKPATH)
$(INST_LIBDIR)@$(EQUALIZE_TIMESTAMP)/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE/perl.h $(INST_LIBDIR)/.exists
-@$(CHMOD) $(PERM_RWX) $(INST_LIBDIR)
$(INST_ARCHAUTODIR)/.exists :: /opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE/perl.h@$(MKPATH)
$(INST_ARCHAUTODIR)@$(EQUALIZE_TIMESTAMP)/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE/perl.h $(INST_ARCHAUTODIR)/.exists
-@$(CHMOD) $(PERM_RWX) $(INST_ARCHAUTODIR)
$(O_FILES): $(H_FILES)
help:perldoc ExtUtils::MakeMaker
Version_check:@$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) \ -MExtUtils::MakeMaker=Version_check \ -e
"Version_check('$(MM_VERSION)')"
# --- MakeMaker linkext section:
linkext :: $(LINKTYPE)@$(NOOP)
# --- MakeMaker dlsyms section:
# --- MakeMaker dynamic section:
## $(INST_PM) has been moved to the all: target.
## It remains here for awhile to allow for old usage: "make dynamic"
#dynamic :: Makefile $(INST_DYNAMIC) $(INST_BOOT) $(INST_PM)
dynamic :: Makefile $(INST_DYNAMIC) $(INST_BOOT)@$(NOOP)
# --- MakeMaker dynamic_bs section:
BOOTSTRAP = plperl.bs
# As Mkbootstrap might not write a file (if none is required)
# we use touch to prevent make continually trying to remake it.
# The DynaLoader only reads a non-empty file.
$(BOOTSTRAP): Makefile $(INST_ARCHAUTODIR)/.exists@echo "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))"@$(PERL)
"-I$(PERL_ARCHLIB)""-I$(PERL_LIB)" \ -MExtUtils::Mkbootstrap \ -e
"Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');"@$(TOUCH)$(BOOTSTRAP)$(CHMOD) $(PERM_RW) $@
$(INST_BOOT): $(BOOTSTRAP) $(INST_ARCHAUTODIR)/.exists@rm -rf $(INST_BOOT)-cp $(BOOTSTRAP) $(INST_BOOT)$(CHMOD)
$(PERM_RW)$@
# --- MakeMaker dynamic_lib section:
# This section creates the dynamically loadable $(INST_DYNAMIC)
# from $(OBJECT) and possibly $(MYEXTLIB).
ARMAYBE = :
OTHERLDFLAGS = -L/usr/local/lib /opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/auto/DynaLoader/DynaLoader.a
-L/opt/perl5.6.1/lib/5.6.1/PA-RISC2.0/CORE-lperl -lnsl_s -ldld -lm -lc -lndir -lcrypt -lsec
INST_DYNAMIC_DEP =
$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(BOOTSTRAP) $(INST_ARCHAUTODIR)/.exists $(EXPORT_LIST) $(PERL_ARCHIVE)
$(PERL_ARCHIVE_AFTER)$(INST_DYNAMIC_DEP)$(RM_F) $@LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM)
$(OTHERLDFLAGS)-o $@ $(MYEXTLIB) $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST)$(CHMOD) $(PERM_RWX)
$@
# --- MakeMaker static section:
## $(INST_PM) has been moved to the all: target.
## It remains here for awhile to allow for old usage: "make static"
#static :: Makefile $(INST_STATIC) $(INST_PM)
static :: Makefile $(INST_STATIC)@$(NOOP)
# --- MakeMaker static_lib section:
$(INST_STATIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)/.exists$(RM_RF) $@$(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT)
&&$(RANLIB) $@$(CHMOD) $(PERM_RWX) $@@echo "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld
# --- MakeMaker htmlifypods section:
htmlifypods : pure_all@$(NOOP)
# --- MakeMaker manifypods section:
manifypods : pure_all@$(NOOP)
# --- MakeMaker processPL section:
# --- MakeMaker installbin section:
# --- MakeMaker subdirs section:
# none
# --- MakeMaker clean section:
# Delete temporary files but do not touch installed files. We don't delete
# the Makefile here so a later make realclean still has a makefile to use.
clean ::-rm -rf SPI.c ./blib $(MAKE_APERL_FILE) $(INST_ARCHAUTODIR)/extralibs.all perlmain.c mon.out core
core.*perl.*.?*perl.core so_locations pm_to_blib *$(OBJ_EXT) *$(LIB_EXT) perl.exe $(BOOTSTRAP) $(BASEEXT).bso
$(BASEEXT).def$(BASEEXT).exp-mv Makefile Makefile.old $(DEV_NULL)
# --- MakeMaker realclean section:
# Delete temporary files (via clean) and also delete installed files
realclean purge :: cleanrm -rf $(INST_AUTODIR) $(INST_ARCHAUTODIR)rm -f $(INST_DYNAMIC) $(INST_BOOT)rm -f
$(INST_STATIC)rm-rf Makefile Makefile.old
# --- MakeMaker dist_basics section:
distclean :: realclean distcheck
distcheck :$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -MExtUtils::Manifest=fullcheck \ -e fullcheck
skipcheck :$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -MExtUtils::Manifest=skipcheck \ -e skipcheck
manifest :$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -MExtUtils::Manifest=mkmanifest \ -e mkmanifest
veryclean : realclean$(RM_F) *~ *.orig */*~ */*.orig
# --- MakeMaker dist_core section:
dist : $(DIST_DEFAULT)@$(PERL) -le 'print "Warning: Makefile possibly out of date with $$vf" if ' \ -e '-e
($$vf="$(VERSION_FROM)")and -M $$vf < -M "Makefile";'
tardist : $(DISTVNAME).tar$(SUFFIX)
zipdist : $(DISTVNAME).zip
$(DISTVNAME).tar$(SUFFIX) : distdir$(PREOP)$(TO_UNIX)$(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME)$(RM_RF)
$(DISTVNAME)$(COMPRESS)$(DISTVNAME).tar$(POSTOP)
$(DISTVNAME).zip : distdir$(PREOP)$(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME)$(RM_RF) $(DISTVNAME)$(POSTOP)
uutardist : $(DISTVNAME).tar$(SUFFIX)uuencode $(DISTVNAME).tar$(SUFFIX) \ $(DISTVNAME).tar$(SUFFIX) > \
$(DISTVNAME).tar$(SUFFIX)_uu
shdist : distdir$(PREOP)$(SHAR) $(DISTVNAME) > $(DISTVNAME).shar$(RM_RF) $(DISTVNAME)$(POSTOP)
# --- MakeMaker dist_dir section:
distdir :$(RM_RF) $(DISTVNAME)$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -MExtUtils::Manifest=manicopy,maniread \ -e
"manicopy(maniread(),'$(DISTVNAME)','$(DIST_CP)');"
# --- MakeMaker dist_test section:
disttest : distdircd $(DISTVNAME) && $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) Makefile.PLcd $(DISTVNAME) && $(MAKE)cd
$(DISTVNAME)&& $(MAKE) test
# --- MakeMaker dist_ci section:
ci :$(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) -MExtUtils::Manifest=maniread \ -e "@all = keys %{ maniread() };" \
-e'print("Executing $(CI) @all\n"); system("$(CI) @all");' \ -e 'print("Executing $(RCS_LABEL) ...\n");
system("$(RCS_LABEL)@all");'
# --- MakeMaker install section:
install :: allcp $(INST_DYNAMIC) $(DESTDIR)/home/postgres/version72/lib
# --- MakeMaker force section:
# Phony target to force checking subdirectories.
FORCE:@$(NOOP)
# --- MakeMaker perldepend section:
PERL_HDRS = \$(PERL_INC)/EXTERN.h \$(PERL_INC)/INTERN.h \$(PERL_INC)/XSUB.h \$(PERL_INC)/av.h
\$(PERL_INC)/cc_runtime.h \$(PERL_INC)/config.h \$(PERL_INC)/cop.h \$(PERL_INC)/cv.h
\$(PERL_INC)/dosish.h \$(PERL_INC)/embed.h \$(PERL_INC)/embedvar.h \$(PERL_INC)/fakethr.h
\$(PERL_INC)/form.h \$(PERL_INC)/gv.h \$(PERL_INC)/handy.h \$(PERL_INC)/hv.h
\$(PERL_INC)/intrpvar.h \$(PERL_INC)/iperlsys.h \$(PERL_INC)/keywords.h \$(PERL_INC)/mg.h
\$(PERL_INC)/nostdio.h \$(PERL_INC)/objXSUB.h \$(PERL_INC)/op.h \$(PERL_INC)/opcode.h
\$(PERL_INC)/opnames.h \$(PERL_INC)/patchlevel.h \$(PERL_INC)/perl.h \$(PERL_INC)/perlapi.h
\$(PERL_INC)/perlio.h \$(PERL_INC)/perlsdio.h \$(PERL_INC)/perlsfio.h \$(PERL_INC)/perlvars.h
\$(PERL_INC)/perly.h \$(PERL_INC)/pp.h \$(PERL_INC)/pp_proto.h \$(PERL_INC)/proto.h
\$(PERL_INC)/regcomp.h \$(PERL_INC)/regexp.h \$(PERL_INC)/regnodes.h \$(PERL_INC)/scope.h
\$(PERL_INC)/sv.h \$(PERL_INC)/thrdvar.h \$(PERL_INC)/thread.h \$(PERL_INC)/unixish.h
\$(PERL_INC)/utf8.h \$(PERL_INC)/util.h \$(PERL_INC)/warnings.h
$(OBJECT) : $(PERL_HDRS)
SPI.c : $(XSUBPPDEPS)
# --- MakeMaker makefile section:
# --- MakeMaker staticmake section:
# --- MakeMaker makeaperl section ---
MAP_TARGET = perl
FULLPERL = /opt/perl5.6.1/bin/perl
$(MAP_TARGET) :: static $(MAKE_APERL_FILE)$(MAKE) -f $(MAKE_APERL_FILE) $@
$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE)@echo Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET)@$(PERL)
-I$(INST_ARCHLIB)-I$(INST_LIB) -I$(PERL_ARCHLIB) -I$(PERL_LIB) \ Makefile.PL DIR= \ MAKEFILE=$(MAKE_APERL_FILE)
LINKTYPE=static\ MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= \ INC='-I. -I../../../src/include'
# --- MakeMaker test section:
TEST_VERBOSE=0
TEST_TYPE=test_$(LINKTYPE)
TEST_FILE = test.pl
TEST_FILES =
TESTDB_SW = -d
testdb :: testdb_$(LINKTYPE)
test :: $(TEST_TYPE)@echo 'No tests defined for $(NAME) extension.'
test_dynamic :: pure_all
testdb_dynamic :: pure_allPERL_DL_NONLAZY=1 $(FULLPERL) $(TESTDB_SW) -I$(INST_ARCHLIB) -I$(INST_LIB) -I$(PERL_ARCHLIB)
-I$(PERL_LIB)$(TEST_FILE)
test_ : test_dynamic
test_static :: pure_all $(MAP_TARGET)
testdb_static :: pure_all $(MAP_TARGET)PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) -I$(INST_ARCHLIB) -I$(INST_LIB)
-I$(PERL_ARCHLIB)-I$(PERL_LIB) $(TEST_FILE)
# --- MakeMaker ppd section:
# Creates a PPD (Perl Package Description) for a binary distribution.
ppd:@$(PERL) -e "print qq{<SOFTPKG NAME=\"plperl\" VERSION=\"0,10,0,0\">\n}. qq{\t<TITLE>plperl</TITLE>\n}.
qq{\t<ABSTRACT></ABSTRACT>\n}.qq{\t<AUTHOR></AUTHOR>\n}. qq{\t<IMPLEMENTATION>\n}. qq{\t\t<OS NAME=\"$(OSNAME)\" />\n}.
qq{\t\t<ARCHITECTURENAME=\"PA-RISC2.0\" />\n}. qq{\t\t<CODEBASE HREF=\"\" />\n}. qq{\t</IMPLEMENTATION>\n}.
qq{</SOFTPKG>\n}"> plperl.ppd
# --- MakeMaker pm_to_blib section:
pm_to_blib: $(TO_INST_PM)@$(PERL) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" \"-I$(PERL_ARCHLIB)" "-I$(PERL_LIB)"
-MExtUtils::Install\ -e "pm_to_blib({qw{$(PM_TO_BLIB)}},'$(INST_LIB)/auto','$(PM_FILTER)')"@$(TOUCH) $@
# --- MakeMaker selfdocument section:
# --- MakeMaker postamble section:
# End.