libwebrtc update to 112 broke the build on OpenBSD
Categories
(Core :: WebRTC, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr102 | --- | unaffected |
firefox114 | --- | unaffected |
firefox115 | --- | unaffected |
firefox116 | --- | fixed |
People
(Reporter: gaston, Assigned: ng)
References
(Regression)
Details
(Keywords: regression)
Attachments
(1 file)
build error:
83:56.08 /build/buildslave-amd64/mozilla-central-amd64/build/third_party/libwebrtc/modules/video_capture/linux/device_info_linux.cc:53:16: error: no member named 'allow_v4l2' in 'webrtc::VideoCaptureOptions'
83:56.08 if (options->allow_v4l2())
83:56.08 ~~~~~~~ ^
83:56.22 In file included from Unified_cpp_ure_internal_impl_gn0.cpp:20:
83:56.23 /build/buildslave-amd64/mozilla-central-amd64/build/third_party/libwebrtc/modules/video_capture/linux/video_capture_linux.cc:67:16: error: no member named 'allow_v4l2' in 'webrtc::VideoCaptureOptions'
83:56.23 if (options->allow_v4l2()) {
83:56.23 ~~~~~~~ ^
83:56.29 third_party/libwebrtc/modules/video_coding/codecs/av1/av1_svc_config_gn
full log at http://buildbot.rhaalovely.net/nine/#/builders/3/builds/1721/steps/8/logs/stdio
that's with a clean objdir to make sure there werent old headers lying around.
Were the instructions from bug #1749604 followed ? im not sure its a build system regression...
should the #ifdef WEBRTC_LINUX in https://searchfox.org/mozilla-central/source/third_party/libwebrtc/modules/video_capture/video_capture_options.h#55 be amended to include WEBRTC_BSD too ? i dont remember how the last similar breakage was solved..
i see mozilla patches are kept 'external' per https://searchfox.org/mozilla-central/source/third_party/libwebrtc/moz-patch-stack/0014.patch, is it still the case ?
Comment 1•1 year ago
|
||
Set release status flags based on info from the regressing bug 1833237
:ng, since you are the author of the regressor, bug 1833237, could you take a look? Also, could you set the severity field?
For more information, please visit BugBot documentation.
Reporter | ||
Comment 2•1 year ago
|
||
the below patch fixed m-c for me, cf http://buildbot.rhaalovely.net/nine/#/builders/3/builds/1722
diff --git a/third_party/libwebrtc/modules/video_capture/video_capture_options.h b/third_party/libwebrtc/modules/video_capture/video_capture_options.h
--- a/third_party/libwebrtc/modules/video_capture/video_capture_options.h
+++ b/third_party/libwebrtc/modules/video_capture/video_capture_options.h
@@ -47,29 +47,29 @@ class RTC_EXPORT VideoCaptureOptions {
virtual void OnInitialized(Status status) = 0;
protected:
virtual ~Callback() = default;
};
void Init(Callback* callback);
-#if defined(WEBRTC_LINUX)
+#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
bool allow_v4l2() const { return allow_v4l2_; }
void set_allow_v4l2(bool allow) { allow_v4l2_ = allow; }
#endif
#if defined(WEBRTC_USE_PIPEWIRE)
bool allow_pipewire() const { return allow_pipewire_; }
void set_allow_pipewire(bool allow) { allow_pipewire_ = allow; }
rtc::scoped_refptr<videocapturemodule::PipeWireSession> pipewire_session();
#endif
private:
-#if defined(WEBRTC_LINUX)
+#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
bool allow_v4l2_ = false;
#endif
#if defined(WEBRTC_USE_PIPEWIRE)
bool allow_pipewire_ = false;
rtc::scoped_refptr<videocapturemodule::PipeWireSession> pipewire_session_;
#endif
};
i wont have much spare time to work on pushing that to phabricator in the coming days (on holidays mostly offline) so if its deemed correct don't hesitate to push it on my behalf - thanks !
Assignee | ||
Comment 3•1 year ago
|
||
Landry, thanks for the patch, and have a great holiday.
Assignee | ||
Updated•1 year ago
|
Reporter | ||
Comment 4•1 year ago
|
||
hi :ng, can you push this simple patch above ? i still have it on my local buildbot, not in a hurry but if possible it'd be nice to have it before the next m-c->m-b merge.
thanks a lot !
Reporter | ||
Comment 5•1 year ago
|
||
patch didnt apply straight away anymore after bug 1724900:
diff --git a/third_party/libwebrtc/modules/video_capture/video_capture_options.h b/third_party/libwebrtc/modules/video_capture/video_capture_options.h
--- a/third_party/libwebrtc/modules/video_capture/video_capture_options.h
+++ b/third_party/libwebrtc/modules/video_capture/video_capture_options.h
@@ -46,30 +46,30 @@ class RTC_EXPORT VideoCaptureOptions {
virtual void OnInitialized(Status status) = 0;
protected:
virtual ~Callback() = default;
};
void Init(Callback* callback);
-#if defined(WEBRTC_LINUX)
+#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
bool allow_v4l2() const { return allow_v4l2_; }
void set_allow_v4l2(bool allow) { allow_v4l2_ = allow; }
#endif
#if defined(WEBRTC_USE_PIPEWIRE)
bool allow_pipewire() const { return allow_pipewire_; }
void set_allow_pipewire(bool allow) { allow_pipewire_ = allow; }
void set_pipewire_fd(int fd) { pipewire_fd_ = fd; }
rtc::scoped_refptr<videocapturemodule::PipeWireSession> pipewire_session();
#endif
private:
-#if defined(WEBRTC_LINUX)
+#if defined(WEBRTC_LINUX) || defined(WEBRTC_BSD)
bool allow_v4l2_ = false;
#endif
#if defined(WEBRTC_USE_PIPEWIRE)
bool allow_pipewire_ = false;
int pipewire_fd_ = -1;
rtc::scoped_refptr<videocapturemodule::PipeWireSession> pipewire_session_;
#endif
};
will try to find the right magic incantations to use moz-phab, but .. urgh.
Reporter | ||
Comment 6•1 year ago
|
||
i now have a new failure during linking, we don't have pipewire nor wayland on OpenBSD..
107:38.49 ld.lld: error: undefined hidden symbol: webrtc::CameraPortal::CameraPortal(webrtc::CameraPortal::PortalNotifier*)
can that be a regression of bug 1724900 ? sorry cant chase too many tracks at the same time while on holidays...
Reporter | ||
Comment 7•1 year ago
|
||
filed bug 1839234 for the above
Reporter | ||
Comment 8•1 year ago
|
||
:ng, from my vague understanding, a new file should be added to third_party/libwebrtc/moz-patch-stack/
for the fix to stick across webrtc upgrades ?
Assignee | ||
Comment 9•1 year ago
|
||
:gaston, yes. I'll get this pushed and talk to :jib who is doing the current merge about getting this added to the stack.
Assignee | ||
Comment 10•1 year ago
|
||
Comment 11•1 year ago
|
||
Assignee | ||
Comment 12•1 year ago
|
||
:gaston, this should be automatically added to the stack when we do our next rebase from mozilla-central to the merge branch. I talked to :mjf, and we are no longer following the procedure in Bug 1749604 .
Reporter | ||
Comment 13•1 year ago
|
||
(In reply to Nico Grunbaum [:ng, @chew:mozilla.org] from comment #9)
:gaston, yes. I'll get this pushed and talk to :jib who is doing the current merge about getting this added to the stack.
great, thanks a lot ! in which bug is the next merge so that i can follow up there if needed ?
Assignee | ||
Comment 14•1 year ago
|
||
Thank you for keeping this working. The next merge is Bug 1839451 . There will be periodic pushes to https://hg.mozilla.org/projects/elm as progress is made.
Comment 15•1 year ago
|
||
bugherder |
Description
•