From 94157535445c6f743dd50405618a500816454471 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sun, 19 Oct 2014 00:45:59 +0300 Subject: python: export CC + CCSHARED env vars to cross-compile Python C extensions properly Signed-off-by: Alexandru Ardelean --- lang/python/files/python-package.mk | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lang/python/files/python-package.mk') diff --git a/lang/python/files/python-package.mk b/lang/python/files/python-package.mk index dc30494fe..8bf51ed95 100644 --- a/lang/python/files/python-package.mk +++ b/lang/python/files/python-package.mk @@ -72,6 +72,8 @@ endef define Build/Compile/PyMod $(call HostPython, \ cd $(PKG_BUILD_DIR)/$(strip $(1)); \ + CC="$(TARGET_CC)" \ + CCSHARED="$(TARGET_CC) $(FPIC)" \ CFLAGS="$(TARGET_CFLAGS)" \ CPPFLAGS="$(TARGET_CPPFLAGS)" \ LDFLAGS="$(TARGET_LDFLAGS)" \ -- cgit From bfb286ff624787633c6ed441c1be729526cb3383 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sun, 19 Oct 2014 10:03:44 +0300 Subject: python: add PYTHON_INC_DIR var to CPPFLAGS The target's PYTHON_INC_DIR should take precedence over the host's include dir when cross-compiling. Signed-off-by: Alexandru Ardelean --- lang/python/files/python-package.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lang/python/files/python-package.mk') diff --git a/lang/python/files/python-package.mk b/lang/python/files/python-package.mk index 8bf51ed95..273076387 100644 --- a/lang/python/files/python-package.mk +++ b/lang/python/files/python-package.mk @@ -75,7 +75,7 @@ define Build/Compile/PyMod CC="$(TARGET_CC)" \ CCSHARED="$(TARGET_CC) $(FPIC)" \ CFLAGS="$(TARGET_CFLAGS)" \ - CPPFLAGS="$(TARGET_CPPFLAGS)" \ + CPPFLAGS="$(TARGET_CPPFLAGS) -I$(PYTHON_INC_DIR)" \ LDFLAGS="$(TARGET_LDFLAGS)" \ $(3) \ , \ -- cgit From 855ef2a53085f79a0603de7cd08a7ea8923e62c2 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sun, 19 Oct 2014 10:21:03 +0300 Subject: python: add LD and LDSHARED env vars to Build/Compile/PyMod Tells the host Python to use the target's linker. Signed-off-by: Alexandru Ardelean --- lang/python/files/python-package.mk | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'lang/python/files/python-package.mk') diff --git a/lang/python/files/python-package.mk b/lang/python/files/python-package.mk index 273076387..35f5ac837 100644 --- a/lang/python/files/python-package.mk +++ b/lang/python/files/python-package.mk @@ -74,9 +74,11 @@ define Build/Compile/PyMod cd $(PKG_BUILD_DIR)/$(strip $(1)); \ CC="$(TARGET_CC)" \ CCSHARED="$(TARGET_CC) $(FPIC)" \ + LD="$(TARGET_CC)" \ + LDSHARED="$(TARGET_CC) -shared" \ CFLAGS="$(TARGET_CFLAGS)" \ CPPFLAGS="$(TARGET_CPPFLAGS) -I$(PYTHON_INC_DIR)" \ - LDFLAGS="$(TARGET_LDFLAGS)" \ + LDFLAGS="$(TARGET_LDFLAGS) -lpython$(PYTHON_VERSION)" \ $(3) \ , \ ./setup.py $(2) \ -- cgit From 0141057a59d86cccc7550d0ccbb6f42ed12b41a0 Mon Sep 17 00:00:00 2001 From: Alexandru Ardelean Date: Sun, 19 Oct 2014 21:17:33 +0300 Subject: python: add _PYTHON_HOST_PLATFORM env var when cross-compiling C extensions This mostly helps to avoid confusion when modules are cross-compiled. Otherwise build folders are named with the host's platform name. Signed-off-by: Alexandru Ardelean --- lang/python/files/python-package.mk | 1 + 1 file changed, 1 insertion(+) (limited to 'lang/python/files/python-package.mk') diff --git a/lang/python/files/python-package.mk b/lang/python/files/python-package.mk index 35f5ac837..f5ec5cee9 100644 --- a/lang/python/files/python-package.mk +++ b/lang/python/files/python-package.mk @@ -79,6 +79,7 @@ define Build/Compile/PyMod CFLAGS="$(TARGET_CFLAGS)" \ CPPFLAGS="$(TARGET_CPPFLAGS) -I$(PYTHON_INC_DIR)" \ LDFLAGS="$(TARGET_LDFLAGS) -lpython$(PYTHON_VERSION)" \ + _PYTHON_HOST_PLATFORM="linux-$(ARCH)" \ $(3) \ , \ ./setup.py $(2) \ -- cgit