view src/build-meson.mk @ 7186:19a46de50b18 default tip @

* src/jasper.mk: update to v4.2.4
author John Donoghue <john.donoghue@ieee.org>
date Thu, 02 May 2024 09:22:30 -0400
parents 82418632646d
children
line wrap: on
line source

# This file is part of MXE.
# See index.html for further information.

PKG             := build-meson
$(PKG)_IGNORE   :=
$(PKG)_VERSION  := 1.4.0
$(PKG)_CHECKSUM := bad61900278992772bc0ffeb6e8daa0c96dac3ae
$(PKG)_SUBDIR   := meson-$($(PKG)_VERSION)
$(PKG)_FILE     := meson-$($(PKG)_VERSION).tar.gz
$(PKG)_URL      := https://github.com/mesonbuild/meson/archive/$($(PKG)_VERSION).tar.gz
$(PKG)_DEPS     := build-python

define $(PKG)_UPDATE
    echo 'Warning: Updates are temporarily disabled for package $(PKG).' >&2;
    echo $($(PKG)_VERSION)
endef

# FIXME: Should this be defined in the top-level Makefile?
ifeq ($(MXE_NATIVE_BUILD),no)
  MESON_TOOLCHAIN_FILE := $(HOST_PREFIX)/share/meson/cross/mxe-conf.ini
else
  MESON_TOOLCHAIN_FILE := $(HOST_PREFIX)/share/meson/native/mxe-conf.ini
endif

ifeq ($(USE_CCACHE),yes)
    $(PKG)_MXE_CC_BASENAME := $(shell basename $(MXE_CC))
    $(PKG)_MXE_CXX_BASENAME := $(shell basename $(MXE_CXX))
    $(PKG)_MXE_F77_BASENAME := $(shell basename $(MXE_F77))
endif

define $(PKG)_BUILD
    cd '$(1)' && $(MXE_PYTHON) setup.py install --prefix='$(BUILD_TOOLS_PREFIX)'

    # create file with compilation settings
    rm -f $(MESON_TOOLCHAIN_FILE) && mkdir -p '$(dir $(MESON_TOOLCHAIN_FILE))'
    (echo "[binaries]"; \
    if [ x$(USE_SYSTEM_GCC) == xno ]; then \
      if [ x$(USE_CCACHE) == xyes ]; then \
        echo "c = '$($(PKG)_MXE_CC_BASENAME)'"; \
        echo "cpp = '$($(PKG)_MXE_CXX_BASENAME)'"; \
        echo "fortran = '$($(PKG)_MXE_F77_BASENAME)'"; \
      else \
        echo "c = '$(shell echo $(MXE_CC) | $(SED) "s/'//g")'"; \
        echo "cpp = '$(shell echo $(MXE_CXX) | $(SED) "s/'//g")'"; \
        echo "fortran = '$(shell echo $(MXE_F77) | $(SED) "s/'//g")'"; \
      fi; \
      echo "ar = '$(shell echo $(MXE_AR) | $(SED) "s/'//g")'"; \
      echo "strip = '$(shell echo $(MXE_STRIP) | $(SED) "s/'//g")'"; \
    fi; \
    echo "pkgconfig = '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)pkg-config'"; \
    echo "llvm-config = '$(HOST_BINDIR)/$(MXE_TOOL_PREFIX)llvm-config'"; \
    if [ x$(MXE_SYSTEM) = xmingw ]; then \
      echo "windres = '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)windres'"; \
    fi; \
    echo ""; \
    echo "[paths]"; \
    echo "libdir = 'lib'"; \
    if [ x$(MXE_NATIVE_BUILD) = xno ]; then \
      echo ""; \
      echo "[host_machine]"; \
      echo "system = 'windows'"; \
      if [ x$(ENABLE_WINDOWS_64) = xyes ]; then \
        echo "cpu_family = 'x86_64'"; \
      else \
        echo "cpu_family = 'x86'"; \
      fi; \
      echo "cpu = 'i686'"; \
      echo "endian = 'little'"; \
    fi) >> $(MESON_TOOLCHAIN_FILE)
endef