diff --git a/packages/addons/addon-depends/libgpiod/package.mk b/packages/addons/addon-depends/libgpiod/package.mk index 781b8420bb..ed70b4fe03 100644 --- a/packages/addons/addon-depends/libgpiod/package.mk +++ b/packages/addons/addon-depends/libgpiod/package.mk @@ -7,9 +7,21 @@ PKG_SHA256="ae35329db7027c740e90c883baf27c26311f0614e6a7b115771b28188b992aec" PKG_LICENSE="GPLv2+" PKG_SITE="https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/about/" PKG_URL="https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git/snapshot/libgpiod-${PKG_VERSION}.tar.gz" -PKG_DEPENDS_TARGET="toolchain" +PKG_DEPENDS_TARGET="toolchain Python3 distutilscross:host" PKG_LONGDESC="Tools for interacting with the linux GPIO character device." PKG_TOOLCHAIN="autotools" -PKG_BUILD_FLAGS="+pic" +PKG_BUILD_FLAGS="+pic -sysroot" PKG_CONFIGURE_OPTS_TARGET="--enable-tools --disable-shared" + +post_make_target() { + ( + export PYTHONXCPREFIX="${SYSROOT_PREFIX}/usr" + export LDFLAGS+=" -L${PKG_BUILD}/.${TARGET_NAME}/lib/.libs" + export LDSHARED="${CC} -shared" + export CFLAGS+=" -fcommon -I${PKG_BUILD}/include" + export CPPFLAGS="${TARGET_CPPFLAGS} -I${SYSROOT_PREFIX}/usr/include/${PKG_PYTHON_VERSION}" + cd ../bindings/python + python3 setup.py build + ) +} diff --git a/packages/addons/addon-depends/libgpiod/patches/libgpiod_setuptools-errors.patch b/packages/addons/addon-depends/libgpiod/patches/libgpiod_setuptools-errors.patch new file mode 100644 index 0000000000..ce1f0683c8 --- /dev/null +++ b/packages/addons/addon-depends/libgpiod/patches/libgpiod_setuptools-errors.patch @@ -0,0 +1,11 @@ +--- a/bindings/python/setup.py 2024-11-12 14:29:25.000000000 +0100 ++++ b/bindings/python/setup.py 2025-01-05 17:00:00.000000000 +0100 +@@ -8,7 +8,7 @@ + from setuptools.command.build_ext import build_ext as orig_build_ext + from setuptools.command.sdist import log + from setuptools.command.sdist import sdist as orig_sdist +-from setuptools.errors import BaseError ++from distutils.errors import DistutilsError as BaseError + + LINK_SYSTEM_LIBGPIOD = getenv("LINK_SYSTEM_LIBGPIOD") == "1" + LIBGPIOD_MINIMUM_VERSION = "2.1"