Fix postgresql74-plperl so that it finds libperl.so at runtime. The

PostgreSQL configure/build infrastructure tries very hard to separate
rpath flags from other LDFLAGS, which is completely unnecessary in
pkgsrc since the wrapper scripts are smart enough to deal with it on
their own.  In this case, the GNU configure script was stripping out
the rpath to libperl.so when setting perl_embed_ldflags, so modify
the configure script to not do this.

Also re-enable this package since it's possible to load the plperl.so
language module again.  I tested this with:

	createdb foo
	createlang -d foo plperl
This commit is contained in:
jlam 2004-12-18 16:36:29 +00:00
parent 64f241c45b
commit 3b03cc6d2f
3 changed files with 17 additions and 20 deletions

View file

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.1.1.1 2004/10/10 12:24:10 jdolecek Exp $ # $NetBSD: Makefile,v 1.2 2004/12/18 16:36:29 jlam Exp $
PKGNAME= postgresql74-plperl-${BASE_VERS} PKGNAME= postgresql74-plperl-${BASE_VERS}
COMMENT= PL/Perl procedural language for the PostgreSQL backend COMMENT= PL/Perl procedural language for the PostgreSQL backend
@ -12,27 +12,13 @@ USE_BUILDLINK3= yes
CONFIGURE_ARGS+= --with-openssl=${SSLBASE} CONFIGURE_ARGS+= --with-openssl=${SSLBASE}
CONFIGURE_ARGS+= --with-perl CONFIGURE_ARGS+= --with-perl
LIBPERL_DIR= ${PREFIX}/${PERL5_SUB_INSTALLARCHLIB}/CORE
LDFLAGS+= -Wl,-R${LIBPERL_DIR}
BUILD_DIRS= ${WRKSRC}/src/pl/plperl BUILD_DIRS= ${WRKSRC}/src/pl/plperl
MAKEFILE= GNUmakefile MAKEFILE= GNUmakefile
PERL5_CONFIGURE= NO PERL5_CONFIGURE= NO
# On my 2.x system perl 5.8.4's perl & libperl.so are linked with libpthread,
# thus the module would get linked to libpthread too. Since postmaster is not
# threaded, loading the language will crash the SQL server.
BROKEN= "crashes PostgreSQL when compiled with threaded Perl"
# XXX this package requires modification of the link flags to add the
# directory with libperl.so to the runtime library search path. Since
# this is currently broken anyway, appropriate patch for src/Makefile.global.in
# has not been included.
.include "../../security/openssl/buildlink3.mk"
BUILDLINK_DEPMETHOD.libperl+= build
.include "../postgresql74-lib/buildlink3.mk" .include "../postgresql74-lib/buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../lang/libperl/buildlink3.mk" .include "../../lang/libperl/buildlink3.mk"
.include "../../lang/perl5/module.mk" .include "../../lang/perl5/module.mk"

View file

@ -1,10 +1,10 @@
$NetBSD: distinfo,v 1.13 2004/12/18 16:04:16 jlam Exp $ $NetBSD: distinfo,v 1.14 2004/12/18 16:36:29 jlam Exp $
SHA1 (postgresql-7.4.6.tar.bz2) = 54e9126053579285b29a3a30e3055d1784a28b0a SHA1 (postgresql-7.4.6.tar.bz2) = 54e9126053579285b29a3a30e3055d1784a28b0a
Size (postgresql-7.4.6.tar.bz2) = 10200107 bytes Size (postgresql-7.4.6.tar.bz2) = 10200107 bytes
SHA1 (patch-aa) = 626b4b4bf0d47913072399535c55d413b90675a4 SHA1 (patch-aa) = 626b4b4bf0d47913072399535c55d413b90675a4
SHA1 (patch-ab) = f44a544c56452bad197a88cb827e88624c54656c SHA1 (patch-ab) = f44a544c56452bad197a88cb827e88624c54656c
SHA1 (patch-ac) = 39ce96f3ea9fc1167c8d21168fd1536077898d58 SHA1 (patch-ac) = 81ef677cc5d196762b6cc3c3e38dee4a37e75ac2
SHA1 (patch-ad) = fae5e82e0943ea982c9d3aace290b56c6a7629f9 SHA1 (patch-ad) = fae5e82e0943ea982c9d3aace290b56c6a7629f9
SHA1 (patch-ae) = f0e0ad98ebdc972e7c40afd805fbb0d909d5ef3b SHA1 (patch-ae) = f0e0ad98ebdc972e7c40afd805fbb0d909d5ef3b
SHA1 (patch-af) = 7373db75fda125b980f2ead990719798c0d22a48 SHA1 (patch-af) = 7373db75fda125b980f2ead990719798c0d22a48

View file

@ -1,6 +1,6 @@
$NetBSD: patch-ac,v 1.1 2004/06/25 14:51:23 taca Exp $ $NetBSD: patch-ac,v 1.2 2004/12/18 16:36:29 jlam Exp $
--- configure.orig Thu Jun 24 10:36:51 2004 --- configure.orig 2004-10-21 20:26:15.000000000 -0400
+++ configure +++ configure
@@ -337,7 +337,7 @@ localstatedir='${prefix}/var' @@ -337,7 +337,7 @@ localstatedir='${prefix}/var'
libdir='${exec_prefix}/lib' libdir='${exec_prefix}/lib'
@ -11,3 +11,14 @@ $NetBSD: patch-ac,v 1.1 2004/06/25 14:51:23 taca Exp $
mandir='${prefix}/man' mandir='${prefix}/man'
ac_prev= ac_prev=
@@ -4351,9 +4351,7 @@ echo "${ECHO_T}$perl_useshrplib" >&6
echo "$as_me:$LINENO: checking for flags to link embedded Perl" >&5
echo $ECHO_N "checking for flags to link embedded Perl... $ECHO_C" >&6
-pgac_tmp1=`$PERL -MExtUtils::Embed -e ldopts`
-pgac_tmp2=`$PERL -MConfig -e 'print $Config{ccdlflags}'`
-perl_embed_ldflags=`echo X"$pgac_tmp1" | sed "s/^X//;s%$pgac_tmp2%%"`
+perl_embed_ldflags=`$PERL -MExtUtils::Embed -e ldopts`
echo "$as_me:$LINENO: result: $perl_embed_ldflags" >&5
echo "${ECHO_T}$perl_embed_ldflags" >&6
fi