Opened 6 years ago

Closed 6 years ago

#46748 closed enhancement (fixed)

update to port:vlc (Portfile, patches)

Reported by: RJVB (René Bertin) Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc: ctreleaven (Craig Treleaven)
Port: vlc

Description

I've addressed several small issues with port:vlc

  • moved an unnecessary dependency on port:pulseaudio to a variant (should maybe be a required variant for +x11?)
  • re-enabled building of the Qt4 UI plugin (which remains unstable)
  • removed a left-over reference to the Sparkle SUUpdater class from MainMenu.nib
  • added some configure options that are also set by VideoLAN's own build scripts for OS X

I have left the +jack variant for now, but that one probably really requires a much more recent jack version. When I enabled the variant, I could no longer switch between the available audio playback devices (and the "system default device" had disappeared).

Attachments (4)

no-sparkle.patch (8.0 KB) - added by RJVB (René Bertin) 6 years ago.
patch-vlc-qt4mac.diff (2.3 KB) - added by RJVB (René Bertin) 6 years ago.
patch-vlc-for-macports.diff (5.8 KB) - added by RJVB (René Bertin) 6 years ago.
portfile-vlc-2.1.5.diff (4.9 KB) - added by RJVB (René Bertin) 6 years ago.

Download all attachments as: .zip

Change History (6)

Changed 6 years ago by RJVB (René Bertin)

Attachment: no-sparkle.patch added

Changed 6 years ago by RJVB (René Bertin)

Attachment: patch-vlc-qt4mac.diff added

Changed 6 years ago by RJVB (René Bertin)

Attachment: patch-vlc-for-macports.diff added

comment:1 Changed 6 years ago by RJVB (René Bertin)

I added patch-vlc-for-macports.diff, which modifies the code in such a way that libvlc also finds the VLC plugins when linked to an application that doesn't live inside the VLC appbundle. I think I've succeeded in detecting this condition at runtime, without introducing regressions in the regular app bundle functioning.

vlc itself almost starts up correctly with these modifications, but only when the standard OS X interface is *not* loaded: for that code to work it must be executed from inside the app bundle, with a full path. That reminds me of requirements on older OS X versions, but I haven't yet been able to put my finger on the exact issue. It's quite possible though that the interface even loop is started on a background thread while loading the module (which would explain at least why I haven't been able to trace execution in a debugger.) For now I propose to circumvent the whole issue by replacing ${prefix}/bin/vlc with a script that execs ${applications_dir}/VLC.app/Contents/MacOS/VLC : that works (also when called as vlc-wrapper or cvlc).

Changed 6 years ago by RJVB (René Bertin)

Attachment: portfile-vlc-2.1.5.diff added

comment:2 Changed 6 years ago by mf2k (Frank Schima)

Resolution: fixed
Status: newclosed
Version: 2.3.3
Note: See TracTickets for help on using tickets.