• [gentoo-dev] [PATCH v2] meson.eclass: stop calling ninja

    From William Hubbs@21:1/5 to All on Tue Aug 24 17:00:02 2021
    Use the compile and install subcommands of meson instead of calling
    ninja. This allows for the possibility of a different back end.

    Signed-off-by: William Hubbs <williamh@gentoo.org>
    ---
    eclass/meson.eclass | 22 +++++++++++++++++++---
    1 file changed, 19 insertions(+), 3 deletions(-)

    diff --git a/eclass/meson.eclass b/eclass/meson.eclass
    index 2a563e367c6..0bc74012fb1 100644
    --- a/eclass/meson.eclass
    +++ b/eclass/meson.eclass
    @@ -379,7 +379,19 @@ meson_src_configure() {
    meson_src_compile() {
    debug-print-function ${FUNCNAME} "$@"

    - eninja -C "${BUILD_DIR}" "$@"
    + local mesoncompileargs=(
    + -C "${BUILD_DIR}"
    + )
    + # use NINJAOPTS before MAKEOPTS for consistency with meson_src_test
    + local options="${NINJAOPTS:-${MAKEOPTS}}"
    + if [[ -n ${options} ]]; then
    + mesoncompileargs+=(
    + --jobs "$(makeopts_jobs ${options})"
    + --load-average "$(makeopts_loadavg ${options})"
    + )
    + fi
    +
    + meson compile "${mesoncompileargs[@]}" "$@" || die "compile failed"
    }

    # @FUNCTION: meson_src_test
    @@ -406,13 +418,17 @@ meson_src_test() {
    }

    # @FUNCTION: meson_src_install
    -# @USAGE: [extra ninja install arguments]
    +# @USAGE: [extra meson install arguments]
    # @DESC