<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>105671</bug_id>
          
          <creation_ts>2012-12-21 17:04:29 -0800</creation_ts>
          <short_desc>chromium: webkit-build-directory doesn&apos;t handle ninja output dirs</short_desc>
          <delta_ts>2012-12-21 19:58:05 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>104434</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="WebKit Review Bot">webkit.review.bot</assigned_to>
          <cc>dbates</cc>
    
    <cc>eric</cc>
    
    <cc>thakis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>796555</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-21 17:04:29 -0800</bug_when>
    <thetext>chromum: webkit-build-directory doesn&apos;t handle ninja output dirs
Requested by thakis_ on #webkit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796556</commentid>
    <comment_count>1</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2012-12-21 17:05:19 -0800</bug_when>
    <thetext>eseidel: BuildSlaveSupport/built-product-archive:    _buildDirectory = subprocess.Popen([&apos;perl&apos;, os.path.join(os.path.dirname(__file__), &quot;..&quot;, &quot;Scripts&quot;, &quot;webkit-build-directory&quot;),
[5:00pm] eseidel: thakis_: it appears the webkit build bots seem to care about webkit-build-directory workign correctly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796559</commentid>
    <comment_count>2</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2012-12-21 17:12:34 -0800</bug_when>
    <thetext>Actually, this appears to be working fine if --chromium is passed as argument.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796560</commentid>
    <comment_count>3</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2012-12-21 17:13:25 -0800</bug_when>
    <thetext>…or does it. nevermind.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796561</commentid>
    <comment_count>4</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2012-12-21 17:19:26 -0800</bug_when>
    <thetext>This needs  a patch like this:

--- a/Tools/Scripts/webkitdirs.pm
+++ b/Tools/Scripts/webkitdirs.pm
@@ -222,7 +222,7 @@ sub determineBaseProductDir
 
         undef $baseProductDir unless $baseProductDir =~ /^\//;
     } elsif (isChromium()) {
-        if (isLinux() || isChromiumAndroid() || isChromiumMacMake()) {
+        if (isLinux() || isChromiumAndroid() || isChromiumMacMake() || isChromiumNinja()) {
             $baseProductDir = &quot;$sourceDir/out&quot;;



…but isChromiumNinja() calls configuration() which in turn calls the function this patch is in, leading to infinite recursion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796563</commentid>
    <comment_count>5</comment_count>
      <attachid>180577</attachid>
    <who name="Nico Weber">thakis</who>
    <bug_when>2012-12-21 17:29:38 -0800</bug_when>
    <thetext>Created attachment 180577
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796564</commentid>
    <comment_count>6</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2012-12-21 17:29:56 -0800</bug_when>
    <thetext>Patch attempt.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796568</commentid>
    <comment_count>7</comment_count>
      <attachid>180577</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2012-12-21 17:36:30 -0800</bug_when>
    <thetext>Comment on attachment 180577
Patch

Looks sane to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796572</commentid>
    <comment_count>8</comment_count>
    <who name="Nico Weber">thakis</who>
    <bug_when>2012-12-21 17:42:58 -0800</bug_when>
    <thetext>tony^work: thakis_: yes, the webkit waterfalls use a builder / tester split
[5:33pm] tony^work: thakis_: http://build.webkit.org/waterfall?category=Chromium
[5:33pm] TabAtkins left the chat room. (Quit: Lost terminal)
[5:34pm] psolanki left the chat room. (Read error: Connection reset by peer)
[5:34pm] thakis_: tony^work: looks like stuff always gets unzipped into webkitbuild, so that probably Just Works
[5:34pm] tony^work: thakis_: All the code for zipping/unzipping should be in Tools/BuildSlaveSupport
[5:34pm] thakis_: as both xcodebuild and out end up in the same place on the test

tony^work: we probably need to teach the zipping script to zip the right files
tony^work: that&apos;s the built-product-archive script, I think
[5:38pm] thakis_: dydz: thanks!
[5:38pm] tony^work: Tools/BuildSlaveSupport/built-product-archive
[5:39pm] thakis_: tony^work: that just calls out to webkit-build-directory, which https://bugs.webkit.org/show_bug.cgi?id=105671 is fixing



…sounds like this patch helps with the builder/tester split, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796574</commentid>
    <comment_count>9</comment_count>
      <attachid>180577</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-21 18:13:45 -0800</bug_when>
    <thetext>Comment on attachment 180577
Patch

Clearing flags on attachment: 180577

Committed r138406: &lt;http://trac.webkit.org/changeset/138406&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796575</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-21 18:13:49 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796578</commentid>
    <comment_count>11</comment_count>
      <attachid>180577</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-21 18:36:17 -0800</bug_when>
    <thetext>Comment on attachment 180577
Patch

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

&gt; Tools/Scripts/webkitdirs.pm:1207
&gt; +    # This function can be called from baseProductDir(), which in turn is
&gt; +    # called by configuration(). So calling configuration() here leads to
&gt; +    # infinite recursion. Gyp writes both Debug and Release at the same time
&gt; +    # by default, so just check the timestamp on the Release build.ninja file.
&gt; +    my $config = &quot;Release&quot;;

This was what had held me up before.  Neat to see we only need Release here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796600</commentid>
    <comment_count>12</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-12-21 19:58:05 -0800</bug_when>
    <thetext>I think this is a pretty elegant solution and I&apos;m no longer worried about the build-webkit --chromium switch to ninja.  I think that&apos;s OK to fire whenever.  I&apos;m happy to commit it any time after next Tuesday (since it&apos;s now vacation time). :)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180577</attachid>
            <date>2012-12-21 17:29:38 -0800</date>
            <delta_ts>2012-12-21 18:36:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105671-20121221172705.patch</filename>
            <type>text/plain</type>
            <size>2001</size>
            <attacher name="Nico Weber">thakis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4MzMyCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNGE5N2NjYWI1ZWVkN2VmOGJmOTZjNWVlODU4ZTM0MDM3
Mjk2MmY0NS4uMTZmYWRiYzc1OGYyODEwMTAxMDY0ODcyMDFmZTYwNjUyODY1YmVlOSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2
IEBACisyMDEyLTEyLTIxICBOaWNvIFdlYmVyICA8dGhha2lzQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBjaHJvbWl1bTogd2Via2l0LWJ1aWxkLWRpcmVjdG9yeSBkb2Vzbid0IGhhbmRsZSBuaW5q
YSBvdXRwdXQgZGlycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTA1NjcxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGVhY2ggd2Via2l0LWJ1aWxkLWRpcmVjdG9yeSB0byBkZXRlY3QgdGhlIG5pbmphIGJ1
aWxkIGRpcmVjdG9yeS4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0ZGlycy5wbToKKyAgICAg
ICAgKGRldGVybWluZUJhc2VQcm9kdWN0RGlyKToKKyAgICAgICAgKGRldGVybWluZUlzQ2hyb21p
dW1OaW5qYSk6CisKIDIwMTItMTItMjAgIFJ5dWFuIENob2kgIDxyeXVhbi5jaG9pQHNhbXN1bmcu
Y29tPgogCiAgICAgICAgIFtFRkxdIEJ1aWxkIGJyZWFrIHdpdGggbGF0ZXN0IEVGTCBsaWJyYXJp
ZXMuCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0gYi9Ub29scy9TY3Jp
cHRzL3dlYmtpdGRpcnMucG0KaW5kZXggNWEyZTA0NDgwMDZhYjE1NDY0MTFiYWZjMDNjNWZjZWNh
MTYzZWU1Ny4uM2E1OTZmMjQ0YzM4MTRlZDczODUwMWUzMmU0OTFhYjE3ZWFhYTIyNyAxMDA3NTUK
LS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCisrKyBiL1Rvb2xzL1NjcmlwdHMvd2Vi
a2l0ZGlycy5wbQpAQCAtMjIyLDcgKzIyMiw3IEBAIHN1YiBkZXRlcm1pbmVCYXNlUHJvZHVjdERp
cgogCiAgICAgICAgIHVuZGVmICRiYXNlUHJvZHVjdERpciB1bmxlc3MgJGJhc2VQcm9kdWN0RGly
ID1+IC9eXC8vOwogICAgIH0gZWxzaWYgKGlzQ2hyb21pdW0oKSkgewotICAgICAgICBpZiAoaXNM
aW51eCgpIHx8IGlzQ2hyb21pdW1BbmRyb2lkKCkgfHwgaXNDaHJvbWl1bU1hY01ha2UoKSkgewor
ICAgICAgICBpZiAoaXNMaW51eCgpIHx8IGlzQ2hyb21pdW1BbmRyb2lkKCkgfHwgaXNDaHJvbWl1
bU1hY01ha2UoKSB8fCBpc0Nocm9taXVtTmluamEoKSkgewogICAgICAgICAgICAgJGJhc2VQcm9k
dWN0RGlyID0gIiRzb3VyY2VEaXIvb3V0IjsKICAgICAgICAgfSBlbHNpZiAoaXNEYXJ3aW4oKSkg
ewogICAgICAgICAgICAgJGJhc2VQcm9kdWN0RGlyID0gIiRzb3VyY2VEaXIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS94Y29kZWJ1aWxkIjsKQEAgLTEyMDAsNyArMTIwMCwxMSBAQCBzdWIgZGV0ZXJt
aW5lSXNDaHJvbWl1bU5pbmphKCkKIHsKICAgICByZXR1cm4gaWYgZGVmaW5lZCgkaXNDaHJvbWl1
bU5pbmphKTsKIAotICAgIG15ICRjb25maWcgPSBjb25maWd1cmF0aW9uKCk7CisgICAgIyBUaGlz
IGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZnJvbSBiYXNlUHJvZHVjdERpcigpLCB3aGljaCBpbiB0
dXJuIGlzCisgICAgIyBjYWxsZWQgYnkgY29uZmlndXJhdGlvbigpLiBTbyBjYWxsaW5nIGNvbmZp
Z3VyYXRpb24oKSBoZXJlIGxlYWRzIHRvCisgICAgIyBpbmZpbml0ZSByZWN1cnNpb24uIEd5cCB3
cml0ZXMgYm90aCBEZWJ1ZyBhbmQgUmVsZWFzZSBhdCB0aGUgc2FtZSB0aW1lCisgICAgIyBieSBk
ZWZhdWx0LCBzbyBqdXN0IGNoZWNrIHRoZSB0aW1lc3RhbXAgb24gdGhlIFJlbGVhc2UgYnVpbGQu
bmluamEgZmlsZS4KKyAgICBteSAkY29uZmlnID0gIlJlbGVhc2UiOwogCiAgICAgbXkgJGhhc1Vw
VG9EYXRlTmluamFidWlsZCA9IDA7CiAgICAgaWYgKC1lICJvdXQvJGNvbmZpZy9idWlsZC5uaW5q
YSIpIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>