<?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>188180</bug_id>
          
          <creation_ts>2018-07-30 14:06:47 -0700</creation_ts>
          <short_desc>watchOS engineering build is broken after r234227</short_desc>
          <delta_ts>2018-07-30 17:49:18 -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>JavaScriptCore</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>aestes</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1446349</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-07-30 14:06:47 -0700</bug_when>
    <thetext>In file included from /Volumes/main/Users/whsieh/Build/Release-watchos/DerivedSources/WebCore/unified-sources/UnifiedSource1-mm.mm:1:
In file included from ./Modules/plugins/QuickTimePluginReplacement.mm:55:
In file included from /Volumes/main/Users/whsieh/Build/Release-watchos/JavaScriptCore.framework/Headers/JavaScriptCore.h:35:
/Volumes/main/Users/whsieh/Build/Release-watchos/JavaScriptCore.framework/Headers/JSValue.h:50:189: error: &apos;JSC_IOS_VERSION_TBA&apos; is not defined, evaluates to 0 [-Werror,-Wundef]
#if (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &lt; JSC_MAC_VERSION_TBA) || (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &lt; JSC_IOS_VERSION_TBA)
CompileC UnifiedSource1.o
CompileC UnifiedSource2-mm.o
CompileC UnifiedSource2.o
CompileC UnifiedSource3-mm.o
CompileC UnifiedSource3.o
CompileC UnifiedSource4-mm.o
CompileC UnifiedSource4.o
CompileC UnifiedSource5-mm.o
CompileC UnifiedSource5.o
CompileC UnifiedSource6-mm.o
In file included from /Volumes/main/Users/whsieh/Build/Release-watchos/DerivedSources/WebCore/unified-sources/UnifiedSource6-mm.mm:1:
In file included from ./bindings/js/ScriptControllerMac.mm:44:
In file included from /Volumes/main/Users/whsieh/Build/Release-watchos/JavaScriptCore.framework/PrivateHeaders/JSContextInternal.h:26:
In file included from /Volumes/main/Users/whsieh/Build/Release-watchos/JavaScriptCore.framework/Headers/JavaScriptCore.h:35:
/Volumes/main/Users/whsieh/Build/Release-watchos/JavaScriptCore.framework/Headers/JSValue.h:50:189: error: &apos;JSC_IOS_VERSION_TBA&apos; is not defined, evaluates to 0 [-Werror,-Wundef]
#if (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &lt; JSC_MAC_VERSION_TBA) || (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &lt; JSC_IOS_VERSION_TBA)
1 error generated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1446357</commentid>
    <comment_count>1</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-07-30 14:33:59 -0700</bug_when>
    <thetext>It seems that this snippet in postprocess-headers.sh:

    function rewrite_headers () {
        if [[ &quot;${PLATFORM_NAME}&quot; == &quot;macosx&quot; ]]; then
            [[ -n ${OSX_VERSION} ]] || OSX_VERSION=${MACOSX_DEPLOYMENT_TARGET}
            [[ -n ${IOS_VERSION} ]] || IOS_VERSION=&quot;NA&quot;
            [[ -n ${OSX_VERSION_NUMBER} ]] || OSX_VERSION_NUMBER=${TARGET_MAC_OS_X_VERSION_MAJOR}
            [[ -n ${IOS_VERSION_NUMBER} ]] || IOS_VERSION_NUMBER=&quot;0&quot;
        elif [[ &quot;${PLATFORM_NAME}&quot; =~ &quot;iphone&quot; ]]; then
            [[ -n ${IOS_VERSION} ]] || IOS_VERSION=${IPHONEOS_DEPLOYMENT_TARGET}
            [[ -n ${OSX_VERSION} ]] || OSX_VERSION=&quot;NA&quot;
            [[ -n ${OSX_VERSION_NUMBER} ]] || OSX_VERSION_NUMBER=&quot;0&quot;
            [[ -n ${IOS_VERSION_NUMBER} ]] || IOS_VERSION_NUMBER=${SDK_VERSION_MAJOR}
        fi

        …

    }

