Bug 59351
Summary: | Get per-file compile times | ||
---|---|---|---|
Product: | WebKit | Reporter: | Nico Weber <thakis> |
Component: | Tools / Tests | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Normal | CC: | ap, eric, evan, mihaip, nbhargava, sam |
Priority: | P2 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | PC | ||
OS: | OS X 10.5 |
Nico Weber
Several approaches:
* ninja outputs these automatically into ninja.log
* Or one can set CC to a wrapper script that does `time gcc $*` and then writes the time somewhere (e.g. just >> to some log file, that's probably easiest)
(https://github.com/nico/complete/blob/master/server/builddb-cc is an overdesigned cc replacement that also injects a clang plugin and writes to a sqlite db. Mostly useful for entertainment purposes, but it also shows how to set CC so that xcodebuild sees it)
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Eric Seidel (no email)
timing-cc:
#!/bin/bash
echo $* >> /tmp/time.txt
(time gcc "$@") 2>> /tmp/time.txt
CC=/path/to/timing-cc build-webkit
seems to work. Seems to spit out a bunch of junk at the top of the file, but I think that's just normal gcc stderr output which is normally not displayed by xcodebuild.
Eric Seidel (no email)
Follow-up from Sam's session.
Evan Martin
You probably will want to lock the output file to prevent parallel gcc processes from interleaving. Otherwise Eric's script LGTM.