Use the compile and install subcommands of meson instead of calling ninja. This allows for the possibility of a different back end.
Stop using the NINJAOPTS variable. Signed-off-by: William Hubbs <willi...@gentoo.org> --- eclass/meson.eclass | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/eclass/meson.eclass b/eclass/meson.eclass index 2a563e367c6..89f9e6bac87 100644 --- a/eclass/meson.eclass +++ b/eclass/meson.eclass @@ -379,7 +379,13 @@ meson_src_configure() { meson_src_compile() { debug-print-function ${FUNCNAME} "$@" - eninja -C "${BUILD_DIR}" "$@" + local mesoncompileargs=( + -C "${BUILD_DIR}" + --jobs "$(makeopts_jobs "${MAKEOPTS}")" + --load-average "$(makeopts_loadavg "${MAKEOPTS}" 0)" + ) + + meson compile "${mesoncompileargs[@]}" "$@" || die "compile failed" } # @FUNCTION: meson_src_test @@ -392,9 +398,9 @@ meson_src_test() { local mesontestargs=( -C "${BUILD_DIR}" ) - [[ -n ${NINJAOPTS} || -n ${MAKEOPTS} ]] && + [[ -n ${MAKEOPTS} ]] && mesontestargs+=( - --num-processes "$(makeopts_jobs ${NINJAOPTS:-${MAKEOPTS}})" + --num-processes "$(makeopts_jobs)" ) # Append additional arguments from ebuild @@ -406,13 +412,17 @@ meson_src_test() { } # @FUNCTION: meson_src_install -# @USAGE: [extra ninja install arguments] +# @USAGE: [extra meson install arguments] # @DESCRIPTION: # This is the meson_src_install function. meson_src_install() { debug-print-function ${FUNCNAME} "$@" - DESTDIR="${D}" eninja -C "${BUILD_DIR}" install "$@" + local mesoninstallargs=( + -C "${BUILD_DIR}" + --destdir "${D}" + ) + meson install "${mesoninstallargs[@]}" "$@" pushd "${S}" > /dev/null || die einstalldocs -- 2.31.1