On 2025/08/05 08:46, Antoine Jacoutot wrote:
> On Tue, Aug 05, 2025 at 08:04:51AM +0200, Matthieu Herrb wrote:
> > On Mon, Aug 04, 2025 at 12:16:28PM +0200, Antoine Jacoutot wrote:
> > > On August 4, 2025 11:37:56 AM GMT+02:00, Matthieu Herrb 
> > > <[email protected]> wrote:
> > > >On Mon, Aug 04, 2025 at 11:24:28AM +0200, Antoine Jacoutot wrote:
> > > >> On Mon, Aug 04, 2025 at 10:55:10AM +0200, Matthieu Herrb wrote:
> > > >> > Hi,
> > > >> > 
> > > >> > Since wlroots upstreams has decided to include the library version
> > > >> > number in  its name, managing dependencies on wlroots over updates
> > > >> > (and 0.19.0 is ready) has become a bit annoying.
> > > >> > 
> > > >> > The diff below intruduces a wlroots module and uses it in the current
> > > >> > ports depending on wlroots.
> > > >> > 
> > > >> > Comments? Ok?
> > > >> 
> > > >> I think you could simplify this by making it explicit in the module 
> > > >> instead of
> > > >> its consumers.
> > > >> 
> > > >> +               wayland/wlroots>=${MODWLR_VERSION_MAIN}
> > > >> 
> > > >> Also that will not prevent having to bump all consumers when wlroots
> > > >> is updated.
> > > >
> > > >Generally the consumers needs to be updated to catch up with wlroots
> > > >API breakage anyways. But I'd like to simplify the work.
> > > 
> > > Sure. But I still think managing LIB_DEPENDS in the module would simplify 
> > > things.
> > > And as a matter of fact we should do the same with WANTLIB. 
> > > 
> > 
> > New version, provinding automatic LIB_DEPENDS and WANTLIB handling:
> 
> OK for me with 2 tweaks:
> - it seems you don't need MODWLR_VERSION in SUBST_VARS

+1, it's risky to add this to ports just using the MODULE, in case it
accidentally matches their own version or a string in some filenamr
and gets substituted by 'make plist'.

I think it's probably only useful in wlroots/Makefile.

> - it needs to be documented in port-modules(5).
> 
> > Index: wlroots/Makefile
> > ===================================================================
> > RCS file: /local/cvs/ports/wayland/wlroots/Makefile,v
> > diff -u -p -u -r1.11 Makefile
> > --- wlroots/Makefile        16 Dec 2024 18:25:23 -0000      1.11
> > +++ wlroots/Makefile        5 Aug 2025 06:03:16 -0000
> > @@ -1,6 +1,7 @@
> >  COMMENT =  modular Wayland compositor library
> >  
> > -V =                0.18.2
> > +V =                ${MODWLR_VERSION}
> > +REVISION = 0
> >  EPOCH =            0
> >  DISTNAME = wlroots-${V}
> >  CATEGORIES =       wayland
> > @@ -14,7 +15,7 @@ PERMIT_PACKAGE = Yes
> >  
> >  SHARED_LIBS +=  wlroots-0.18 0.0 # 0.0
> >  
> > -MODULES =  devel/meson
> > +MODULES =  devel/meson wayland/wlroots
> >  
> >  WANTLIB += EGL GLESv2 drm gbm m pixman-1
> >  WANTLIB += display-info lcms2 liftoff udev
> > Index: wlroots/wlroots.port.mk
> > ===================================================================
> > RCS file: wlroots/wlroots.port.mk
> > diff -N wlroots/wlroots.port.mk
> > --- /dev/null       1 Jan 1970 00:00:00 -0000
> > +++ wlroots/wlroots.port.mk 5 Aug 2025 06:03:16 -0000
> > @@ -0,0 +1,9 @@
> > +MODWLR_VERSION_MAIN =      0.18
> > +MODWLR_VERSION_MINOR =     2
> > +MODWLR_VERSION =   ${MODWLR_VERSION_MAIN}.${MODWLR_VERSION_MINOR}
> > +
> > +WANTLIB +=         wlroots-${MODWLR_VERSION_MAIN}

I'd prefer a separate var, to make it simpler if somebody needs to use
it in WANTLIB-foo in a port with subpackages etc.

MODWLR_WANTLIB =        wlroots-${MODWLR_VERSION_MAIN}
WANTLIB +=              ${MODWLR_WANTLIB}

btw

<symphytum:/usr/ports/wayland>$ grep 53 wlroots/pkg/DESCR            that 
implement components common to many compo53sitors, such as the

Reply via email to