On 2018-01-17 11:18 AM, Otavio Salvador wrote:
On Tue, Jan 16, 2018 at 11:25 AM, Ross Burton <[email protected]> wrote:
The Ninja backend is faster than Make for large projects (takes three minutes
off webkitgtk:do_compile for me), so use it by default.

Signed-off-by: Ross Burton <[email protected]>

I tried to test this but it did not apply in master. Could you rebase it?


On my 64+64 core system that is shared, it reduced a webkit compile
from ~ 17 minutes to ~12 minutes for just the compile stage. YMMV.

$ cat webkit-before-compile.log
3.29user 0.50system 17:39.98elapsed 0%CPU
  (0avgtext+0avgdata 28532maxresident)k
0inputs+176outputs (0major+16335minor)pagefaults 0swaps


$ cat webkit-after-compile.log
2.70user 0.47system 12:09.24elapsed 0%CPU
   (0avgtext+0avgdata 28292maxresident)k
0inputs+160outputs (0major+14634minor)pagefaults 0swaps

I'm going to try to build world (oe-core + meta-oe + ...).


Octavio, it's a two line change! :)
This applied to master for me:

commit 3914c66f6e7123a64ab73e2b6707452bbfd10d02
Author: Ross Burton <[email protected]>
Date:   Wed Jan 17 13:09:40 2018 -0500

    cmake: use Ninja backend instead of Make

    The Ninja backend is faster than Make for large projects
    (it takes three minutes off webkitgtk:do_compile for example)
    so use it by default.

    Acked-by: Randy MacLeod <[email protected]>
    Signed-off-by: Ross Burton <[email protected]>

diff --git a/meta/classes/cmake.bbclass b/meta/classes/cmake.bbclass
index a4079dab0d..c46117acde 100644
--- a/meta/classes/cmake.bbclass
+++ b/meta/classes/cmake.bbclass
@@ -1,7 +1,7 @@
 # Path to the CMake file to process.
 OECMAKE_SOURCEPATH ??= "${S}"

-DEPENDS_prepend = "cmake-native "
+DEPENDS_prepend = "cmake-native ninja-native "
 B = "${WORKDIR}/build"

 # We need to unset CCACHE otherwise cmake gets too confused
@@ -117,7 +117,7 @@ cmake_do_configure() {
                oecmake_sitefile=
        fi

-       cmake \
+       cmake -GNinja \
          $oecmake_sitefile \
          ${OECMAKE_SOURCEPATH} \
          -DCMAKE_INSTALL_PREFIX:PATH=${prefix} \

--
# Randy MacLeod.  WR Linux
# Wind River an Intel Company
--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to