summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Golle2024-12-02 01:05:01 +0000
committerDaniel Golle2024-12-02 19:30:22 +0000
commit41f7322853621ea14a2d057cd6322014307acc02 (patch)
tree357b979b0614089e6ce3da963f1167eaad756f5b
parent83491965715eea103c9386494e2643ba644ad248 (diff)
downloadopenwrt-41f7322853621ea14a2d057cd6322014307acc02.tar.gz
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 <daniel@makrotopia.org>
-rw-r--r--include/meson.mk12
1 files 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)',)|" \