Merge pull request #2413 from KurdyMalloy/poco
[feed/packages.git] / lang / python / files / python-host.mk
1 #
2 # Copyright (C) 2015-2016 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 HOST_PYTHON_DIR:=$(STAGING_DIR)/host
9 HOST_PYTHON_INC_DIR:=$(HOST_PYTHON_DIR)/include/python$(PYTHON_VERSION)
10 HOST_PYTHON_LIB_DIR:=$(HOST_PYTHON_DIR)/lib/python$(PYTHON_VERSION)
11
12 HOST_PYTHON_PKG_DIR:=/lib/python$(PYTHON_VERSION)/site-packages
13
14 HOST_PYTHON_BIN:=$(HOST_PYTHON_DIR)/bin/python$(PYTHON_VERSION)
15
16 HOST_PYTHONPATH:=$(HOST_PYTHON_LIB_DIR):$(STAGING_DIR)/host/$(HOST_PYTHON_PKG_DIR)
17
18 define HostPython
19 if [ "$(strip $(3))" == "HOST" ]; then \
20 export PYTHONPATH="$(HOST_PYTHONPATH)"; \
21 export PYTHONDONTWRITEBYTECODE=0; \
22 else \
23 export PYTHONPATH="$(PYTHONPATH)"; \
24 export PYTHONDONTWRITEBYTECODE=1; \
25 export _python_sysroot="$(STAGING_DIR)"; \
26 export _python_prefix="/usr"; \
27 export _python_exec_prefix="/usr"; \
28 fi; \
29 export PYTHONOPTIMIZE=""; \
30 $(1) \
31 $(HOST_PYTHON_BIN) $(2);
32 endef
33
34 # $(1) => build subdir
35 # $(2) => additional arguments to setup.py
36 # $(3) => additional variables
37 define Build/Compile/HostPyMod
38 $(call HostPython, \
39 cd $(HOST_BUILD_DIR)/$(strip $(1)); \
40 CC="$(HOSTCC)" \
41 CCSHARED="$(HOSTCC) $(HOST_FPIC)" \
42 CXX="$(HOSTCXX)" \
43 LD="$(HOSTCC)" \
44 LDSHARED="$(HOSTCC) -shared" \
45 CFLAGS="$(HOST_CFLAGS)" \
46 CPPFLAGS="$(HOST_CPPFLAGS) -I$(HOST_PYTHON_INC_DIR)" \
47 LDFLAGS="$(HOST_LDFLAGS) -lpython$(PYTHON_VERSION)" \
48 _PYTHON_HOST_PLATFORM=linux2 \
49 $(3) \
50 , \
51 ./setup.py $(2) \
52 , \
53 HOST \
54 )
55 endef
56