Package: python-imaging
Version: 1.1.7-3
Severity: important
Tags: patch
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu oneiric ubuntu-patch

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256


This adds multiarch directory path discovery to PIL's setup.py.  Without this,
on Oneiric -- and presumably also on Debian multiarch -- libraries such as
zlib, jpeg and others can't be found, and thus support for them is missing.

https://bugs.launchpad.net/ubuntu/+source/python-imaging/+bug/806661

*** /tmp/tmp5zDiX2
In Ubuntu, the attached patch was applied to achieve the following:

  * debian/patches/01_multiarch_support.patch
    - Add multiarch search directories as given by dpkg-architecture.
      This re-enables support for: tkinter, jpeg, zlib, freetype2, and
      littlecms.  Problem found and patch inspired by Marc Tardif (cr3).
      (LP: #806661)


Thanks for considering the patch.


- -- System Information:
Debian Release: squeeze/sid
  APT prefers natty-updates
  APT policy: (500, 'natty-updates'), (500, 'natty-security'), (500, 'natty')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.38-8-generic (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)

iQIcBAEBCAAGBQJOFaNvAAoJEBJutWOnSwa/GhAP/jJTQxBrYnuKbNocakcCDSSc
Sg+OIcQmSKzsgEqf+tyGLA4idwWEDyP7oCMXPPooc0AMzLjoypx+wwXHdVGprkLv
/yFJOLKrTKquwHgkB1Ure9/Z20Dz7Ypg/jDcXJpwHimhq2w3juhyRXepU7lh/0ts
JCj55U+DU6DJM7UJY7qXZ8AJ4rLqQKj5HqejTuffhPN0UFvL4Dc1rLuKfD/yPMoh
l3vzM5WgL1f+nQqfVC4ojCeGwpXJbLLfILFKS7oxEh42ETRlkQ0CgbuobuP2BHio
js7rlpBJvu9zdGuW7MCoTxzbl9N1cMC4cgQn+kZWO3hbN4RWfDsMN0hN55Mh+Z1f
aDYB8EF9yH+OaX9Gcox8OliSGnD9j7Y1O2dvn9wIpmqdohlJ9NxQXV3a7NO7x9jC
VWOb0fLxCYVnz5YeQalyJjw37RkvuyqJGrMM9oLkA9aWLPzRF8NfLR1H2aSAt6vz
2GQyK6WlACPZ8hV0UXBH5Zc4wLyfPklC9ckgy8bceOOgDGCStQ0k7abp1PbVydoe
669ikqG2hFIKWgDKB2loHXETaM+jIiLA1HFa++WxFPa/5gfRV4XZVPnTiEzGwNEY
OFWHVMopT42u4AAUV8GD+WCkAN2ja4rpqQkntwzfHCx060mxek89jWGYuOsVzRHs
Ov37rloRJ6qc1gKjc8bJ
=PhKB
-----END PGP SIGNATURE-----
=== added file '.bzrignore'
--- .bzrignore  1970-01-01 00:00:00 +0000
+++ .bzrignore  2011-07-06 22:42:27 +0000
@@ -0,0 +1 @@
+.pc

=== modified file 'debian/changelog'

=== modified file 'debian/control'
--- debian/control      2011-06-28 18:54:43 +0000
+++ debian/control      2011-07-06 22:47:42 +0000
@@ -1,7 +1,8 @@
 Source: python-imaging
 Section: python
 Priority: optional
-Maintainer: Matthias Klose <d...@debian.org>
+Maintainer: Ubuntu Developers <ubuntu-devel-disc...@lists.ubuntu.com>
+XSBC-Original-Maintainer: Matthias Klose <d...@debian.org>
 Build-Depends: tk8.5-dev, python-all-dev (>= 2.6.5-9~), python-all-dbg, 
python-tk-dbg (>= 2.5.2-1.1), libsane-dev, libfreetype6-dev, libjpeg62-dev, 
zlib1g-dev, liblcms1-dev, debhelper (>= 5.0.37.1)
 Build-Conflicts: python-numarray
 XS-Python-Version: all

=== added directory 'debian/patches'
=== added file 'debian/patches/01_multiarch_support.patch'
--- debian/patches/01_multiarch_support.patch   1970-01-01 00:00:00 +0000
+++ debian/patches/01_multiarch_support.patch   2011-07-07 11:54:07 +0000
@@ -0,0 +1,35 @@
+Description: Add multiarch search directory as given by dpkg-architecture so
+ that the zlib library can be found.  Without this, zip_decoder and
+ zip_encoder are not included in the _imaging module.  Problem found and patch
+ inspired by Marc Tardif (cr3).
+Author: Barry Warsaw <ba...@python.org>
+Bug-Ubuntu: http://pad.lv/806661
+
+--- a/setup.py
++++ b/setup.py
+@@ -6,6 +6,8 @@
+ #
+ 
+ import glob, os, re, struct, string, sys
++import subprocess
++from distutils.spawn import find_executable
+ 
+ # make it possible to run the setup script from another directory
+ try:
+@@ -147,6 +149,16 @@
+             add_directory(library_dirs, "/opt/local/lib")
+             add_directory(include_dirs, "/opt/local/include")
+ 
++        elif find_executable('dpkg-architecture'):
++            # Debian/Ubuntu multiarch support.
++            proc = subprocess.Popen(
++                'dpkg-architecture -qDEB_HOST_MULTIARCH'.split(),
++                stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
++            stdout, stderr = proc.communicate()
++            multiarch_path = stdout.strip()
++            add_directory(include_dirs, '/usr/include/' + multiarch_path)
++            add_directory(library_dirs, '/usr/lib/' + multiarch_path)
++
+         add_directory(library_dirs, "/usr/local/lib")
+         # FIXME: check /opt/stuff directories here?
+ 

=== added file 'debian/patches/series'
--- debian/patches/series       1970-01-01 00:00:00 +0000
+++ debian/patches/series       2011-07-06 22:31:30 +0000
@@ -0,0 +1 @@
+01_multiarch_support.patch

=== added directory 'debian/source'
=== added file 'debian/source/format'
--- debian/source/format        1970-01-01 00:00:00 +0000
+++ debian/source/format        2011-07-06 22:12:10 +0000
@@ -0,0 +1 @@
+3.0 (quilt)

Reply via email to