packages/lang/python/files/python-package.mk
Alexandru Ardelean d5bd7dd36e python: add old python 2 package back
According to PEP394 (http://legacy.python.org/dev/peps/pep-0394/)
the 'python' command should refer to 'python2'.

In our case, this means we should reboot the old python package.

We could rename the package name to python2, but that would
just complicate things a bit with other packages, and
since we're doing this reboot, such a complication would be
unnecessary.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2014-10-15 10:02:33 +03:00

77 lines
2.1 KiB
Makefile

#
# Copyright (C) 2007-2014 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
PYTHON_VERSION=2.7
PYTHON_DIR:=$(STAGING_DIR)/usr
PYTHON_BIN_DIR:=$(PYTHON_DIR)/bin
PYTHON_INC_DIR:=$(PYTHON_DIR)/include/python$(PYTHON_VERSION)
PYTHON_LIB_DIR:=$(PYTHON_DIR)/lib/python$(PYTHON_VERSION)
PYTHON_PKG_DIR:=/usr/lib/python$(PYTHON_VERSION)/site-packages
PYTHON:=python$(PYTHON_VERSION)
HOST_PYTHON_BIN:=$(STAGING_DIR)/usr/bin/hostpython
define HostPython
( export PYTHONPATH="$(PYTHON_LIB_DIR):$(STAGING_DIR)/$(PYTHON_PKG_DIR)"; \
export PYTHONOPTIMIZE=""; \
export PYTHONDONTWRITEBYTECODE=1; \
$(1) \
$(HOST_PYTHON_BIN) $(2); \
)
endef
define PyPackage
$(call shexport,PyPackage/$(1)/filespec)
define Package/$(1)/install
@$(SH_FUNC) getvar $$(call shvar,PyPackage/$(1)/filespec) | ( \
IFS='|'; \
while read fop fspec fperm; do \
if [ "$$$$$$$$fop" = "+" ]; then \
dpath=`dirname "$$$$$$$$fspec"`; \
if [ -n "$$$$$$$$fperm" ]; then \
dperm="-m$$$$$$$$fperm"; \
else \
dperm=`stat -c "%a" $(PKG_INSTALL_DIR)$$$$$$$$dpath`; \
fi; \
mkdir -p $$$$$$$$$dperm $$(1)$$$$$$$$dpath; \
echo "copying: '$$$$$$$$fspec'"; \
cp -fpR $(PKG_INSTALL_DIR)$$$$$$$$fspec $$(1)$$$$$$$$dpath/; \
if [ -n "$$$$$$$$fperm" ]; then \
chmod -R $$$$$$$$fperm $$(1)$$$$$$$$fspec; \
fi; \
elif [ "$$$$$$$$fop" = "-" ]; then \
echo "removing: '$$$$$$$$fspec'"; \
rm -fR $$(1)$$$$$$$$fspec; \
elif [ "$$$$$$$$fop" = "=" ]; then \
echo "setting permissions: '$$$$$$$$fperm' on '$$$$$$$$fspec'"; \
chmod -R $$$$$$$$fperm $$(1)$$$$$$$$fspec; \
fi; \
done; \
)
$(call PyPackage/$(1)/install,$$(1))
endef
endef
# $(1) => build subdir
# $(2) => additional arguments to setup.py
# $(3) => additional variables
define Build/Compile/PyMod
$(call HostPython, \
cd $(PKG_BUILD_DIR)/$(strip $(1)); \
CFLAGS="$(TARGET_CFLAGS)" \
CPPFLAGS="$(TARGET_CPPFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
$(3) \
, \
./setup.py $(2) \
)
find $(PKG_INSTALL_DIR) -name "*\.pyc" -o -name "*\.pyo" | xargs rm -f
endef