<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[173219] trunk/Tools</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/173219">173219</a></dd>
<dt>Author</dt> <dd>bfulgham@apple.com</dd>
<dt>Date</dt> <dd>2014-09-03 13:12:31 -0700 (Wed, 03 Sep 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>[Win] Revise test environment for Windows build.
https://bugs.webkit.org/show_bug.cgi?id=136486

Reviewed by David Kilzer.

The various calls to get the Safari path really only have
meaning on the Mac. Other ports get access to the build
and test environment separately, so remove the various
checks in the Safari-specific code to simplify things.

Remove some 64-bit hacks used on Windows now that the
various tools know how to find the 64-bit runtime environment.

* Scripts/run-javascriptcore-tests: 
* Scripts/webkitdirs.pm:
(safariPathFromSafariBundle): Revise to expect Mac.
(installedSafariPath): Ditto.
(safariPath): Ditto.
(appleApplicationSupportPath): Get rid of 64-bit Windows hack.
(setPathForRunningWebKitApp): Get rid of unused SafariPath
argument for Windows runs.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsScriptsrunjavascriptcoretests">trunk/Tools/Scripts/run-javascriptcore-tests</a></li>
<li><a href="#trunkToolsScriptswebkitdirspm">trunk/Tools/Scripts/webkitdirs.pm</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (173218 => 173219)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog        2014-09-03 19:57:34 UTC (rev 173218)
+++ trunk/Tools/ChangeLog        2014-09-03 20:12:31 UTC (rev 173219)
</span><span class="lines">@@ -1,3 +1,27 @@
</span><ins>+2014-09-03  Brent Fulgham  &lt;bfulgham@apple.com&gt;
+
+        [Win] Revise test environment for Windows build.
+        https://bugs.webkit.org/show_bug.cgi?id=136486
+
+        Reviewed by David Kilzer.
+
+        The various calls to get the Safari path really only have
+        meaning on the Mac. Other ports get access to the build
+        and test environment separately, so remove the various
+        checks in the Safari-specific code to simplify things.
+
+        Remove some 64-bit hacks used on Windows now that the
+        various tools know how to find the 64-bit runtime environment.
+
+        * Scripts/run-javascriptcore-tests: 
+        * Scripts/webkitdirs.pm:
+        (safariPathFromSafariBundle): Revise to expect Mac.
+        (installedSafariPath): Ditto.
+        (safariPath): Ditto.
+        (appleApplicationSupportPath): Get rid of 64-bit Windows hack.
+        (setPathForRunningWebKitApp): Get rid of unused SafariPath
+        argument for Windows runs.
+
</ins><span class="cx"> 2014-09-03  Dana Burkart  &lt;dburkart@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Dashboard should show performance bots.
</span></span></pre></div>
<a id="trunkToolsScriptsrunjavascriptcoretests"></a>
<div class="modfile"><h4>Modified: trunk/Tools/Scripts/run-javascriptcore-tests (173218 => 173219)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/Scripts/run-javascriptcore-tests        2014-09-03 19:57:34 UTC (rev 173218)
+++ trunk/Tools/Scripts/run-javascriptcore-tests        2014-09-03 20:12:31 UTC (rev 173219)
</span><span class="lines">@@ -1,6 +1,6 @@
</span><span class="cx"> #!/usr/bin/perl -w
</span><span class="cx"> 
</span><del>-# Copyright (C) 2005, 2013 Apple Inc.  All rights reserved.
</del><ins>+# Copyright (C) 2005, 2013-2014 Apple Inc.  All rights reserved.
</ins><span class="cx"> # Copyright (C) 2007 Eric Seidel &lt;eric@webkit.org&gt;
</span><span class="cx"> #
</span><span class="cx"> # Redistribution and use in source and binary forms, with or without
</span><span class="lines">@@ -165,7 +165,9 @@
</span><span class="cx">     # Use an &quot;indirect object&quot; so that system() won't get confused if the path
</span><span class="cx">     # contains spaces (see perldoc -f exec).
</span><span class="cx">     my $testapiResult = system { $command[0] } @command;
</span><del>-    exit exitStatus($testapiResult)  if $testapiResult;
</del><ins>+    my $exitStatus = exitStatus($testapiResult);
+    print &quot;testAPI completed with rc=$testapiResult ($exitStatus)\n&quot;;
+    exit exitStatus($testapiResult) if $testapiResult;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> # Find JavaScriptCore directory
</span></span></pre></div>
<a id="trunkToolsScriptswebkitdirspm"></a>
<div class="modfile"><h4>Modified: trunk/Tools/Scripts/webkitdirs.pm (173218 => 173219)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/Scripts/webkitdirs.pm        2014-09-03 19:57:34 UTC (rev 173218)
+++ trunk/Tools/Scripts/webkitdirs.pm        2014-09-03 20:12:31 UTC (rev 173219)
</span><span class="lines">@@ -762,61 +762,41 @@
</span><span class="cx"> {
</span><span class="cx">     my ($safariBundle) = @_;
</span><span class="cx"> 
</span><del>-    if (isAppleMacWebKit()) {
-        my $safariPath = &quot;$safariBundle/Contents/MacOS/Safari&quot;;
-        return $safariPath if skipSafariExecutableEntitlementChecks();
</del><ins>+    die &quot;Safari path is only relevant on Apple Mac platform\n&quot; unless isAppleMacWebKit();
</ins><span class="cx"> 
</span><del>-        my $safariForWebKitDevelopmentPath = &quot;$safariBundle/Contents/MacOS/SafariForWebKitDevelopment&quot;;
-        return $safariForWebKitDevelopmentPath if -f $safariForWebKitDevelopmentPath &amp;&amp; executableHasEntitlements($safariPath);
</del><ins>+    my $safariPath = &quot;$safariBundle/Contents/MacOS/Safari&quot;;
+    return $safariPath if skipSafariExecutableEntitlementChecks();
</ins><span class="cx"> 
</span><del>-        return $safariPath;
-    }
-    return $safariBundle if isAppleWinWebKit();
</del><ins>+    my $safariForWebKitDevelopmentPath = &quot;$safariBundle/Contents/MacOS/SafariForWebKitDevelopment&quot;;
+    return $safariForWebKitDevelopmentPath if -f $safariForWebKitDevelopmentPath &amp;&amp; executableHasEntitlements($safariPath);
+
+    return $safariPath;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> sub installedSafariPath
</span><span class="cx"> {
</span><del>-    my $safariBundle;
-
-    if (isAppleMacWebKit()) {
-        $safariBundle = &quot;/Applications/Safari.app&quot;;
-    } elsif (isAppleWinWebKit()) {
-        $safariBundle = readRegistryString(&quot;/HKLM/SOFTWARE/Apple Inc./Safari/InstallDir&quot;);
-        $safariBundle =~ s/[\r\n]+$//;
-        $safariBundle = `cygpath -u '$safariBundle'` if isCygwin();
-        $safariBundle =~ s/[\r\n]+$//;
-        $safariBundle .= &quot;Safari.exe&quot;;
-    }
-
-    return safariPathFromSafariBundle($safariBundle);
</del><ins>+    return safariPathFromSafariBundle(&quot;/Applications/Safari.app&quot;);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> # Locate Safari.
</span><span class="cx"> sub safariPath
</span><span class="cx"> {
</span><ins>+    die &quot;Safari path is only relevant on Apple Mac platform\n&quot; unless isAppleMacWebKit();
+
</ins><span class="cx">     # Use WEBKIT_SAFARI environment variable if present.
</span><span class="cx">     my $safariBundle = $ENV{WEBKIT_SAFARI};
</span><span class="cx">     if (!$safariBundle) {
</span><span class="cx">         determineConfigurationProductDir();
</span><span class="cx">         # Use Safari.app in product directory if present (good for Safari development team).
</span><del>-        if (isAppleMacWebKit() &amp;&amp; -d &quot;$configurationProductDir/Safari.app&quot;) {
</del><ins>+        if (-d &quot;$configurationProductDir/Safari.app&quot;) {
</ins><span class="cx">             $safariBundle = &quot;$configurationProductDir/Safari.app&quot;;
</span><del>-        } elsif (isAppleWinWebKit()) {
-            my $path = &quot;$configurationProductDir/Safari.exe&quot;;
-            my $debugPath = &quot;$configurationProductDir/Safari_debug.exe&quot;;
-
-            if (configuration() eq &quot;Debug_All&quot; &amp;&amp; -x $debugPath) {
-                $safariBundle = $debugPath;
-            } elsif (-x $path) {
-                $safariBundle = $path;
-            }
</del><span class="cx">         }
</span><span class="cx">         if (!$safariBundle) {
</span><span class="cx">             return installedSafariPath();
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx">     my $safariPath = safariPathFromSafariBundle($safariBundle);
</span><del>-    die &quot;Can't find executable at $safariPath.\n&quot; if isAppleMacWebKit() &amp;&amp; !-x $safariPath;
</del><ins>+    die &quot;Can't find executable at $safariPath.\n&quot; if !-x $safariPath;
</ins><span class="cx">     return $safariPath;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1997,11 +1977,6 @@
</span><span class="cx"> 
</span><span class="cx"> sub appleApplicationSupportPath
</span><span class="cx"> {
</span><del>-    if (isWin64()) {
-        # FIXME (125180): Remove the following once official 64-bit Windows support is available.
-        return $ENV{&quot;WEBKIT_64_SUPPORT&quot;}, &quot;\n&quot; if isWin64();
-    }
-
</del><span class="cx">     open INSTALL_DIR, &quot;&lt;/proc/registry/HKEY_LOCAL_MACHINE/SOFTWARE/Apple\ Inc./Apple\ Application\ Support/InstallDir&quot;;
</span><span class="cx">     my $path = &lt;INSTALL_DIR&gt;;
</span><span class="cx">     $path =~ s/[\r\n\x00].*//;
</span><span class="lines">@@ -2017,7 +1992,7 @@
</span><span class="cx">     my ($env) = @_;
</span><span class="cx"> 
</span><span class="cx">     if (isAppleWinWebKit()) {
</span><del>-        $env-&gt;{PATH} = join(':', productDir(), dirname(installedSafariPath()), appleApplicationSupportPath(), $env-&gt;{PATH} || &quot;&quot;);
</del><ins>+        $env-&gt;{PATH} = join(':', productDir(), appleApplicationSupportPath(), $env-&gt;{PATH} || &quot;&quot;);
</ins><span class="cx">     } elsif (isWinCairo()) {
</span><span class="cx">         my $winCairoBin = sourceDir() . &quot;/WebKitLibraries/win/&quot; . (isWin64() ? &quot;bin64/&quot; : &quot;bin32/&quot;);
</span><span class="cx">         my $gstreamerBin = isWin64() ? $ENV{&quot;GSTREAMER_1_0_ROOT_X86_64&quot;} . &quot;bin&quot; : $ENV{&quot;GSTREAMER_1_0_ROOT_X86&quot;} . &quot;bin&quot;;
</span></span></pre>
</div>
</div>

</body>
</html>