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>


Attachment: deadbeef-plugin-mpris2.tar.gz
Description: GNU Zip compressed data

Reply via email to