Github messages for voidlinux
 help / color / mirror / Atom feed
From: ifreund <ifreund@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: wayland: update to 1.20.0.
Date: Fri, 10 Dec 2021 21:04:38 +0100	[thread overview]
Message-ID: <20211210200438.UjNDeKmiJlSs_2WvuuCGEW_yms7Hax3VfQg9SeIgqxI@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-34448@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 4668 bytes --]

New comment by ifreund on void-packages repository

https://github.com/void-linux/void-packages/pull/34448#issuecomment-991258733

Comment:
TLDR; it's firefox's fault:
```
20:03 <Ariadne> in alpine, a contributor submitted a package update for the latest wayland version (1.20.0), and now we are having a lot of problems with wl_proxy_marshal_flags missing.
20:03 <Ariadne> we upgraded wayland-protocols already
20:03 <Ariadne> am i missing something?
20:04 --> ikke (~kevin@ikke.user.oftc.net) has joined #wayland
20:07 <emersion> hmm
20:07 <emersion> Ariadne: what kind of issues? do you have an error message at hand?
20:07 <vyivel> undefined references to `wl_proxy_marshal_flags'
20:07 <emersion> when running clients compiled with an older version?
20:08 <ikke> https://build.alpinelinux.org/buildlogs/build-edge-aarch64/community/firefox-esr/firefox-esr-91.4.0-r0.log
20:08 <emersion> or the other way around?
20:08 <emersion> ah when compiling then?
20:08 <ikke> yes
20:09 <Ariadne> gentoo also appears to have this issue
20:09 <ikke> https://bugs.gentoo.org/811840
20:09 <ikke> Their solution was to set LDFLAGS -lwayland
20:09 <Ariadne> hmm, that would indicate that something is no longer pulling -lwayland into the linking flags
20:10 <Ariadne> have you checked the wayland .pc files yet?
20:10 <ikke> -lwayland-client
20:11 <ikke> "Now normally I would just look for a source file to patch where I could add #include <wayland-client> but the file in question seems to be Unified_cpp_gfx_gl0.cpp which is generated-on-the-fly rather than being part of the firefox tarball ..."
20:12 <emersion> libwayland.so doesn't exist…
20:12 <emersion> there's only libwayland-server.so and libwayland-client.so
20:12 <emersion> so i'm a bit surprised -lwayland fixes it
20:12 <ikke> emersion: yeah, I meant -lwayland-client
20:12 <emersion> ah ok
20:15 <emersion> i see the symbol in the so, fwiw
20:15 <emersion> 155: 000000000003e540  1231 FUNC    GLOBAL DEFAULT   12 wl_proxy_marshal_flags
21:02 -- irc: disconnected from server
21:02 --> ifreund (ifreund@94.79.138.86) has joined #wayland
20:18 <emersion> rebuilding wayland-protocols won't help, it's just a bunch of XML files
20:18 <emersion> by any chance, does firefox bundle its own libwayland?
20:20 <emersion> using wayland-scanner 1.20 and linking to libwayland < 1.20 would result in this error
20:23 <emersion> does this only happen with firefox, or also with other packages?
20:35 <emersion> searching for wayland-client in the firefox tree, i don't ever see it looked up…
20:35 <emersion> https://searchfox.org/mozilla-central/search?q=wayland-client&path=
20:36 <emersion> wtf is this https://searchfox.org/mozilla-central/source/widget/gtk/mozwayland/mozwayland.h
20:37 <emersion> let me guess… dlopen shenanigans, and these are placeholders?
20:37 <vyivel> "Wayland compatibility header, it makes Firefox build with wayland-1.2 and Gtk+ 3.10."
20:37  * emersion regrets looking into this, can't unsee now
20:38 <jadahl> emersion: I suggest you to not look at very similar dlopen magic in sdl then
20:38 <vyivel> "Those strucures[sic] are just placeholders and will be replaced by real symbols from libwayland during run-time linking. We need to make them explicitly visible."
20:38 <emersion> ;_;
20:38 <vyivel> why firefox
20:39 <jadahl> because it might need to run on a system without libwayland-client.so
20:39 <emersion> … this isn't how you do software
20:39 <emersion> anyways
20:40 <emersion> maybe adding the missing wl_proxy_marshal_flags prototype in this file might help then
20:40 <emersion> maybe try this Ariadne?
20:40 <emersion> cc ikke as well
20:40 <bl4ckb0ne> why run time link? cant this be done properly?
20:40 <zubzub> does this mean chromium is the only real browser left now? :p
20:40 <vyivel> *a placeholder to https://searchfox.org/mozilla-central/source/widget/gtk/mozwayland/mozwayland.c, i think
20:41 <emersion> yeah that should make the linker happy
20:41 <emersion> hm
20:41 <emersion> but then how will it run on systems with libwayland 1.19
20:41 <emersion> yikes
20:42 <emersion> at this point, not my problem :P
20:46 <emersion> kennylevinsen: ^ a new item to add to your collection of firefox "fun facts"
20:47 <ikke> so const struct wl_interface wl_proxy_marshal_flags;?
20:48 <vyivel> isn't it a function?
20:48 <emersion> yeah, steal it from /usr/include/wayland-client.h
20:48 <emersion> well
20:48 <emersion> and like the rest, add a dummy function body
20:49 <emersion> like this https://paste.sr.ht/~emersion/b191d5216175c9ea5aeb9afe5e813fd79e654ecf
20:50 <ikke> lol@filename
```

  parent reply	other threads:[~2021-12-10 20:04 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-09 20:11 [PR PATCH] " ifreund
2021-12-10 19:04 ` ericonr
2021-12-10 19:05 ` ericonr
2021-12-10 19:16 ` ifreund
2021-12-10 20:04 ` ifreund
2021-12-10 20:04 ` ifreund [this message]
2021-12-11 15:01 ` vyivel
2021-12-11 15:30 ` ericonr
2021-12-17  9:37 ` novakne
2021-12-20  4:35 ` ericonr
2022-01-12 18:17 ` [PR PATCH] [Updated] " ifreund
2022-01-12 18:43 ` ifreund
2022-01-12 18:43 ` ifreund
2022-01-12 18:43 ` ifreund
2022-01-15 17:22 ` ifreund
2022-01-30 12:02 ` notthewave
2022-01-30 15:11 ` novakne
2022-02-09 16:36 ` notthewave
2022-02-19 23:06 ` KSPAtlas
2022-02-19 23:22 ` paper42
2022-02-24 18:18 ` motorto
2022-02-24 19:04 ` KSPAtlas
2022-02-24 21:46 ` tibequadorian
2022-02-25 23:33 ` [PR PATCH] [Merged]: " paper42
2022-01-30  8:10 [PR PATCH] " gbeliako
2022-01-30  8:47 ` novakne

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211210200438.UjNDeKmiJlSs_2WvuuCGEW_yms7Hax3VfQg9SeIgqxI@z \
    --to=ifreund@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).