From 41f7322853621ea14a2d057cd6322014307acc02 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Mon, 2 Dec 2024 01:05:01 +0000 Subject: [PATCH] meson: allow using staging python Introduce package flag MESON_USE_STAGING_PYTHON which allows packages to be built with the OpenWrt-built python3/host instead of relying on the buildhost's Python distribution. This is useful for packages using Meson which require additional Python modules during build. Signed-off-by: Daniel Golle --- include/meson.mk | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/include/meson.mk b/include/meson.mk index fdb94b6542..62dc7bd5de 100644 --- a/include/meson.mk +++ b/include/meson.mk @@ -55,8 +55,14 @@ else MESON_CPU:="$(CPU_TYPE)$(if $(CPU_SUBTYPE),+$(CPU_SUBTYPE))" endif +ifeq ($(MESON_USE_STAGING_PYTHON),) +PYTHON_BIN:=$(STAGING_DIR_HOST)/bin/$(PYTHON) +else +PYTHON_BIN:=$(STAGING_DIR_HOSTPKG)/bin/$(PYTHON) +endif + define Meson - $(2) $(STAGING_DIR_HOST)/bin/$(PYTHON) $(STAGING_DIR_HOST)/bin/meson.py $(1) + $(2) $(PYTHON_BIN) $(STAGING_DIR_HOST)/bin/meson.py $(1) endef define Meson/CreateNativeFile @@ -65,7 +71,7 @@ define Meson/CreateNativeFile -e "s|@CXX@|$(foreach BIN,$(HOSTCXX),'$(BIN)',)|" \ -e "s|@PKGCONFIG@|$(PKG_CONFIG)|" \ -e "s|@CMAKE@|$(STAGING_DIR_HOST)/bin/cmake|" \ - -e "s|@PYTHON@|$(STAGING_DIR_HOST)/bin/python3|" \ + -e "s|@PYTHON@|$(PYTHON_BIN)|" \ -e "s|@CFLAGS@|$(foreach FLAG,$(HOST_CFLAGS) $(HOST_CPPFLAGS),'$(FLAG)',)|" \ -e "s|@CXXFLAGS@|$(foreach FLAG,$(HOST_CXXFLAGS) $(HOST_CPPFLAGS),'$(FLAG)',)|" \ -e "s|@LDFLAGS@|$(foreach FLAG,$(HOST_LDFLAGS),'$(FLAG)',)|" \ @@ -84,7 +90,7 @@ define Meson/CreateCrossFile -e "s|@NM@|$(TARGET_NM)|" \ -e "s|@PKGCONFIG@|$(PKG_CONFIG)|" \ -e "s|@CMAKE@|$(STAGING_DIR_HOST)/bin/cmake|" \ - -e "s|@PYTHON@|$(STAGING_DIR_HOST)/bin/python3|" \ + -e "s|@PYTHON@|$(PYTHON_BIN)|" \ -e "s|@CFLAGS@|$(foreach FLAG,$(TARGET_CFLAGS) $(EXTRA_CFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS),'$(FLAG)',)|" \ -e "s|@CXXFLAGS@|$(foreach FLAG,$(TARGET_CXXFLAGS) $(EXTRA_CXXFLAGS) $(TARGET_CPPFLAGS) $(EXTRA_CPPFLAGS),'$(FLAG)',)|" \ -e "s|@LDFLAGS@|$(foreach FLAG,$(TARGET_LDFLAGS) $(EXTRA_LDFLAGS),'$(FLAG)',)|" \ -- 2.30.2