summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordholland <dholland@pkgsrc.org>2017-05-15 18:07:40 +0000
committerdholland <dholland@pkgsrc.org>2017-05-15 18:07:40 +0000
commit26e5bdb96736800dcde3d0845c3688d003b6de11 (patch)
tree127d6358a0c41230528776632884afca14d4e746
parent7e7c7dd1caf1cee2e09c4fa4aa1d35c2ac829c4f (diff)
downloadpkgsrc-26e5bdb96736800dcde3d0845c3688d003b6de11.tar.gz
PR pkg/47444 diro: py-libxslt is broken. Needs to link explicitly to
libxml2mod.so, so do that and fix rpath handling.
-rw-r--r--textproc/libxslt/distinfo3
-rw-r--r--textproc/libxslt/patches/patch-python_setup.py34
-rw-r--r--textproc/py-libxslt/Makefile7
3 files changed, 42 insertions, 2 deletions
diff --git a/textproc/libxslt/distinfo b/textproc/libxslt/distinfo
index 160bcd5dcdd..726ecd7ee96 100644
--- a/textproc/libxslt/distinfo
+++ b/textproc/libxslt/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.57 2016/05/29 21:06:46 wiz Exp $
+$NetBSD: distinfo,v 1.58 2017/05/15 18:07:40 dholland Exp $
SHA1 (libxslt-1.1.29.tar.gz) = edcaeabb3555ae44853bdc406ee9521fb65c620d
RMD160 (libxslt-1.1.29.tar.gz) = 40a5202b3967db6b01cd6c0e722a9e459cac7960
@@ -6,3 +6,4 @@ SHA512 (libxslt-1.1.29.tar.gz) = a1ce555a74a9dabe65e8f64bb66e27e77760fd76940d88f
Size (libxslt-1.1.29.tar.gz) = 3428524 bytes
SHA1 (patch-ae) = 40ce3940a93b6a2dc804f62676909d3313e0ea52
SHA1 (patch-ah) = f92809ab34e53962ec8b62e50ded7a27c89f10f8
+SHA1 (patch-python_setup.py) = 20b257926a8626bce44ca0448d618619a7d69995
diff --git a/textproc/libxslt/patches/patch-python_setup.py b/textproc/libxslt/patches/patch-python_setup.py
new file mode 100644
index 00000000000..29f39990cd2
--- /dev/null
+++ b/textproc/libxslt/patches/patch-python_setup.py
@@ -0,0 +1,34 @@
+$NetBSD: patch-python_setup.py,v 1.1 2017/05/15 18:07:40 dholland Exp $
+
+Fix rpath handling. Needs to link to libxml2mod.so explicitly.
+
+--- python/setup.py.orig 2017-05-15 18:02:13.012917947 +0000
++++ python/setup.py
+@@ -53,7 +53,7 @@ if xml_includes == "":
+ iconv_includes="@LIBICONVDIR@/include"
+
+ # those are added in the linker search path for libraries
+-libdirs = ["@LIBXML2DIR@/lib"]
++libdirs = ["@LIBXML2DIR@/lib", "@PYSHLIBDIR@"]
+
+ xml_files = ["libxml2-api.xml", "libxml2-python-api.xml",
+ "libxml.c", "libxml.py", "libxml_wrap.h", "types.c",
+@@ -132,7 +132,7 @@ descr = "libxml2 package"
+ modules = []
+ c_files = []
+ includes= [xml_includes, iconv_includes]
+-libs = [] + platformLibs
++libs = ["xml2mod"] + platformLibs
+ macros = []
+ if with_threads:
+ macros.append(('_REENTRANT','1'))
+@@ -161,7 +161,8 @@ if with_xslt == 1:
+ extens=[]
+ if with_xslt == 1:
+ extens.append(Extension('libxsltmod', xslt_c_files, include_dirs=includes,
+- library_dirs=libdirs,
++ library_dirs=libdirs,
++ runtime_library_dirs=libdirs,
+ libraries=libs, define_macros=macros))
+
+ if missing("MANIFEST"):
diff --git a/textproc/py-libxslt/Makefile b/textproc/py-libxslt/Makefile
index 8410d27af71..c78a5079f61 100644
--- a/textproc/py-libxslt/Makefile
+++ b/textproc/py-libxslt/Makefile
@@ -1,8 +1,9 @@
-# $NetBSD: Makefile,v 1.48 2017/01/01 14:44:01 wiz Exp $
+# $NetBSD: Makefile,v 1.49 2017/05/15 18:07:40 dholland Exp $
.include "../../textproc/libxslt/Makefile.common"
PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
+PKGREVISION= 1
CATEGORIES= textproc python
MAINTAINER= minskim@NetBSD.org
@@ -18,6 +19,8 @@ NO_CONFIGURE= yes
MAKE_ENV+= PYLIBXSLTVERSION=${PKGVERSION}
+PYSITEDIR= ${PREFIX}/lib/python${PYVERSSUFFIX}/site-packages
+
SUBST_CLASSES+= setup
SUBST_MESSAGE.setup= Fixing hardcoded paths.
SUBST_STAGE.setup= pre-build
@@ -25,12 +28,14 @@ SUBST_FILES.setup= python/setup.py
SUBST_SED.setup= -e "s,@LIBICONVDIR@,${BUILDLINK_PREFIX.iconv},g"
SUBST_SED.setup+= -e "s,@LIBXML2DIR@,${BUILDLINK_PREFIX.libxml2},g"
SUBST_SED.setup+= -e "s,@LIBXSLTDIR@,${BUILDLINK_PREFIX.libxslt},g"
+SUBST_SED.setup+= -e "s,@PYSHLIBDIR@,${PYSITEDIR},g"
post-extract: setuppy
.PHONY: setuppy
setuppy:
${CP} ${FILESDIR}/setup.py ${WRKSRC}/python
+.include "../../textproc/py-libxml2/buildlink3.mk"
BUILDLINK_API_DEPENDS.libxslt+= libxslt>=${PKGVERSION}
.include "../../textproc/libxslt/buildlink3.mk"
.include "../../lang/python/extension.mk"