...doesn&apos;t take watchOS into account, since PLATFORM_NAME starts with &quot;watch&quot; rather than &quot;iphone&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1446366</commentid>
    <comment_count>2</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-07-30 14:53:45 -0700</bug_when>
    <thetext>Hmm, I see now that this is modeled closely after rewrite_headers() in postprocess-framework-headers.sh in WebKit, and we also miss setting OSX_VERSION and IOS_VERSION there too, because WK_PLATFORM_NAME is &quot;watch(os|simulator)&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1446401</commentid>
    <comment_count>3</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-07-30 16:11:29 -0700</bug_when>
    <thetext>(In reply to Wenson Hsieh from comment #2)
&gt; Hmm, I see now that this is modeled closely after rewrite_headers() in
&gt; postprocess-framework-headers.sh in WebKit, and we also miss setting
&gt; OSX_VERSION and IOS_VERSION there too, because WK_PLATFORM_NAME is
&gt; &quot;watch(os|simulator)&quot;.

So in the case where this happens, we end up in a fallback path:

    if [[ -n &quot;$OSX_VERSION&quot; &amp;&amp; -n &quot;$IOS_VERSION&quot; ]]; then
        SED_OPTIONS+=(
            -e s/JSC_MAC_TBA/${OSX_VERSION}/g
            -e s/JSC_IOS_TBA/${IOS_VERSION}/g
            -e s/JSC_MAC_VERSION_TBA/${OSX_VERSION_NUMBER}/g
            -e s/JSC_IOS_VERSION_TBA/${IOS_VERSION_NUMBER}/g
            -e s/JSC_API_AVAILABLE/API_AVAILABLE/
            -e s/JSC_API_DEPRECATED/API_DEPRECATED/
            -e &quot;s/^JSC_CLASS_AVAILABLE/JSC_EXTERN API_AVAILABLE/&quot;
            -e &quot;s/^JSC_CLASS_DEPRECATED/JSC_EXTERN API_DEPRECATED/&quot;
        )
    else
        SED_OPTIONS+=( -e &apos;s/JSC_(API_|CLASS_)AVAILABLE\(.*\)\s*\)//g&apos; -e &apos;s/JSC_(API_|CLASS_)DEPRECATED(_WITH_REPLACEMENT)?\(.*\)\s*\)//g&apos; )
    fi

...which effectively removes all uses of the JSC availability macro. Perhaps this should replace JSC_IOS_VERSION_TBA and JSC_MAC_VERSION_TBA as well with a fallback value of 0?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1446419</commentid>
    <comment_count>4</comment_count>
      <attachid>346122</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2018-07-30 16:34:33 -0700</bug_when>
    <thetext>Created attachment 346122
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1446432</commentid>
    <comment_count>5</comment_count>
      <attachid>346122</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2018-07-30 16:54:46 -0700</bug_when>
    <thetext>Comment on attachment 346122
Patch

r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1446440</commentid>
    <comment_count>6</comment_count>
      <attachid>346122</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-07-30 17:48:56 -0700</bug_when>
    <thetext>Comment on attachment 346122
Patch

Clearing flags on attachment: 346122

Committed r234401: &lt;https://trac.webkit.org/changeset/234401&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1446441</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-07-30 17:48:58 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1446442</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-07-30 17:49:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/42754208&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>346122</attachid>
            <date>2018-07-30 16:34:33 -0700</date>
            <delta_ts>2018-07-30 17:48:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188180-20180730163432.patch</filename>
            <type>text/plain</type>
            <size>2083</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM0Mzg0CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA1
NWM5OGYyZmU0YzgwOTMyOWFiNzQ4MzllYzA5MWZiOTMyMjY4NmE1Li42M2I2ZWRhZjM3YTgxNjE5
ZGUyNjc5M2M3ZDFmNGEyYjI1ZDdiMzlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMCBAQAorMjAxOC0wNy0zMCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxl
LmNvbT4KKworICAgICAgICB3YXRjaE9TIGVuZ2luZWVyaW5nIGJ1aWxkIGlzIGJyb2tlbiBhZnRl
ciByMjM0MjI3CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xODgxODAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBJbiB0aGUgY2FzZSB3aGVyZSB3ZSdyZSBidWlsZGluZyB3aXRoIGEgYFBMQVRGT1JNX05BTUVg
IG9mIG5laXRoZXIgIm1hY29zeCIgbm9yICJpcGhvbmUqIiwKKyAgICAgICAgcG9zdHByb2Nlc3Mt
aGVhZGVycy5zaCBhdHRlbXB0cyB0byBkZWxldGUgYW55IHVzYWdlIG9mIHRoZSBKU0MgYXZhaWxh
YmlsaXR5IG1hY3Jvcy4gSG93ZXZlciwKKyAgICAgICAgYEpTQ19NQUNfVkVSU0lPTl9UQkFgIGFu
ZCBgSlNDX0lPU19WRVJTSU9OX1RCQWAgc3RpbGwgcmVtYWluLCBhbmQgSlNWYWx1ZS5oJ3MgdXNh
Z2Ugb2YKKyAgICAgICAgYEpTQ19JT1NfVkVSU0lPTl9UQkFgIGNhdXNlcyBlbmdpbmVlcmluZyB3
YXRjaE9TIGJ1aWxkcyB0byBmYWlsLgorCisgICAgICAgIFRvIGZpeCB0aGlzLCBzaW1wbHkgYWxs
b3cgdGhlIGZhbGxiYWNrIHBhdGggdG8gcmVtb3ZlIHRoZXNlIG1hY3JvcyBmcm9tIEphdmFTY3Jp
cHRDb3JlIGhlYWRlcnMKKyAgICAgICAgZW50aXJlbHksIHNpbmNlIHRoZXJlJ3Mgbm8gcmVsZXZh
bnQgdmVyc2lvbiB0byByZXBsYWNlIHRoZW0gd2l0aC4KKworICAgICAgICAqIHBvc3Rwcm9jZXNz
LWhlYWRlcnMuc2g6CisKIDIwMTgtMDctMzAgIEtlaXRoIE1pbGxlciAgPGtlaXRoX21pbGxlckBh
cHBsZS5jb20+CiAKICAgICAgICAgQ2xhcmlmeSBjb252ZXJzaW9uIHJ1bGVzIGZvciBKU1ZhbHVl
IHByb3BlcnR5IGFjY2VzcyBBUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9w
b3N0cHJvY2Vzcy1oZWFkZXJzLnNoIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3Bvc3Rwcm9jZXNz
LWhlYWRlcnMuc2gKaW5kZXggZmNkZThhMTM3MTFhNGJiZDExYzhhMGEyMTMwZjZjMTIyN2ExNzFm
OC4uZmQyODgzNmRjOGJkZjFlNWY0OTM5ZjQyNTk5YTFjMDdmNGY5YmZjOSAxMDA3NTUKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL3Bvc3Rwcm9jZXNzLWhlYWRlcnMuc2gKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3Bvc3Rwcm9jZXNzLWhlYWRlcnMuc2gKQEAgLTc2LDcgKzc2LDExIEBA
IGZ1bmN0aW9uIHJld3JpdGVfaGVhZGVycyAoKSB7CiAgICAgICAgICAgICAtZSAicy9eSlNDX0NM
QVNTX0RFUFJFQ0FURUQvSlNDX0VYVEVSTiBBUElfREVQUkVDQVRFRC8iCiAgICAgICAgICkKICAg
ICBlbHNlCi0gICAgICAgIFNFRF9PUFRJT05TKz0oLWUgJ3MvSlNDXyhBUElffENMQVNTXylBVkFJ
TEFCTEVcKC4qXClccypcKS8vZycgLWUgJ3MvSlNDXyhBUElffENMQVNTXylERVBSRUNBVEVEKF9X
SVRIX1JFUExBQ0VNRU5UKT9cKC4qXClccypcKS8vZycpCisgICAgICAgIFNFRF9PUFRJT05TKz0o
CisgICAgICAgICAgICAtZSAncy9KU0NfKEFQSV98Q0xBU1NfKUFWQUlMQUJMRVwoLipcKVxzKlwp
Ly9nJworICAgICAgICAgICAgLWUgJ3MvSlNDXyhBUElffENMQVNTXylERVBSRUNBVEVEKF9XSVRI
X1JFUExBQ0VNRU5UKT9cKC4qXClccypcKS8vZycKKyAgICAgICAgICAgIC1lICdzL0pTQ18oTUFD
fElPUylfVkVSU0lPTl9UQkEvMC9nJworICAgICAgICApCiAgICAgZmkKIAogICAgIFNFRF9PUFRJ
T05TKz0oJHtPVEhFUl9TRURfT1BUSU9OU1sqXX0pCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>