Index | Thread | Search

From:
Theo Buehler <tb@theobuehler.org>
Subject:
Re: UPDATE: libwebp - CMake
To:
Stuart Henderson <stu@spacehopper.org>
Cc:
Brad Smith <brad@comstyle.com>, ports@openbsd.org, sthen@openbsd.org
Date:
Thu, 22 Jan 2026 01:09:09 +0100

Download raw body.

Thread
On Wed, Jan 21, 2026 at 11:52:54PM +0000, Stuart Henderson wrote:
> see patch-setup_py about tiff which had the same issue

This works and passes regress (2 failures unrelated to libwebp).

I think the webp diff should drop base-gcc and set COMPILER_LANGS=c

Then all this is ok tb

Index: Makefile
===================================================================
RCS file: /cvs/ports/graphics/py-Pillow/Makefile,v
diff -u -p -r1.76 Makefile
--- Makefile	5 Jan 2026 14:45:23 -0000	1.76
+++ Makefile	21 Jan 2026 23:57:09 -0000
@@ -37,6 +37,7 @@ TEST_DEPENDS=	${FULLPKGNAME}:${BUILD_PKG
 # tiff/xcb: they'd be picked up anyway but set to enable to fail
 # if libs aren't found
 MODPY_PYBUILD_ARGS= -C tiff=enable \
+		    -C webp=enable \
 		    -C xcb=enable \
 		    -C parallel=${MAKE_JOBS}
 # can also use -C debug=true
Index: patches/patch-setup_py
===================================================================
RCS file: /cvs/ports/graphics/py-Pillow/patches/patch-setup_py,v
diff -u -p -r1.19 patch-setup_py
--- patches/patch-setup_py	18 Oct 2025 08:08:31 -0000	1.19
+++ patches/patch-setup_py	22 Jan 2026 00:02:21 -0000
@@ -1,10 +1,10 @@
 hunk 1: allow finding X libs
 
-hunk 2: find_library_file (which comes from distutils via setuptools)
+hunks 2-3: find_library_file (which comes from distutils via setuptools)
 has a hardcoded 'shared_lib_extension = ".so"' and only searches for the
 full filename, so it misses OpenBSD-style libfoo.so.X.Y unless there's
 also a static library with a matching name (but that was removed in an
-update of graphics/tiff). Patch to workaround.
+update of graphics/tiff and graphics/webp). Patch to workaround.
 
 Index: setup.py
 --- setup.py.orig
@@ -22,12 +22,21 @@ Index: setup.py
          elif sys.platform.startswith("netbsd"):
              _add_directory(library_dirs, "/usr/pkg/lib")
              _add_directory(include_dirs, "/usr/pkg/include")
-@@ -793,6 +799,8 @@ class pil_build_ext(build_ext):
-                 ):
+@@ -794,6 +800,8 @@ class pil_build_ext(build_ext):
                      feature.set("tiff", "libtiff")
                  elif _find_library_file(self, "tiff"):
-+                    feature.set("tiff", "tiff")
-+                elif sys.platform.startswith("openbsd"):
                      feature.set("tiff", "tiff")
++                elif sys.platform.startswith("openbsd"):
++                    feature.set("tiff", "tiff")
  
          if feature.want("freetype"):
+             _dbg("Looking for freetype")
+@@ -874,6 +882,8 @@ class pil_build_ext(build_ext):
+                     ):
+                         feature.set("webp", prefix + "webp")
+                         break
++                    elif sys.platform.startswith("openbsd"):
++                        feature.set("webp", "webp")
+ 
+         if feature.want("xcb"):
+             _dbg("Looking for xcb")