Wednesday, July 31, 2024

Re: UPDATE: FFmpeg 4.4.5

On 2024/07/31 12:02, Lucas Gabriel Vuotto wrote:
> On Wed, Jul 31, 2024 at 12:05:36AM GMT, José Maldonado wrote:
> > Hi Brad! Two questions you might be able to answer:
> >
> > What downstream projects haven't switched to at least ffmpeg 6 yet?
> >
> > What OpenBSD projects do we have that depend on ffmpeg?
>
> # pkg_add sqlports
> $ show-reverse-deps graphics/ffmpeg
>
> Then you can check the downstream yourself. Take into consideration
> that ffmpeg might not be the only thing blocking the update of a
> downstream.

show-reverse-deps is quite 'greedy' and will pull in many ports that
only use ffmpeg as part of the chain for TEST_DEPENDS etc. It's good
for counting "how many ports will break - including tests - if this
port fails to build" but is usually overkill for "what might be affected
if API changes".

Another consideration is that sometimes the ffmpeg libraries are used
(usually in this case graphics/ffmpeg would be in LIB_DEPENDS) - those
are the ports where API changes will show up at build time. Other times
the command-line tools are used - the interface for these changes less
so things will usually be ok, but in the case they're not, that probably
won't show up until run time.

So here's a rough estimation that will be closer to the mark - it's too
hot here for sql, so let's do it the dirty way - "pkg_add portslist" and...

$ cut -d'|' -f2,8 /usr/local/share/ports-INDEX | grep -w graphics/ffmpeg | cut -d'|' -f1
audio/aqualung
audio/audacious/plugins
audio/audacity
audio/cantata
audio/chromaprint
audio/cmus,-ffmpeg
audio/deadbeef
audio/moc
audio/mpd
audio/musikcube
audio/pianobar
audio/potamus
audio/squeezelite
audio/xmms2
devel/kf5/kfilemetadata
devel/kf6/kfilemetadata
emulators/citra
emulators/dolphin
emulators/dolphin,-nogui
emulators/dosbox-x
emulators/es-de
emulators/fceux
emulators/mgba
emulators/mgba,-qt
emulators/ppsspp
emulators/retroarch
games/alephone/alephone
games/chiaki
games/corsixth
games/fs2open
games/moonlight-qt
games/openmw
games/renpy
games/stepmania
games/vcmi
graphics/arcan
graphics/blender
graphics/digikam
graphics/ffmpeg
graphics/ffmpegthumbnailer
graphics/opencv
graphics/openimageio
graphics/openscenegraph
multimedia/dvdstyler
multimedia/gstreamer1/plugins-libav
multimedia/handbrake
multimedia/lebiniou
multimedia/libde265,-tools
multimedia/minidlna
multimedia/mlt7
multimedia/motion
multimedia/motion,mysql
multimedia/motion,pgsql
multimedia/mpv
multimedia/xine-lib
net/guacamole/server
net/tdesktop
net/tg_owt
print/unpaper
telephony/baresip/baresip
telephony/iaxclient
telephony/iaxclient,-tcl
telephony/linphone/mediastreamer2
textproc/goldendict-ng
x11/freerdp
x11/kde-applications/ffmpegthumbs
x11/kde-plasma/kpipewire
x11/mplayer
x11/qt6/qtmultimedia
x11/qt6/qtwebengine
x11/tigervnc
x11/vlc
x11/wxSVG

For build testing, you can write that list of pkgpaths to a file, and
use a command like "cd /usr/ports; SUBDIRLIST=/path/to/file make [...]"
to build a whole load of ports in one run - check bsd.port.mk(5) and
ports(7) for more info - things like this are useful

SUBDIRLIST=... make fetch
SUBDIRLIST=... make prepare FETCH_PACKAGES=

Those SUBDIRLIST builds will stop partway if anything fails, you can
use 'REPORT_PROBLEM' or 'REPORT_PROBLEM_LOGFILE' to do something (or
nothing) when a build fails and move on to the next automatically
(handy if you want to leave it going and then review results later)

No comments:

Post a Comment