Bug 202879 - Regression (251018): Wincairo build broken: unresolved external symbol
Summary: Regression (251018): Wincairo build broken: unresolved external symbol
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: Other
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Alex Christensen
Keywords: InRadar
Depends on:
Reported: 2019-10-11 23:36 PDT by Aakash Jain
Modified: 2019-10-15 15:02 PDT (History)
17 users (show)

See Also:

Patch (1.15 KB, patch)
2019-10-12 11:09 PDT, Stephan Szabo
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Aakash Jain 2019-10-11 23:36:14 PDT
Wincairo build seems to be broken. EWS and build.webkit.org seems to be failing with below build error, e.g.: https://ews-build.webkit.org/#/builders/12/builds/7400/steps/9/logs/stdio, https://build.webkit.org/builders/WinCairo%2064-bit%20WKL%20Debug%20%28Build%29/builds/11035/steps/compile-webkit/logs/stdio

[1854/5075] Linking CXX shared library bin64\libGLESv2.dll
FAILED: bin64/libGLESv2.dll lib64/libGLESv2.lib 
cmd.exe /C "cd . && C:\tools\cmake\bin\cmake.exe -E vs_link_dll --intdir=Source\ThirdParty\ANGLE\CMakeFiles\GLESv2.dir --rc="C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64\rc.exe" --mt="C:\Program Files (x86)\Windows Kits\10\bin\10.0.17763.0\x64\mt.exe"
 winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:bin64\libGLESv2.dll.manifest" failed (exit code 1120) with the following output:
   Creating library lib64\libGLESv2.lib and object lib64\libGLESv2.exp

LINK : warning LNK4217: symbol 'ANGLEGetDisplayPlatform' defined in 'ANGLE.lib(Platform.cpp.obj)' is imported by 'proc_table_egl_autogen.cpp.obj' in function ...

LINK : warning LNK4217: symbol 'ANGLEResetDisplayPlatform' defined in 'ANGLE.lib(Platform.cpp.obj)' is imported by 'proc_table_egl_autogen.cpp.obj' in function ...

ANGLE.lib(Renderer11.cpp.obj) : error LNK2019: unresolved external symbol CreateDXGIFactory1 referenced in function ...

bin64\libGLESv2.dll : fatal error LNK1120: 1 unresolved externals

[1858/5075] Building CXX object Source\WebCore\PAL\pal\CMakeFiles\PAL.dir\FileSizeFormatter.cpp.obj
ninja: build stopped: subcommand failed.
Comment 2 Aakash Jain 2019-10-11 23:38:42 PDT
Seems to be broken by https://trac.webkit.org/changeset/251018/webkit
Comment 3 Stephan Szabo 2019-10-12 11:09:25 PDT
Created attachment 380831 [details]

It seems like the function that was being complained about is in dxgi, and adding that to where dxguid is defined seems to work.

I'm uncertain if the same issue will apply to FTW as well as the library line there seems similar to the one in PlatformWin.
Comment 4 EWS Watchlist 2019-10-12 11:09:58 PDT
Note that there are important steps to take when updating ANGLE. See http://trac.webkit.org/wiki/UpdatingANGLE
Comment 5 Stephan Szabo 2019-10-12 11:22:28 PDT
I'd gotten a second unrelated error locally after fixing this, but am not sure whether I should be trying to fix that in this or a separate ticket.
Comment 6 WebKit Commit Bot 2019-10-12 22:35:34 PDT
Comment on attachment 380831 [details]

Clearing flags on attachment: 380831

Committed r251056: <https://trac.webkit.org/changeset/251056>
Comment 7 WebKit Commit Bot 2019-10-12 22:35:36 PDT
All reviewed patches have been landed.  Closing bug.
Comment 8 Aakash Jain 2019-10-13 06:53:27 PDT
It seems like another fix is needed. The build is still failing at a later stage with the error:

..\..\Source\WebCore\platform\network\curl\SynchronousLoaderClientCurl.cpp(32): fatal error C1083: Cannot open include file: 'EventLoop.h': No such file or directory

Filed https://bugs.webkit.org/show_bug.cgi?id=202893
Comment 9 Kenneth Russell 2019-10-14 10:30:52 PDT
Sorry about the breakage and thanks for fixing this build issue!
Comment 10 Ling Ho 2019-10-15 15:02:24 PDT