From e8e8022e47a7e3d8a9bced248c6eba77c20001e2 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Sat, 20 Oct 2018 15:18:10 -0700 Subject: [PATCH] pillow: Update to 5.3.0 Switched to pypi for consistency. Signed-off-by: Rosen Penev --- lang/python/pillow/Makefile | 20 ++- .../python/pillow/patches/010-fix-paths.patch | 125 +++++++++--------- 2 files changed, 70 insertions(+), 75 deletions(-) diff --git a/lang/python/pillow/Makefile b/lang/python/pillow/Makefile index c1618e2f7..831ba8b5f 100644 --- a/lang/python/pillow/Makefile +++ b/lang/python/pillow/Makefile @@ -7,18 +7,17 @@ include $(TOPDIR)/rules.mk PKG_NAME:=pillow -PKG_VERSION:=3.3.1 -PKG_RELEASE=1 +PKG_VERSION:=5.3.0 +PKG_RELEASE:=1 + +PKG_SOURCE:=Pillow-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://files.pythonhosted.org/packages/source/P/Pillow +PKG_HASH:=2ea3517cd5779843de8a759c2349a3cd8d3893e03ab47053b66d5ec6f8bc4f93 +PKG_BUILD_DIR:=$(BUILD_DIR)/Pillow-$(PKG_VERSION) + PKG_LICENSE:=CUSTOM PKG_LICENSE_FILES:=LICENSE -PKG_SOURCE_PROTO:=git -PKG_SOURCE_URL:=https://github.com/python-pillow/Pillow.git -PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=aab33141f381d5577cdef9033b7fdff79122a10c -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz -PKG_MIRROR_HASH:=e7c36bcf89614337d9abc4d07780da0b346a745be7a9aa55b398fa427549273c - include $(INCLUDE_DIR)/package.mk include ../python-package.mk @@ -42,12 +41,9 @@ endef define Package/pillow/install $(INSTALL_DIR) $(1)$(PYTHON_PKG_DIR) - $(INSTALL_DIR) $(1)/usr/bin $(CP) \ $(PKG_INSTALL_DIR)$(PYTHON_PKG_DIR)/* \ $(1)$(PYTHON_PKG_DIR)/ - $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin - $(CP) $(PKG_BUILD_DIR)/LICENSE $(1)$(PYTHON_PKG_DIR)/PIL/ endef $(eval $(call BuildPackage,pillow)) diff --git a/lang/python/pillow/patches/010-fix-paths.patch b/lang/python/pillow/patches/010-fix-paths.patch index a6b86bfe6..ca5b2e57d 100644 --- a/lang/python/pillow/patches/010-fix-paths.patch +++ b/lang/python/pillow/patches/010-fix-paths.patch @@ -1,32 +1,34 @@ -diff -rupN pillow-3.3.1.orig/setup.py pillow-3.3.1/setup.py ---- pillow-3.3.1.orig/setup.py 2016-08-22 17:45:05.000000000 +0200 -+++ pillow-3.3.1/setup.py 2016-08-22 18:09:51.947745155 +0200 -@@ -111,12 +111,12 @@ except (ImportError, OSError): +diff --git a/setup.py b/setup.py +index 15d81e4..ee6dba6 100755 +--- a/setup.py ++++ b/setup.py +@@ -136,12 +136,12 @@ except (ImportError, OSError): NAME = 'Pillow' - PILLOW_VERSION = '3.3.1' + PILLOW_VERSION = get_version() -JPEG_ROOT = None -+JPEG_ROOT = _lib_include(os.environ['STAGING_DIR'] + "/usr") ++JPEG_ROOT = os.path.join(os.environ['STAGING_DIR'], "/usr/lib") JPEG2K_ROOT = None -ZLIB_ROOT = None -+ZLIB_ROOT = _lib_include(os.environ['STAGING_DIR'] + "/usr") ++ZLIB_ROOT = os.path.join(os.environ['STAGING_DIR'], "/usr/lib") IMAGEQUANT_ROOT = None -TIFF_ROOT = None -FREETYPE_ROOT = None -+TIFF_ROOT = _lib_include(os.environ['STAGING_DIR'] + "/usr") -+FREETYPE_ROOT = _lib_include(os.environ['STAGING_DIR'] + "/usr") ++TIFF_ROOT = os.path.join(os.environ['STAGING_DIR'], "/usr/lib") ++FREETYPE_ROOT = os.path.join(os.environ['STAGING_DIR'], "/usr/lib") LCMS_ROOT = None -@@ -221,161 +221,6 @@ class pil_build_ext(build_ext): +@@ -289,159 +289,6 @@ class pil_build_ext(build_ext): + _add_directory(library_dirs, os.path.join(prefix, "lib")) _add_directory(include_dirs, os.path.join(prefix, "include")) - # +- # - # add platform directories - - if self.disable_platform_guessing: - pass -- +- - elif sys.platform == "cygwin": - # pythonX.Y.dll.a is in the /usr/lib/pythonX.Y/config directory - _add_directory(library_dirs, @@ -48,7 +50,7 @@ diff -rupN pillow-3.3.1.orig/setup.py pillow-3.3.1/setup.py - try: - prefix = subprocess.check_output(['brew', '--prefix']).strip( - ).decode('latin1') -- except: +- except Exception: - # Homebrew not installed - prefix = None - @@ -73,61 +75,59 @@ diff -rupN pillow-3.3.1.orig/setup.py pillow-3.3.1/setup.py - - elif sys.platform.startswith("linux"): - arch_tp = (plat.processor(), plat.architecture()[0]) -- if arch_tp == ("x86_64", "32bit"): -- # 32-bit build on 64-bit machine. +- # This should be correct on debian derivatives. +- if os.path.exists('/etc/debian_version'): +- # If this doesn't work, don't just silently patch +- # downstream because it's going to break when people +- # try to build pillow from source instead of +- # installing from the system packages. +- self.add_multiarch_paths() +- +- elif arch_tp == ("x86_64", "32bit"): +- # Special Case: 32-bit build on 64-bit machine. - _add_directory(library_dirs, "/usr/lib/i386-linux-gnu") - else: -- for platform_ in arch_tp: +- libdirs = { +- 'x86_64': ["/lib64", "/usr/lib64", +- "/usr/lib/x86_64-linux-gnu"], +- '64bit': ["/lib64", "/usr/lib64", +- "/usr/lib/x86_64-linux-gnu"], +- 'i386': ["/usr/lib/i386-linux-gnu"], +- 'i686': ["/usr/lib/i386-linux-gnu"], +- '32bit': ["/usr/lib/i386-linux-gnu"], +- 'aarch64': ["/usr/lib64", "/usr/lib/aarch64-linux-gnu"], +- 'arm': ["/usr/lib/arm-linux-gnueabi"], +- 'armv71': ["/usr/lib/arm-linux-gnueabi"], +- 'armv7l': ["/usr/lib"], +- 'ppc64': ["/usr/lib64", "/usr/lib/ppc64-linux-gnu", +- "/usr/lib/powerpc64-linux-gnu"], +- 'ppc64le': ["/usr/lib64"], +- 'ppc': ["/usr/lib/ppc-linux-gnu", +- "/usr/lib/powerpc-linux-gnu"], +- 's390x': ["/usr/lib64", "/usr/lib/s390x-linux-gnu"], +- 's390': ["/usr/lib/s390-linux-gnu"], +- } - -- if not platform_: +- for platform_ in arch_tp: +- dirs = libdirs.get(platform_, None) +- if not dirs: - continue +- for path in dirs: +- _add_directory(library_dirs, path) +- break - -- if platform_ in ["x86_64", "64bit"]: -- _add_directory(library_dirs, "/lib64") -- _add_directory(library_dirs, "/usr/lib64") -- _add_directory(library_dirs, -- "/usr/lib/x86_64-linux-gnu") -- break -- elif platform_ in ["i386", "i686", "32bit"]: -- _add_directory(library_dirs, "/usr/lib/i386-linux-gnu") -- break -- elif platform_ in ["aarch64"]: -- _add_directory(library_dirs, "/usr/lib64") -- _add_directory(library_dirs, -- "/usr/lib/aarch64-linux-gnu") -- break -- elif platform_ in ["arm", "armv7l"]: -- _add_directory(library_dirs, -- "/usr/lib/arm-linux-gnueabi") -- break -- elif platform_ in ["ppc64"]: -- _add_directory(library_dirs, "/usr/lib64") -- _add_directory(library_dirs, -- "/usr/lib/ppc64-linux-gnu") -- _add_directory(library_dirs, -- "/usr/lib/powerpc64-linux-gnu") -- break -- elif platform_ in ["ppc"]: -- _add_directory(library_dirs, "/usr/lib/ppc-linux-gnu") -- _add_directory(library_dirs, -- "/usr/lib/powerpc-linux-gnu") -- break -- elif platform_ in ["s390x"]: -- _add_directory(library_dirs, "/usr/lib64") -- _add_directory(library_dirs, -- "/usr/lib/s390x-linux-gnu") -- break -- elif platform_ in ["s390"]: -- _add_directory(library_dirs, "/usr/lib/s390-linux-gnu") -- break - else: - raise ValueError( - "Unable to identify Linux platform: `%s`" % platform_) - -- # XXX Kludge. Above /\ we brute force support multiarch. Here we -- # try Barry's more general approach. Afterward, something should -- # work ;-) -- self.add_multiarch_paths() +- # termux support for android. +- # system libraries (zlib) are installed in /system/lib +- # headers are at $PREFIX/include +- # user libs are at $PREFIX/lib +- if os.environ.get('ANDROID_ROOT', None): +- _add_directory(library_dirs, +- os.path.join(os.environ['ANDROID_ROOT'], +- 'lib')) - - elif sys.platform.startswith("gnu"): - self.add_multiarch_paths() @@ -164,8 +164,8 @@ diff -rupN pillow-3.3.1.orig/setup.py pillow-3.3.1/setup.py - best_path = None - for name in os.listdir(program_files): - if name.startswith('OpenJPEG '): -- version = tuple([int(x) for x in name[9:].strip().split( -- '.')]) +- version = tuple(int(x) for x in +- name[9:].strip().split('.')) - if version > best_version: - best_version = version - best_path = os.path.join(program_files, name) @@ -176,7 +176,6 @@ diff -rupN pillow-3.3.1.orig/setup.py pillow-3.3.1/setup.py - _add_directory(include_dirs, - os.path.join(best_path, 'include')) - -- # + # # insert new dirs *before* default libs, to avoid conflicts # between Python PYD stub libs and real libraries -