Download raw body.
NEW: audio/deadbeef-plugin-mpris2
El Wed, 14 Feb 2024 19:27:11 +0100
Omar Polo <op@omarpolo.com> escribió:
> 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>
>
>
Good observations @Omar, I have learned a lot from that!
I have built the port and installed it with your changes, everything
works correctly.
--
*********************************************************
Dios en su cielo, todo bien en la Tierra
NEW: audio/deadbeef-plugin-mpris2