python,python3: add option to keep egg-info dirs for python packages 4897/head
authorAlexandru Ardelean <ardeleanalex@gmail.com>
Mon, 2 Oct 2017 12:43:52 +0000 (15:43 +0300)
committerAlexandru Ardelean <ardeleanalex@gmail.com>
Tue, 3 Oct 2017 07:40:26 +0000 (10:40 +0300)
That way some python packages can choose
to keep their egg-info dirs, if they want to, or they're needed.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
lang/python/python/Makefile
lang/python/python/files/python-package-install.sh
lang/python/python/files/python-package.mk
lang/python/python3/Makefile
lang/python/python3/files/python3-package-install.sh
lang/python/python3/files/python3-package.mk

index 96aac08b1f7cc254bd7356b58c4c58dd7c91d0fa..03cda5ce984c0343a5d03aa73d668d3073ac372a 100644 (file)
@@ -12,7 +12,9 @@ include ./files/python-version.mk
 
 PKG_NAME:=python
 PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO)
-PKG_RELEASE:=1
+# XXX: reset PKG_RELEASE to 1 only if Python's pip & setuptools versions have also bumped;
+#      otherwise, keep bumping PKG_RELEASE
+PKG_RELEASE:=2
 
 PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz
 PKG_SOURCE_URL:=https://www.python.org/ftp/python/$(PKG_VERSION)
index 94becf2c976927e044677d096e67e1d9b5cb8020..cefbce376a857aedaef5bc464ef99d6c941c3efb 100644 (file)
@@ -47,7 +47,8 @@ process_filespec "$src_dir" "$dst_dir" "$filespec" || {
 }
 
 # delete egg-info directories
-find "$dst_dir" -name "*.egg-info" | xargs rm -rf
+[ "$PYTHON_KEEP_EGGINFO" == "1" ] || \
+       find "$dst_dir" -name "*.egg-info" | xargs rm -rf
 
 if [ "$mode" == "sources" ] ; then
        # Copy only python source files
index 9c231f6ecfa0f8c8edc74ab3baa40fd85e4b634f..7e3cb2ce83698c3f786abaaddd6268ba7dccaf24 100644 (file)
@@ -32,6 +32,8 @@ ifdef CONFIG_USE_MIPS16
   TARGET_CFLAGS += -mno-mips16 -mno-interlink-mips16
 endif
 
+PYTHON_KEEP_EGGINFO ?= 0
+
 define PyPackage
 
   define Package/$(1)-src
@@ -68,11 +70,13 @@ define PyPackage
        $(call PyPackage/$(1)/install,$$(1))
        find $(PKG_INSTALL_DIR) -name "*\.exe" | xargs rm -f
        if [ -e files/python-package-install.sh ] ; then \
+               PYTHON_KEEP_EGGINFO="$(PYTHON_KEEP_EGGINFO)" \
                $(SHELL) files/python-package-install.sh \
                        "$(PKG_INSTALL_DIR)" "$$(1)" \
                        "$(HOST_PYTHON_BIN)" "$$(2)" \
                        "$$$$$$$$$$(call shvar,PyPackage/$(1)/filespec)" ; \
        elif [ -e $(STAGING_DIR)/mk/python-package-install.sh ] ; then \
+               PYTHON_KEEP_EGGINFO="$(PYTHON_KEEP_EGGINFO)" \
                $(SHELL) $(STAGING_DIR)/mk/python-package-install.sh \
                        "$(PKG_INSTALL_DIR)" "$$(1)" \
                        "$(HOST_PYTHON_BIN)" "$$(2)" \
index 7fdcb92fa7023d64663bf87f65caf4eb49a4802e..4b5311ecce048c31f91fdf0784f21922c18c7965 100644 (file)
@@ -16,7 +16,7 @@ PYTHON_VERSION_MICRO:=$(PYTHON3_VERSION_MICRO)
 PKG_NAME:=python3
 # XXX: reset PKG_RELEASE to 1 only if Python's pip & setuptools versions have also bumped;
 #      otherwise, keep bumping PKG_RELEASE
-PKG_RELEASE:=6
+PKG_RELEASE:=7
 PKG_VERSION:=$(PYTHON_VERSION).$(PYTHON_VERSION_MICRO)
 
 PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz
index dd1e708fc5e35e9dd4d6e6465bec81632789fffb..0b68dd245c71696799c05692f9a7e2f6e7764c18 100644 (file)
@@ -47,7 +47,8 @@ process_filespec "$src_dir" "$dst_dir" "$filespec" || {
 }
 
 # delete egg-info directories
-find "$dst_dir" -name "*.egg-info" | xargs rm -rf
+[ "$PYTHON3_KEEP_EGGINFO" == "1" ] || \
+       find "$dst_dir" -name "*.egg-info" | xargs rm -rf
 
 if [ "$mode" == "sources" ] ; then
        # Copy only python source files
index 93b14fac23b25ade106bf2ea55ec1a2b0d362278..1d42b6dc3478a3cd5d92d81088f8ffcfae213089 100644 (file)
@@ -32,6 +32,8 @@ ifdef CONFIG_USE_MIPS16
   TARGET_CFLAGS += -mno-mips16 -mno-interlink-mips16
 endif
 
+PYTHON3_KEEP_EGGINFO ?= 0
+
 define Py3Package
 
   define Package/$(1)-src
@@ -68,11 +70,13 @@ define Py3Package
        $(call Py3Package/$(1)/install,$$(1))
        find $(PKG_INSTALL_DIR) -name "*\.exe" | xargs rm -f
        if [ -e files/python3-package-install.sh ] ; then \
+               PYTHON3_KEEP_EGGINFO="$(PYTHON3_KEEP_EGGINFO)" \
                $(SHELL) files/python3-package-install.sh \
                        "$(PKG_INSTALL_DIR)" "$$(1)" \
                        "$(HOST_PYTHON3_BIN)" "$$(2)" \
                        "$$$$$$$$$$(call shvar,Py3Package/$(1)/filespec)" ; \
        elif [ -e $(STAGING_DIR)/mk/python3-package-install.sh ] ; then \
+               PYTHON3_KEEP_EGGINFO="$(PYTHON3_KEEP_EGGINFO)" \
                $(SHELL) $(STAGING_DIR)/mk/python3-package-install.sh \
                        "$(PKG_INSTALL_DIR)" "$$(1)" \
                        "$(HOST_PYTHON3_BIN)" "$$(2)" \