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)
committerRosen Penev <rosenp@gmail.com>
Wed, 24 May 2023 03:04:33 +0000 (06:04 +0300)
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>
lang/python/python3/Makefile

index 28d80b00dedb89151719af571a848fc04117150c..eb2c4c8b26d0091df716881a8b9b70fcc231e0ea 100644 (file)
@@ -11,7 +11,7 @@ include $(TOPDIR)/rules.mk
 include ../python3-version.mk
 
 PKG_NAME:=python3
-PKG_RELEASE:=6
+PKG_RELEASE:=7
 PKG_VERSION:=$(PYTHON3_VERSION).$(PYTHON3_VERSION_MICRO)
 
 PKG_SOURCE:=Python-$(PKG_VERSION).tar.xz
@@ -138,6 +138,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