• Re: [gentoo-dev] USE=ninja to compile by ninja, otherwise by make

    From waebbl-gentoo@posteo.net@21:1/5 to Fabulous Zhang Zheng on Fri Jul 29 19:10:01 2022
    On Sat, 30 Jul 2022 00:38:54 +0800
    Fabulous Zhang Zheng <zheng1181822466@gmail.com> wrote:

    Dear everyone,


    While gentoo-devhelp is a better place for questions, it's been inactive
    for years so I sent an email here. Apologies if this is solely for gentoo developers.

    There's #gentoo-dev-help


    After trying to read cmake.eclass source code, I think separately denoting ninja/make in src_compile and src_install might be possible. But
    cmake_build still automatically detects the build type so I am confused.


    Take a look at CMAKE_MAKEFILE_GENERATOR variable used in cmake.eclass.
    You want to change this from the default to emake if you want to use
    make instead of ninja.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fabulous Zhang Zheng@21:1/5 to All on Fri Jul 29 19:40:01 2022
    Thanks for your reply

    <waebbl-gentoo@posteo.net> 于2022年7月30日周六 01:09写道:

    On Sat, 30 Jul 2022 00:38:54 +0800
    Fabulous Zhang Zheng <zheng1181822466@gmail.com> wrote:

    Dear everyone,


    While gentoo-devhelp is a better place for questions, it's been inactive for years so I sent an email here. Apologies if this is solely for gentoo developers.

    There's #gentoo-dev-help


    After trying to read cmake.eclass source code, I think separately
    denoting
    ninja/make in src_compile and src_install might be possible. But cmake_build still automatically detects the build type so I am confused.


    Take a look at CMAKE_MAKEFILE_GENERATOR variable used in cmake.eclass.
    You want to change this from the default to emake if you want to use
    make instead of ninja.


    I noticed this variable before but it must be set before inherit.
    If I try something like:

    if ! use ninja; then
    CMAKE_MAKEFILE_GENERATOR=emake
    fi
    inherit cmake xdg ninja-utils

    pkgcheck will say report error:
    external commands disallowed during metadata regen: 'use ninja'

    Best regards

    <div dir="ltr"><div dir="ltr">Thanks for your reply<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">&lt;<a href="mailto:waebbl-gentoo@posteo.net">waebbl-gentoo@posteo.net</a>&gt; 于2022年7月30日周六 01:09写道:<br></div><
    blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Sat, 30 Jul 2022 00:38:54 +0800<br>
    Fabulous Zhang Zheng &lt;<a href="mailto:zheng1181822466@gmail.com" target="_blank">zheng1181822466@gmail.com</a>&gt; wrote:<br>

    &gt; Dear everyone,<br>
    &gt; <br>
    &gt; <br>
    &gt; While gentoo-devhelp is a better place for questions, it&#39;s been inactive<br>
    &gt; for years so I sent an email here. Apologies if this is solely for gentoo<br>
    &gt; developers.<br>

    There&#39;s #gentoo-dev-help<br>

    &gt; <br>
    &gt; After trying to read cmake.eclass source code, I think separately denoting<br>
    &gt; ninja/make in src_compile and src_install might be possible. But<br>
    &gt; cmake_build still automatically detects the build type so I am confused.<br>
    &gt; <br>

    Take a look at CMAKE_MAKEFILE_GENERATOR variable used in cmake.eclass.<br>
    You want to change this from the default to emake if you want to use<br>
    make instead of ninja.<br>

    <br></blockquote><div>I noticed this variable before but it must be set before inherit.</div><div>If I try something like:</div><div><br></div><div style="margin-left:40px"> if ! use ninja; then<br>    CMAKE_MAKEFILE_GENERATOR=emake<br>fi<br>inherit
    cmake xdg ninja-utils</div><div style="margin-left:40px"><br></div>pkgcheck will say report error:</div><div class="gmail_quote">external commands disallowed during metadata regen: &#39;use ninja&#39;</div><div class="gmail_quote"><br></div><div class="
    gmail_quote">Best regards<br></div></div>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fabulous Zhang Zheng@21:1/5 to All on Fri Jul 29 21:10:01 2022
    Sorry for bothering.

    Fabulous Zhang Zheng <zheng1181822466@gmail.com> 于2022年7月30日周六 01:31写道:

    Thanks for your reply

    <waebbl-gentoo@posteo.net> 于2022年7月30日周六 01:09写道:

    On Sat, 30 Jul 2022 00:38:54 +0800
    Fabulous Zhang Zheng <zheng1181822466@gmail.com> wrote:

    Dear everyone,


    While gentoo-devhelp is a better place for questions, it's been inactive >> > for years so I sent an email here. Apologies if this is solely for
    gentoo
    developers.

    There's #gentoo-dev-help


    After trying to read cmake.eclass source code, I think separately
    denoting
    ninja/make in src_compile and src_install might be possible. But
    cmake_build still automatically detects the build type so I am confused. >> >

    Take a look at CMAKE_MAKEFILE_GENERATOR variable used in cmake.eclass.
    You want to change this from the default to emake if you want to use
    make instead of ninja.


    I noticed this variable before but it must be set before inherit.
    If I try something like:

    if ! use ninja; then
    CMAKE_MAKEFILE_GENERATOR=emake
    fi
    inherit cmake xdg ninja-utils

    pkgcheck will say report error:
    external commands disallowed during metadata regen: 'use ninja'

    Best regards


    I asked this question in #gentoo-dev-help.

    According to @iamben and @floppy, using the default ninja is best supported, emake would only be preferred if the package fails with ninja.

    And apologies again, for bothering with this list,
    I was not aware of the IRC.

    Best regards

    <div dir="ltr"><div dir="ltr"><div id="gmail-:uj" class="gmail-Ar gmail-Au gmail-Ao" style="display:block"><div id="gmail-:uf" class="gmail-Am gmail-Al editable gmail-LW-avf gmail-tS-tW gmail-tS-tY" aria-label="邮件正文" aria-multiline="true" style="
    direction:ltr;min-height:85px" tabindex="1"><div>Sorry for bothering.</div></div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Fabulous Zhang Zheng &lt;<a href="mailto:zheng1181822466@gmail.com">zheng1181822466@gmail.com</a>&
    gt; 于2022年7月30日周六 01:31写道:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">Thanks for your reply<br></div><br><div class="
    gmail_quote"><div dir="ltr" class="gmail_attr">&lt;<a href="mailto:waebbl-gentoo@posteo.net" target="_blank">waebbl-gentoo@posteo.net</a>&gt; 于2022年7月30日周六 01:09写道:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.
    8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Sat, 30 Jul 2022 00:38:54 +0800<br>
    Fabulous Zhang Zheng &lt;<a href="mailto:zheng1181822466@gmail.com" target="_blank">zheng1181822466@gmail.com</a>&gt; wrote:<br>

    &gt; Dear everyone,<br>
    &gt; <br>
    &gt; <br>
    &gt; While gentoo-devhelp is a better place for questions, it&#39;s been inactive<br>
    &gt; for years so I sent an email here. Apologies if this is solely for gentoo<br>
    &gt; developers.<br>

    There&#39;s #gentoo-dev-help<br>

    &gt; <br>
    &gt; After trying to read cmake.eclass source code, I think separately denoting<br>
    &gt; ninja/make in src_compile and src_install might be possible. But<br>
    &gt; cmake_build still automatically detects the build type so I am confused.<br>
    &gt; <br>

    Take a look at CMAKE_MAKEFILE_GENERATOR variable used in cmake.eclass.<br>
    You want to change this from the default to emake if you want to use<br>
    make instead of ninja.<br>

    <br></blockquote><div>I noticed this variable before but it must be set before inherit.</div><div>If I try something like:</div><div><br></div><div style="margin-left:40px"> if ! use ninja; then<br>    CMAKE_MAKEFILE_GENERATOR=emake<br>fi<br>inherit
    cmake xdg ninja-utils</div><div style="margin-left:40px"><br></div>pkgcheck will say report error:</div><div class="gmail_quote">external commands disallowed during metadata regen: &#39;use ninja&#39;</div><div class="gmail_quote"><br></div><div class="
    gmail_quote">Best regards<br></div></div></blockquote><div><div><br></div><div>I asked this question in #gentoo-dev-help.</div><div><br></div><div>According to @iamben and <a class="gmail_plusreply" id="gmail-plusReplyChip-1">@floppy</a>, using the
    default ninja is best supported,</div><div>emake would only be preferred if the package fails with ninja.</div><div><br></div><div>And apologies again, for bothering with this list,</div><div>I was not aware of the IRC.</div><div><br></div><div>Best
    regards</div> </div></div></div>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)