El Wed, 14 Feb 2024 19:27:11 +0100 Omar Polo <o...@omarpolo.com> escribió: > On 2024/02/13 11:48:26 -0600, izder456 <izder...@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 <izder...@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