python-cffi: add host variant
authorYegor Yefremov <yegorslists@googlemail.com>
Tue, 5 Jan 2016 07:17:24 +0000 (08:17 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Wed, 3 Feb 2016 21:34:14 +0000 (22:34 +0100)
Host variant is needed to cross-compile CFFI based C library wrappers.

Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
[Thomas:
 - add dependency on host-pkgconf for the host package variant.
 - add various environment variables needed to make pkg-config behave
   properly when building host-python-cffi. Otherwise, pkg-config
   returns values that are appropriate to build things for the target,
   and the build fails.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/python-cffi/python-cffi.mk

index 70fbe023740583cd141a4506f8fac4126a836b3b..7151789926dd2d0022b63c14b6a7e538d846e31f 100644 (file)
@@ -12,4 +12,16 @@ PYTHON_CFFI_DEPENDENCIES = host-pkgconf libffi
 PYTHON_CFFI_LICENSE = MIT
 PYTHON_CFFI_LICENSE_FILES = LICENSE
 
+# This host package uses pkg-config to find libffi, so we have to
+# provide the proper hints for pkg-config to behave properly for host
+# packages.
+HOST_PYTHON_CFFI_ENV = \
+       PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \
+       PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \
+       PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
+       PKG_CONFIG_SYSROOT_DIR="/" \
+       PKG_CONFIG_LIBDIR="$(HOST_DIR)/usr/lib/pkgconfig:$(HOST_DIR)/usr/share/pkgconfig"
+HOST_PYTHON_CFFI_DEPENDENCIES = host-pkgconf host-python-pycparser host-libffi
+
 $(eval $(python-package))
+$(eval $(host-python-package))