Bug 130076

Summary: [GTK][CMAKE] Too verbose build output
Product: WebKit Reporter: Carlos Garcia Campos <cgarcia>
Component: WebKitGTKAssignee: Martin Robinson <mrobinson>
Status: RESOLVED FIXED    
Severity: Normal CC: gustavo, mrobinson, zan
Priority: P2 Keywords: Gtk
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Carlos Garcia Campos 2014-03-11 01:58:46 PDT
When building using ninja, the output is too verbose for some targets, where we previously had GEN foo now we have several lines of noise. 

Another problem is that when ninja is run by cmake, the smart terminal features don't work, so all the output is written using a new line and we loose the nice colors when using icecc, for example. This is because ninja doesn't write directly to the terminal, but to a cmake pipe (or whatever, I don't know), and isatty(1) returns false and ninja disables the smart terminal features. I wonder if we could run cmake first to generate the build.ninja file and then run ninja ourselves from build-webkit instead of using cmake. 

So, if we can use the default ninja output suing the smart terminal features, the verbose target wouldn't be a problem. I still think we should produce less verbose output for the bots, though.
Comment 1 Martin Robinson 2014-03-11 19:12:23 PDT
Created attachment 226464 [details]
Patch
Comment 2 Carlos Garcia Campos 2014-03-12 01:10:58 PDT
Comment on attachment 226464 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=226464&action=review

This works great, I still would like that verbose targets use something like Generating Foo for the cases where smart terminal is not used like in the bots logs. Thanks.

> Source/cmake/OptionsGTK.cmake:311
> +file(COPY ${CMAKE_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/build.sh
> +  DESTINATION ${CMAKE_BINARY_DIR}
> +  FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE)

I wonder why you need to first write in one directory and then copy to another, but I have no idea how cmake works :-P
Comment 3 Martin Robinson 2014-03-12 08:44:25 PDT
(In reply to comment #2)

> I wonder why you need to first write in one directory and then copy to another, but I have no idea how cmake works :-P

This is the only way I could find to change the permissions of a file without resorting to a shell command, unfortunately.
Comment 4 Martin Robinson 2014-03-12 08:48:50 PDT
Comment on attachment 226464 [details]
Patch

Clearing flags on attachment: 226464

Committed r165473: <http://trac.webkit.org/changeset/165473>
Comment 5 Martin Robinson 2014-03-12 08:49:46 PDT
All reviewed patches have been landed.  Closing bug.