summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-23 20:29:09 +0000
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-23 20:29:09 +0000
commited9e5a6cb01f0e3fc4f8f378a070ba84d827c562 (patch)
tree74c32509676944992467c20e107a24130a996b08 /contrib
parent22d9b968ceb73c6e1ecc3c64d6aabc2c0c84675b (diff)
downloadgcc-ed9e5a6cb01f0e3fc4f8f378a070ba84d827c562.tar.gz
* GCC Regression Tester.wdgt/widget.html: New file.
* GCC Regression Tester.wdgt/Info.plist: New file. * GCC Regression Tester.wdgt/Icon.png: New file. * GCC Regression Tester.wdgt/Default.png: New file. * README: Describe new files. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@107430 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'contrib')
-rw-r--r--contrib/regression/ChangeLog8
-rw-r--r--contrib/regression/GCC Regression Tester.wdgt/Default.pngbin0 -> 81 bytes
-rw-r--r--contrib/regression/GCC Regression Tester.wdgt/Icon.pngbin0 -> 2122 bytes
-rw-r--r--contrib/regression/GCC Regression Tester.wdgt/Info.plist28
-rw-r--r--contrib/regression/GCC Regression Tester.wdgt/widget.html155
-rw-r--r--contrib/regression/README6
6 files changed, 197 insertions, 0 deletions
diff --git a/contrib/regression/ChangeLog b/contrib/regression/ChangeLog
index ae577173200..a6ba783ff2b 100644
--- a/contrib/regression/ChangeLog
+++ b/contrib/regression/ChangeLog
@@ -1,3 +1,11 @@
+2005-11-23 Geoffrey Keating <geoffk@geoffk.org>
+
+ * GCC Regression Tester.wdgt/widget.html: New file.
+ * GCC Regression Tester.wdgt/Info.plist: New file.
+ * GCC Regression Tester.wdgt/Icon.png: New file.
+ * GCC Regression Tester.wdgt/Default.png: New file.
+ * README: Describe new files.
+
2005-06-07 Hans-Peter Nilsson <hp@bitrange.com>
* btest-gcc.sh: Add support for option
diff --git a/contrib/regression/GCC Regression Tester.wdgt/Default.png b/contrib/regression/GCC Regression Tester.wdgt/Default.png
new file mode 100644
index 00000000000..a6dfd4655c9
--- /dev/null
+++ b/contrib/regression/GCC Regression Tester.wdgt/Default.png
Binary files differ
diff --git a/contrib/regression/GCC Regression Tester.wdgt/Icon.png b/contrib/regression/GCC Regression Tester.wdgt/Icon.png
new file mode 100644
index 00000000000..662b5169d0c
--- /dev/null
+++ b/contrib/regression/GCC Regression Tester.wdgt/Icon.png
Binary files differ
diff --git a/contrib/regression/GCC Regression Tester.wdgt/Info.plist b/contrib/regression/GCC Regression Tester.wdgt/Info.plist
new file mode 100644
index 00000000000..0902ff7af7f
--- /dev/null
+++ b/contrib/regression/GCC Regression Tester.wdgt/Info.plist
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>AllowNetworkAccess</key>
+ <true/>
+ <key>CFBundleDisplayName</key>
+ <string>GCC Regression Tester</string>
+ <key>CFBundleName</key>
+ <string>GCC Regression Tester</string>
+ <key>CFBundleIdentifier</key>
+ <string>org.geoffk.widget.regress</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>CFBundleVersion</key>
+ <string>1.0</string>
+ <key>CloseBoxInsetX</key>
+ <integer>0</integer>
+ <key>CloseBoxInsetY</key>
+ <integer>0</integer>
+ <key>MainHTML</key>
+ <string>widget.html</string>
+ <key>Width</key>
+ <integer>261</integer>
+ <key>Height</key>
+ <integer>192</integer>
+</dict>
+</plist>
diff --git a/contrib/regression/GCC Regression Tester.wdgt/widget.html b/contrib/regression/GCC Regression Tester.wdgt/widget.html
new file mode 100644
index 00000000000..e2bc6acd231
--- /dev/null
+++ b/contrib/regression/GCC Regression Tester.wdgt/widget.html
@@ -0,0 +1,155 @@
+<!-- Get and update the GCC regression tester's web page.
+ Copyright (C) 2005 Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation; either version 2, or (at your option) any later
+version.
+
+GCC is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING. If not, write to the Free
+Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
+02110-1301, USA. -->
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<META http-equiv="Content-Script-Type" content="text/javascript">
+
+<head>
+<script type='text/javascript'>
+// A string representing NUM, with a leading zero if it would be 1 digit long
+function dig2 (num)
+{
+ var result = num.toString();
+ if (result.length == 1)
+ return '0' + result;
+ else
+ return result;
+}
+
+// Get DATE as a string in standard ISO format in UTC
+function getISO (date)
+{
+ return (date.getUTCFullYear().toString() + '-'
+ + dig2 (date.getUTCMonth() + 1) + '-'
+ + dig2 (date.getUTCDate()) + 'T'
+ + dig2 (date.getUTCHours()) + ':'
+ + dig2 (date.getUTCMinutes()) + 'Z');
+}
+
+// STR is a bunch of lines of the form '<key>: <date>' where <date> is in
+// standard ISO UTC format. Return a Date object corresponding to KEY, or null
+// if none is found.
+function fromISO (str, key)
+{
+ var rx = new RegExp (key + ": (\\d+)-(\\d+)-(\\d+)T(\\d+):(\\d+):(\\d+)Z");
+ var match = rx.exec (str);
+ if (match == null || match.length != 7)
+ return null;
+ var date = new Date(0);
+ date.setUTCFullYear (match[1], match[2] - 1, match[3]);
+ date.setUTCHours (match[4], match[5], match[6], 0);
+ return date;
+}
+
+// Update the data
+function updateContents () {
+ var url = 'http://gcc.gnu.org/regtest/HEAD/status.txt';
+ var xml_request = new XMLHttpRequest();
+
+ xml_request.onload = function(e)
+ {
+ gotContents(e, xml_request);
+ }
+ xml_request.open("GET", url);
+ xml_request.setRequestHeader("Cache-Control", "max-age=0");
+ xml_request.send(null);
+}
+
+function gotContents (event, request) {
+ if (request.status != 200)
+ return;
+
+ if (! request.responseText)
+ return;
+
+ var txt = (request.responseText
+ .replace (/&/g,"&amp;")
+ .replace (/</g,"&lt;")
+ .replace (/&quot;/g,"&quot;")
+ .replace (/>;/g,"&gt;"));
+
+ var today = new Date();
+ var date_r = fromISO (txt, "Date");
+ var completed_r = fromISO (txt, "Test-Completed");
+ var now_test_r = fromISO (txt, "Now-Testing");
+ var eta = "";
+
+ if (date_r != null && completed_r != null && now_test_r != null)
+ {
+ var eta_r = new Date (now_test_r.getTime()
+ + completed_r.getTime() - date_r.getTime());
+ eta = "ETA: " + getISO (eta_r) + '\n';
+ }
+
+ var val = txt + "Now: " + getISO (today) + '\n' + eta;
+ document.getElementById ("contents").innerHTML = "<pre>"+val+"<\/pre>";
+}
+
+var mainTimer = null;
+
+function myOnShow ()
+{
+ if (! mainTimer) {
+ mainTimer = setInterval (updateContents, 60000);
+ }
+ updateContents();
+}
+
+function myOnHide ()
+{
+ if (mainTimer) {
+ clearInterval (mainTimer);
+ mainTimer = null;
+ }
+}
+
+function myOnLoad ()
+{
+ if ( window.widget ) {
+ widget.onshow = myOnShow;
+ widget.onhide = myOnHide;
+ }
+ myOnShow();
+}
+</script>
+<style>
+body {
+ margin: 0px;
+ padding: 0px;
+}
+pre {
+ font-family: Monaco;
+ font-size: 9px;
+ margin: 0px;
+ padding: 1px 2px 1px 2px;
+ color: black;
+ background-color: white;
+ opacity: 0.8;
+}
+</style>
+</head>
+
+<body onLoad='myOnLoad();'>
+<div id="contents">Loading...</div>
+</body>
+</html>
diff --git a/contrib/regression/README b/contrib/regression/README
index 445704f85a4..9eecd0dd909 100644
--- a/contrib/regression/README
+++ b/contrib/regression/README
@@ -12,6 +12,12 @@ the newly-build tools to check that they will not cause regressions.
'site.exp' is what $DEJAGNU points to when the regression tester runs
these scripts.
+'GCC Regression Tester.wdgt' is a Dashboard widget that displays the
+current state of the tester using Javascript. You can use it without
+needing Dashboard by pointing your web browser at
+'GCC%20Regression%20Tester.wdgt/widget.html', if your browser supports
+and permits it.
+
Note that any changes made here need to be approved by the regression
tester's maintainer (see MAINTAINERS). The changes will be used on
the tester's next run, so `experimental' changes are very strongly