Wednesday, April 08, 2020

Re: UPDATE audio/audacious-4.0.1

diff --git Makefile Makefile
index 671b55c1776..92db7f331cf 100644
--- Makefile
+++ Makefile
@@ -10,7 +10,6 @@
SUBDIR += ascd
SUBDIR += aucatctl
SUBDIR += audacious
- SUBDIR += audacious-plugins
SUBDIR += audacity
SUBDIR += audiality2
SUBDIR += beets
diff --git audacious-plugins/Makefile audacious-plugins/Makefile
deleted file mode 100644
index fcc13cb46e2..00000000000
--- audacious-plugins/Makefile
+++ /dev/null
@@ -1,77 +0,0 @@
-# $OpenBSD: Makefile,v 1.81 2020/02/02 16:06:13 bket Exp $
-
-COMMENT = input and output plugins for Audacious
-
-V = 3.10.1
-DISTNAME = audacious-plugins-$V
-
-CATEGORIES = audio multimedia
-
-HOMEPAGE = https://audacious-media-player.org/
-
-# BSD / GPL
-PERMIT_PACKAGE = Yes
-
-WANTLIB += ${COMPILER_LIBCXX} FLAC GL X11 Xcomposite Xcursor Xdamage
-WANTLIB += Xext Xfixes Xi Xinerama Xrandr Xrender atk-1.0 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
-
-MASTER_SITES = https://distfiles.audacious-media-player.org/
-
-EXTRACT_SUFX = .tar.bz2
-
-COMPILER = base-clang ports-gcc
-
-BUILD_DEPENDS = audio/audacious>=${V} \
- devel/gettext,-tools
-
-RUN_DEPENDS = audio/audacious>=${V}
-# needed for the gio plugin
-RUN_DEPENDS += x11/gnome/gvfs
-
-LIB_DEPENDS = audio/faad>=2.7 \
- audio/flac \
- audio/lame \
- audio/libcdio \
- audio/libcdio-paranoia \
- audio/libcue \
- audio/libmodplug \
- audio/libsamplerate \
- audio/libsndfile \
- audio/libsoxr \
- audio/libvorbis \
- audio/mpg123 \
- audio/wavpack \
- devel/libnotify>=0.7.2 \
- graphics/ffmpeg \
- multimedia/libmms \
- net/curl \
- net/neon \
- textproc/libxml \
- x11/gtk+2 \
- x11/dbus-glib
-
-USE_GMAKE = Yes
-
-CONFIGURE_STYLE = gnu
-CONFIGURE_ARGS += --disable-alsa \
- --disable-amidiplug \
- --disable-bs2b \
- --disable-jack \
- --disable-lirc \
- --disable-oss4 \
- --disable-pulse \
- --disable-sdlout \
- --disable-sid
-CONFIGURE_ENV = CPPFLAGS="-I${LOCALBASE}/include" \
- LDFLAGS="-L${X11BASE}/lib -L${LOCALBASE}/lib"
-
-NO_TEST = Yes
-
-.include <bsd.port.mk>
diff --git audacious-plugins/distinfo audacious-plugins/distinfo
deleted file mode 100644
index b4a3f1061c9..00000000000
--- audacious-plugins/distinfo
+++ /dev/null
@@ -1,2 +0,0 @@
-SHA256 (audacious-plugins-3.10.1.tar.bz2) = 7sMXdjH5lym/DpQiO2J0BsxkjHDmZG41YTx7VQQKJkI=
-SIZE (audacious-plugins-3.10.1.tar.bz2) = 1715477
diff --git audacious-plugins/patches/patch-buildsys_mk_in audacious-plugins/patches/patch-buildsys_mk_in
deleted file mode 100644
index 36fbb4410c8..00000000000
--- audacious-plugins/patches/patch-buildsys_mk_in
+++ /dev/null
@@ -1,13 +0,0 @@
-$OpenBSD: patch-buildsys_mk_in,v 1.7 2020/02/02 16:06:13 bket Exp $
-Index: buildsys.mk.in
---- buildsys.mk.in.orig
-+++ buildsys.mk.in
-@@ -113,7 +113,7 @@ PLUGIN_OBJS = ${OBJS:.o=.plugin.o}
-
- MO_FILES = ${LOCALES:.po=.mo}
-
--.SILENT:
-+#.SILENT:
- .SUFFIXES:
- .SUFFIXES: .beam .c .c.dep .cc .cc.dep .class .cxx .cxx.dep .d .erl .lib.o .java .mo .m .m.dep .mm .mm.dep .moslib.o .o .plugin.o .po .py .pyc .rc .S .S.dep .xpm
- .PHONY: all subdirs subdirs-after pre-depend depend install install-includes install-extra uninstall uninstall-extra clean distclean locales ${SUBDIRS} ${SUBDIRS_AFTER}
diff --git audacious-plugins/patches/patch-configure audacious-plugins/patches/patch-configure
deleted file mode 100644
index 95e27329286..00000000000
--- audacious-plugins/patches/patch-configure
+++ /dev/null
@@ -1,27 +0,0 @@
-$OpenBSD: patch-configure,v 1.10 2020/02/02 16:06:13 bket Exp $
-
-Set AUDACIOUS_{CFLAGS,LIBS} only after the end of all plugin checks.
-This fixes some of the autoconf checks as the LIBS variable is being
-polluted very early on, breaking most of the checks using AC_CHECK_LIB.
-
-Index: configure
---- configure.orig
-+++ configure
-@@ -9702,8 +9702,6 @@ $as_echo "yes" >&6; }
-
- fi
-
--CPPFLAGS="$CPPFLAGS $AUDACIOUS_CFLAGS"
--LIBS="$LIBS $AUDACIOUS_LIBS"
-
-
- if test $HAVE_DARWIN = yes ; then
-@@ -14701,6 +14699,8 @@ as_fn_error ()
- as_fn_exit $as_status
- } # as_fn_error
-
-+CPPFLAGS="$CPPFLAGS $AUDACIOUS_CFLAGS"
-+LIBS="$LIBS $AUDACIOUS_LIBS"
-
- # as_fn_set_status STATUS
- # -----------------------
diff --git audacious-plugins/patches/patch-src_neon_neon_cc audacious-plugins/patches/patch-src_neon_neon_cc
deleted file mode 100644
index 40be1af3faf..00000000000
--- audacious-plugins/patches/patch-src_neon_neon_cc
+++ /dev/null
@@ -1,19 +0,0 @@
-$OpenBSD: patch-src_neon_neon_cc,v 1.1 2019/05/24 22:43:45 cwen Exp $
-
-Fix for ports gcc as feof() is a macro
-
-neon.cc:968:16: error: expected unqualified-id before '(' token
-bool NeonFile::feof ()
-
-Index: src/neon/neon.cc
---- src/neon/neon.cc.orig
-+++ src/neon/neon.cc
-@@ -45,6 +45,8 @@
- #define NEON_ICY_BUFSIZE (4096)
- #define NEON_RETRY_COUNT 6
-
-+#undef feof
-+
- enum FillBufferResult {
- FILL_BUFFER_SUCCESS,
- FILL_BUFFER_ERROR,
diff --git audacious-plugins/patches/patch-src_psf_psx_hw_cc audacious-plugins/patches/patch-src_psf_psx_hw_cc
deleted file mode 100644
index dc428ccd979..00000000000
--- audacious-plugins/patches/patch-src_psf_psx_hw_cc
+++ /dev/null
@@ -1,16 +0,0 @@
-$OpenBSD: patch-src_psf_psx_hw_cc,v 1.1 2017/09/08 13:33:07 dcoppa Exp $
-
-change some srand to srand_deterministic, found by deraadt@
-
-Index: src/psf/psx_hw.cc
---- src/psf/psx_hw.cc.orig
-+++ src/psf/psx_hw.cc
-@@ -1546,7 +1546,7 @@ void psx_bios_hle(uint32_t pc)
- #if DEBUG_HLE_BIOS
- printf("HLEBIOS: srand(%x)\n", a0);
- #endif
-- srand(a0);
-+ srand_deterministic(a0);
- break;
-
- case 0x33: // malloc
diff --git audacious-plugins/pkg/DESCR audacious-plugins/pkg/DESCR
deleted file mode 100644
index 7af1b2f624d..00000000000
--- audacious-plugins/pkg/DESCR
+++ /dev/null
@@ -1 +0,0 @@
-Input, output, visualization and effect plugins for Audacious.
diff --git audacious-plugins/pkg/PLIST audacious-plugins/pkg/PLIST
deleted file mode 100644
index 6dbf257922a..00000000000
--- audacious-plugins/pkg/PLIST
+++ /dev/null
@@ -1,239 +0,0 @@
-@comment $OpenBSD: PLIST,v 1.14 2020/02/02 16:06:13 bket Exp $
-@pkgpath audio/audacious-plugins,-main
-lib/audacious/
-lib/audacious/Container/
-@so lib/audacious/Container/asx.so
-@so lib/audacious/Container/asx3.so
-@so lib/audacious/Container/audpl.so
-@so lib/audacious/Container/cue.so
-@so lib/audacious/Container/m3u.so
-@so lib/audacious/Container/pls.so
-@so lib/audacious/Container/xspf.so
-lib/audacious/Effect/
-@so lib/audacious/Effect/compressor.so
-@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
-@so lib/audacious/Effect/sox-resampler.so
-@so lib/audacious/Effect/speed-pitch.so
-@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/lyricwiki.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
-@so lib/audacious/Input/console.so
-@so lib/audacious/Input/ffaudio.so
-@so lib/audacious/Input/flacng.so
-@so lib/audacious/Input/madplug.so
-@so lib/audacious/Input/metronom.so
-@so lib/audacious/Input/modplug.so
-@so lib/audacious/Input/psf2.so
-@so lib/audacious/Input/sndfile.so
-@so lib/audacious/Input/tonegen.so
-@so lib/audacious/Input/vorbis.so
-@so lib/audacious/Input/vtx.so
-@so lib/audacious/Input/wavpack.so
-@so lib/audacious/Input/xsf.so
-lib/audacious/Output/
-@so lib/audacious/Output/filewriter.so
-@so lib/audacious/Output/sndio-ng.so
-lib/audacious/Transport/
-@so lib/audacious/Transport/gio.so
-@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
-share/audacious/Skins/Classic/cbuttons.png
-share/audacious/Skins/Classic/eq_ex.png
-share/audacious/Skins/Classic/eqmain.png
-share/audacious/Skins/Classic/main.png
-share/audacious/Skins/Classic/monoster.png
-share/audacious/Skins/Classic/nums_ex.png
-share/audacious/Skins/Classic/playpaus.png
-share/audacious/Skins/Classic/pledit.png
-share/audacious/Skins/Classic/pledit.txt
-share/audacious/Skins/Classic/posbar.png
-share/audacious/Skins/Classic/shufrep.png
-share/audacious/Skins/Classic/skin-classic.hints
-share/audacious/Skins/Classic/skin.hints
-share/audacious/Skins/Classic/text.png
-share/audacious/Skins/Classic/titlebar.png
-share/audacious/Skins/Classic/viscolor.txt
-share/audacious/Skins/Classic/volume.png
-share/audacious/Skins/Classic1.3/
-share/audacious/Skins/Classic1.3/balance.png
-share/audacious/Skins/Classic1.3/cbuttons.png
-share/audacious/Skins/Classic1.3/eq_ex.png
-share/audacious/Skins/Classic1.3/eqmain.png
-share/audacious/Skins/Classic1.3/main.png
-share/audacious/Skins/Classic1.3/monoster.png
-share/audacious/Skins/Classic1.3/nums_ex.png
-share/audacious/Skins/Classic1.3/playpaus.png
-share/audacious/Skins/Classic1.3/pledit.png
-share/audacious/Skins/Classic1.3/pledit.txt
-share/audacious/Skins/Classic1.3/posbar.png
-share/audacious/Skins/Classic1.3/shufrep.png
-share/audacious/Skins/Classic1.3/skin-classic.hints
-share/audacious/Skins/Classic1.3/skin.hints
-share/audacious/Skins/Classic1.3/text.png
-share/audacious/Skins/Classic1.3/titlebar.png
-share/audacious/Skins/Classic1.3/viscolor.txt
-share/audacious/Skins/Classic1.3/volume.png
-share/audacious/Skins/Default/
-share/audacious/Skins/Default/cbuttons.png
-share/audacious/Skins/Default/eq_ex.png
-share/audacious/Skins/Default/eqmain.png
-share/audacious/Skins/Default/main.png
-share/audacious/Skins/Default/monoster.png
-share/audacious/Skins/Default/nums_ex.png
-share/audacious/Skins/Default/playpaus.png
-share/audacious/Skins/Default/pledit.png
-share/audacious/Skins/Default/pledit.txt
-share/audacious/Skins/Default/posbar.png
-share/audacious/Skins/Default/shufrep.png
-share/audacious/Skins/Default/skin.hints
-share/audacious/Skins/Default/text.png
-share/audacious/Skins/Default/titlebar.png
-share/audacious/Skins/Default/viscolor.txt
-share/audacious/Skins/Default/volume.png
-share/audacious/Skins/Ivory/
-share/audacious/Skins/Ivory/balance.png
-share/audacious/Skins/Ivory/cbuttons.png
-share/audacious/Skins/Ivory/eq_ex.png
-share/audacious/Skins/Ivory/eqmain.png
-share/audacious/Skins/Ivory/main.png
-share/audacious/Skins/Ivory/monoster.png
-share/audacious/Skins/Ivory/nums_ex.png
-share/audacious/Skins/Ivory/playpaus.png
-share/audacious/Skins/Ivory/pledit.png
-share/audacious/Skins/Ivory/pledit.txt
-share/audacious/Skins/Ivory/posbar.png
-share/audacious/Skins/Ivory/shufrep.png
-share/audacious/Skins/Ivory/skin.hints
-share/audacious/Skins/Ivory/text.png
-share/audacious/Skins/Ivory/titlebar.png
-share/audacious/Skins/Ivory/viscolor.txt
-share/audacious/Skins/Ivory/volume.png
-share/audacious/Skins/Osmosis/
-share/audacious/Skins/Osmosis/balance.png
-share/audacious/Skins/Osmosis/cbuttons.png
-share/audacious/Skins/Osmosis/eq_ex.png
-share/audacious/Skins/Osmosis/eqmain.png
-share/audacious/Skins/Osmosis/main.png
-share/audacious/Skins/Osmosis/monoster.png
-share/audacious/Skins/Osmosis/nums_ex.png
-share/audacious/Skins/Osmosis/playpaus.png
-share/audacious/Skins/Osmosis/pledit.png
-share/audacious/Skins/Osmosis/pledit.txt
-share/audacious/Skins/Osmosis/posbar.png
-share/audacious/Skins/Osmosis/shufrep.png
-share/audacious/Skins/Osmosis/skin.hints
-share/audacious/Skins/Osmosis/text.png
-share/audacious/Skins/Osmosis/titlebar.png
-share/audacious/Skins/Osmosis/viscolor.txt
-share/audacious/Skins/Osmosis/volume.png
-share/audacious/Skins/Refugee/
-share/audacious/Skins/Refugee/cbuttons.png
-share/audacious/Skins/Refugee/eq_ex.png
-share/audacious/Skins/Refugee/eqmain.png
-share/audacious/Skins/Refugee/main.png
-share/audacious/Skins/Refugee/monoster.png
-share/audacious/Skins/Refugee/nums_ex.png
-share/audacious/Skins/Refugee/playpaus.png
-share/audacious/Skins/Refugee/pledit.png
-share/audacious/Skins/Refugee/pledit.txt
-share/audacious/Skins/Refugee/posbar.png
-share/audacious/Skins/Refugee/shufrep.png
-share/audacious/Skins/Refugee/skin.hints
-share/audacious/Skins/Refugee/text.png
-share/audacious/Skins/Refugee/titlebar.png
-share/audacious/Skins/Refugee/viscolor.txt
-share/audacious/Skins/Refugee/volume.png
-share/audacious/Skins/TinyPlayer/
-share/audacious/Skins/TinyPlayer/balance.png
-share/audacious/Skins/TinyPlayer/cbuttons.png
-share/audacious/Skins/TinyPlayer/eq_ex.png
-share/audacious/Skins/TinyPlayer/eqmain.png
-share/audacious/Skins/TinyPlayer/main.png
-share/audacious/Skins/TinyPlayer/monoster.png
-share/audacious/Skins/TinyPlayer/nums_ex.png
-share/audacious/Skins/TinyPlayer/playpaus.png
-share/audacious/Skins/TinyPlayer/pledit.png
-share/audacious/Skins/TinyPlayer/pledit.txt
-share/audacious/Skins/TinyPlayer/posbar.png
-share/audacious/Skins/TinyPlayer/shufrep.png
-share/audacious/Skins/TinyPlayer/skin.hints
-share/audacious/Skins/TinyPlayer/text.png
-share/audacious/Skins/TinyPlayer/titlebar.png
-share/audacious/Skins/TinyPlayer/viscolor.txt
-share/audacious/Skins/TinyPlayer/volume.png
-share/locale/ar/LC_MESSAGES/audacious-plugins.mo
-share/locale/be/LC_MESSAGES/audacious-plugins.mo
-share/locale/bg/LC_MESSAGES/audacious-plugins.mo
-share/locale/ca/LC_MESSAGES/audacious-plugins.mo
-share/locale/cmn/LC_MESSAGES/audacious-plugins.mo
-share/locale/cs/LC_MESSAGES/audacious-plugins.mo
-share/locale/da/LC_MESSAGES/audacious-plugins.mo
-share/locale/de/LC_MESSAGES/audacious-plugins.mo
-share/locale/el/LC_MESSAGES/audacious-plugins.mo
-share/locale/en_GB/LC_MESSAGES/audacious-plugins.mo
-share/locale/es/LC_MESSAGES/audacious-plugins.mo
-share/locale/es_AR/LC_MESSAGES/audacious-plugins.mo
-share/locale/es_MX/LC_MESSAGES/audacious-plugins.mo
-share/locale/et/LC_MESSAGES/audacious-plugins.mo
-share/locale/eu/LC_MESSAGES/audacious-plugins.mo
-share/locale/fa_IR/LC_MESSAGES/audacious-plugins.mo
-share/locale/fi/LC_MESSAGES/audacious-plugins.mo
-share/locale/fr/LC_MESSAGES/audacious-plugins.mo
-share/locale/gl/LC_MESSAGES/audacious-plugins.mo
-share/locale/hu/LC_MESSAGES/audacious-plugins.mo
-share/locale/id_ID/LC_MESSAGES/audacious-plugins.mo
-share/locale/it/LC_MESSAGES/audacious-plugins.mo
-share/locale/ja/LC_MESSAGES/audacious-plugins.mo
-share/locale/ko/LC_MESSAGES/audacious-plugins.mo
-share/locale/ky/LC_MESSAGES/audacious-plugins.mo
-share/locale/lt/LC_MESSAGES/audacious-plugins.mo
-share/locale/lv/LC_MESSAGES/audacious-plugins.mo
-share/locale/ml_IN/LC_MESSAGES/audacious-plugins.mo
-share/locale/ms/LC_MESSAGES/audacious-plugins.mo
-share/locale/nl/LC_MESSAGES/audacious-plugins.mo
-share/locale/pl/LC_MESSAGES/audacious-plugins.mo
-share/locale/pt_BR/LC_MESSAGES/audacious-plugins.mo
-share/locale/pt_PT/LC_MESSAGES/audacious-plugins.mo
-share/locale/ru/LC_MESSAGES/audacious-plugins.mo
-share/locale/si/LC_MESSAGES/audacious-plugins.mo
-share/locale/sk/LC_MESSAGES/audacious-plugins.mo
-share/locale/sr/LC_MESSAGES/audacious-plugins.mo
-share/locale/sr_RS/LC_MESSAGES/audacious-plugins.mo
-share/locale/sv/LC_MESSAGES/audacious-plugins.mo
-share/locale/ta/LC_MESSAGES/audacious-plugins.mo
-share/locale/tr/LC_MESSAGES/audacious-plugins.mo
-share/locale/uk/LC_MESSAGES/audacious-plugins.mo
-share/locale/zh_CN/LC_MESSAGES/audacious-plugins.mo
-share/locale/zh_TW/LC_MESSAGES/audacious-plugins.mo
diff --git audacious/Makefile audacious/Makefile
index b4f4fbebee7..d94394c8a34 100644
--- audacious/Makefile
+++ audacious/Makefile
@@ -1,49 +1,7 @@
-# $OpenBSD: Makefile,v 1.63 2020/02/02 16:06:40 bket Exp $
+# $OpenBSD$

-BROKEN-hppa = no atomic ops / __sync_fetch_and_add_4
-BROKEN-alpha = tinylock.c:58: internal compiler error: in extract_insn, at recog.c:2077
+ SUBDIR =
+ SUBDIR += player
+ SUBDIR += plugins

-COMMENT = graphical audio player which supports lots of formats
-
-DISTNAME = audacious-3.10.1
-
-SHARED_LIBS += audcore 5.0 # 5.1
-SHARED_LIBS += audgui 4.0 # 5.0
-SHARED_LIBS += audtag 3.0 # 3.0
-
-CATEGORIES = audio multimedia
-
-HOMEPAGE = https://audacious-media-player.org/
-
-# 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
-
-MASTER_SITES = https://distfiles.audacious-media-player.org/
-
-EXTRACT_SUFX = .tar.bz2
-
-COMPILER = base-clang ports-gcc
-
-BUILD_DEPENDS = devel/gettext,-tools
-
-RUN_DEPENDS = devel/desktop-file-utils \
- x11/gtk+3,-guic
-LIB_DEPENDS = x11/gtk+2
-
-MAKE_ENV = LIBaudcore_VERSION=${LIBaudcore_VERSION} \
- LIBaudgui_VERSION=${LIBaudgui_VERSION} \
- LIBaudtag_VERSION=${LIBaudtag_VERSION}
-
-USE_GMAKE = Yes
-
-CONFIGURE_STYLE = gnu
-
-NO_TEST = Yes
-
-.include <bsd.port.mk>
+.include <bsd.port.subdir.mk>
diff --git audacious/Makefile.inc audacious/Makefile.inc
new file mode 100644
index 00000000000..4e5bf8d0792
--- /dev/null
+++ audacious/Makefile.inc
@@ -0,0 +1,10 @@
+# $OpenBSD$
+
+VERSION = 4.0.1
+
+CATEGORIES = audio multimedia
+
+HOMEPAGE = https://audacious-media-player.org/
+
+MASTER_SITES = https://distfiles.audacious-media-player.org/
+EXTRACT_SUFX = .tar.bz2
diff --git audacious/distinfo audacious/distinfo
deleted file mode 100644
index 65a2003c36a..00000000000
--- audacious/distinfo
+++ /dev/null
@@ -1,2 +0,0 @@
-SHA256 (audacious-3.10.1.tar.bz2) = g2boQLs8lEjCzwz5oIABVbC9fMISooukSZDD0iica5M=
-SIZE (audacious-3.10.1.tar.bz2) = 564481
diff --git audacious/patches/patch-buildsys_mk_in audacious/patches/patch-buildsys_mk_in
deleted file mode 100644
index fdf7288039f..00000000000
--- audacious/patches/patch-buildsys_mk_in
+++ /dev/null
@@ -1,13 +0,0 @@
-$OpenBSD: patch-buildsys_mk_in,v 1.8 2020/02/02 16:06:40 bket Exp $
-Index: buildsys.mk.in
---- buildsys.mk.in.orig
-+++ buildsys.mk.in
-@@ -113,7 +113,7 @@ PLUGIN_OBJS = ${OBJS:.o=.plugin.o}
-
- MO_FILES = ${LOCALES:.po=.mo}
-
--.SILENT:
-+#.SILENT:
- .SUFFIXES:
- .SUFFIXES: .beam .c .c.dep .cc .cc.dep .class .cxx .cxx.dep .d .erl .lib.o .java .mo .m .m.dep .mm .mm.dep .moslib.o .o .plugin.o .po .py .pyc .rc .S .S.dep .xpm
- .PHONY: all subdirs subdirs-after pre-depend depend install install-includes install-extra uninstall uninstall-extra clean distclean locales ${SUBDIRS} ${SUBDIRS_AFTER}
diff --git audacious/patches/patch-src_libaudcore_Makefile audacious/patches/patch-src_libaudcore_Makefile
deleted file mode 100644
index 776955527d4..00000000000
--- audacious/patches/patch-src_libaudcore_Makefile
+++ /dev/null
@@ -1,10 +0,0 @@
-$OpenBSD: patch-src_libaudcore_Makefile,v 1.9 2020/02/02 16:06:40 bket Exp $
-Index: src/libaudcore/Makefile
---- src/libaudcore/Makefile.orig
-+++ src/libaudcore/Makefile
-@@ -1,4 +1,4 @@
--SHARED_LIB = ${LIB_PREFIX}audcore${LIB_SUFFIX}
-+SHARED_LIB = ${LIB_PREFIX}audcore.so.${LIBaudcore_VERSION}
- LIB_MAJOR = 5
- LIB_MINOR = 1
-
diff --git audacious/patches/patch-src_libaudgui_Makefile audacious/patches/patch-src_libaudgui_Makefile
deleted file mode 100644
index 6abad8f87b6..00000000000
--- audacious/patches/patch-src_libaudgui_Makefile
+++ /dev/null
@@ -1,10 +0,0 @@
-$OpenBSD: patch-src_libaudgui_Makefile,v 1.5 2017/09/08 13:33:07 dcoppa Exp $
-Index: src/libaudgui/Makefile
---- src/libaudgui/Makefile.orig
-+++ src/libaudgui/Makefile
-@@ -1,4 +1,4 @@
--SHARED_LIB = ${LIB_PREFIX}audgui${LIB_SUFFIX}
-+SHARED_LIB = ${LIB_PREFIX}audgui.so.${LIBaudgui_VERSION}
- LIB_MAJOR = 5
- LIB_MINOR = 0
-
diff --git audacious/patches/patch-src_libaudtag_Makefile audacious/patches/patch-src_libaudtag_Makefile
deleted file mode 100644
index 602eea73bd2..00000000000
--- audacious/patches/patch-src_libaudtag_Makefile
+++ /dev/null
@@ -1,10 +0,0 @@
-$OpenBSD: patch-src_libaudtag_Makefile,v 1.4 2017/09/08 13:33:07 dcoppa Exp $
-Index: src/libaudtag/Makefile
---- src/libaudtag/Makefile.orig
-+++ src/libaudtag/Makefile
-@@ -1,4 +1,4 @@
--SHARED_LIB = ${LIB_PREFIX}audtag${LIB_SUFFIX}
-+SHARED_LIB = ${LIB_PREFIX}audtag.so.${LIBaudtag_VERSION}
- LIB_MAJOR = 3
- LIB_MINOR = 0
-
diff --git audacious/pkg/DESCR audacious/pkg/DESCR
deleted file mode 100644
index 8de1c5f9a06..00000000000
--- audacious/pkg/DESCR
+++ /dev/null
@@ -1,2 +0,0 @@
-Audacious is a multimedia player that currently uses a skinned user interface
-based on Winamp 2.x skins. It is based on ("forked off") BMP and XMMS.
diff --git audacious/pkg/PLIST audacious/pkg/PLIST
deleted file mode 100644
index ad3f35b1215..00000000000
--- audacious/pkg/PLIST
+++ /dev/null
@@ -1,113 +0,0 @@
-@comment $OpenBSD: PLIST,v 1.24 2020/02/02 16:06:41 bket Exp $
-@bin bin/audacious
-@bin bin/audtool
-include/audacious/
-include/audacious/audtag.h
-include/libaudcore/
-include/libaudcore/audio.h
-include/libaudcore/audstrings.h
-include/libaudcore/drct.h
-include/libaudcore/equalizer.h
-include/libaudcore/export.h
-include/libaudcore/hook.h
-include/libaudcore/i18n.h
-include/libaudcore/index.h
-include/libaudcore/inifile.h
-include/libaudcore/interface.h
-include/libaudcore/list.h
-include/libaudcore/mainloop.h
-include/libaudcore/multihash.h
-include/libaudcore/objects.h
-include/libaudcore/playlist.h
-include/libaudcore/plugin.h
-include/libaudcore/plugins.h
-include/libaudcore/preferences.h
-include/libaudcore/probe.h
-include/libaudcore/ringbuf.h
-include/libaudcore/runtime.h
-include/libaudcore/templates.h
-include/libaudcore/tinylock.h
-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
-@man man/man1/audtool.1
-share/applications/audacious.desktop
-share/audacious/
-share/audacious/AUTHORS
-share/audacious/COPYING
-share/icons/hicolor/48x48/apps/audacious.png
-share/icons/hicolor/scalable/apps/audacious.svg
-share/locale/ar/LC_MESSAGES/audacious.mo
-share/locale/be/LC_MESSAGES/audacious.mo
-share/locale/bg/LC_MESSAGES/audacious.mo
-share/locale/ca/LC_MESSAGES/audacious.mo
-share/locale/cmn/
-share/locale/cmn/LC_MESSAGES/
-share/locale/cmn/LC_MESSAGES/audacious.mo
-share/locale/cs/LC_MESSAGES/audacious.mo
-share/locale/da/LC_MESSAGES/audacious.mo
-share/locale/de/LC_MESSAGES/audacious.mo
-share/locale/el/LC_MESSAGES/audacious.mo
-share/locale/en_GB/LC_MESSAGES/audacious.mo
-share/locale/es/LC_MESSAGES/audacious.mo
-share/locale/es_AR/
-share/locale/es_AR/LC_MESSAGES/
-share/locale/es_AR/LC_MESSAGES/audacious.mo
-share/locale/es_MX/
-share/locale/es_MX/LC_MESSAGES/
-share/locale/es_MX/LC_MESSAGES/audacious.mo
-share/locale/et/LC_MESSAGES/audacious.mo
-share/locale/eu/LC_MESSAGES/audacious.mo
-share/locale/fa_IR/
-share/locale/fa_IR/LC_MESSAGES/
-share/locale/fa_IR/LC_MESSAGES/audacious.mo
-share/locale/fi/LC_MESSAGES/audacious.mo
-share/locale/fr/LC_MESSAGES/audacious.mo
-share/locale/gl/LC_MESSAGES/audacious.mo
-share/locale/hu/LC_MESSAGES/audacious.mo
-share/locale/id_ID/
-share/locale/id_ID/LC_MESSAGES/
-share/locale/id_ID/LC_MESSAGES/audacious.mo
-share/locale/it/LC_MESSAGES/audacious.mo
-share/locale/ja/LC_MESSAGES/audacious.mo
-share/locale/ko/LC_MESSAGES/audacious.mo
-share/locale/ky/LC_MESSAGES/audacious.mo
-share/locale/lt/LC_MESSAGES/audacious.mo
-share/locale/lv/LC_MESSAGES/audacious.mo
-share/locale/ml_IN/
-share/locale/ml_IN/LC_MESSAGES/
-share/locale/ml_IN/LC_MESSAGES/audacious.mo
-share/locale/ms/LC_MESSAGES/audacious.mo
-share/locale/nl/LC_MESSAGES/audacious.mo
-share/locale/pl/LC_MESSAGES/audacious.mo
-share/locale/pt_BR/LC_MESSAGES/audacious.mo
-share/locale/pt_PT/
-share/locale/pt_PT/LC_MESSAGES/
-share/locale/pt_PT/LC_MESSAGES/audacious.mo
-share/locale/ro/LC_MESSAGES/audacious.mo
-share/locale/ru/LC_MESSAGES/audacious.mo
-share/locale/si/LC_MESSAGES/audacious.mo
-share/locale/sk/LC_MESSAGES/audacious.mo
-share/locale/sr/LC_MESSAGES/audacious.mo
-share/locale/sr_RS/
-share/locale/sr_RS/LC_MESSAGES/
-share/locale/sr_RS/LC_MESSAGES/audacious.mo
-share/locale/sv/LC_MESSAGES/audacious.mo
-share/locale/ta/LC_MESSAGES/audacious.mo
-share/locale/tr/LC_MESSAGES/audacious.mo
-share/locale/uk/LC_MESSAGES/audacious.mo
-share/locale/zh_CN/LC_MESSAGES/audacious.mo
-share/locale/zh_TW/LC_MESSAGES/audacious.mo
-@tag update-desktop-database
-@tag gtk-update-icon-cache %D/share/icons/hicolor
diff --git audacious/player/Makefile audacious/player/Makefile
new file mode 100644
index 00000000000..c072d19399c
--- /dev/null
+++ audacious/player/Makefile
@@ -0,0 +1,43 @@
+# $OpenBSD: Makefile,v 1.63 2020/02/02 16:06:40 bket Exp $
+
+BROKEN-hppa = no atomic ops / __sync_fetch_and_add_4
+BROKEN-alpha = tinylock.c:58: internal compiler error: in extract_insn, at recog.c:2077
+
+COMMENT = graphical audio player which supports lots of formats
+
+DISTNAME = audacious-${VERSION}
+PKGNAME = audacious-player-${VERSION}
+
+SHARED_LIBS += audcore 5.1 # 5.2
+SHARED_LIBS += audgui 4.1 # 5.1
+SHARED_LIBS += audtag 3.0 # 3.0
+
+# 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
+
+COMPILER = base-clang ports-gcc
+
+BUILD_DEPENDS = devel/gettext,-tools
+RUN_DEPENDS = devel/desktop-file-utils \
+ x11/gtk+3,-guic
+LIB_DEPENDS = x11/gtk+2
+
+MAKE_ENV = LIBaudcore_VERSION=${LIBaudcore_VERSION} \
+ LIBaudgui_VERSION=${LIBaudgui_VERSION} \
+ LIBaudtag_VERSION=${LIBaudtag_VERSION}
+
+USE_GMAKE = Yes
+
+CONFIGURE_STYLE = gnu
+CONFIGURE_ARGS = --disable-qt \
+ --enable-gtk
+
+NO_TEST = Yes
+
+.include <bsd.port.mk>
diff --git audacious/player/distinfo audacious/player/distinfo
new file mode 100644
index 00000000000..648cfb23110
--- /dev/null
+++ audacious/player/distinfo
@@ -0,0 +1,2 @@
+SHA256 (audacious-4.0.1.tar.bz2) = rhPfaIeD8u6WSc9IhwOt48Czdvtc1rD7XtFLxD4qXLY=
+SIZE (audacious-4.0.1.tar.bz2) = 572314
diff --git audacious/player/patches/patch-buildsys_mk_in audacious/player/patches/patch-buildsys_mk_in
new file mode 100644
index 00000000000..fdf7288039f
--- /dev/null
+++ audacious/player/patches/patch-buildsys_mk_in
@@ -0,0 +1,13 @@
+$OpenBSD: patch-buildsys_mk_in,v 1.8 2020/02/02 16:06:40 bket Exp $
+Index: buildsys.mk.in
+--- buildsys.mk.in.orig
++++ buildsys.mk.in
+@@ -113,7 +113,7 @@ PLUGIN_OBJS = ${OBJS:.o=.plugin.o}
+
+ MO_FILES = ${LOCALES:.po=.mo}
+
+-.SILENT:
++#.SILENT:
+ .SUFFIXES:
+ .SUFFIXES: .beam .c .c.dep .cc .cc.dep .class .cxx .cxx.dep .d .erl .lib.o .java .mo .m .m.dep .mm .mm.dep .moslib.o .o .plugin.o .po .py .pyc .rc .S .S.dep .xpm
+ .PHONY: all subdirs subdirs-after pre-depend depend install install-includes install-extra uninstall uninstall-extra clean distclean locales ${SUBDIRS} ${SUBDIRS_AFTER}
diff --git audacious/player/patches/patch-src_libaudcore_Makefile audacious/player/patches/patch-src_libaudcore_Makefile
new file mode 100644
index 00000000000..5272f12fe6d
--- /dev/null
+++ audacious/player/patches/patch-src_libaudcore_Makefile
@@ -0,0 +1,10 @@
+$OpenBSD: patch-src_libaudcore_Makefile,v 1.9 2020/02/02 16:06:40 bket Exp $
+Index: src/libaudcore/Makefile
+--- src/libaudcore/Makefile.orig
++++ src/libaudcore/Makefile
+@@ -1,4 +1,4 @@
+-SHARED_LIB = ${LIB_PREFIX}audcore${LIB_SUFFIX}
++SHARED_LIB = ${LIB_PREFIX}audcore.so.${LIBaudcore_VERSION}
+ LIB_MAJOR = 5
+ LIB_MINOR = 2
+
diff --git audacious/player/patches/patch-src_libaudgui_Makefile audacious/player/patches/patch-src_libaudgui_Makefile
new file mode 100644
index 00000000000..517340cbee9
--- /dev/null
+++ audacious/player/patches/patch-src_libaudgui_Makefile
@@ -0,0 +1,10 @@
+$OpenBSD: patch-src_libaudgui_Makefile,v 1.5 2017/09/08 13:33:07 dcoppa Exp $
+Index: src/libaudgui/Makefile
+--- src/libaudgui/Makefile.orig
++++ src/libaudgui/Makefile
+@@ -1,4 +1,4 @@
+-SHARED_LIB = ${LIB_PREFIX}audgui${LIB_SUFFIX}
++SHARED_LIB = ${LIB_PREFIX}audgui.so.${LIBaudgui_VERSION}
+ LIB_MAJOR = 5
+ LIB_MINOR = 1
+
diff --git audacious/player/patches/patch-src_libaudtag_Makefile audacious/player/patches/patch-src_libaudtag_Makefile
new file mode 100644
index 00000000000..602eea73bd2
--- /dev/null
+++ audacious/player/patches/patch-src_libaudtag_Makefile
@@ -0,0 +1,10 @@
+$OpenBSD: patch-src_libaudtag_Makefile,v 1.4 2017/09/08 13:33:07 dcoppa Exp $
+Index: src/libaudtag/Makefile
+--- src/libaudtag/Makefile.orig
++++ src/libaudtag/Makefile
+@@ -1,4 +1,4 @@
+-SHARED_LIB = ${LIB_PREFIX}audtag${LIB_SUFFIX}
++SHARED_LIB = ${LIB_PREFIX}audtag.so.${LIBaudtag_VERSION}
+ LIB_MAJOR = 3
+ LIB_MINOR = 0
+
diff --git audacious/player/pkg/DESCR audacious/player/pkg/DESCR
new file mode 100644
index 00000000000..8de1c5f9a06
--- /dev/null
+++ audacious/player/pkg/DESCR
@@ -0,0 +1,2 @@
+Audacious is a multimedia player that currently uses a skinned user interface
+based on Winamp 2.x skins. It is based on ("forked off") BMP and XMMS.
diff --git audacious/player/pkg/PLIST audacious/player/pkg/PLIST
new file mode 100644
index 00000000000..3b6d5ea4e41
--- /dev/null
+++ audacious/player/pkg/PLIST
@@ -0,0 +1,109 @@
+@comment $OpenBSD: PLIST,v 1.24 2020/02/02 16:06:41 bket Exp $
+@conflict audacious-<4.0
+@bin bin/audacious
+@bin bin/audtool
+include/audacious/
+include/audacious/audtag.h
+include/libaudcore/
+include/libaudcore/audio.h
+include/libaudcore/audstrings.h
+include/libaudcore/drct.h
+include/libaudcore/equalizer.h
+include/libaudcore/export.h
+include/libaudcore/hook.h
+include/libaudcore/i18n.h
+include/libaudcore/index.h
+include/libaudcore/inifile.h
+include/libaudcore/interface.h
+include/libaudcore/list.h
+include/libaudcore/mainloop.h
+include/libaudcore/multihash.h
+include/libaudcore/objects.h
+include/libaudcore/playlist.h
+include/libaudcore/plugin.h
+include/libaudcore/plugins.h
+include/libaudcore/preferences.h
+include/libaudcore/probe.h
+include/libaudcore/ringbuf.h
+include/libaudcore/runtime.h
+include/libaudcore/templates.h
+include/libaudcore/threads.h
+include/libaudcore/tinylock.h
+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
+@man man/man1/audtool.1
+share/applications/audacious.desktop
+share/audacious/
+share/audacious/AUTHORS
+share/audacious/COPYING
+share/icons/hicolor/48x48/apps/audacious.png
+share/icons/hicolor/scalable/apps/audacious.svg
+share/locale/ar/LC_MESSAGES/audacious.mo
+share/locale/be/LC_MESSAGES/audacious.mo
+share/locale/bg/LC_MESSAGES/audacious.mo
+share/locale/ca/LC_MESSAGES/audacious.mo
+share/locale/cmn/
+share/locale/cmn/LC_MESSAGES/
+share/locale/cmn/LC_MESSAGES/audacious.mo
+share/locale/cs/LC_MESSAGES/audacious.mo
+share/locale/da/LC_MESSAGES/audacious.mo
+share/locale/de/LC_MESSAGES/audacious.mo
+share/locale/el/LC_MESSAGES/audacious.mo
+share/locale/en_GB/LC_MESSAGES/audacious.mo
+share/locale/es/LC_MESSAGES/audacious.mo
+share/locale/es_AR/
+share/locale/es_AR/LC_MESSAGES/
+share/locale/es_AR/LC_MESSAGES/audacious.mo
+share/locale/es_MX/
+share/locale/es_MX/LC_MESSAGES/
+share/locale/es_MX/LC_MESSAGES/audacious.mo
+share/locale/et/LC_MESSAGES/audacious.mo
+share/locale/fi/LC_MESSAGES/audacious.mo
+share/locale/fr/LC_MESSAGES/audacious.mo
+share/locale/gl/LC_MESSAGES/audacious.mo
+share/locale/hu/LC_MESSAGES/audacious.mo
+share/locale/id_ID/
+share/locale/id_ID/LC_MESSAGES/
+share/locale/id_ID/LC_MESSAGES/audacious.mo
+share/locale/it/LC_MESSAGES/audacious.mo
+share/locale/ja/LC_MESSAGES/audacious.mo
+share/locale/ko/LC_MESSAGES/audacious.mo
+share/locale/lt/LC_MESSAGES/audacious.mo
+share/locale/lv/LC_MESSAGES/audacious.mo
+share/locale/ml_IN/
+share/locale/ml_IN/LC_MESSAGES/
+share/locale/ml_IN/LC_MESSAGES/audacious.mo
+share/locale/ms/LC_MESSAGES/audacious.mo
+share/locale/nl/LC_MESSAGES/audacious.mo
+share/locale/pl/LC_MESSAGES/audacious.mo
+share/locale/pt_BR/LC_MESSAGES/audacious.mo
+share/locale/pt_PT/
+share/locale/pt_PT/LC_MESSAGES/
+share/locale/pt_PT/LC_MESSAGES/audacious.mo
+share/locale/ru/LC_MESSAGES/audacious.mo
+share/locale/si/LC_MESSAGES/audacious.mo
+share/locale/sk/LC_MESSAGES/audacious.mo
+share/locale/sr/LC_MESSAGES/audacious.mo
+share/locale/sr_RS/
+share/locale/sr_RS/LC_MESSAGES/
+share/locale/sr_RS/LC_MESSAGES/audacious.mo
+share/locale/sv/LC_MESSAGES/audacious.mo
+share/locale/ta/LC_MESSAGES/audacious.mo
+share/locale/tr/LC_MESSAGES/audacious.mo
+share/locale/uk/LC_MESSAGES/audacious.mo
+share/locale/zh_CN/LC_MESSAGES/audacious.mo
+share/locale/zh_TW/LC_MESSAGES/audacious.mo
+@tag update-desktop-database
+@tag gtk-update-icon-cache %D/share/icons/hicolor
diff --git audacious/plugins/Makefile audacious/plugins/Makefile
new file mode 100644
index 00000000000..13dcf3b8f37
--- /dev/null
+++ audacious/plugins/Makefile
@@ -0,0 +1,69 @@
+# $OpenBSD: Makefile,v 1.81 2020/02/02 16:06:13 bket Exp $
+
+COMMENT = input and output plugins for Audacious
+
+DISTNAME = audacious-plugins-${VERSION}
+
+# BSD / GPL
+PERMIT_PACKAGE = Yes
+
+WANTLIB += ${COMPILER_LIBCXX} FLAC GL X11 Xcomposite Xcursor Xdamage
+WANTLIB += Xext Xfixes Xi Xinerama Xrandr Xrender atk-1.0 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
+
+COMPILER = base-clang ports-gcc
+
+BUILD_DEPENDS = audio/audacious/player>=${VERSION} \
+ devel/gettext,-tools
+RUN_DEPENDS = audio/audacious/player>=${VERSION}
+# needed for the gio plugin
+RUN_DEPENDS += x11/gnome/gvfs
+LIB_DEPENDS = audio/faad>=2.7 \
+ audio/flac \
+ audio/lame \
+ audio/libcdio \
+ audio/libcdio-paranoia \
+ audio/libcue \
+ audio/libmodplug \
+ audio/libsamplerate \
+ audio/libsndfile \
+ audio/libsoxr \
+ audio/libvorbis \
+ audio/mpg123 \
+ audio/wavpack \
+ devel/libnotify>=0.7.2 \
+ graphics/ffmpeg \
+ multimedia/libmms \
+ net/curl \
+ net/neon \
+ textproc/libxml \
+ x11/gtk+2 \
+ x11/dbus-glib
+
+USE_GMAKE = Yes
+
+CONFIGURE_STYLE = gnu
+CONFIGURE_ARGS += --disable-alsa \
+ --disable-amidiplug \
+ --disable-bs2b \
+ --disable-jack \
+ --disable-lirc \
+ --disable-oss4 \
+ --disable-pulse \
+ --disable-qt \
+ --disable-sdlout \
+ --disable-sid \
+ --disable-streamtuner \
+ --enable-gtk
+CONFIGURE_ENV = CPPFLAGS="-I${LOCALBASE}/include" \
+ LDFLAGS="-L${X11BASE}/lib -L${LOCALBASE}/lib"
+
+NO_TEST = Yes
+
+.include <bsd.port.mk>
diff --git audacious/plugins/distinfo audacious/plugins/distinfo
new file mode 100644
index 00000000000..866e666810f
--- /dev/null
+++ audacious/plugins/distinfo
@@ -0,0 +1,2 @@
+SHA256 (audacious-plugins-4.0.1.tar.bz2) = TEOd74muvxCmp1ayEVy00kk+zAPLYzuJiupaxvEOZaw=
+SIZE (audacious-plugins-4.0.1.tar.bz2) = 1742259
diff --git audacious/plugins/patches/patch-buildsys_mk_in audacious/plugins/patches/patch-buildsys_mk_in
new file mode 100644
index 00000000000..36fbb4410c8
--- /dev/null
+++ audacious/plugins/patches/patch-buildsys_mk_in
@@ -0,0 +1,13 @@
+$OpenBSD: patch-buildsys_mk_in,v 1.7 2020/02/02 16:06:13 bket Exp $
+Index: buildsys.mk.in
+--- buildsys.mk.in.orig
++++ buildsys.mk.in
+@@ -113,7 +113,7 @@ PLUGIN_OBJS = ${OBJS:.o=.plugin.o}
+
+ MO_FILES = ${LOCALES:.po=.mo}
+
+-.SILENT:
++#.SILENT:
+ .SUFFIXES:
+ .SUFFIXES: .beam .c .c.dep .cc .cc.dep .class .cxx .cxx.dep .d .erl .lib.o .java .mo .m .m.dep .mm .mm.dep .moslib.o .o .plugin.o .po .py .pyc .rc .S .S.dep .xpm
+ .PHONY: all subdirs subdirs-after pre-depend depend install install-includes install-extra uninstall uninstall-extra clean distclean locales ${SUBDIRS} ${SUBDIRS_AFTER}
diff --git audacious/plugins/patches/patch-configure audacious/plugins/patches/patch-configure
new file mode 100644
index 00000000000..94be65c8b77
--- /dev/null
+++ audacious/plugins/patches/patch-configure
@@ -0,0 +1,27 @@
+$OpenBSD: patch-configure,v 1.10 2020/02/02 16:06:13 bket Exp $
+
+Set AUDACIOUS_{CFLAGS,LIBS} only after the end of all plugin checks.
+This fixes some of the autoconf checks as the LIBS variable is being
+polluted very early on, breaking most of the checks using AC_CHECK_LIB.
+
+Index: configure
+--- configure.orig
++++ configure
+@@ -10179,8 +10179,6 @@ $as_echo "yes" >&6; }
+
+ fi
+
+-CPPFLAGS="$CPPFLAGS $AUDACIOUS_CFLAGS"
+-LIBS="$LIBS $AUDACIOUS_LIBS"
+
+
+ if test $HAVE_DARWIN = yes ; then
+@@ -15421,6 +15419,8 @@ as_fn_error ()
+ as_fn_exit $as_status
+ } # as_fn_error
+
++CPPFLAGS="$CPPFLAGS $AUDACIOUS_CFLAGS"
++LIBS="$LIBS $AUDACIOUS_LIBS"
+
+ # as_fn_set_status STATUS
+ # -----------------------
diff --git audacious/plugins/patches/patch-src_neon_neon_cc audacious/plugins/patches/patch-src_neon_neon_cc
new file mode 100644
index 00000000000..40be1af3faf
--- /dev/null
+++ audacious/plugins/patches/patch-src_neon_neon_cc
@@ -0,0 +1,19 @@
+$OpenBSD: patch-src_neon_neon_cc,v 1.1 2019/05/24 22:43:45 cwen Exp $
+
+Fix for ports gcc as feof() is a macro
+
+neon.cc:968:16: error: expected unqualified-id before '(' token
+bool NeonFile::feof ()
+
+Index: src/neon/neon.cc
+--- src/neon/neon.cc.orig
++++ src/neon/neon.cc
+@@ -45,6 +45,8 @@
+ #define NEON_ICY_BUFSIZE (4096)
+ #define NEON_RETRY_COUNT 6
+
++#undef feof
++
+ enum FillBufferResult {
+ FILL_BUFFER_SUCCESS,
+ FILL_BUFFER_ERROR,
diff --git audacious/plugins/patches/patch-src_psf_psx_hw_cc audacious/plugins/patches/patch-src_psf_psx_hw_cc
new file mode 100644
index 00000000000..387359b82bf
--- /dev/null
+++ audacious/plugins/patches/patch-src_psf_psx_hw_cc
@@ -0,0 +1,16 @@
+$OpenBSD: patch-src_psf_psx_hw_cc,v 1.1 2017/09/08 13:33:07 dcoppa Exp $
+
+change some srand to srand_deterministic, found by deraadt@
+
+Index: src/psf/psx_hw.cc
+--- src/psf/psx_hw.cc.orig
++++ src/psf/psx_hw.cc
+@@ -1518,7 +1518,7 @@ void psx_bios_hle(uint32_t pc)
+ #if DEBUG_HLE_BIOS
+ printf("HLEBIOS: srand(%x)\n", a0);
+ #endif
+- srand(a0);
++ srand_deterministic(a0);
+ break;
+
+ case 0x33: // malloc
diff --git audacious/plugins/pkg/DESCR audacious/plugins/pkg/DESCR
new file mode 100644
index 00000000000..7af1b2f624d
--- /dev/null
+++ audacious/plugins/pkg/DESCR
@@ -0,0 +1 @@
+Input, output, visualization and effect plugins for Audacious.
diff --git audacious/plugins/pkg/PLIST audacious/plugins/pkg/PLIST
new file mode 100644
index 00000000000..d44c812a815
--- /dev/null
+++ audacious/plugins/pkg/PLIST
@@ -0,0 +1,237 @@
+@comment $OpenBSD: PLIST,v 1.14 2020/02/02 16:06:13 bket Exp $
+@pkgpath audio/audacious-plugins,-main
+@pkgpath audio/audacious-plugins
+lib/audacious/
+lib/audacious/Container/
+@so lib/audacious/Container/asx.so
+@so lib/audacious/Container/asx3.so
+@so lib/audacious/Container/audpl.so
+@so lib/audacious/Container/cue.so
+@so lib/audacious/Container/m3u.so
+@so lib/audacious/Container/pls.so
+@so lib/audacious/Container/xspf.so
+lib/audacious/Effect/
+@so lib/audacious/Effect/compressor.so
+@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
+@so lib/audacious/Effect/sox-resampler.so
+@so lib/audacious/Effect/speed-pitch.so
+@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/lyricwiki.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
+@so lib/audacious/Input/console.so
+@so lib/audacious/Input/ffaudio.so
+@so lib/audacious/Input/flacng.so
+@so lib/audacious/Input/madplug.so
+@so lib/audacious/Input/metronom.so
+@so lib/audacious/Input/modplug.so
+@so lib/audacious/Input/psf2.so
+@so lib/audacious/Input/sndfile.so
+@so lib/audacious/Input/tonegen.so
+@so lib/audacious/Input/vorbis.so
+@so lib/audacious/Input/vtx.so
+@so lib/audacious/Input/wavpack.so
+@so lib/audacious/Input/xsf.so
+lib/audacious/Output/
+@so lib/audacious/Output/filewriter.so
+@so lib/audacious/Output/sndio-ng.so
+lib/audacious/Transport/
+@so lib/audacious/Transport/gio.so
+@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
+share/audacious/Skins/Classic/cbuttons.png
+share/audacious/Skins/Classic/eq_ex.png
+share/audacious/Skins/Classic/eqmain.png
+share/audacious/Skins/Classic/main.png
+share/audacious/Skins/Classic/monoster.png
+share/audacious/Skins/Classic/nums_ex.png
+share/audacious/Skins/Classic/playpaus.png
+share/audacious/Skins/Classic/pledit.png
+share/audacious/Skins/Classic/pledit.txt
+share/audacious/Skins/Classic/posbar.png
+share/audacious/Skins/Classic/shufrep.png
+share/audacious/Skins/Classic/skin-classic.hints
+share/audacious/Skins/Classic/skin.hints
+share/audacious/Skins/Classic/text.png
+share/audacious/Skins/Classic/titlebar.png
+share/audacious/Skins/Classic/viscolor.txt
+share/audacious/Skins/Classic/volume.png
+share/audacious/Skins/Classic1.3/
+share/audacious/Skins/Classic1.3/balance.png
+share/audacious/Skins/Classic1.3/cbuttons.png
+share/audacious/Skins/Classic1.3/eq_ex.png
+share/audacious/Skins/Classic1.3/eqmain.png
+share/audacious/Skins/Classic1.3/main.png
+share/audacious/Skins/Classic1.3/monoster.png
+share/audacious/Skins/Classic1.3/nums_ex.png
+share/audacious/Skins/Classic1.3/playpaus.png
+share/audacious/Skins/Classic1.3/pledit.png
+share/audacious/Skins/Classic1.3/pledit.txt
+share/audacious/Skins/Classic1.3/posbar.png
+share/audacious/Skins/Classic1.3/shufrep.png
+share/audacious/Skins/Classic1.3/skin-classic.hints
+share/audacious/Skins/Classic1.3/skin.hints
+share/audacious/Skins/Classic1.3/text.png
+share/audacious/Skins/Classic1.3/titlebar.png
+share/audacious/Skins/Classic1.3/viscolor.txt
+share/audacious/Skins/Classic1.3/volume.png
+share/audacious/Skins/Default/
+share/audacious/Skins/Default/cbuttons.png
+share/audacious/Skins/Default/eq_ex.png
+share/audacious/Skins/Default/eqmain.png
+share/audacious/Skins/Default/main.png
+share/audacious/Skins/Default/monoster.png
+share/audacious/Skins/Default/nums_ex.png
+share/audacious/Skins/Default/playpaus.png
+share/audacious/Skins/Default/pledit.png
+share/audacious/Skins/Default/pledit.txt
+share/audacious/Skins/Default/posbar.png
+share/audacious/Skins/Default/shufrep.png
+share/audacious/Skins/Default/skin.hints
+share/audacious/Skins/Default/text.png
+share/audacious/Skins/Default/titlebar.png
+share/audacious/Skins/Default/viscolor.txt
+share/audacious/Skins/Default/volume.png
+share/audacious/Skins/Ivory/
+share/audacious/Skins/Ivory/balance.png
+share/audacious/Skins/Ivory/cbuttons.png
+share/audacious/Skins/Ivory/eq_ex.png
+share/audacious/Skins/Ivory/eqmain.png
+share/audacious/Skins/Ivory/main.png
+share/audacious/Skins/Ivory/monoster.png
+share/audacious/Skins/Ivory/nums_ex.png
+share/audacious/Skins/Ivory/playpaus.png
+share/audacious/Skins/Ivory/pledit.png
+share/audacious/Skins/Ivory/pledit.txt
+share/audacious/Skins/Ivory/posbar.png
+share/audacious/Skins/Ivory/shufrep.png
+share/audacious/Skins/Ivory/skin.hints
+share/audacious/Skins/Ivory/text.png
+share/audacious/Skins/Ivory/titlebar.png
+share/audacious/Skins/Ivory/viscolor.txt
+share/audacious/Skins/Ivory/volume.png
+share/audacious/Skins/Osmosis/
+share/audacious/Skins/Osmosis/balance.png
+share/audacious/Skins/Osmosis/cbuttons.png
+share/audacious/Skins/Osmosis/eq_ex.png
+share/audacious/Skins/Osmosis/eqmain.png
+share/audacious/Skins/Osmosis/main.png
+share/audacious/Skins/Osmosis/monoster.png
+share/audacious/Skins/Osmosis/nums_ex.png
+share/audacious/Skins/Osmosis/playpaus.png
+share/audacious/Skins/Osmosis/pledit.png
+share/audacious/Skins/Osmosis/pledit.txt
+share/audacious/Skins/Osmosis/posbar.png
+share/audacious/Skins/Osmosis/shufrep.png
+share/audacious/Skins/Osmosis/skin.hints
+share/audacious/Skins/Osmosis/text.png
+share/audacious/Skins/Osmosis/titlebar.png
+share/audacious/Skins/Osmosis/viscolor.txt
+share/audacious/Skins/Osmosis/volume.png
+share/audacious/Skins/Refugee/
+share/audacious/Skins/Refugee/cbuttons.png
+share/audacious/Skins/Refugee/eq_ex.png
+share/audacious/Skins/Refugee/eqmain.png
+share/audacious/Skins/Refugee/main.png
+share/audacious/Skins/Refugee/monoster.png
+share/audacious/Skins/Refugee/nums_ex.png
+share/audacious/Skins/Refugee/playpaus.png
+share/audacious/Skins/Refugee/pledit.png
+share/audacious/Skins/Refugee/pledit.txt
+share/audacious/Skins/Refugee/posbar.png
+share/audacious/Skins/Refugee/shufrep.png
+share/audacious/Skins/Refugee/skin.hints
+share/audacious/Skins/Refugee/text.png
+share/audacious/Skins/Refugee/titlebar.png
+share/audacious/Skins/Refugee/viscolor.txt
+share/audacious/Skins/Refugee/volume.png
+share/audacious/Skins/TinyPlayer/
+share/audacious/Skins/TinyPlayer/balance.png
+share/audacious/Skins/TinyPlayer/cbuttons.png
+share/audacious/Skins/TinyPlayer/eq_ex.png
+share/audacious/Skins/TinyPlayer/eqmain.png
+share/audacious/Skins/TinyPlayer/main.png
+share/audacious/Skins/TinyPlayer/monoster.png
+share/audacious/Skins/TinyPlayer/nums_ex.png
+share/audacious/Skins/TinyPlayer/playpaus.png
+share/audacious/Skins/TinyPlayer/pledit.png
+share/audacious/Skins/TinyPlayer/pledit.txt
+share/audacious/Skins/TinyPlayer/posbar.png
+share/audacious/Skins/TinyPlayer/shufrep.png
+share/audacious/Skins/TinyPlayer/skin.hints
+share/audacious/Skins/TinyPlayer/text.png
+share/audacious/Skins/TinyPlayer/titlebar.png
+share/audacious/Skins/TinyPlayer/viscolor.txt
+share/audacious/Skins/TinyPlayer/volume.png
+share/locale/ar/LC_MESSAGES/audacious-plugins.mo
+share/locale/be/LC_MESSAGES/audacious-plugins.mo
+share/locale/bg/LC_MESSAGES/audacious-plugins.mo
+share/locale/ca/LC_MESSAGES/audacious-plugins.mo
+share/locale/cmn/LC_MESSAGES/audacious-plugins.mo
+share/locale/cs/LC_MESSAGES/audacious-plugins.mo
+share/locale/da/LC_MESSAGES/audacious-plugins.mo
+share/locale/de/LC_MESSAGES/audacious-plugins.mo
+share/locale/el/LC_MESSAGES/audacious-plugins.mo
+share/locale/en_GB/LC_MESSAGES/audacious-plugins.mo
+share/locale/es/LC_MESSAGES/audacious-plugins.mo
+share/locale/es_AR/LC_MESSAGES/audacious-plugins.mo
+share/locale/es_MX/LC_MESSAGES/audacious-plugins.mo
+share/locale/et/LC_MESSAGES/audacious-plugins.mo
+share/locale/fi/LC_MESSAGES/audacious-plugins.mo
+share/locale/fr/LC_MESSAGES/audacious-plugins.mo
+share/locale/gl/LC_MESSAGES/audacious-plugins.mo
+share/locale/hu/LC_MESSAGES/audacious-plugins.mo
+share/locale/id_ID/LC_MESSAGES/audacious-plugins.mo
+share/locale/it/LC_MESSAGES/audacious-plugins.mo
+share/locale/ja/LC_MESSAGES/audacious-plugins.mo
+share/locale/ko/LC_MESSAGES/audacious-plugins.mo
+share/locale/lt/LC_MESSAGES/audacious-plugins.mo
+share/locale/lv/LC_MESSAGES/audacious-plugins.mo
+share/locale/ml_IN/LC_MESSAGES/audacious-plugins.mo
+share/locale/ms/LC_MESSAGES/audacious-plugins.mo
+share/locale/nl/LC_MESSAGES/audacious-plugins.mo
+share/locale/pl/LC_MESSAGES/audacious-plugins.mo
+share/locale/pt_BR/LC_MESSAGES/audacious-plugins.mo
+share/locale/pt_PT/LC_MESSAGES/audacious-plugins.mo
+share/locale/ru/LC_MESSAGES/audacious-plugins.mo
+share/locale/si/LC_MESSAGES/audacious-plugins.mo
+share/locale/sk/LC_MESSAGES/audacious-plugins.mo
+share/locale/sr/LC_MESSAGES/audacious-plugins.mo
+share/locale/sr_RS/LC_MESSAGES/audacious-plugins.mo
+share/locale/sv/LC_MESSAGES/audacious-plugins.mo
+share/locale/ta/LC_MESSAGES/audacious-plugins.mo
+share/locale/tr/LC_MESSAGES/audacious-plugins.mo
+share/locale/uk/LC_MESSAGES/audacious-plugins.mo
+share/locale/zh_CN/LC_MESSAGES/audacious-plugins.mo
+share/locale/zh_TW/LC_MESSAGES/audacious-plugins.mo
On Wed 08/04/2020 13:43, Stuart Henderson wrote:
> audacious itself looks good but plugins build fails for me:
>
> streamtuner.cc:22:10: fatal error: 'libaudqt/treeview.h' file not found
> #include <libaudqt/treeview.h>
> ^~~~~~~~~~~~~~~~~~~~~
> 1 error generated.
> Failed to compile streamtuner.cc (plugin)!
>
> autoconf log below.

It seems that your build picked up Qt5Network thus enabling Stream
tuner. The latter depends on libaudqt, which is not build/installed
because I opted for disabling qt5 support. Fix is to add
'--disable-streamtuner' to CONFIGURE_ARGS.

> I wonder, would this be a good opportunity to reorganise it so that
> "pkg_add audacious" gives you something usable? (Currently "pkg_add
> audacious-plugins" is needed and it's not very clear..)
>
> It could be organised like this
>
> path package @pkgpath
> meta/audacious audacious-4.0.1 audio/audacious
> audio/audacious/player audacious-player-4.0.1 (none needed)
> audio/audacious/plugins audacious-plugins-4.0.1 audio/audacious-plugins
>
> and audio/audacious/player would need an @conflict on the old version
> (audacious-<4.0 would do), the others don't need an @conflict ..

I think this makes sense. Attached is a new diff which (should)
addresses the build error and reorganises audacious as laid out by you.
Please note that this patch should be applied in /usr/ports/audio.

Also included is a tarball for the metapackage.

No comments:

Post a Comment