From nobody Sun Nov 21 02:39:41 2021 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 5F03A18A398C; Sun, 21 Nov 2021 02:39:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4HxZPB0TcBz4RMd; Sun, 21 Nov 2021 02:39:42 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id CFF8F274B3; Sun, 21 Nov 2021 02:39:41 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 1AL2dfUm018654; Sun, 21 Nov 2021 02:39:41 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 1AL2dfVR018653; Sun, 21 Nov 2021 02:39:41 GMT (envelope-from git) Date: Sun, 21 Nov 2021 02:39:41 GMT Message-Id: <202111210239.1AL2dfVR018653@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Jan Beich Subject: git: f0a3f8e66866 - main - www/firefox: unbreak PipeWire support after 8691df3a5142 List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jbeich X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f0a3f8e66866cb022f8405a4a2772836a1f06de7 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by jbeich: URL: https://cgit.FreeBSD.org/ports/commit/?id=f0a3f8e66866cb022f8405a4a2772836a1f06de7 commit f0a3f8e66866cb022f8405a4a2772836a1f06de7 Author: Jan Beich AuthorDate: 2021-11-20 23:41:56 +0000 Commit: Jan Beich CommitDate: 2021-11-21 02:39:17 +0000 www/firefox: unbreak PipeWire support after 8691df3a5142 libpipewire is used on demand via dlopen(). Currently, only enabled for WebRTC getUserMedia (screen capture) under Wayland. https://searchfox.org/mozilla-release/rev/e2929d8cad28/third_party/libwebrtc/webrtc/modules/desktop_capture/screen_capturer_linux.cc#28 PR: 259621 --- mail/thunderbird/Makefile | 2 +- mail/thunderbird/files/patch-pipewire_init | 73 ++++++++++++++++++++++++++++++ www/firefox-esr/Makefile | 2 +- www/firefox-esr/files/patch-pipewire_init | 73 ++++++++++++++++++++++++++++++ www/firefox/Makefile | 1 + www/firefox/files/patch-pipewire_init | 73 ++++++++++++++++++++++++++++++ 6 files changed, 222 insertions(+), 2 deletions(-) diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile index bae0618640e9..e210fc8c841f 100644 --- a/mail/thunderbird/Makefile +++ b/mail/thunderbird/Makefile @@ -2,7 +2,7 @@ PORTNAME= thunderbird DISTVERSION= 91.3.2 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= mail news net-im MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source diff --git a/mail/thunderbird/files/patch-pipewire_init b/mail/thunderbird/files/patch-pipewire_init new file mode 100644 index 000000000000..d7be2a6239f4 --- /dev/null +++ b/mail/thunderbird/files/patch-pipewire_init @@ -0,0 +1,73 @@ +Chase ABI from multimedia/pipewire/files/patch-src_pipewire_pipewire_init + +https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1819 + +--- third_party/libwebrtc/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.orig 2021-11-17 19:32:27 UTC ++++ third_party/libwebrtc/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc +@@ -253,7 +253,7 @@ void BaseCapturerPipeWire::InitPortal() { + } + + void BaseCapturerPipeWire::InitPipeWire() { +- pw_init(/*argc=*/nullptr, /*argc=*/nullptr); ++ pipewire_init(/*argc=*/nullptr, /*argc=*/nullptr); + + pw_main_loop_ = pw_thread_loop_new("pipewire-main-loop", nullptr); + pw_context_ = pw_context_new(pw_thread_loop_get_loop(pw_main_loop_), nullptr, 0); +--- third_party/pipewire/libpipewire/mozpipewire.cpp.orig 2021-11-17 19:33:46 UTC ++++ third_party/pipewire/libpipewire/mozpipewire.cpp +@@ -58,7 +58,7 @@ struct pw_context * (*pw_context_new_fn)(struct pw_loo + struct pw_properties *props, + size_t user_data_size); + static int (*pw_core_disconnect_fn)(struct pw_core *core); +-static void (*pw_init_fn)(int *argc, char **argv[]); ++static void (*pipewire_init_fn)(int *argc, char **argv[]); + static void (*pw_stream_add_listener_fn)(struct pw_stream *stream, + struct spa_hook *listener, + const struct pw_stream_events *events, +@@ -93,7 +93,7 @@ bool IsPwLibraryLoaded() { + IS_FUNC_LOADED(pw_context_destroy_fn) && + IS_FUNC_LOADED(pw_context_new_fn) && + IS_FUNC_LOADED(pw_core_disconnect_fn) && +- IS_FUNC_LOADED(pw_init_fn) && ++ IS_FUNC_LOADED(pipewire_init_fn) && + IS_FUNC_LOADED(pw_stream_add_listener_fn) && + IS_FUNC_LOADED(pw_stream_connect_fn) && + IS_FUNC_LOADED(pw_stream_dequeue_buffer_fn) && +@@ -127,7 +127,7 @@ bool LoadPWLibrary() { + GET_FUNC(pw_context_destroy, pwLib); + GET_FUNC(pw_context_new, pwLib); + GET_FUNC(pw_core_disconnect, pwLib); +- GET_FUNC(pw_init, pwLib); ++ GET_FUNC(pipewire_init, pwLib); + GET_FUNC(pw_stream_add_listener, pwLib); + GET_FUNC(pw_stream_connect, pwLib); + GET_FUNC(pw_stream_dequeue_buffer, pwLib); +@@ -198,12 +198,12 @@ pw_core_disconnect(struct pw_core *core) + } + + void +-pw_init(int *argc, char **argv[]) ++pipewire_init(int *argc, char **argv[]) + { + if (!LoadPWLibrary()) { + return; + } +- return pw_init_fn(argc, argv); ++ return pipewire_init_fn(argc, argv); + } + + void +--- third_party/pipewire/pipewire/pipewire.h.orig 2021-11-17 19:34:07 UTC ++++ third_party/pipewire/pipewire/pipewire.h +@@ -114,9 +114,9 @@ extern "C" { + * \brief PipeWire initialization and infrastructure functions + */ + void +-pw_init(int *argc, char **argv[]); ++pipewire_init(int *argc, char **argv[]); + +-void pw_deinit(void); ++void pipewire_deinit(void); + + bool + pw_debug_is_category_enabled(const char *name); diff --git a/www/firefox-esr/Makefile b/www/firefox-esr/Makefile index ad9339a46b0f..0c5115790d9c 100644 --- a/www/firefox-esr/Makefile +++ b/www/firefox-esr/Makefile @@ -2,7 +2,7 @@ PORTNAME= firefox DISTVERSION= 91.3.0 -PORTREVISION= 1 +PORTREVISION= 2 PORTEPOCH= 1 CATEGORIES= www MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \ diff --git a/www/firefox-esr/files/patch-pipewire_init b/www/firefox-esr/files/patch-pipewire_init new file mode 100644 index 000000000000..d7be2a6239f4 --- /dev/null +++ b/www/firefox-esr/files/patch-pipewire_init @@ -0,0 +1,73 @@ +Chase ABI from multimedia/pipewire/files/patch-src_pipewire_pipewire_init + +https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1819 + +--- third_party/libwebrtc/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.orig 2021-11-17 19:32:27 UTC ++++ third_party/libwebrtc/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc +@@ -253,7 +253,7 @@ void BaseCapturerPipeWire::InitPortal() { + } + + void BaseCapturerPipeWire::InitPipeWire() { +- pw_init(/*argc=*/nullptr, /*argc=*/nullptr); ++ pipewire_init(/*argc=*/nullptr, /*argc=*/nullptr); + + pw_main_loop_ = pw_thread_loop_new("pipewire-main-loop", nullptr); + pw_context_ = pw_context_new(pw_thread_loop_get_loop(pw_main_loop_), nullptr, 0); +--- third_party/pipewire/libpipewire/mozpipewire.cpp.orig 2021-11-17 19:33:46 UTC ++++ third_party/pipewire/libpipewire/mozpipewire.cpp +@@ -58,7 +58,7 @@ struct pw_context * (*pw_context_new_fn)(struct pw_loo + struct pw_properties *props, + size_t user_data_size); + static int (*pw_core_disconnect_fn)(struct pw_core *core); +-static void (*pw_init_fn)(int *argc, char **argv[]); ++static void (*pipewire_init_fn)(int *argc, char **argv[]); + static void (*pw_stream_add_listener_fn)(struct pw_stream *stream, + struct spa_hook *listener, + const struct pw_stream_events *events, +@@ -93,7 +93,7 @@ bool IsPwLibraryLoaded() { + IS_FUNC_LOADED(pw_context_destroy_fn) && + IS_FUNC_LOADED(pw_context_new_fn) && + IS_FUNC_LOADED(pw_core_disconnect_fn) && +- IS_FUNC_LOADED(pw_init_fn) && ++ IS_FUNC_LOADED(pipewire_init_fn) && + IS_FUNC_LOADED(pw_stream_add_listener_fn) && + IS_FUNC_LOADED(pw_stream_connect_fn) && + IS_FUNC_LOADED(pw_stream_dequeue_buffer_fn) && +@@ -127,7 +127,7 @@ bool LoadPWLibrary() { + GET_FUNC(pw_context_destroy, pwLib); + GET_FUNC(pw_context_new, pwLib); + GET_FUNC(pw_core_disconnect, pwLib); +- GET_FUNC(pw_init, pwLib); ++ GET_FUNC(pipewire_init, pwLib); + GET_FUNC(pw_stream_add_listener, pwLib); + GET_FUNC(pw_stream_connect, pwLib); + GET_FUNC(pw_stream_dequeue_buffer, pwLib); +@@ -198,12 +198,12 @@ pw_core_disconnect(struct pw_core *core) + } + + void +-pw_init(int *argc, char **argv[]) ++pipewire_init(int *argc, char **argv[]) + { + if (!LoadPWLibrary()) { + return; + } +- return pw_init_fn(argc, argv); ++ return pipewire_init_fn(argc, argv); + } + + void +--- third_party/pipewire/pipewire/pipewire.h.orig 2021-11-17 19:34:07 UTC ++++ third_party/pipewire/pipewire/pipewire.h +@@ -114,9 +114,9 @@ extern "C" { + * \brief PipeWire initialization and infrastructure functions + */ + void +-pw_init(int *argc, char **argv[]); ++pipewire_init(int *argc, char **argv[]); + +-void pw_deinit(void); ++void pipewire_deinit(void); + + bool + pw_debug_is_category_enabled(const char *name); diff --git a/www/firefox/Makefile b/www/firefox/Makefile index 0aa1d89ef5cd..42f6f5813416 100644 --- a/www/firefox/Makefile +++ b/www/firefox/Makefile @@ -2,6 +2,7 @@ PORTNAME= firefox DISTVERSION= 94.0.2 +PORTREVISION= 1 PORTEPOCH= 2 CATEGORIES= www MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ diff --git a/www/firefox/files/patch-pipewire_init b/www/firefox/files/patch-pipewire_init new file mode 100644 index 000000000000..d7be2a6239f4 --- /dev/null +++ b/www/firefox/files/patch-pipewire_init @@ -0,0 +1,73 @@ +Chase ABI from multimedia/pipewire/files/patch-src_pipewire_pipewire_init + +https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1819 + +--- third_party/libwebrtc/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc.orig 2021-11-17 19:32:27 UTC ++++ third_party/libwebrtc/webrtc/modules/desktop_capture/linux/base_capturer_pipewire.cc +@@ -253,7 +253,7 @@ void BaseCapturerPipeWire::InitPortal() { + } + + void BaseCapturerPipeWire::InitPipeWire() { +- pw_init(/*argc=*/nullptr, /*argc=*/nullptr); ++ pipewire_init(/*argc=*/nullptr, /*argc=*/nullptr); + + pw_main_loop_ = pw_thread_loop_new("pipewire-main-loop", nullptr); + pw_context_ = pw_context_new(pw_thread_loop_get_loop(pw_main_loop_), nullptr, 0); +--- third_party/pipewire/libpipewire/mozpipewire.cpp.orig 2021-11-17 19:33:46 UTC ++++ third_party/pipewire/libpipewire/mozpipewire.cpp +@@ -58,7 +58,7 @@ struct pw_context * (*pw_context_new_fn)(struct pw_loo + struct pw_properties *props, + size_t user_data_size); + static int (*pw_core_disconnect_fn)(struct pw_core *core); +-static void (*pw_init_fn)(int *argc, char **argv[]); ++static void (*pipewire_init_fn)(int *argc, char **argv[]); + static void (*pw_stream_add_listener_fn)(struct pw_stream *stream, + struct spa_hook *listener, + const struct pw_stream_events *events, +@@ -93,7 +93,7 @@ bool IsPwLibraryLoaded() { + IS_FUNC_LOADED(pw_context_destroy_fn) && + IS_FUNC_LOADED(pw_context_new_fn) && + IS_FUNC_LOADED(pw_core_disconnect_fn) && +- IS_FUNC_LOADED(pw_init_fn) && ++ IS_FUNC_LOADED(pipewire_init_fn) && + IS_FUNC_LOADED(pw_stream_add_listener_fn) && + IS_FUNC_LOADED(pw_stream_connect_fn) && + IS_FUNC_LOADED(pw_stream_dequeue_buffer_fn) && +@@ -127,7 +127,7 @@ bool LoadPWLibrary() { + GET_FUNC(pw_context_destroy, pwLib); + GET_FUNC(pw_context_new, pwLib); + GET_FUNC(pw_core_disconnect, pwLib); +- GET_FUNC(pw_init, pwLib); ++ GET_FUNC(pipewire_init, pwLib); + GET_FUNC(pw_stream_add_listener, pwLib); + GET_FUNC(pw_stream_connect, pwLib); + GET_FUNC(pw_stream_dequeue_buffer, pwLib); +@@ -198,12 +198,12 @@ pw_core_disconnect(struct pw_core *core) + } + + void +-pw_init(int *argc, char **argv[]) ++pipewire_init(int *argc, char **argv[]) + { + if (!LoadPWLibrary()) { + return; + } +- return pw_init_fn(argc, argv); ++ return pipewire_init_fn(argc, argv); + } + + void +--- third_party/pipewire/pipewire/pipewire.h.orig 2021-11-17 19:34:07 UTC ++++ third_party/pipewire/pipewire/pipewire.h +@@ -114,9 +114,9 @@ extern "C" { + * \brief PipeWire initialization and infrastructure functions + */ + void +-pw_init(int *argc, char **argv[]); ++pipewire_init(int *argc, char **argv[]); + +-void pw_deinit(void); ++void pipewire_deinit(void); + + bool + pw_debug_is_category_enabled(const char *name);