+++ /dev/null
-From f8aeca1dca05c7053532c576add6ab4a472c5e4e Mon Sep 17 00:00:00 2001
-From: Gilles Dartiguelongue <eva@gentoo.org>
-Date: Wed, 11 Nov 2015 17:49:07 +0100
-Subject: [PATCH] Simplify python setup in autoconf
-
-AM_PATH_PYTHON does most of the job without using pkg-config as expected
-from the rest of the autoconf script.
----
- Makefile.am | 14 +++++--
- configure.in | 119 ++++++++++++++---------------------------------------
- python/Makefile.am | 28 ++++---------
- 3 files changed, 49 insertions(+), 112 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index e357f19..c396913 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -2,9 +2,13 @@ SUBDIRS = \
- libxslt \
- libexslt \
- xsltproc \
-- doc \
-- $(PYTHON_SUBDIR) \
-- tests
-+ doc
-+
-+if WITH_PYTHON
-+SUBDIRS += python
-+endif
-+
-+SUBDIRS += tests
-
- DIST_SUBDIRS = libxslt libexslt xsltproc python doc tests
-
-@@ -51,7 +55,9 @@ tests: dummy
- @echo '## Running the regression test suite'
- @(cd tests ; $(MAKE) tests)
- @(cd xsltproc ; $(MAKE) tests)
-- @(if [ "$(PYTHON_SUBDIR)" != "" ] ; then cd python ; $(MAKE) tests ; fi)
-+if WITH_PYTHON
-+ @(cd python ; $(MAKE) tests)
-+endif
-
- valgrind:
- @echo '## Running the regression tests under Valgrind'
-diff --git a/configure.in b/configure.in
-index e84ad4f..102c733 100644
---- a/configure.in
-+++ b/configure.in
-@@ -291,90 +291,37 @@ dnl
- dnl check for python
- dnl
-
--PYTHON_VERSION=
--PYTHON_INCLUDES=
--PYTHON_SITE_PACKAGES=
--pythondir=
--AC_ARG_WITH(python, [ --with-python[=DIR] Build Python bindings if found])
--if test "$with_python" != "no" ; then
-- if test -x "$with_python/bin/python"
-- then
-- echo Found python in $with_python/bin/python
-- PYTHON="$with_python/bin/python"
-- else
-- if test -x "$with_python"
-- then
-- echo Found python in $with_python
-- PYTHON="$with_python"
-- else
-- if test -x "$PYTHON"
-- then
-- echo Found python in environment PYTHON=$PYTHON
-- with_python=`$PYTHON -c "import sys; print sys.exec_prefix"`
-- else
-- AC_PATH_PROG(PYTHON, python python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5)
-- fi
-- fi
-- fi
-- if test "$PYTHON" != ""
-- then
-- echo "PYTHON is pointing at $PYTHON"
-- PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"`
-- echo Found Python version $PYTHON_VERSION
-- LIBXML2_PYTHON=`$PYTHON -c "try : import libxml2 ; print 1
--except: print 0"`
-- if test "$LIBXML2_PYTHON" = "1"
-- then
-- echo Found libxml2-python module
-- else
-- echo Warning: Missing libxml2-python
-- fi
-- fi
-- if test "$PYTHON_VERSION" != ""
-- then
-- if test -r $with_python/include/python$PYTHON_VERSION/Python.h -a \
-- -d $with_python/lib/python$PYTHON_VERSION/site-packages
-- then
-- PYTHON_INCLUDES=$with_python/include/python$PYTHON_VERSION
-- PYTHON_SITE_PACKAGES='$(libdir)/python$(PYTHON_VERSION)/site-packages'
-- else
-- if test -r $prefix/include/python$PYTHON_VERSION/Python.h
-- then
-- PYTHON_INCLUDES=$prefix/include/python$PYTHON_VERSION
-- PYTHON_SITE_PACKAGES='$(libdir)/python$(PYTHON_VERSION)/site-packages'
-- else
-- if test -r /usr/include/python$PYTHON_VERSION/Python.h
-- then
-- PYTHON_INCLUDES=/usr/include/python$PYTHON_VERSION
-- PYTHON_SITE_PACKAGES='$(libdir)/python$(PYTHON_VERSION)/site-packages'
-- else
-- echo could not find python$PYTHON_VERSION/Python.h
-- fi
-- fi
-- if test ! -d "$PYTHON_SITE_PACKAGES"
-- then
-- PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib()"`
-- fi
-- fi
-- PYTHON_LIBS=`python$PYTHON_VERSION-config --libs`
-- fi
-- if test "$with_python" != ""
-- then
-- pythondir='$(PYTHON_SITE_PACKAGES)'
-- else
-- pythondir='$(libdir)/python$(PYTHON_VERSION)/site-packages'
-- fi
--fi
--AM_CONDITIONAL(WITH_PYTHON, test "$PYTHON_INCLUDES" != "")
--if test "$PYTHON_INCLUDES" != ""
--then
-- PYTHON_SUBDIR=python
--else
-- PYTHON_SUBDIR=
--fi
--AC_SUBST(pythondir)
--AC_SUBST(PYTHON_SUBDIR)
--AC_SUBST(PYTHON_LIBS)
-+AC_ARG_WITH([python],
-+ AS_HELP_STRING([--with-python], [Build Python bindings if found])
-+)
-+
-+AS_IF([test "$with_python" = "yes"],
-+ [AM_PATH_PYTHON
-+ AC_PATH_TOOL([PYTHON_CONFIG], [python$PYTHON_VERSION-config], [no])
-+ AS_IF([test "$PYTHON_CONFIG" = "no"],
-+ [AC_PATH_TOOL([PYTHON_CONFIG], [python-config], [no])])
-+ AS_IF([test "$PYTHON_CONFIG" != "no"],
-+ [PYTHON_CFLAGS=`$PYTHON_CONFIG --cflags`
-+ PYTHON_LDFLAGS=`$PYTHON_CONFIG --ldflags`
-+ PYTHON_LIBS=`$PYTHON_CONFIG --libs`],
-+ [AC_MSG_ERROR([Missing python development files.])])
-+ AC_MSG_CHECKING([libxml2 module in $PYTHON])
-+ LIBXML2_PYTHON=`$PYTHON -c "import sys;
-+try:
-+ import libxml2
-+ sys.stdout.write('1')
-+except:
-+ sys.stdout.write('0')"`
-+ AS_IF([test "$LIBXML2_PYTHON" = "1"],
-+ [AC_MSG_RESULT([yes])],
-+ [AC_MSG_RESULT([no])
-+ AC_MSG_WARN([libxml2 python module not found, expect runtime errors])])
-+ ])
-+
-+AM_CONDITIONAL([WITH_PYTHON], [test "$with_python" = "yes"])
-+AC_SUBST([PYTHON_CFLAGS])
-+AC_SUBST([PYTHON_LDFLAGS])
-+AC_SUBST([PYTHON_LIBS])
-
- AC_ARG_WITH(crypto, [ --with-crypto Add crypto support to exslt (on)])
- WITH_CRYPTO=0
-@@ -644,10 +591,6 @@ AC_SUBST(PYTHONSODV)
- AC_SUBST(XML_CONFIG)
- AC_SUBST(LIBXML_LIBS)
- AC_SUBST(LIBXML_CFLAGS)
--AC_SUBST(PYTHON)
--AC_SUBST(PYTHON_VERSION)
--AC_SUBST(PYTHON_INCLUDES)
--AC_SUBST(PYTHON_SITE_PACKAGES)
-
- XSLT_LIBDIR='-L${libdir}'
- XSLT_INCLUDEDIR='-I${includedir}'
-diff --git a/python/Makefile.am b/python/Makefile.am
-index fa58b78..3a5ecd6 100644
---- a/python/Makefile.am
-+++ b/python/Makefile.am
-@@ -5,9 +5,9 @@ SUBDIRS= . tests
-
- AM_CFLAGS = $(LIBXML_CFLAGS)
-
--DOCS_DIR = $(datadir)/doc/libxslt-python-$(LIBXSLT_VERSION)
-+docsdir = $(datadir)/doc/libxslt-python-$(LIBXSLT_VERSION)
- # libxsltclass.txt is generated
--DOCS = TODO
-+dist_docs_DATA = TODO
-
- EXTRA_DIST = \
- libxslt.c \
-@@ -16,10 +16,7 @@ EXTRA_DIST = \
- libxml_wrap.h \
- libxslt_wrap.h \
- libxsl.py \
-- libxslt-python-api.xml \
-- $(DOCS)
--
--libxsltmod_la_LDFLAGS = $(WIN32_EXTRA_LDFLAGS) -module -avoid-version
-+ libxslt-python-api.xml
-
- if WITH_PYTHON
- mylibs = \
-@@ -28,31 +25,22 @@ mylibs = \
-
- all-local: libxslt.py
-
--python_LTLIBRARIES = libxsltmod.la
-+python_PYTHON = libxslt.py
-+pyexec_LTLIBRARIES = libxsltmod.la
-
- libxsltmod_la_CPPFLAGS = \
-- -I$(PYTHON_INCLUDES) \
- -I$(top_srcdir)/libxslt \
- -I$(top_srcdir) \
-- -I../libexslt
-+ -I$(top_srcdir)/libexslt \
-+ $(PYTHON_CFLAGS)
- libxsltmod_la_SOURCES = libxslt.c types.c
- nodist_libxsltmod_la_SOURCES = libxslt-py.c
- libxsltmod_la_LIBADD = $(mylibs) $(PYTHON_LIBS)
-+libxsltmod_la_LDFLAGS = $(WIN32_EXTRA_LDFLAGS) $(PYTHON_LDFLAGS) -module -avoid-version
-
- libxslt.py: $(srcdir)/libxsl.py libxsltclass.py
- cat $(srcdir)/libxsl.py libxsltclass.py > $@
-
--install-data-local:
-- $(MKDIR_P) $(DESTDIR)$(pythondir)
-- $(INSTALL) -m 0644 libxslt.py $(DESTDIR)$(pythondir)
-- $(MKDIR_P) $(DESTDIR)$(DOCS_DIR)
-- @(for doc in $(DOCS) ; \
-- do $(INSTALL) -m 0644 $(srcdir)/$$doc $(DESTDIR)$(DOCS_DIR) ; done)
--
--uninstall-local:
-- rm -f $(DESTDIR)$(pythondir)/libxslt.py
-- rm -rf $(DESTDIR)$(DOCS_DIR)
--
- GENERATE = generator.py
- API_DESC = $(top_srcdir)/doc/libxslt-api.xml $(srcdir)/libxslt-python-api.xml
- GENERATED= libxsltclass.py \
---
-2.6.3
-
+++ /dev/null
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-PYTHON_COMPAT=( python2_7 )
-PYTHON_REQ_USE="xml"
-
-inherit autotools ltprune python-r1 toolchain-funcs multilib-minimal
-
-DESCRIPTION="XSLT libraries and tools"
-HOMEPAGE="http://www.xmlsoft.org/"
-SRC_URI="ftp://xmlsoft.org/${PN}/${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="arm64 m68k s390 sh"
-
-IUSE="crypt debug examples python static-libs"
-REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
-
-RDEPEND="
- >=dev-libs/libxml2-2.9.1-r5:2[${MULTILIB_USEDEP}]
- crypt? ( >=dev-libs/libgcrypt-1.5.3:0=[${MULTILIB_USEDEP}] )
- python? (
- ${PYTHON_DEPS}
- dev-libs/libxml2:2[python,${PYTHON_USEDEP}] )
-"
-DEPEND="${RDEPEND}"
-
-MULTILIB_CHOST_TOOLS=(
- /usr/bin/xslt-config
-)
-
-MULTILIB_WRAPPED_HEADERS=(
- /usr/include/libxslt/xsltconfig.h
-)
-
-src_prepare() {
- default
-
- DOCS=( AUTHORS ChangeLog FEATURES NEWS README TODO )
-
- # https://bugzilla.gnome.org/show_bug.cgi?id=684621
- eapply "${FILESDIR}"/${PN}.m4-${PN}-1.1.26.patch
- # https://bugzilla.gnome.org/show_bug.cgi?id=766669
- eapply "${FILESDIR}"/${PN}-1.1.29-cygwin.patch
-
- # Simplify python setup
- eapply "${FILESDIR}"/${PN}-1.1.28-simplify-python.patch
- eapply "${FILESDIR}"/${PN}-1.1.28-disable-static-modules.patch
-
- mv configure.{in,ac} || die
-
- eautoreconf
- # If eautoreconf'd with new autoconf, then epunt_cxx is not necessary
- # and it is propably otherwise too if upstream generated with new
- # autoconf
-# epunt_cxx
- # But Prefix always needs elibtoolize if not eautoreconf'd.
-# elibtoolize
-}
-
-multilib_src_configure() {
- libxslt_configure() {
- ECONF_SOURCE="${S}" econf \
- --with-html-dir="${EPREFIX}"/usr/share/doc/${PF} \
- --with-html-subdir=html \
- $(use_with crypt crypto) \
- $(use_with debug) \
- $(use_with debug mem-debug) \
- $(use_enable static-libs static) \
- "$@"
- }
-
- libxslt_py_configure() {
- mkdir -p "${BUILD_DIR}" || die # ensure python build dirs exist
- run_in_build_dir libxslt_configure --with-python
- }
-
- libxslt_configure --without-python # build python bindings separately
-
- if multilib_is_native_abi && use python; then
- python_foreach_impl libxslt_py_configure
- fi
-}
-
-multilib_src_compile() {
- default
- multilib_is_native_abi && use python && libxslt_foreach_py_emake all
-}
-
-multilib_src_test() {
- default
- multilib_is_native_abi && use python && libxslt_foreach_py_emake test
-}
-
-multilib_src_install() {
- # "default" does not work here - docs are installed by multilib_src_install_all
- emake DESTDIR="${D}" install
-
- if multilib_is_native_abi && use python; then
- libxslt_foreach_py_emake \
- DESTDIR="${D}" \
- docsdir="${EPREFIX}"/usr/share/doc/${PF}/python \
- EXAMPLE_DIR="${EPREFIX}"/usr/share/doc/${PF}/python/examples \
- install
- python_foreach_impl python_optimize
- fi
-}
-
-multilib_src_install_all() {
- einstalldocs
-
- if ! use examples; then
- rm -rf "${ED}"/usr/share/doc/${PF}/examples
- rm -rf "${ED}"/usr/share/doc/${PF}/python/examples
- fi
-
- prune_libtool_files --modules
-}
-
-libxslt_foreach_py_emake() {
- libxslt_py_emake() {
- pushd "${BUILD_DIR}/python" > /dev/null || die
- emake "$@"
- popd > /dev/null
- }
- local native_builddir=${BUILD_DIR}
- python_foreach_impl libxslt_py_emake top_builddir="${native_builddir}" "$@"
-}