python-pyqt: fix install

PyQt4 provides two version for some py files: one for python2.x and one for
python3.x. This two versions are installed in TARGET_DIR.
After installing files, python is used to generate all .pyc files, but fails
like :
class ProxyBase(metaclass=ProxyMetaclass):
                             ^
							 SyntaxError: invalid syntax

This is not a package build failure and this fix is only cosmetic.
This patch suppress directory for not targeted python version.

Signed-off-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Gwenhael Goavec-Merou 2015-05-05 16:33:53 +02:00 committed by Peter Korsgaard
parent d4171c5192
commit 348be778ff
1 changed files with 3 additions and 0 deletions

View File

@ -14,8 +14,10 @@ PYTHON_PYQT_DEPENDENCIES = python-sip host-python-sip qt
ifeq ($(BR2_PACKAGE_PYTHON),y)
PYTHON_PYQT_PYTHON_DIR = python$(PYTHON_VERSION_MAJOR)
PYTHON_PYQT_RM_PORT_BASE = port_v3
else ifeq ($(BR2_PACKAGE_PYTHON3),y)
PYTHON_PYQT_PYTHON_DIR = python$(PYTHON3_VERSION_MAJOR)
PYTHON_PYQT_RM_PORT_BASE = port_v2
endif
ifeq ($(BR2_PACKAGE_QT_EMBEDDED),y)
@ -105,6 +107,7 @@ endef
define PYTHON_PYQT_INSTALL_TARGET_CMDS
$(TARGET_MAKE_ENV) $(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D) install
touch $(TARGET_DIR)/usr/lib/$(PYTHON_PYQT_PYTHON_DIR)/site-packages/PyQt4/__init__.py
$(RM) -rf $(TARGET_DIR)/usr/lib/$(PYTHON_PYQT_PYTHON_DIR)/site-packages/PyQt4/uic/$(PYTHON_PYQT_RM_PORT_BASE)
PYTHONPATH="$(PYTHON_PATH)" \
$(HOST_DIR)/usr/bin/python -c "import compileall; \
compileall.compile_dir('$(TARGET_DIR)/usr/lib/$(PYTHON_PYQT_PYTHON_DIR)/site-packages/PyQt4')"