<?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>74373</bug_id>
          
          <creation_ts>2011-12-12 17:18:53 -0800</creation_ts>
          <short_desc>Don&apos;t create empty file if gperf fails</short_desc>
          <delta_ts>2012-04-16 10:43:57 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</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>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Rafael Ávila de Espíndola">rafael.espindola</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>litherum</cc>
    
    <cc>macpherson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>519720</commentid>
    <comment_count>0</comment_count>
    <who name="Rafael Ávila de Espíndola">rafael.espindola</who>
    <bug_when>2011-12-12 17:18:53 -0800</bug_when>
    <thetext>Currently makeprop.pl, makevalues.pl and make-hash-tools.pl run gperf with:

system(&quot;gperf .... &gt; $file&quot;) == || die ...

This creates an empty $file if gperf fails, which doesn&apos;t play very well with most build systems. This patch changes them to use

system(&quot;gperf .... --output-file=$file&quot;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519723</commentid>
    <comment_count>1</comment_count>
      <attachid>118919</attachid>
    <who name="Rafael Ávila de Espíndola">rafael.espindola</who>
    <bug_when>2011-12-12 17:21:15 -0800</bug_when>
    <thetext>Created attachment 118919
fix the gperf invocation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519729</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-12 17:26:12 -0800</bug_when>
    <thetext>Attachment 118919 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebCore/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 1 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>519746</commentid>
    <comment_count>3</comment_count>
      <attachid>118927</attachid>
    <who name="Rafael Ávila de Espíndola">rafael.espindola</who>
    <bug_when>2011-12-12 18:01:44 -0800</bug_when>
    <thetext>Created attachment 118927
fix the gperf invocation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>522567</commentid>
    <comment_count>4</comment_count>
      <attachid>118927</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-15 23:18:20 -0800</bug_when>
    <thetext>Comment on attachment 118927
fix the gperf invocation

Clearing flags on attachment: 118927

Committed r103031: &lt;http://trac.webkit.org/changeset/103031&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>522568</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-15 23:18:24 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>602690</commentid>
    <comment_count>6</comment_count>
    <who name="Myles C. Maxfield">litherum</who>
    <bug_when>2012-04-14 12:28:40 -0700</bug_when>
    <thetext>Some systems&apos; version of gperf doesn&apos;t have the --output-file flag. Is it possible to detect if the file is empty and delete it instead?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>602754</commentid>
    <comment_count>7</comment_count>
    <who name="Rafael Ávila de Espíndola">rafael.espindola</who>
    <bug_when>2012-04-15 05:07:48 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; Some systems&apos; version of gperf doesn&apos;t have the --output-file flag. Is it possible to detect if the file is empty and delete it instead?

That would create a race condition, no? What I think can be done is

gperf &gt; foo.tmp &amp;&amp; mv foo.tmp foo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>603276</commentid>
    <comment_count>8</comment_count>
    <who name="Myles C. Maxfield">litherum</who>
    <bug_when>2012-04-16 10:43:57 -0700</bug_when>
    <thetext>I&apos;m not sure it matters that much. It&apos;s probably reasonable to just say that building WebKit depends on gperf version &gt;= 3.x (instead of 2.7.x, which doesn&apos;t have this flag). Because gperf 3.0.1 was released 6 years ago, I think it&apos;s reasonable to require people to have the newer version.

To solve this problem, I just upgraded gperf on the machine I was building on.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118919</attachid>
            <date>2011-12-12 17:21:15 -0800</date>
            <delta_ts>2011-12-12 18:01:44 -0800</delta_ts>
            <desc>fix the gperf invocation</desc>
            <filename>WebKit.patch</filename>
            <type>text/plain</type>
            <size>2218</size>
            <attacher name="Rafael Ávila de Espíndola">rafael.espindola</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkNmJhODBmLi5kNjQyOGFmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMg
QEAKKzIwMTEtMTItMTIgIFJhZmFlbCDDgXZpbGEgZGUgRXNww61uZG9sYSAgPHJhZmFlbC5lc3Bp
bmRvbGFAZ21haWwuY29tPgorCisgICAgICAgIERvbid0IGNyZWF0ZSBlbXB0eSBmaWxlcyBvbiBl
cnJvci4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IGNzcy9tYWtlcHJvcC5wbDoKKyAgICAgICAgKiBjc3MvbWFrZXZhbHVlcy5wbDoKKyAgICAgICAg
KiBtYWtlLWhhc2gtdG9vbHMucGw6CisKIDIwMTEtMTItMTEgIEFuZHJlYXMgS2xpbmcgIDxrbGlu
Z0B3ZWJraXQub3JnPgogCiAgICAgICAgIE1vdmUgQ1NTRWxlbWVudFN0eWxlRGVjbGFyYXRpb24g
dG8gaXRzIG93biBjcHAvaCBmaWxlcy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9t
YWtlcHJvcC5wbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9tYWtlcHJvcC5wbAppbmRleCA0NWFmNzEz
Li5mN2FkNzkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXByb3AucGwKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL21ha2Vwcm9wLnBsCkBAIC0xNjksNCArMTY5LDQgQEAgRU9G
CiAKIGNsb3NlIEhFQURFUjsKIAotc3lzdGVtKCJncGVyZiAtLWtleS1wb3NpdGlvbnM9XCIqXCIg
LUQgLW4gLXMgMiBDU1NQcm9wZXJ0eU5hbWVzLmdwZXJmID4gQ1NTUHJvcGVydHlOYW1lcy5jcHAi
KSA9PSAwIHx8IGRpZSAiY2FsbGluZyBncGVyZiBmYWlsZWQ6ICQ/IjsKK3N5c3RlbSgiZ3BlcmYg
LS1rZXktcG9zaXRpb25zPVwiKlwiIC1EIC1uIC1zIDIgQ1NTUHJvcGVydHlOYW1lcy5ncGVyZiAt
LW91dHB1dC1maWxlPUNTU1Byb3BlcnR5TmFtZXMuY3BwIikgPT0gMCB8fCBkaWUgImNhbGxpbmcg
Z3BlcmYgZmFpbGVkOiAkPyI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXZh
bHVlcy5wbCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9tYWtldmFsdWVzLnBsCmluZGV4IDFlYWI5YmIu
LmNlZDI0MTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9tYWtldmFsdWVzLnBsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9tYWtldmFsdWVzLnBsCkBAIC0xNTUsNCArMTU1LDQgQEAg
Y29uc3QgY2hhciogZ2V0VmFsdWVOYW1lKHVuc2lnbmVkIHNob3J0IGlkKTsKIEVPRgogY2xvc2Ug
SEVBREVSOwogCi1zeXN0ZW0oImdwZXJmIC0ta2V5LXBvc2l0aW9ucz1cIipcIiAtRCAtbiAtcyAy
IENTU1ZhbHVlS2V5d29yZHMuZ3BlcmYgPiBDU1NWYWx1ZUtleXdvcmRzLmNwcCIpID09IDAgfHwg
ZGllICJjYWxsaW5nIGdwZXJmIGZhaWxlZDogJD8iOworc3lzdGVtKCJncGVyZiAtLWtleS1wb3Np
dGlvbnM9XCIqXCIgLUQgLW4gLXMgMiBDU1NWYWx1ZUtleXdvcmRzLmdwZXJmIC0tb3V0cHV0LWZp
bGU9Q1NTVmFsdWVLZXl3b3Jkcy5jcHAiKSA9PSAwIHx8IGRpZSAiY2FsbGluZyBncGVyZiBmYWls
ZWQ6ICQ/IjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL21ha2UtaGFzaC10b29scy5wbCBi
L1NvdXJjZS9XZWJDb3JlL21ha2UtaGFzaC10b29scy5wbAppbmRleCBiZGQ3NDcxLi42ODlhZjBk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9tYWtlLWhhc2gtdG9vbHMucGwKKysrIGIvU291
cmNlL1dlYkNvcmUvbWFrZS1oYXNoLXRvb2xzLnBsCkBAIC0zMyw3ICszMyw3IEBAIGlmICgkb3B0
aW9uIGVxICJDb2xvckRhdGEiKSB7CiAgICAgbXkgJGNvbG9yRGF0YUdwZXJmICAgICAgICAgICAg
ID0gJEFSR1ZbMF07CiAgICAgc2hpZnQ7CiAKLSAgICBzeXN0ZW0oImdwZXJmIC0ta2V5LXBvc2l0
aW9ucz1cIipcIiAtRCAtcyAyICRjb2xvckRhdGFHcGVyZiA+ICRjb2xvckRhdGFHZW5lcmF0ZWQi
KSA9PSAwIHx8IGRpZSAiY2FsbGluZyBncGVyZiBmYWlsZWQ6ICQ/IjsKKyAgICBzeXN0ZW0oImdw
ZXJmIC0ta2V5LXBvc2l0aW9ucz1cIipcIiAtRCAtcyAyICRjb2xvckRhdGFHcGVyZiAtLW91dHB1
dC1maWxlPSRjb2xvckRhdGFHZW5lcmF0ZWQiKSA9PSAwIHx8IGRpZSAiY2FsbGluZyBncGVyZiBm
YWlsZWQ6ICQ/IjsKIAogfSBlbHNlIHsKICAgICBkaWUgIlVua25vd24gb3B0aW9uLiI7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>118927</attachid>
            <date>2011-12-12 18:01:44 -0800</date>
            <delta_ts>2011-12-15 23:18:20 -0800</delta_ts>
            <desc>fix the gperf invocation</desc>
            <filename>WebKit.patch</filename>
            <type>text/plain</type>
            <size>2273</size>
            <attacher name="Rafael Ávila de Espíndola">rafael.espindola</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkNmJhODBmLi5jYTE4ODhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQg
QEAKKzIwMTEtMTItMTIgIFJhZmFlbCDDgXZpbGEgZGUgRXNww61uZG9sYSAgPHJhZmFlbC5lc3Bp
bmRvbGFAZ21haWwuY29tPgorCisgICAgICAgIERvbid0IGNyZWF0ZSBlbXB0eSBmaWxlcyBvbiBl
cnJvci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc0
MzczCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBj
c3MvbWFrZXByb3AucGw6CisgICAgICAgICogY3NzL21ha2V2YWx1ZXMucGw6CisgICAgICAgICog
bWFrZS1oYXNoLXRvb2xzLnBsOgorCiAyMDExLTEyLTExICBBbmRyZWFzIEtsaW5nICA8a2xpbmdA
d2Via2l0Lm9yZz4KIAogICAgICAgICBNb3ZlIENTU0VsZW1lbnRTdHlsZURlY2xhcmF0aW9uIHRv
IGl0cyBvd24gY3BwL2ggZmlsZXMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFr
ZXByb3AucGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXByb3AucGwKaW5kZXggNDVhZjcxMy4u
ZjdhZDc5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL21ha2Vwcm9wLnBsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9tYWtlcHJvcC5wbApAQCAtMTY5LDQgKzE2OSw0IEBAIEVPRgog
CiBjbG9zZSBIRUFERVI7CiAKLXN5c3RlbSgiZ3BlcmYgLS1rZXktcG9zaXRpb25zPVwiKlwiIC1E
IC1uIC1zIDIgQ1NTUHJvcGVydHlOYW1lcy5ncGVyZiA+IENTU1Byb3BlcnR5TmFtZXMuY3BwIikg
PT0gMCB8fCBkaWUgImNhbGxpbmcgZ3BlcmYgZmFpbGVkOiAkPyI7CitzeXN0ZW0oImdwZXJmIC0t
a2V5LXBvc2l0aW9ucz1cIipcIiAtRCAtbiAtcyAyIENTU1Byb3BlcnR5TmFtZXMuZ3BlcmYgLS1v
dXRwdXQtZmlsZT1DU1NQcm9wZXJ0eU5hbWVzLmNwcCIpID09IDAgfHwgZGllICJjYWxsaW5nIGdw
ZXJmIGZhaWxlZDogJD8iOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL21ha2V2YWx1
ZXMucGwgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXZhbHVlcy5wbAppbmRleCAxZWFiOWJiLi5j
ZWQyNDE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXZhbHVlcy5wbAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXZhbHVlcy5wbApAQCAtMTU1LDQgKzE1NSw0IEBAIGNv
bnN0IGNoYXIqIGdldFZhbHVlTmFtZSh1bnNpZ25lZCBzaG9ydCBpZCk7CiBFT0YKIGNsb3NlIEhF
QURFUjsKIAotc3lzdGVtKCJncGVyZiAtLWtleS1wb3NpdGlvbnM9XCIqXCIgLUQgLW4gLXMgMiBD
U1NWYWx1ZUtleXdvcmRzLmdwZXJmID4gQ1NTVmFsdWVLZXl3b3Jkcy5jcHAiKSA9PSAwIHx8IGRp
ZSAiY2FsbGluZyBncGVyZiBmYWlsZWQ6ICQ/IjsKK3N5c3RlbSgiZ3BlcmYgLS1rZXktcG9zaXRp
b25zPVwiKlwiIC1EIC1uIC1zIDIgQ1NTVmFsdWVLZXl3b3Jkcy5ncGVyZiAtLW91dHB1dC1maWxl
PUNTU1ZhbHVlS2V5d29yZHMuY3BwIikgPT0gMCB8fCBkaWUgImNhbGxpbmcgZ3BlcmYgZmFpbGVk
OiAkPyI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9tYWtlLWhhc2gtdG9vbHMucGwgYi9T
b3VyY2UvV2ViQ29yZS9tYWtlLWhhc2gtdG9vbHMucGwKaW5kZXggYmRkNzQ3MS4uNjg5YWYwZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbWFrZS1oYXNoLXRvb2xzLnBsCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL21ha2UtaGFzaC10b29scy5wbApAQCAtMzMsNyArMzMsNyBAQCBpZiAoJG9wdGlv
biBlcSAiQ29sb3JEYXRhIikgewogICAgIG15ICRjb2xvckRhdGFHcGVyZiAgICAgICAgICAgICA9
ICRBUkdWWzBdOwogICAgIHNoaWZ0OwogCi0gICAgc3lzdGVtKCJncGVyZiAtLWtleS1wb3NpdGlv
bnM9XCIqXCIgLUQgLXMgMiAkY29sb3JEYXRhR3BlcmYgPiAkY29sb3JEYXRhR2VuZXJhdGVkIikg
PT0gMCB8fCBkaWUgImNhbGxpbmcgZ3BlcmYgZmFpbGVkOiAkPyI7CisgICAgc3lzdGVtKCJncGVy
ZiAtLWtleS1wb3NpdGlvbnM9XCIqXCIgLUQgLXMgMiAkY29sb3JEYXRhR3BlcmYgLS1vdXRwdXQt
ZmlsZT0kY29sb3JEYXRhR2VuZXJhdGVkIikgPT0gMCB8fCBkaWUgImNhbGxpbmcgZ3BlcmYgZmFp
bGVkOiAkPyI7CiAKIH0gZWxzZSB7CiAgICAgZGllICJVbmtub3duIG9wdGlvbi4iOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>