2017-07-22 18:16:08 +00:00
|
|
|
ENV_PYTHONPATH := $(PYTHONPATH)
|
2017-07-26 09:45:54 +00:00
|
|
|
PYTHON ?= python
|
|
|
|
|
#PYTHON = python3
|
2017-07-21 15:34:16 +00:00
|
|
|
|
|
|
|
|
ifneq ($(DEVELOPMENT),true)
|
2017-07-26 09:45:54 +00:00
|
|
|
PY_SITE_PACKAGES_PATH = $(shell $(PYTHON) -c "import site; print site.getsitepackages()[0]")
|
2017-07-21 15:34:16 +00:00
|
|
|
else
|
|
|
|
|
PY_SITE_PACKAGES_PATH = $(PREFIX)/python/site-packages
|
|
|
|
|
endif
|
|
|
|
|
|
2017-07-22 18:16:08 +00:00
|
|
|
PY_PREREQ_BUILD ?= $(shell $(proj_query_cmd) pkg-requires --subsections jw -d ' ' -p --no-version build $(PROJECT))
|
|
|
|
|
PY_PREREQ_BUILD_DIRS ?= $(shell $(proj_query_cmd) proj-dir $(PY_PREREQ_BUILD))
|
2017-07-24 10:59:08 +00:00
|
|
|
PY_PROJ_MODULE_DIRS ?= $(wildcard $(foreach subdir,/tools/python /src/python,$(addsuffix $(subdir),$(TOPDIR) $(PY_PREREQ_BUILD_DIRS))))
|
|
|
|
|
PY_MODULE_DIRS ?= $(PY_PROJ_MODULE_DIRS)
|
|
|
|
|
PY_PROJ_MODULES += $(dir $(wildcard $(PY_MODULE_DIRS)/*/__init__.py))
|
2017-07-22 18:16:08 +00:00
|
|
|
PY_MODULES ?= $(PY_PROJ_MODULES)
|
2017-07-25 15:04:44 +00:00
|
|
|
PY_SRC_PY ?= $(wildcard *.py)
|
|
|
|
|
PY_ALL_PY = $(sort $(PY_SRC_PY) __init__.py)
|
|
|
|
|
PY_PYC = $(patsubst %.py,%.pyc,$(PY_ALL_PY))
|
2017-07-21 15:34:16 +00:00
|
|
|
|
2017-07-24 10:59:08 +00:00
|
|
|
PY_INSTALL_PKG_MOD ?= $(shell pwd | sed 's%.*/python/%%; s%/.*%%')
|
|
|
|
|
PY_INSTALL_SUB_MOD ?= $(shell pwd | sed "s%.*/$(PY_INSTALL_PKG_MOD)\(/\|$$\)%%")
|
|
|
|
|
ifneq ($(PY_INSTALL_SUB_MOD),)
|
|
|
|
|
PY_INSTALL_MOD ?= $(PY_INSTALL_PKG_MOD)/$(PY_INSTALL_SUB_MOD)
|
2017-07-21 15:34:16 +00:00
|
|
|
else
|
2017-07-24 10:59:08 +00:00
|
|
|
PY_INSTALL_MOD ?= $(PY_INSTALL_PKG_MOD)
|
2017-07-21 15:34:16 +00:00
|
|
|
endif
|
2017-07-24 10:59:08 +00:00
|
|
|
PY_MOD ?= $(subst /,.,$(PY_INSTALL_MOD))
|
|
|
|
|
PY_INSTALL_DIR = $(ENV_PREFIX)$(PY_SITE_PACKAGES_PATH)/$(patsubst .,/,$(PY_INSTALL_MOD))
|
2017-07-25 15:04:44 +00:00
|
|
|
PY_INSTALLED_REG = $(addprefix $(PY_INSTALL_DIR)/,$(PY_ALL_PY) $(PY_PYC))
|
2017-07-21 15:34:16 +00:00
|
|
|
|
2017-07-24 10:59:08 +00:00
|
|
|
empty :=
|
|
|
|
|
space := $(empty) $(empty)
|
|
|
|
|
PYTHONPATH ?= $(call proj_query, pythonpath $(PROJECT))
|
|
|
|
|
#PYTHONPATH = $(subst $(space),,$(ENV_PYTHONPATH)$(foreach d,$(PY_MODULE_DIRS),:$(d)))
|
2017-07-21 15:34:16 +00:00
|
|
|
export PYTHONPATH
|
|
|
|
|
|
|
|
|
|
all:
|
2017-10-30 12:02:43 +00:00
|
|
|
clean: pyc.clean
|
|
|
|
|
|
2017-07-21 15:34:16 +00:00
|
|
|
echo-py:
|
2017-07-22 18:16:08 +00:00
|
|
|
@echo PROJECT = $(PROJECT)
|
2017-07-24 10:59:08 +00:00
|
|
|
@echo PY_PROJ_MODULE_DIRS = $(PY_PROJ_MODULE_DIRS)
|
|
|
|
|
@echo PY_MODULE_DIRS = $(PY_MODULE_DIRS)
|
2017-07-21 15:34:16 +00:00
|
|
|
@echo PY_SITE_PACKAGES_PATH = $(PY_SITE_PACKAGES_PATH)
|
|
|
|
|
@echo PY_MODULES = $(PY_MODULES)
|
|
|
|
|
@echo PYTHONPATH = $(PYTHONPATH)
|
|
|
|
|
@echo PY_INSTALL_MOD = $(PY_INSTALL_MOD)
|
2017-07-24 10:59:08 +00:00
|
|
|
@echo PY_INSTALL_SUB_MOD = $(PY_INSTALL_SUB_MOD)
|
|
|
|
|
|
2017-10-30 12:02:43 +00:00
|
|
|
pyc.clean:
|
|
|
|
|
rm -f $(wildcard *.pyc)
|
2017-07-24 10:59:08 +00:00
|
|
|
libpath: py-libpath
|
|
|
|
|
py-libpath:
|
|
|
|
|
@echo export PYTHONPATH=$(PYTHONPATH)
|
2017-08-01 21:53:36 +00:00
|
|
|
|
|
|
|
|
include $(MODDIR)/make/ldlibpath.mk
|
|
|
|
|
|