python3: Fix readelf program name not replaced in _sysconfigdata.py
authorJeffery To <jeffery.to@gmail.com>
Thu, 18 May 2023 09:42:12 +0000 (17:42 +0800)
committerJeffery To <jeffery.to@gmail.com>
Wed, 24 May 2023 05:59:48 +0000 (13:59 +0800)
The Makefile lines to add READELF to TARGET_CONFIGURE_OPTS was removed
in 4e05541782edeb06b51d691dadf52648df24c940.

Without setting READELF, configure finds the symlink to
$(TARGET_CROSS)readelf (e.g. arm-openwrt-linux-readelf) instead of
$(TARGET_CROSS)readelf (e.g. arm-openwrt-linux-muslgnueabi-readelf).

This leads to the symlink name being saved to _sysconfigdata.py, and so
the readelf name is not replaced correctly (in
Py3Package/python3-base/install).

This restores the removed Makefile lines.

Fixes: 4e05541782ed ("python3: bump to version 3.10.0")
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
(cherry picked from commit e1a95786358c64483fc16d52eac6746267f0abec,
adjusted PKG_RELEASE)
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
lang/python/python3/Makefile

index c8f4687fd57fbd0867b1c60f190116f5b964b29b..830ccc62a1bfde512b7dd2f60b58373f66ffee7a 100644 (file)
@@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk
 include ../python3-version.mk
 
 PKG_NAME:=python3
-PKG_RELEASE:=3
+PKG_RELEASE:=4
 PKG_VERSION:=$(PYTHON3_VERSION).$(PYTHON3_VERSION_MICRO)
 
 PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz
@@ -135,6 +135,11 @@ define Package/python3/description
   It's python3-light + all other packages.
 endef
 
+# Set READELF here so that the exact same readelf program name can be
+# replaced in _sysconfigdata.py (in Py3Package/python3-base/install)
+TARGET_CONFIGURE_OPTS+= \
+       READELF="$(TARGET_CROSS)readelf"
+
 EXTRA_LDFLAGS+= \
        -L$(PKG_BUILD_DIR) \
        -L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib