diff --git a/package/meson/meson.mk b/package/meson/meson.mk index 5ac9a1d91b..d76541cc93 100644 --- a/package/meson/meson.mk +++ b/package/meson/meson.mk @@ -49,6 +49,8 @@ HOST_MESON_SED_CFLAGS = $(if $(TARGET_CFLAGS),`printf '"%s"$(comma) ' $(TARGET_C HOST_MESON_SED_LDFLAGS = $(if $(TARGET_LDFLAGS),`printf '"%s"$(comma) ' $(TARGET_LDFLAGS)`) HOST_MESON_SED_CXXFLAGS = $(if $(TARGET_CXXFLAGS),`printf '"%s"$(comma) ' $(TARGET_CXXFLAGS)`) +# Generate a Meson cross-compilation.conf suitable for use with the +# SDK define HOST_MESON_INSTALL_CROSS_CONF mkdir -p $(HOST_DIR)/etc/meson sed -e "s%@TARGET_CROSS@%$(TARGET_CROSS)%g" \ @@ -63,6 +65,6 @@ define HOST_MESON_INSTALL_CROSS_CONF > $(HOST_DIR)/etc/meson/cross-compilation.conf endef -HOST_MESON_POST_INSTALL_HOOKS += HOST_MESON_INSTALL_CROSS_CONF +TARGET_FINALIZE_HOOKS += HOST_MESON_INSTALL_CROSS_CONF $(eval $(host-python-package)) diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk index 0588660dbf..256e5645e4 100644 --- a/package/pkg-meson.mk +++ b/package/pkg-meson.mk @@ -64,12 +64,22 @@ ifeq ($(4),target) define $(2)_CONFIGURE_CMDS rm -rf $$($$(PKG)_SRCDIR)/build mkdir -p $$($$(PKG)_SRCDIR)/build + sed -e "s%@TARGET_CROSS@%$$(TARGET_CROSS)%g" \ + -e "s%@TARGET_ARCH@%$$(ARCH)%g" \ + -e "s%@TARGET_CPU@%$$(GCC_TARGET_CPU)%g" \ + -e "s%@TARGET_ENDIAN@%$$(call LOWERCASE,$$(BR2_ENDIAN))%g" \ + -e "s%@TARGET_CFLAGS@%$$(HOST_MESON_SED_CFLAGS)%g" \ + -e "s%@TARGET_LDFLAGS@%$$(HOST_MESON_SED_LDFLAGS)%g" \ + -e "s%@TARGET_CXXFLAGS@%$$(HOST_MESON_SED_CXXFLAGS)%g" \ + -e "s%@HOST_DIR@%$$(HOST_DIR)%g" \ + package/meson/cross-compilation.conf.in \ + > $$($$(PKG)_SRCDIR)/build/cross-compilation.conf PATH=$$(BR_PATH) $$($$(PKG)_CONF_ENV) $$(MESON) \ --prefix=/usr \ --libdir=lib \ --default-library=$(if $(BR2_STATIC_LIBS),static,shared) \ --buildtype=$(if $(BR2_ENABLE_DEBUG),debug,release) \ - --cross-file=$(HOST_DIR)/etc/meson/cross-compilation.conf \ + --cross-file=$$($$(PKG)_SRCDIR)/build/cross-compilation.conf \ $$($$(PKG)_CONF_OPTS) \ $$($$(PKG)_SRCDIR) $$($$(PKG)_SRCDIR)/build endef