<?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>209946</bug_id>
          
          <creation_ts>2020-04-02 19:12:59 -0700</creation_ts>
          <short_desc>Do not link with OpenGL on Apple platforms</short_desc>
          <delta_ts>2020-04-03 17:39:09 -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>ANGLE</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>
          
          <blocked>209890</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Keith Rollin">krollin</reporter>
          <assigned_to name="Keith Rollin">krollin</assigned_to>
          <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>graouts</cc>
    
    <cc>kbr</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1637200</commentid>
    <comment_count>0</comment_count>
    <who name="Keith Rollin">krollin</who>
    <bug_when>2020-04-02 19:12:59 -0700</bug_when>
    <thetext>OpenGL is not used in our build of ANGLE. Attempting to link with it causes warnings, which can turn to errors in some cases (in particular with building with Xcode&apos;s &quot;new&quot; build system).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637201</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-02 19:13:11 -0700</bug_when>
    <thetext>&lt;rdar://problem/61237956&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637202</commentid>
    <comment_count>2</comment_count>
      <attachid>395337</attachid>
    <who name="Keith Rollin">krollin</who>
    <bug_when>2020-04-02 19:15:51 -0700</bug_when>
    <thetext>Created attachment 395337
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637203</commentid>
    <comment_count>3</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2020-04-02 19:16:37 -0700</bug_when>
    <thetext>Note that there are important steps to take when updating ANGLE. See http://trac.webkit.org/wiki/UpdatingANGLE</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637447</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-04-03 11:00:38 -0700</bug_when>
    <thetext>Committed r259475: &lt;https://trac.webkit.org/changeset/259475&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 395337.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637500</commentid>
    <comment_count>5</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2020-04-03 13:05:27 -0700</bug_when>
    <thetext>How are references to functions like CGLCreateContext resolved after this patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637573</commentid>
    <comment_count>6</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-04-03 17:12:41 -0700</bug_when>
    <thetext>(In reply to Kenneth Russell from comment #5)
&gt; How are references to functions like CGLCreateContext resolved after this
&gt; patch?

Yeah. ANGLE only dynamically loads /System/Library/Frameworks/OpenGL.framework/Libraries/libGL.dylib

All the CGL stuff is in /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL

So how did this pass tests?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637578</commentid>
    <comment_count>7</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-04-03 17:19:58 -0700</bug_when>
    <thetext>Oh. It&apos;s because it is linked into WebCore which links OpenGL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637579</commentid>
    <comment_count>8</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-04-03 17:20:55 -0700</bug_when>
    <thetext>However, this change shouldn&apos;t have been necessary. If the new build system can&apos;t link against OpenGL, it can&apos;t build WebCore or WebKit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637581</commentid>
    <comment_count>9</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-04-03 17:23:12 -0700</bug_when>
    <thetext>Did you find out what was actually causing the compiler warning?

Because if it was unused functions when linking, then we also have a bunch of those in other projects.

e.g. 
ld: warning: linking with (/System/Library/Frameworks/CoreAudio.framework/CoreAudio) but not using any symbols from it
ld: warning: linking with (/System/Library/Frameworks/VideoToolbox.framework/VideoToolbox) but not using any symbols from it
ld: warning: linking with (/System/Library/Frameworks/CoreMedia.framework/CoreMedia) but not using any symbols from it
ld: warning: linking with (/System/Library/PrivateFrameworks/URLFormatting.framework/URLFormatting) but not using any symbols from it
ld: warning: linking with (/usr/lib/libAccessibility.dylib) but not using any symbols from it</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1637584</commentid>
    <comment_count>10</comment_count>
    <who name="Keith Rollin">krollin</who>
    <bug_when>2020-04-03 17:39:09 -0700</bug_when>
    <thetext>(In reply to Dean Jackson from comment #8)
&gt; However, this change shouldn&apos;t have been necessary. If the new build system
&gt; can&apos;t link against OpenGL, it can&apos;t build WebCore or WebKit.

It&apos;s not that it can&apos;t link against OpenGL. I&apos;m pretty sure that it&apos;s because it can&apos;t link against an OpenGL that doesn&apos;t exist. OpenGL.framework is not in the iphonesimulator SDK. That&apos;s where the error was occurring.

WebCore is able to link because it only links against OpenGL on the macOS:

WebCore.xcconfig
108:WK_OPENGL_LDFLAGS_iphoneos = -framework OpenGLES;
109:WK_OPENGL_LDFLAGS_iphonesimulator = -framework OpenGLES;
114:WK_OPENGL_LDFLAGS_maccatalyst = -framework OpenGL;
115:WK_OPENGL_LDFLAGS_macosx = -framework OpenGL;

Thanks for clarifying all of this. I was going crazy today trying to figure out how macOS was linking!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>395337</attachid>
            <date>2020-04-02 19:15:51 -0700</date>
            <delta_ts>2020-04-03 11:00:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-209946-20200402191550.patch</filename>
            <type>text/plain</type>
            <size>2744</size>
            <attacher name="Keith Rollin">krollin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU5NDIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9DaGFuZ2VMb2cgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9DaGFuZ2VMb2cKaW5k
ZXggODE5OWJjMTNlM2NmOWJlZTU1YzlhOTdiZjNmM2VlMjdkZjAzNzE3Yy4uM2ViZGUwOTczYTQz
NmI2ZGI1YmU4MWRmOTY1MmY2MDYzNWJlNzk0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDE3IEBACisyMDIwLTA0LTAyICBLZWl0aCBSb2xsaW4gIDxrcm9sbGluQGFw
cGxlLmNvbT4KKworICAgICAgICBEbyBub3QgbGluayB3aXRoIE9wZW5HTCBvbiBBcHBsZSBwbGF0
Zm9ybXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIw
OTk0NgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjEyMzc5NTY+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgT3BlbkdMIGlzIG5vdCB1c2VkIGluIG91
ciBidWlsZCBvZiBBTkdMRS4gQXR0ZW1wdGluZyB0byBsaW5rIHdpdGggaXQKKyAgICAgICAgY2F1
c2VzIHdhcm5pbmdzLCB3aGljaCBjYW4gdHVybiBpbnRvIGVycm9ycyBpbiBzb21lIGNhc2VzIChp
bgorICAgICAgICBwYXJ0aWN1bGFyLCB3aGVuIGJ1aWxkaW5nIHdpdGggWGNvZGUncyAibmV3IiBi
dWlsZCBzeXN0ZW0pLgorCisgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
ajoKKwogMjAyMC0wMy0yNyAgS2VubmV0aCBSdXNzZWxsICA8a2JyQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBVc2UgQU5HTEVfcm9idXN0X2NsaWVudF9tZW1vcnkgdG8gcmVwbGFjZSBmcmFtZWJ1
ZmZlci90ZXh0dXJlIHZhbGlkYXRpb24KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGJmN2M5NGFjMmIzNmRm
M2RhMmNmMGQ3ZWQyNDA3MWVmYTI5NjdlMzcuLmRjNTE3YmIxY2ViYjgxOWIzNTZjMGNkZWM2NjBi
MjhiYTZkMDM0YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQU5H
TEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNDUyLDcgKzQ1Miw2IEBACiAJCTVDQjMw
MTQ2MURFMzlGMUEwMEQyQzQwNSAvKiBWZXJ0ZXhBcnJheUdMLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0IzMDExMzFERTM5RjFBMDBEMkM0MDUgLyog
VmVydGV4QXJyYXlHTC5oICovOyB9OwogCQk1Q0IzMDE0RjFERTM5RjQ3MDBEMkM0MDUgLyogRGlz
cGxheUNHTC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
NUNCMzAxNDkxREUzOUY0NzAwRDJDNDA1IC8qIERpc3BsYXlDR0wuaCAqLzsgfTsKIAkJNUNCMzAx
NTExREUzOUY0NzAwRDJDNDA1IC8qIFBidWZmZXJTdXJmYWNlQ0dMLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0IzMDE0QjFERTM5RjQ3MDBEMkM0MDUg
LyogUGJ1ZmZlclN1cmZhY2VDR0wuaCAqLzsgfTsKLQkJNUNCMzA0OTIxREU0MTU2MjAwRDJDNDA1
IC8qIE9wZW5HTC5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSA1Q0IzMDQ4RDFERTQxNDQ0MDBEMkM0MDUgLyogT3BlbkdMLmZyYW1ld29y
ayAqLzsgfTsKIAkJNUNCMzA0OTMxREU0MTU2QjAwRDJDNDA1IC8qIFF1YXJ0ekNvcmUuZnJhbWV3
b3JrIGluIEZyYW1ld29ya3MgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNC
MzA0OEYxREU0MTQ1NTAwRDJDNDA1IC8qIFF1YXJ0ekNvcmUuZnJhbWV3b3JrICovOyB9OwogCQk1
Q0IzMDQ5NDFERTQxNTcyMDBEMkM0MDUgLyogQ29yZUdyYXBoaWNzLmZyYW1ld29yayBpbiBGcmFt
ZXdvcmtzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQjMwNDhCMURFNDE0
MzUwMEQyQzQwNSAvKiBDb3JlR3JhcGhpY3MuZnJhbWV3b3JrICovOyB9OwogCQk1Q0IzMDQ5NjFE
RTQxNTdCMDBEMkM0MDUgLyogZW50cnlfcG9pbnRzX2VnbF9leHQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQjMwMEJDMURFMzlFNzUwMEQyQzQwNSAv
KiBlbnRyeV9wb2ludHNfZWdsX2V4dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFB1
YmxpYywgKTsgfTsgfTsKQEAgLTE1MTgsNyArMTUxNyw2IEBACiAJCQlidWlsZEFjdGlvbk1hc2sg
PSAyMTQ3NDgzNjQ3OwogCQkJZmlsZXMgPSAoCiAJCQkJNUNCMzA0OTQxREU0MTU3MjAwRDJDNDA1
IC8qIENvcmVHcmFwaGljcy5mcmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLywKLQkJCQk1Q0IzMDQ5
MjFERTQxNTYyMDBEMkM0MDUgLyogT3BlbkdMLmZyYW1ld29yayBpbiBGcmFtZXdvcmtzICovLAog
CQkJCTVDQjMwNDkzMURFNDE1NkIwMEQyQzQwNSAvKiBRdWFydHpDb3JlLmZyYW1ld29yayBpbiBG
cmFtZXdvcmtzICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3Np
bmcgPSAwOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>