Re: The port build failed claiming a runtime dependency on libmuffin.

From: Paul Mather <paul_at_gromit.dlib.vt.edu>
Date: Wed, 10 May 2023 14:57:26 UTC
On Wed, 2023-05-10 at 10:21 -0400, Steven Friedrich wrote:
> On 5/10/23 9:51 AM, Steven Friedrich wrote:
> > On 5/9/23 11:45 AM, Andreas Perstinger wrote:
> > > On 09.05.23 17:34, Steven Friedrich wrote:
> > > > On 5/9/23 9:00 AM, Yuri wrote:
> > > > > Steven Friedrich wrote:
> > > > > > On 5/8/23 5:02 AM, Yuri wrote:
> > > > > > > The dependency is called x11-wm/muffin and it's recorded
> > > > > > > in
> > > > > > > x11/cinnamon/Makefile.
> > > > > > Respectfully, you're missing the point.  How can libmuffin
> > > > > > be a
> > > > > > dependency when it's not in our ports tree?  How does the
> > > > > > freebsd 
> > > > > > team
> > > > > > build cinnamon?  And why is a runtime dependency breaking a
> > > > > > build?
> > > > > Did you read my reply completely? Why - because it's not
> > > > > runtime-only
> > > > > dependency; try looking in the port Makefile.
> > > > > 
> > > > STILL, libmuffin is not in the ports tree.
> > > 
> > > Yuri is trying to tell you, that the port x11-wm/muffin provides 
> > > libmuffin.
> > > 
> > > The Makefile for x11/cinnamon, lines 18-19 [1]:
> > > 
> > > LIB_DEPENDS=    libcjs.so:lang/cjs \
> > >         libmuffin.so:x11-wm/muffin \
> > > 
> > > And pkg-plist for x11-wm/muffin, lines 229-231 [2]:
> > > 
> > > lib/libmuffin.so
> > > lib/libmuffin.so.0
> > > lib/libmuffin.so.0.0.0
> > > 
> > > Bye, Andreas
> > > [1] https://cgit.freebsd.org/ports/tree/x11/cinnamon/Makefile#n18
> > > [2]
> > > https://cgit.freebsd.org/ports/tree/x11-wm/muffin/pkg-plist#n229
> > > 
> > > 
> > > 
> > Looks like I still don't understand.  my meson log is attached.
> > 
> OK, I manually built muffin, and cinnamon builds.  I sent the build 
> break log of cinnamon to gnome@freebsd.org


Elsewhere in this thread you said you were tracking the quarterly
packages release, which is why x11-wm/muffin did not exist for you. 
Presumably, you switched over to the "latest" track, which is what
enabled you to build libmuffin and hence cinnamon.

How are you building your packages?  Are you using a tool such as
Poudriere that ensures a clean environment is used, via jails, to build
packages, or are you building natively on your system with installed
system packages installed?  If the latter, did you force-rebuild all
packages after switching from "quarterly" to "latest" to ensure there
were no stale/broken package dependencies?

Cheers,

Paul.