Opened 9 years ago

Closed 9 years ago

#47430 closed defect (fixed)

webkit-gtk, webkit-gtk3 @2.4.8 +video ambiguous reference error: Build fails

Reported by: p-bro Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: jeremyhu (Jeremy Huddleston Sequoia), posita (Matt Bogosian), hapaguy (Brian Kurt Fujikawa), dershow, macports@…
Port: webkit-gtk webkit-gtk3

Description

webkit-gtk @2.4.8 +quartz +video fails to build on a new install of Yosemite 10.10.3 (iMac), XCode Version 6.3 (6D570). This failure happened first as part of a restore_ports.tcl run, where I used restore_ports.tcl to restore the port list from my previous machine (where webkit_gtk was installed with the same options when it was still running 10.10.2). The logs were obtained after cleaning and attempting to install the package manually.

The error seems to be an ambiguous reference in Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp (but do have a look at the attached log).

Attachments (2)

webkit.log.bz2 (52.3 KB) - added by p-bro 9 years ago.
Output from "sudo port -d install webkit-gtk +quartz +video"
patch-webkit-gtk-gmutexlocker.diff (8.9 KB) - added by dbevans (David B. Evans) 9 years ago.
Tentative fix for GMutexLocker issue

Download all attachments as: .zip

Change History (15)

Changed 9 years ago by p-bro

Attachment: webkit.log.bz2 added

Output from "sudo port -d install webkit-gtk +quartz +video"

comment:1 Changed 9 years ago by mf2k (Frank Schima)

Cc: jeremyhu@… removed
Owner: changed from macports-tickets@… to jeremyhu@…

comment:2 Changed 9 years ago by posita (Matt Bogosian)

Cc: mtb19@… added

Cc Me!

comment:3 Changed 9 years ago by juanantonio.moya@…

Similar problem here (Yosemite), I'm blocked...

Source/WebCore/platform/graphics/gstreamer/VideoSinkGStreamer.cpp:333:5: error: reference to 'GMutexLocker' is ambiguous
    GMutexLocker lock(priv->bufferMutex);
Last edited 9 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:4 Changed 9 years ago by dbevans (David B. Evans)

The problem is not specific to Yosemite or +quartz. The ambiguity arises from the update to glib2 2.44.0 which introduced a new GMutexLocker API that conflicts with webkit's WTF::GMutexLocker. Looking at backporting a recent upstream patch that handles the problem by deferring to glib2.

comment:5 Changed 9 years ago by hapaguy (Brian Kurt Fujikawa)

Cc: brian.fujikawa@… added

Cc Me!

comment:6 Changed 9 years ago by dershow

Cc: dersh@… added

Cc Me!

comment:7 Changed 9 years ago by dbevans (David B. Evans)

Has duplicate ticket #47510.

comment:8 Changed 9 years ago by dbevans (David B. Evans)

After playing with this off and on most of the day, I have a candidate fix but testing is slow due to the time it takes to rebuild this package in all its versions. The upstream patch was not much help other than to illustrate the nature of the problem due to the significant code refactoring between 2.4.8 and the current upstream 2.8.1.

In the meantime, I have verified that this problem is specific to glib2 2.44.0 and the +video variant so if you need a work around in the meantime, either revert to an earlier glib2 version or build without the +video variant. In either case you need to rebuild due to the recent icu update.

Hope to have a definite fix later this evening. If not, will probably go with disabling +video by default until a better fix can be perfected.

Changed 9 years ago by dbevans (David B. Evans)

Tentative fix for GMutexLocker issue

comment:9 Changed 9 years ago by dbevans (David B. Evans)

Attached is my current test fix for this problem. Builds OK for me on Mavericks, haven't tested on Yellowstone or +quartz as yet. Please give it a try in your favorite configuration (either webkit-gtk or webkit-gtk3) and let me know if you run into any problems.

comment:10 Changed 9 years ago by macports@…

Cc: macports@… added

Cc Me!

comment:11 Changed 9 years ago by dbevans (David B. Evans)

Cc: jeremyhu@… added; devans@… removed
Owner: changed from jeremyhu@… to devans@…
Status: newassigned
Summary: webkit-gtk @2.4.8 +quartz +video ambiguous reference error: Build failswebkit-gtk, webkit-gtk3 @2.4.8 +video ambiguous reference error: Build fails

comment:12 Changed 9 years ago by dbevans (David B. Evans)

Port: webkit-gtk3 added

Testing successfully completed on Yosemite (including Xcode 6.3) and with +quartz. Patch committed in r135271.

comment:13 Changed 9 years ago by dbevans (David B. Evans)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.