lede-packages-rs

git clone git://archive.git.mtrnord.blog/MTRNord/lede-packages-rs.git
Log | Files | Refs | README | LICENSE

commit dbde5d52951f7d6fa5c5c7034850ea0ab08c81ec
parent b3beb14b67abe5bbbc3f1a15032abd70b19c3c7b
Author: Steven Barth <steven@midlink.org>
Date:   Tue, 24 Nov 2015 15:50:34 +0100

Merge pull request #1984 from jefferyto/host-python-package

python: add capability to install python packages for the host
Diffstat:
Mlang/python/Makefile | 5++++-
Alang/python/files/python-host.mk | 53+++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 57 insertions(+), 1 deletion(-)

diff --git a/lang/python/Makefile b/lang/python/Makefile @@ -138,7 +138,10 @@ define Build/InstallDev $(INSTALL_DIR) $(STAGING_DIR)/mk/ $(INSTALL_DIR) $(1)/usr/include/ $(1)/usr/lib/ $(1)/usr/lib/pkgconfig $(INSTALL_DIR) $(1)/usr/lib/python$(PYTHON_VERSION)/ - $(INSTALL_DATA) ./files/python-package.mk $(STAGING_DIR)/mk/ + $(INSTALL_DATA) \ + ./files/python-package.mk \ + ./files/python-host.mk \ + $(STAGING_DIR)/mk/ $(CP) \ $(PKG_INSTALL_DIR)/usr/include/python$(PYTHON_VERSION) \ $(1)/usr/include/ diff --git a/lang/python/files/python-host.mk b/lang/python/files/python-host.mk @@ -0,0 +1,53 @@ +# +# Copyright (C) 2015 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +HOST_PYTHON_INC_DIR:=$(STAGING_DIR_HOST)/include/python$(PYTHON_VERSION) + +HOST_PYTHON_PKG_DIR:=/lib/python$(PYTHON_VERSION)/site-packages + +HOST_PYTHONPATH:=$(HOST_PYTHON_LIB_DIR):$(STAGING_DIR_HOST)/$(HOST_PYTHON_PKG_DIR) +define HostHostPython + ( export PYTHONPATH="$(HOST_PYTHONPATH)"; \ + export PYTHONOPTIMIZE=""; \ + export PYTHONDONTWRITEBYTECODE=1; \ + export _python_sysroot="$(STAGING_DIR_HOST)"; \ + export _python_prefix=""; \ + export _python_exec_prefix=""; \ + $(1) \ + $(HOST_PYTHON_BIN) $(2); \ + ) +endef + +# These configure args are needed in detection of path to Python header files +# using autotools. +HOST_CONFIGURE_ARGS += \ + _python_sysroot="$(STAGING_DIR_HOST)" \ + _python_prefix="" \ + _python_exec_prefix="" + +# $(1) => build subdir +# $(2) => additional arguments to setup.py +# $(3) => additional variables +define Build/Compile/HostPyMod + $(call HostHostPython, \ + cd $(HOST_BUILD_DIR)/$(strip $(1)); \ + CC="$(HOSTCC)" \ + CCSHARED="$(HOSTCC) $(HOST_FPIC)" \ + CXX="$(HOSTCXX)" \ + LD="$(HOSTCC)" \ + LDSHARED="$(HOSTCC) -shared" \ + CFLAGS="$(HOST_CFLAGS)" \ + CPPFLAGS="$(HOST_CPPFLAGS) -I$(HOST_PYTHON_INC_DIR)" \ + LDFLAGS="$(HOST_LDFLAGS) -lpython$(PYTHON_VERSION)" \ + _PYTHON_HOST_PLATFORM=linux2 \ + __PYVENV_LAUNCHER__="/usr/bin/$(PYTHON)" \ + $(3) \ + , \ + ./setup.py $(2) \ + ) +endef +