python-wand: Add patch to ensure our built ImageMagick is used 87/11587/2
authorTom Rini <trini@konsulko.com>
Wed, 25 Oct 2017 12:13:04 +0000 (08:13 -0400)
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>
Sun, 29 Oct 2017 13:03:52 +0000 (13:03 +0000)
It can be slightly tricky to build a copy of python-wand that will also
function.  A problem is that without additional logic (MAGICK_HOME), the
python code will not look outside of system paths for a copy of the
imagemagick library.  However, even with this path added to the search
list, the code will still try a 'naked' load of the library it wants.
This can result in a visible failure if you have a new enough
imagemagic-6 installed (such as 6.9.7) as the date string checking logic
will fail.  Work around these problems by setting MAGICK_HOME globally
to the correct location and patch the api code to look for the form of
imagemagick that we build first, rather than last, so that we are going
to first search for what we know we built.

Bug-AGL: SPEC-984
Backport: https://lists.linaro.org/pipermail/openembedded/2017-October/000102.html
Change-Id: I9f0e3e64ab4601845e4f336aa81ce7c3d01ff7b7
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-on: https://gerrit.automotivelinux.org/gerrit/11587
Tested-by: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
ci-image-build: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
ci-image-boot-test: Jenkins Job builder account <agl-jobbuilder@automotivelinux.org>
Reviewed-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
meta-agl-bsp/meta-rcar-gen3/recipes-backport/python_bp/python-wand/0001-wand-api.py-Change-search-order.patch [new file with mode: 0644]
meta-agl-bsp/meta-rcar-gen3/recipes-backport/python_bp/python-wand_0.4.3.bb

diff --git a/meta-agl-bsp/meta-rcar-gen3/recipes-backport/python_bp/python-wand/0001-wand-api.py-Change-search-order.patch b/meta-agl-bsp/meta-rcar-gen3/recipes-backport/python_bp/python-wand/0001-wand-api.py-Change-search-order.patch
new file mode 100644 (file)
index 0000000..ac2c0b0
--- /dev/null
@@ -0,0 +1,32 @@
+From 7691ebcf38c59332eb819f909250a22ba5e8e50b Mon Sep 17 00:00:00 2001
+From: Tom Rini <trini@konsulko.com>
+Date: Tue, 24 Oct 2017 12:01:51 -0400
+Subject: [PATCH 1/1] wand/api.py: Change search order
+
+In addition to specifying MAGICK_HOME to ensure that we will even look
+within our desired paths, we need to also check for the type of library
+that we know we have.  Otherwise we may find a different form of the
+library in one of the system paths before we try ours.
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Tom Rini <trini@konsulko.com>
+---
+ wand/api.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/wand/api.py b/wand/api.py
+index 19cf6d2..dde9c5e 100644
+--- a/wand/api.py
++++ b/wand/api.py
+@@ -55,7 +55,7 @@ def library_paths():
+     """
+     libwand = None
+     libmagick = None
+-    versions = '', '-6', '-Q16', '-Q8', '-6.Q16'
++    versions = '-6.Q16', '-6', '-Q16', '-Q8', ''
+     options = '', 'HDRI', 'HDRI-2'
+     system = platform.system()
+     magick_home = os.environ.get('MAGICK_HOME')
+-- 
+2.11.0
+
index cc91892..396cf37 100644 (file)
@@ -6,11 +6,16 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=170eafd687d4a2b950819cd5e067e6d5"
 
 SRCNAME = "wand"
 
-SRC_URI = "git://github.com/dahlia/wand.git;tag=${PV}"
+SRC_URI = "git://github.com/dahlia/wand.git;tag=${PV} \
+           file://0001-wand-api.py-Change-search-order.patch"
 S = "${WORKDIR}/git"
 
 inherit setuptools
 
 DEPENDS += " imagemagick-native"
 
+# Tell python-wand where to look for our imagemagick and it must be
+# one level up from where 'lib' resides.
+export MAGICK_HOME="${STAGING_LIBDIR_NATIVE}/.."
+
 BBCLASSEXTEND = "native"