Changeset 269504 in webkit


Ignore:
Timestamp:
Nov 6, 2020 1:01:13 AM (3 years ago)
Author:
commit-queue@webkit.org
Message:

[GTK] dlopen libWPEBackend-fdo-1.0.so.1 instead of libWPEBackend-fdo-1.0.so
https://bugs.webkit.org/show_bug.cgi?id=218584

Patch by Michael Catanzaro <Michael Catanzaro> on 2020-11-06
Reviewed by Carlos Garcia Campos.

wpe_loader_init() tries to dlopen a development symlink, but these will not usually be
installed. It only works in the GNOME flatpak runtime because we don't use devel split
rules in the GNOME runtime, but we really ought to, and freedesktop-sdk already does, so
it's going to break upstream too once that gets implemented. It's easier for everyone if
we tackle this now. Since all major distros except Arch Linux use devel split, this patch
is really required for almost every distro to use WPE renderer.

The downside is that this makes it harder to update the wpebackend-fdo library version,
since minor changes there will now unnecessarily break WebKit. This is not good, but it's
better than forcing distros to apply this same patch downstream. I considered trying a bunch
of different library versions in a loop in order to maximize the chance of success in case
the wpebackend-fdo library version increases in the future, but it's probably nicer to just
be careful about not changing its library version until we find a better solution for this.

  • UIProcess/glib/WebProcessPoolGLib.cpp:

(WebKit::WebProcessPool::platformInitializeWebProcess):

Location:
trunk/Source/WebKit
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r269503 r269504  
     12020-11-06  Michael Catanzaro  <mcatanzaro@gnome.org>
     2
     3        [GTK] dlopen libWPEBackend-fdo-1.0.so.1 instead of libWPEBackend-fdo-1.0.so
     4        https://bugs.webkit.org/show_bug.cgi?id=218584
     5
     6        Reviewed by Carlos Garcia Campos.
     7
     8        wpe_loader_init() tries to dlopen a development symlink, but these will not usually be
     9        installed. It only works in the GNOME flatpak runtime because we don't use devel split
     10        rules in the GNOME runtime, but we really ought to, and freedesktop-sdk already does, so
     11        it's going to break upstream too once that gets implemented. It's easier for everyone if
     12        we tackle this now. Since all major distros except Arch Linux use devel split, this patch
     13        is really required for almost every distro to use WPE renderer.
     14
     15        The downside is that this makes it harder to update the wpebackend-fdo library version,
     16        since minor changes there will now unnecessarily break WebKit. This is not good, but it's
     17        better than forcing distros to apply this same patch downstream. I considered trying a bunch
     18        of different library versions in a loop in order to maximize the chance of success in case
     19        the wpebackend-fdo library version increases in the future, but it's probably nicer to just
     20        be careful about not changing its library version until we find a better solution for this.
     21
     22        * UIProcess/glib/WebProcessPoolGLib.cpp:
     23        (WebKit::WebProcessPool::platformInitializeWebProcess):
     24
    1252020-11-05  Said Abou-Hallawa  <said@apple.com>
    226
  • trunk/Source/WebKit/UIProcess/glib/WebProcessPoolGLib.cpp

    r267534 r269504  
    8585    if (WebCore::PlatformDisplay::sharedDisplay().type() == WebCore::PlatformDisplay::Type::Wayland) {
    8686#if USE(WPE_RENDERER)
    87         wpe_loader_init("libWPEBackend-fdo-1.0.so");
     87        wpe_loader_init("libWPEBackend-fdo-1.0.so.1");
    8888        if (AcceleratedBackingStoreWayland::checkRequirements()) {
    8989            parameters.hostClientFileDescriptor = wpe_renderer_host_create_client();
Note: See TracChangeset for help on using the changeset viewer.