| <html> |
| <head> |
| <title>Chromium Target Build Times</title> |
| <script src="ui/js/common.js"></script> |
| <script language="javascript"> |
| var perf_url = 'http://build.chromium.org/f/chromium/perf/'; |
| var targets_url = perf_url + 'dashboard/targets.html'; |
| function DisplayGraph(name, graph) { |
| document.write('<td><iframe scrolling="no" height="250" width="400" src="' + perf_url); |
| document.write(name); |
| document.write('/report.html?history=50') |
| var params = ParseParams(); |
| if (typeof graph == 'undefined') { |
| if ('graph' in params) { |
| graph = escape(params.graph); |
| } |
| } else if (graph != null) { |
| document.write('&header='); |
| document.write(graph); |
| } |
| if (graph != null) { |
| document.write('&graph='); |
| document.write(graph); |
| } |
| document.write('&lookout=1"></iframe></td>'); |
| } |
| </script> |
| </head> |
| <body> |
| <center> |
| <h1>Chromium Target Build Times</h1> |
| <script language="javascript"> |
| var params = ParseParams(); |
| var graph_list = {}; |
| var graphs_received = 0; |
| var pt_list = {}; |
| |
| var platform_list = [] |
| if ('platform' in params) { |
| platform_list = params.platform.split(','); |
| } else { |
| // platform_list = ['linux', 'mac', 'win']; |
| platform_list = ['linux', 'win']; |
| } |
| |
| function report_error(error) { |
| document.write("<p>Error: " + error + "</p>"); |
| } |
| function jsonToJs(data) { |
| return eval('(' + data + ')') |
| } |
| function received_graph_list(data, error) { |
| for (var index=0; index < graph_list.length; index++) { |
| var graph = graph_list[index]; |
| target_list.push(escape(graph.name)); |
| } |
| } |
| function receive_graph_list_for_platform(platform) { |
| var received_platform = platform; |
| function receive_graph_list(data, error) { |
| if (error) { |
| report_error(error); |
| return; |
| } |
| graph_list[received_platform] = jsonToJs(data); |
| graphs_received += 1; |
| if (graphs_received >= platform_list.length) { |
| write_table(); |
| } |
| } |
| return receive_graph_list; |
| } |
| for (var index=0; index < platform_list.length; index++) { |
| var platform = escape(platform_list[index]); |
| Fetch('../'+platform+'-targets/targets/graphs.dat', |
| receive_graph_list_for_platform(platform)); |
| } |
| function write_table() { |
| var all_target_list = []; |
| |
| document.write('<table>'); |
| document.write('<tr><th> </th>'); |
| for (var index=0; index < platform_list.length; index++) { |
| var platform = escape(platform_list[index]); |
| document.write('<th><a href="' + targets_url + |
| '?platform='+platform+'">'+platform+'</a></th>'); |
| var graphs = graph_list[platform]; |
| pt_list[platform] = {}; |
| for (var gindex = 0; gindex < graphs.length; gindex++) { |
| var name = escape(graphs[gindex].name); |
| var target_name = escape(graphs[gindex].name); |
| pt_list[platform][target_name] = 1; |
| if (all_target_list.indexOf(name) < 0) { |
| all_target_list.push(target_name); |
| } |
| } |
| } |
| var target_list = [] |
| if ('target' in params) { |
| target_list = params.target.split(','); |
| } else { |
| target_list = all_target_list; |
| target_list.sort(); |
| } |
| document.write('</tr>'); |
| for (tindex = 0; tindex < target_list.length; tindex++) { |
| var target = escape(target_list[tindex]); |
| document.write('<tr><th><a href="' + targets_url + |
| '?target='+target+'">'+target+'</a></th>'); |
| for (pindex = 0; pindex < platform_list.length; pindex++) { |
| var platform = escape(platform_list[pindex]); |
| //if (pt_list[platform][target] == 1) { |
| if (typeof pt_list[platform][target] != 'undefined') { |
| DisplayGraph(platform+'-targets/targets', target); |
| } else { |
| document.write('<td align="center" valign="center">no ' + target + ' data on ' + platform + '</td>'); |
| } |
| } |
| document.write('</tr>'); |
| } |
| document.write('</table>'); |
| } |
| </script> |
| </center> |
| </body> |
| </html> |
| |