0001-setup.py-support-cross-compiling.patch 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. From 98e6831754712221ce030ce8b27e100a3926c543 Mon Sep 17 00:00:00 2001
  2. From: Leon Anavi <leon.anavi@konsulko.com>
  3. Date: Mon, 5 May 2025 16:08:37 +0000
  4. Subject: [PATCH] setup.py: support cross compiling
  5. Upstream-Status: Inappropriate [oe specific]
  6. Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
  7. ---
  8. setup.py | 19 +++++++++++--------
  9. 1 file changed, 11 insertions(+), 8 deletions(-)
  10. diff --git a/setup.py b/setup.py
  11. index 68945e4..67566e8 100644
  12. --- a/setup.py
  13. +++ b/setup.py
  14. @@ -125,12 +125,12 @@ class PillowHeifBuildExt(build_ext):
  15. self._add_directory(library_dirs, match.group(1))
  16. # include, rpath, if set as environment variables
  17. - for k in ("C_INCLUDE_PATH", "CPATH", "INCLUDE"):
  18. + for k in ("C_INCLUDE_PATH", "CPATH", "INCLUDE", "STAGING_INCDIR"):
  19. if k in os.environ:
  20. for d in os.environ[k].split(os.path.pathsep):
  21. self._add_directory(include_dirs, d)
  22. - for k in ("LD_RUN_PATH", "LIBRARY_PATH", "LIB"):
  23. + for k in ("LD_RUN_PATH", "LIBRARY_PATH", "LIB", "STAGING_LIBDIR"):
  24. if k in os.environ:
  25. for d in os.environ[k].split(os.path.pathsep):
  26. self._add_directory(library_dirs, d)
  27. @@ -199,12 +199,15 @@ class PillowHeifBuildExt(build_ext):
  28. self._update_extension("_pillow_heif", ["heif"], extra_compile_args=["-O3", "-Werror"])
  29. else: # let's assume it's some kind of linux
  30. # this old code waiting for refactoring, when time comes.
  31. - self._add_directory(include_dirs, "/usr/local/include")
  32. - self._add_directory(include_dirs, "/usr/include")
  33. - self._add_directory(library_dirs, "/usr/local/lib")
  34. - self._add_directory(library_dirs, "/usr/lib64")
  35. - self._add_directory(library_dirs, "/usr/lib")
  36. - self._add_directory(library_dirs, "/lib")
  37. + include_os_path = os.environ.get("STAGING_INCDIR")
  38. + if include_os_path:
  39. + for path in include_os_path.split(os.pathsep):
  40. + self._add_directory(include_dirs, path)
  41. +
  42. + lib_os_path = os.environ.get("STAGING_LIBDIR")
  43. + if lib_os_path:
  44. + for path in lib_os_path.split(os.pathsep):
  45. + self._add_directory(library_dirs, path)
  46. self._update_extension("_pillow_heif", ["heif"], extra_compile_args=["-O3", "-Werror"])
  47. --
  48. 2.39.5