Hi, This diff is a team effort between bket@ and myself to add a QT5 FLAVOR to audacious.
I've been using it the last few days, and it seems to work fine. Looks like this: https://theunixzoo.co.uk/random/audacious1.png Note that sadly we cannot MULTI_PACKAGE it [0], hence FLAVORs. Comments / OK? [0] https://redmine.audacious-media-player.org/issues/1071 Index: meta/audacious/Makefile =================================================================== RCS file: /cvs/ports/meta/audacious/Makefile,v retrieving revision 1.6 diff -u -p -r1.6 Makefile --- meta/audacious/Makefile 3 Feb 2021 21:44:37 -0000 1.6 +++ meta/audacious/Makefile 15 Feb 2021 16:43:00 -0000 @@ -7,7 +7,15 @@ PKGNAME = audacious-${VERSION} MAINTAINER = Bjorn Ketelaars <b...@openbsd.org> -RUN_DEPENDS= audio/audacious/player>=${VERSION} \ - audio/audacious/plugins>=${VERSION} +FLAVORS = qt5 +FLAVOR ?= + +.if ${FLAVOR:Mqt5} +RUN_DEPENDS = audio/audacious/player,qt5>=${VERSION} \ + audio/audacious/plugins,qt5>=${VERSION} +.else +RUN_DEPENDS = audacious-player->=${VERSION}-!qt5:audio/audacious/player \ + audacious-plugins->=${VERSION}-!qt5:audio/audacious/plugins +.endif .include <bsd.port.mk> Index: audio/audacious/Makefile =================================================================== RCS file: /cvs/ports/audio/audacious/Makefile,v retrieving revision 1.64 diff -u -p -r1.64 Makefile --- audio/audacious/Makefile 15 Apr 2020 15:50:15 -0000 1.64 +++ audio/audacious/Makefile 15 Feb 2021 16:27:02 -0000 @@ -2,6 +2,8 @@ SUBDIR = SUBDIR += player + SUBDIR += player,qt5 SUBDIR += plugins + SUBDIR += plugins,qt5 .include <bsd.port.subdir.mk> Index: audio/audacious/Makefile.inc =================================================================== RCS file: /cvs/ports/audio/audacious/Makefile.inc,v retrieving revision 1.6 diff -u -p -r1.6 Makefile.inc --- audio/audacious/Makefile.inc 3 Feb 2021 21:44:37 -0000 1.6 +++ audio/audacious/Makefile.inc 15 Feb 2021 16:27:02 -0000 @@ -17,12 +17,24 @@ COMPILER = base-clang ports-gcc FIX_EXTRACT_PERMISSIONS = Yes BUILD_DEPENDS += devel/gettext,-tools + +# Although at fist glance it may appear that we could MULTI_PACKAGE audacious, +# actually we can't. Some core libraries will link qt5 if we build with both +# toolkits. So we use FLAVORS instead. +# https://redmine.audacious-media-player.org/issues/1071 + +.if ${FLAVOR:Mqt5} +MODULES += x11/qt5 +CONFIGURE_ARGS += --disable-gtk \ + --enable-qt +.else LIB_DEPENDS += x11/gtk+2 +CONFIGURE_ARGS += --disable-qt \ + --enable-gtk +.endif USE_GMAKE = Yes CONFIGURE_STYLE = gnu -CONFIGURE_ARGS += --disable-qt \ - --enable-gtk NO_TEST = Yes Index: audio/audacious/player/Makefile =================================================================== RCS file: /cvs/ports/audio/audacious/player/Makefile,v retrieving revision 1.4 diff -u -p -r1.4 Makefile --- audio/audacious/player/Makefile 3 Feb 2021 21:44:37 -0000 1.4 +++ audio/audacious/player/Makefile 15 Feb 2021 16:27:02 -0000 @@ -5,24 +5,38 @@ COMMENT = graphical audio player which DISTNAME = audacious-${VERSION} PKGNAME = audacious-player-${VERSION} +FLAVORS = qt5 +FLAVOR ?= + SHARED_LIBS += audcore 5.2 # 5.3 SHARED_LIBS += audgui 4.1 # 5.1 SHARED_LIBS += audtag 3.0 # 3.0 +SHARED_LIBS += audqt 0.0 # 2.3 # BSD PERMIT_PACKAGE = Yes -WANTLIB += ${COMPILER_LIBCXX} X11 Xcomposite Xcursor Xdamage Xext -WANTLIB += Xfixes Xi Xinerama Xrandr Xrender atk-1.0 c cairo fontconfig -WANTLIB += freetype gdk-x11-2.0 gdk_pixbuf-2.0 gio-2.0 glib-2.0 -WANTLIB += gmodule-2.0 gobject-2.0 gtk-x11-2.0 harfbuzz iconv -WANTLIB += intl m pango-1.0 pangocairo-1.0 pangoft2-1.0 z +WANTLIB += ${COMPILER_LIBCXX} c gio-2.0 glib-2.0 gmodule-2.0 gobject-2.0 +WANTLIB += iconv intl m + +.if ${FLAVOR:Mqt5} +WANTLIB += Qt5Core Qt5Gui Qt5Widgets +.else +WANTLIB += X11 Xcomposite Xcursor Xdamage Xext Xfixes Xi Xinerama +WANTLIB += Xrandr Xrender atk-1.0 cairo fontconfig freetype gdk-x11-2.0 +WANTLIB += gdk_pixbuf-2.0 gtk-x11-2.0 harfbuzz pango-1.0 pangocairo-1.0 +WANTLIB += pangoft2-1.0 z +.endif + +RUN_DEPENDS = devel/desktop-file-utils -RUN_DEPENDS = devel/desktop-file-utils \ - x11/gtk+3,-guic +.if !${FLAVOR:Mqt5} +RUN_DEPENDS += x11/gtk+3,-guic +.endif MAKE_ENV = LIBaudcore_VERSION=${LIBaudcore_VERSION} \ LIBaudgui_VERSION=${LIBaudgui_VERSION} \ - LIBaudtag_VERSION=${LIBaudtag_VERSION} + LIBaudtag_VERSION=${LIBaudtag_VERSION} \ + LIBaudqt_VERSION=${LIBaudqt_VERSION} .include <bsd.port.mk> Index: audio/audacious/player/patches/patch-src_libaudqt_Makefile =================================================================== RCS file: audio/audacious/player/patches/patch-src_libaudqt_Makefile diff -N audio/audacious/player/patches/patch-src_libaudqt_Makefile --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ audio/audacious/player/patches/patch-src_libaudqt_Makefile 15 Feb 2021 16:27:02 -0000 @@ -0,0 +1,12 @@ +$OpenBSD$ + +Index: src/libaudqt/Makefile +--- src/libaudqt/Makefile.orig ++++ src/libaudqt/Makefile +@@ -1,4 +1,5 @@ +-SHARED_LIB = ${LIB_PREFIX}audqt${LIB_SUFFIX} ++SHARED_LIB = ${LIB_PREFIX}audqt.so.${LIBaudqt_VERSION} ++ + LIB_MAJOR = 2 + LIB_MINOR = 3 + Index: audio/audacious/player/pkg/PFRAG.no-qt5 =================================================================== RCS file: audio/audacious/player/pkg/PFRAG.no-qt5 diff -N audio/audacious/player/pkg/PFRAG.no-qt5 --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ audio/audacious/player/pkg/PFRAG.no-qt5 15 Feb 2021 16:27:02 -0000 @@ -0,0 +1,7 @@ +@comment $OpenBSD: PLIST,v 1.2 2021/02/03 21:44:37 edd Exp $ +include/libaudgui/ +include/libaudgui/libaudgui-gtk.h +include/libaudgui/libaudgui.h +include/libaudgui/list.h +include/libaudgui/menu.h +@lib lib/libaudgui.so.${LIBaudgui_VERSION} Index: audio/audacious/player/pkg/PFRAG.qt5 =================================================================== RCS file: audio/audacious/player/pkg/PFRAG.qt5 diff -N audio/audacious/player/pkg/PFRAG.qt5 --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ audio/audacious/player/pkg/PFRAG.qt5 15 Feb 2021 16:27:02 -0000 @@ -0,0 +1,11 @@ +@comment $OpenBSD: PFRAG.qt5,v$ +include/libaudqt/ +include/libaudqt/colorbutton.h +include/libaudqt/dock.h +include/libaudqt/export.h +include/libaudqt/iface.h +include/libaudqt/info-widget.h +include/libaudqt/libaudqt.h +include/libaudqt/menu.h +include/libaudqt/treeview.h +@lib lib/libaudqt.so.${LIBaudqt_VERSION} Index: audio/audacious/player/pkg/PLIST =================================================================== RCS file: /cvs/ports/audio/audacious/player/pkg/PLIST,v retrieving revision 1.2 diff -u -p -r1.2 PLIST --- audio/audacious/player/pkg/PLIST 3 Feb 2021 21:44:37 -0000 1.2 +++ audio/audacious/player/pkg/PLIST 15 Feb 2021 16:27:02 -0000 @@ -1,5 +1,7 @@ @comment $OpenBSD: PLIST,v 1.2 2021/02/03 21:44:37 edd Exp $ @conflict audacious-<4.0 +%%qt5%% +!%%qt5%% @bin bin/audacious @bin bin/audtool include/audacious/ @@ -34,13 +36,7 @@ include/libaudcore/tuple.h include/libaudcore/vfs.h include/libaudcore/vfs_async.h include/libaudcore/visualizer.h -include/libaudgui/ -include/libaudgui/libaudgui-gtk.h -include/libaudgui/libaudgui.h -include/libaudgui/list.h -include/libaudgui/menu.h @lib lib/libaudcore.so.${LIBaudcore_VERSION} -@lib lib/libaudgui.so.${LIBaudgui_VERSION} @lib lib/libaudtag.so.${LIBaudtag_VERSION} lib/pkgconfig/audacious.pc @man man/man1/audacious.1 Index: audio/audacious/plugins/Makefile =================================================================== RCS file: /cvs/ports/audio/audacious/plugins/Makefile,v retrieving revision 1.6 diff -u -p -r1.6 Makefile --- audio/audacious/plugins/Makefile 3 Feb 2021 21:44:37 -0000 1.6 +++ audio/audacious/plugins/Makefile 15 Feb 2021 16:27:02 -0000 @@ -4,23 +4,29 @@ COMMENT = input and output plugins for DISTNAME = audacious-plugins-${VERSION} +FLAVORS = qt5 +FLAVOR ?= + # BSD / GPL PERMIT_PACKAGE = Yes -WANTLIB += ${COMPILER_LIBCXX} FLAC GL X11 Xcomposite Xcursor Xdamage -WANTLIB += Xext Xfixes Xi Xinerama Xrandr Xrender atk-1.0 audcore audgui -WANTLIB += audtag avcodec avformat avutil cairo cddb cdio cdio_cdda -WANTLIB += cue curl faad fontconfig freetype gdk-x11-2.0 gdk_pixbuf-2.0 -WANTLIB += gio-2.0 glib-2.0 gmodule-2.0 gobject-2.0 gtk-x11-2.0 -WANTLIB += harfbuzz iconv intl m mms modplug mp3lame mpg123 neon -WANTLIB += notify ogg pango-1.0 pangocairo-1.0 pangoft2-1.0 samplerate -WANTLIB += sndfile sndio soxr vorbis vorbisenc vorbisfile wavpack -WANTLIB += xml2 z +WANTLIB += ${COMPILER_LIBCXX} FLAC audcore audtag avcodec avformat avutil +WANTLIB += cddb cdio cdio_cdda cue curl faad gdk_pixbuf-2.0 gio-2.0 glib-2.0 +WANTLIB += gobject-2.0 iconv intl m mms modplug mp3lame mpg123 neon notify +WANTLIB += ogg samplerate sndfile sndio soxr vorbis vorbisenc vorbisfile +WANTLIB += wavpack xml2 z + +.if ${FLAVOR:Mqt5} +WANTLIB += GL Qt5Core Qt5Gui Qt5OpenGL Qt5Widgets audqt +.else +WANTLIB += GL X11 Xcomposite Xcursor Xdamage Xext Xfixes Xi Xinerama Xrandr +WANTLIB += Xrender atk-1.0 audgui cairo fontconfig freetype gdk-x11-2.0 +WANTLIB += gmodule-2.0 gtk-x11-2.0 harfbuzz pango-1.0 pangocairo-1.0 +WANTLIB += pangoft2-1.0 +.endif -BUILD_DEPENDS = audio/audacious/player>=${VERSION} -RUN_DEPENDS = audio/audacious/player>=${VERSION} # needed for the gio plugin -RUN_DEPENDS += x11/gnome/gvfs +RUN_DEPENDS = x11/gnome/gvfs LIB_DEPENDS = audio/faad>=2.7 \ audio/flac \ audio/lame \ @@ -41,6 +47,12 @@ LIB_DEPENDS = audio/faad>=2.7 \ net/neon \ textproc/libxml +.if ${FLAVOR:Mqt5} +LIB_DEPENDS += audacious-player->=${VERSION}-qt5:audio/audacious/player,qt5 +.else +LIB_DEPENDS += audacious-player->=${VERSION}-!qt5:audio/audacious/player +.endif + CONFIGURE_ARGS = --disable-alsa \ --disable-amidiplug \ --disable-bs2b \ @@ -48,9 +60,10 @@ CONFIGURE_ARGS = --disable-alsa \ --disable-lirc \ --disable-oss4 \ --disable-pulse \ + --disable-qtaudio \ --disable-sdlout \ --disable-sid -CONFIGURE_ENV = CPPFLAGS="-I${LOCALBASE}/include" \ +CONFIGURE_ENV = CPPFLAGS="-I${X11BASE}/include -I${LOCALBASE}/include" \ LDFLAGS="-L${X11BASE}/lib -L${LOCALBASE}/lib" .include <bsd.port.mk> Index: audio/audacious/plugins/pkg/PFRAG.no-qt5 =================================================================== RCS file: audio/audacious/plugins/pkg/PFRAG.no-qt5 diff -N audio/audacious/plugins/pkg/PFRAG.no-qt5 --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ audio/audacious/plugins/pkg/PFRAG.no-qt5 15 Feb 2021 16:27:02 -0000 @@ -0,0 +1,14 @@ +@comment $OpenBSD: PLIST,v 1.2 2021/02/03 21:44:38 edd Exp $ +@so lib/audacious/Effect/ladspa.so +@so lib/audacious/General/alarm.so +@so lib/audacious/General/albumart.so +@so lib/audacious/General/aosd.so +@so lib/audacious/General/gtkui.so +@so lib/audacious/General/hotkey.so +@so lib/audacious/General/playlist-manager.so +@so lib/audacious/General/search-tool.so +@so lib/audacious/General/skins.so +@so lib/audacious/General/statusicon.so +@so lib/audacious/Visualization/blur_scope.so +@so lib/audacious/Visualization/cairo-spectrum.so +@so lib/audacious/Visualization/gl-spectrum.so Index: audio/audacious/plugins/pkg/PFRAG.qt5 =================================================================== RCS file: audio/audacious/plugins/pkg/PFRAG.qt5 diff -N audio/audacious/plugins/pkg/PFRAG.qt5 --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ audio/audacious/plugins/pkg/PFRAG.qt5 15 Feb 2021 16:27:02 -0000 @@ -0,0 +1,13 @@ +@comment $OpenBSD: PFRAG.qt5,v$ +@so lib/audacious/General/albumart-qt.so +@so lib/audacious/General/lyricwiki-qt.so +@so lib/audacious/General/playlist-manager-qt.so +@so lib/audacious/General/qtui.so +@so lib/audacious/General/search-tool-qt.so +@so lib/audacious/General/skins-qt.so +@so lib/audacious/General/song-info-qt.so +@so lib/audacious/General/statusicon-qt.so +@so lib/audacious/Visualization/blur_scope-qt.so +@so lib/audacious/Visualization/gl-spectrum-qt.so +@so lib/audacious/Visualization/qt-spectrum.so +@so lib/audacious/Visualization/vumeter-qt.so Index: audio/audacious/plugins/pkg/PLIST =================================================================== RCS file: /cvs/ports/audio/audacious/plugins/pkg/PLIST,v retrieving revision 1.2 diff -u -p -r1.2 PLIST --- audio/audacious/plugins/pkg/PLIST 3 Feb 2021 21:44:38 -0000 1.2 +++ audio/audacious/plugins/pkg/PLIST 15 Feb 2021 16:27:02 -0000 @@ -1,6 +1,8 @@ @comment $OpenBSD: PLIST,v 1.2 2021/02/03 21:44:38 edd Exp $ @pkgpath audio/audacious-plugins,-main @pkgpath audio/audacious-plugins +%%qt5%% +!%%qt5%% lib/audacious/ lib/audacious/Container/ @so lib/audacious/Container/asx.so @@ -15,7 +17,6 @@ lib/audacious/Effect/ @so lib/audacious/Effect/crossfade.so @so lib/audacious/Effect/crystalizer.so @so lib/audacious/Effect/echo.so -@so lib/audacious/Effect/ladspa.so @so lib/audacious/Effect/mixer.so @so lib/audacious/Effect/resample.so @so lib/audacious/Effect/silence-removal.so @@ -24,21 +25,12 @@ lib/audacious/Effect/ @so lib/audacious/Effect/stereo.so @so lib/audacious/Effect/voice_removal.so lib/audacious/General/ -@so lib/audacious/General/alarm.so -@so lib/audacious/General/albumart.so -@so lib/audacious/General/aosd.so @so lib/audacious/General/cd-menu-items.so @so lib/audacious/General/delete-files.so -@so lib/audacious/General/gtkui.so -@so lib/audacious/General/hotkey.so @so lib/audacious/General/mpris2.so @so lib/audacious/General/notify.so -@so lib/audacious/General/playlist-manager.so @so lib/audacious/General/scrobbler.so -@so lib/audacious/General/search-tool.so -@so lib/audacious/General/skins.so @so lib/audacious/General/song_change.so -@so lib/audacious/General/statusicon.so lib/audacious/Input/ @so lib/audacious/Input/aac-raw.so @so lib/audacious/Input/cdaudio-ng.so @@ -63,9 +55,6 @@ lib/audacious/Transport/ @so lib/audacious/Transport/mms.so @so lib/audacious/Transport/neon.so lib/audacious/Visualization/ -@so lib/audacious/Visualization/blur_scope.so -@so lib/audacious/Visualization/cairo-spectrum.so -@so lib/audacious/Visualization/gl-spectrum.so share/audacious/Skins/ share/audacious/Skins/Classic/ share/audacious/Skins/Classic/balance.png -- Best Regards Edd Barrett http://www.theunixzoo.co.uk