Summary: | [GTK] update-webkitgtk-libs cannot build mesa | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Michael Catanzaro <mcatanzaro> | ||||||||||||
Component: | WebKitGTK | Assignee: | Michael Catanzaro <mcatanzaro> | ||||||||||||
Status: | RESOLVED FIXED | ||||||||||||||
Severity: | Normal | CC: | bugs-noreply, cgarcia, clopez, commit-queue, gustavo, mcatanzaro, mrobinson, ossy | ||||||||||||
Priority: | P2 | ||||||||||||||
Version: | Other | ||||||||||||||
Hardware: | PC | ||||||||||||||
OS: | Linux | ||||||||||||||
Attachments: |
|
Description
Michael Catanzaro
2015-11-21 15:40:02 PST
We build mesa with --enable-xlib-glx, but I don't know why. Anyway, that option now conflicts with --enable-egl. Not sure how to handle this.... (In reply to comment #1) > We build mesa with --enable-xlib-glx, but I don't know why. Anyway, that > option now conflicts with --enable-egl. Not sure how to handle this.... Well, it works Created attachment 266036 [details]
Patch
The idea is that mesa uses the llvm from the distro, because we only build llvm for x86_64, but mesa is always built. So, even if we upgrade mesa version I would not add llvm as dependency and would build it before llvm. (In reply to comment #4) > The idea is that mesa uses the llvm from the distro, because we only build > llvm for x86_64, but mesa is always built. So, even if we upgrade mesa > version I would not add llvm as dependency and would build it before llvm. We can't do that, because llvm does not have a stable API, so building mesa without llvm is a recipe for breakage (as we see here). We should either build llvm unconditionally and first, or else just use the distro-provided mesa that's guaranteed to be compatible with the distro-provided llvm. But I presume we are building mesa because it affects layout tests, which implies that we should keep building it, which implies that we should build llvm unconditionally. (In reply to comment #5) > (In reply to comment #4) > > The idea is that mesa uses the llvm from the distro, because we only build > > llvm for x86_64, but mesa is always built. So, even if we upgrade mesa > > version I would not add llvm as dependency and would build it before llvm. > > We can't do that, because llvm does not have a stable API, so building mesa > without llvm is a recipe for breakage (as we see here). We should either > build llvm unconditionally and first, or else just use the distro-provided > mesa that's guaranteed to be compatible with the distro-provided llvm. But I > presume we are building mesa because it affects layout tests, which implies > that we should keep building it, which implies that we should build llvm > unconditionally. Yes, we are building Mesa because we want all layout tests on every system to run under the same version of llvmpipe. Created attachment 266446 [details]
Patch
(Still need to run layout tests to see what's broken.) Comment on attachment 266446 [details]
Patch
rs=me
Thanks for the rs. I'm going to run layout tests on our test bot before committing. I'm also going to try building without --enable-xlib-glx and --disable-dri instead of using --disable-egl. Created attachment 266526 [details]
Patch
Created attachment 266532 [details]
Patch
Comment on attachment 266532 [details]
Patch
Why we need libdrm at all when we are only interested in building a software rasterizer?
(In reply to comment #13) > Comment on attachment 266532 [details] > Patch > > Why we need libdrm at all when we are only interested in building a software > rasterizer? So that we don't have to use --disable-egl, which conflicts with --enable-xlib-glx. My understanding is that if we disable EGL, then layout tests will run with system EGL under Wayland, and we won't be able to guarantee consistent results in Wayland. Although to be clear, Martin and I believe that currently we do not use GL at all under Wayland (since we have GLES disabled by default). Created attachment 266620 [details]
Patch
(In reply to comment #14) > My understanding is that if we disable EGL, then layout tests will run with > system EGL under Wayland, and we won't be able to guarantee consistent > results in Wayland. We're going to try building mesa with --disable-egl instead. Comment on attachment 266446 [details]
Patch
Michael says that he will wait to land this until he ensures that the new version of llvmpipe doesn't break tests.
Comment on attachment 266446 [details]
Patch
Having trouble running tests on the gardener, so we decided to land this and just watch the bots... I'm more than half expecting breakage.
*** Bug 151935 has been marked as a duplicate of this bug. *** Comment on attachment 266446 [details] Patch Clearing flags on attachment: 266446 Committed r193618: <http://trac.webkit.org/changeset/193618> All reviewed patches have been landed. Closing bug. This broke all layout tests. Carlos Lopez found the bug; it is that LLVM got installed to lib instead of lib64. The fix will land as a side-effect of the patch in bug #145697. |