diff -rupN --no-dereference Pillow-10.1.0/setup.py Pillow-10.1.0-new/setup.py --- Pillow-10.1.0/setup.py 2023-10-15 10:59:17.000000000 +0200 +++ Pillow-10.1.0-new/setup.py 2023-10-15 17:05:40.196995053 +0200 @@ -136,7 +136,7 @@ class RequiredDependencyException(Except pass -PLATFORM_MINGW = os.name == "nt" and "GCC" in sys.version +PLATFORM_MINGW = "mingw32" in os.getenv("CC", "") def _dbg(s, tp=None): @@ -509,7 +509,7 @@ class pil_build_ext(build_ext): # # add platform directories - if self.disable_platform_guessing: + if self.disable_platform_guessing or PLATFORM_MINGW: pass elif sys.platform == "cygwin": @@ -600,7 +600,7 @@ class pil_build_ext(build_ext): # FIXME: check /opt/stuff directories here? # standard locations - if not self.disable_platform_guessing: + if not self.disable_platform_guessing and not PLATFORM_MINGW: _add_directory(library_dirs, "/usr/local/lib") _add_directory(include_dirs, "/usr/local/include") @@ -842,7 +842,7 @@ class pil_build_ext(build_ext): if feature.xcb: libs.append(feature.xcb) defs.append(("HAVE_XCB", None)) - if sys.platform == "win32": + if sys.platform == "win32" or PLATFORM_MINGW: libs.extend(["kernel32", "user32", "gdi32"]) if struct.unpack("h", b"\0\1")[0] == 1: defs.append(("WORDS_BIGENDIAN", None)) @@ -857,6 +857,8 @@ class pil_build_ext(build_ext): if feature.freetype: srcs = [] libs = ["freetype"] + if sys.platform == "win32" or PLATFORM_MINGW: + libs.extend(["dl"]) defs = [] if feature.raqm: if not feature.want_vendor("raqm"): # using system Raqm @@ -879,7 +881,7 @@ class pil_build_ext(build_ext): if feature.lcms: extra = [] - if sys.platform == "win32": + if sys.platform == "win32" or PLATFORM_MINGW: extra.extend(["user32", "gdi32"]) self._update_extension("PIL._imagingcms", [feature.lcms] + extra) else: @@ -898,7 +900,7 @@ class pil_build_ext(build_ext): else: self._remove_extension("PIL._webp") - tk_libs = ["psapi"] if sys.platform in ("win32", "cygwin") else [] + tk_libs = ["psapi"] if sys.platform in ("win32", "cygwin") or PLATFORM_MINGW else [] self._update_extension("PIL._imagingtk", tk_libs) build_ext.build_extensions(self) diff -rupN --no-dereference Pillow-10.1.0/src/libImaging/ImPlatform.h Pillow-10.1.0-new/src/libImaging/ImPlatform.h --- Pillow-10.1.0/src/libImaging/ImPlatform.h 2023-10-15 10:59:17.000000000 +0200 +++ Pillow-10.1.0-new/src/libImaging/ImPlatform.h 2023-10-15 17:05:40.196995053 +0200 @@ -28,7 +28,7 @@ #if defined(_WIN32) || defined(__CYGWIN__) /* WIN */ #define WIN32_LEAN_AND_MEAN -#include +#include #ifdef __CYGWIN__ #undef _WIN64