Download raw body.
NEW: audio/deadbeef-plugin-mpris2
On 2024/02/13 11:48:26 -0600, izder456 <izder456@disroot.org> wrote:
> Hey ports@,
>
> I want to import the mpris2 plugin for the DeaDBeeF music player.
>
> This allows mpris2 support in the music player, so ports like
> multimedia/playerctl can interface with and operate DeaDBeeF.
>
> A couple questions:
>
> 1. I put this in CATEGORY = audio, I'm unsure if this was the correct
> location for a plugin like this. Is there a better (possibly more
> suitable CATEGORY for this port?)
I think audio is fine.
> 2. portcheck returns
> ```
> the following libraries in WANTLIB look like masked by RUN_DEPENDS:
> gio-2.0 glib-2.0 gmodule-2.0 gobject-2.0 gthread-2.0 iconv intl ffi
> audio/deadbeef-plugin-mpris2
> ```
> is this normal? I don't exactly know what this means or what I should
> do to suppress it if its not OK..
it's an edge case. TL;DR, remove deadbeef from RUN_DEPENDS, re-run make
port-lib-depends-check, fix LIB_DEPENDS, re-add deadbeef to RUN_DEPENDS.
longer explanation: the port links to glib (plus a lot of other
dependencies) and it's not listed in LIB_DEPENDS. Yet, it's reachable
at runtime via audio/deadbeef, so portchecks detects that you're missing
something in LIB_DEPENDS. The idea of "masked ldeps" means a
LIB_DEPENDS that's not actually listed as LIB_DEPENDS.
then, some comments about the port.
- the identation is a bit inconsistent. make sure your editor is
configured with tabs 8 columns wide (that's emacs default, but YMMV)
- HOMEPAGE is set by DIST_TUPLE = github
- add a missing build depends on audio/deadbeef
- listing a library as BUILD_DEPENDS is 99.99% of the times wrong.
libffi is a LIB_DEPENDS.
- (matter of personal style) tidy CONFIGURE_ENV by defining some local
variables
- CONFIGURE_ARGS is not needed, and even if it were it would be --prefix
${PREFIX} or ${TRUEPREFIX}, not ${LOCALBASE}. {TRUE,}PREFIX is for
this very port, LOCALBASE is where other ports are installed.
In practice the difference doesn't matter, but use the right variable
nevertheless.
- bump AUTOCONF_VERSION to 2.71: there are a couple of warnings about
deprecated macros, but otherwise works. 2.69 is a bit ancient.
- why removing the *la files?
I'm attaching an updated ports and a diff against your makefile. The
port looks fine to me now, but as I don't use deadbeef I haven't gone
further than `make package'.
--- Makefile.orig Wed Feb 14 18:49:28 2024
+++ Makefile Wed Feb 14 19:15:33 2024
@@ -1,13 +1,11 @@
COMMENT = deadbeef plugin for mpris2 support
-V = 1.16
+V = 1.16
DIST_TUPLE += github DeaDBeeF-Player deadbeef-mpris2-plugin v${V} .
PKGNAME = deadbeef-plugin-mpris2-${V}
CATEGORIES = audio
-HOMEPAGE = https://github.com/DeaDBeeF-Player/deadbeef-mpris2-plugin
-
MAINTAINER = izzy Meyer <izder456@disroot.org>
# GPL v2 only
@@ -16,30 +14,25 @@
WANTLIB += gio-2.0 glib-2.0 gmodule-2.0 gobject-2.0 gthread-2.0
WANTLIB += pthread iconv intl pcre2-8 z ffi
-COMPILER = base-clang ports-gcc
-
-
-LIB_DEPENDS = devel/pcre2
-BUILD_DEPENDS = devel/libtool \
- devel/libffi \
- devel/pcre2
+LIB_DEPENDS = devel/glib2 \
+ devel/libffi \
+ devel/pcre2
+BUILD_DEPENDS = audio/deadbeef \
+ devel/libtool
RUN_DEPENDS = audio/deadbeef
CONFIGURE_STYLE = autoreconf
-CONFIGURE_ENV += CPPFLAGS='-I${LOCALBASE}/include \
- -I${X11BASE}/include' \
- LDFLAGS='-L${LOCALBASE}/lib -L${X11BASE}/lib' \
+CPPFLAGS += -I${LOCALBASE}/include \
+ -I${X11BASE}/include
+LDFLAGS += -L${LOCALBASE}/lib \
+ -L${X11BASE}/lib
+CONFIGURE_ENV += CPPFLAGS='${CPPFLAGS}' \
+ LDFLAGS='${LDFLAGS}'
-CONFIGURE_ARGS = --prefix ${LOCALBASE} \
- --disable-static
-
LIBTOOL_FLAGS = --tag=disable-static
-AUTOCONF_VERSION = 2.69
+AUTOCONF_VERSION = 2.71
AUTOMAKE_VERSION = 1.16
-
-post-install:
- @rm ${PREFIX}/lib/deadbeef/*.la
.include <bsd.port.mk>
NEW: audio/deadbeef-plugin-mpris2