[PATCH] Get "cmake ; ninja check" to pass.

Bug #1554143 reported by Shlomi Fish
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
High
Shlomi Fish

Bug Description

The attached patch gets "cmake ... ; ninja check" (and I presume "cmake ; make check" as well , but not sure) to pass. This blocks the 0.92 release and is listed on http://wiki.inkscape.org/wiki/index.php/CMake_Tasks . Please consider applying it.

Tags: build cmake
Revision history for this message
Shlomi Fish (shlomif-gmail) wrote :
Revision history for this message
Shlomi Fish (shlomif-gmail) wrote :

This is a better patch that makes "make check"/"ninja check" not rebuild all the objects. Thanks to Mc- for the input.

Revision history for this message
Shlomi Fish (shlomif-gmail) wrote :

This is a script to download gtest for the make check to work.

jazzynico (jazzynico)
tags: added: build cmake
Changed in inkscape:
assignee: nobody → Shlomi Fish (shlomif-gmail)
milestone: none → 0.92
status: New → In Progress
Revision history for this message
Shlomi Fish (shlomif-gmail) wrote :

This is an improved patch that should work in most cases. Please apply it.

Revision history for this message
Shlomi Fish (shlomif-gmail) wrote :

Can anyone please apply the latest patch, or let me know why it should be applied as it stands? Ping!

Revision history for this message
Mc (mc...) wrote :

Committed to 14769 and 14770 (I forgot a file in 14769). You'll need to explain how to use ninja, though ^^ just trying "make check" does not seem to do much

Revision history for this message
Shlomi Fish (shlomif-gmail) wrote :

Mc: Thanks for applying the patch!

First of all, I tested it now and it seems that "make check" does the same thing as "ninja check". I'm getting this output which seems correct:

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
shlomif@telaviv1 graphics/inkscape/make-B $ make check
Scanning dependencies of target gmock_main
[ 0%] Building CXX object gmock/CMakeFiles/gmock_main.dir/__/gtest/src/gtest-all.cc.o
[ 0%] Building CXX object gmock/CMakeFiles/gmock_main.dir/src/gmock-all.cc.o
[ 0%] Building CXX object gmock/CMakeFiles/gmock_main.dir/src/gmock_main.cc.o
[ 0%] Linking CXX static library ../lib/libgmock_main.a
[ 0%] Built target gmock_main
[ 0%] Built target inkscape_version
[ 78%] Built target inkscape_base
[ 79%] Built target util_LIB
[ 83%] Built target 2geom_LIB
[ 86%] Built target avoid_LIB
[ 86%] Built target cola_LIB
[ 89%] Built target croco_LIB
[ 90%] Built target gc_LIB
[ 91%] Built target gdl_LIB
[ 93%] Built target uemf_LIB
[ 94%] Built target vpsc_LIB
[ 96%] Built target livarot_LIB
[ 98%] Built target nrtype_LIB
[ 98%] Built target depixelize_LIB
Scanning dependencies of target unittest
[ 98%] Building CXX object test/CMakeFiles/unittest.dir/unittest.cpp.o
[ 98%] Building CXX object test/CMakeFiles/unittest.dir/doc-per-case-test.cpp.o
[100%] Building CXX object test/CMakeFiles/unittest.dir/src/attributes-test.cpp.o
[100%] Building CXX object test/CMakeFiles/unittest.dir/src/color-profile-test.cpp.o
[100%] Building CXX object test/CMakeFiles/unittest.dir/src/dir-util-test.cpp.o
[100%] Linking CXX executable ../bin/unittest
[100%] Built target unittest
Scanning dependencies of target check
Test project /home/shlomif/Download/unpack/graphics/inkscape/make-B
    Start 1: BaseTest
1/1 Test #1: BaseTest ......................... Passed 1.50 sec

100% tests passed, 0 tests failed out of 1

Total Test time (real) = 1.50 sec
[100%] Built target check
shlomif@telaviv1 graphics/inkscape/make-B $
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Otherwise, there isn't a lot to using ninja in the context of cmake . Just use "ninja -j4 $target" (where -j4 should be replaced with the number of parallel tasks).

Regards,

-- Shlomi

Mc (mc...)
Changed in inkscape:
status: In Progress → Fix Committed
Changed in inkscape:
importance: Undecided → High
Bryce Harrington (bryce)
Changed in inkscape:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.