Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 07 Dec 2004 13:08:53 -0600
From:      "Jeremy Messenger" <mezz7@cox.net>
To:        "Stijn Hoop" <stijn@win.tue.nl>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: 'dynamic' options questions
Message-ID:  <opsinjg3ct9aq2h7@mezz.mezzweb.com>
In-Reply-To: <20041207185301.GL39558@pcwin002.win.tue.nl>
References:  <20041207185301.GL39558@pcwin002.win.tue.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 7 Dec 2004 19:53:01 +0100, Stijn Hoop <stijn@win.tue.nl> wrote:

> Hi,
>
> I notice that there is a trend towards having ports autodetect software
> dependencies. While I appreciate this in the (common) desktop case, this  
> does
> lead to some IMHO nasty inconsistencies while building packages to use  
> for
> other computers; the order in which the ports get built interferes, or  
> could
> even disable functionality while later on the 'correct' dependencies are
> installed.
>
> One such example that I just saw today, is net/gaim. From the Makefile:
>
> %%%
> .if ${HAVE_GNOME:Mevolutiondataserver}!=""
> USE_GNOME+=     evolutiondataserver
> PLIST_SUB+=     EVO=""
> .else
> CONFIGURE_ARGS+=--disable-gevolution
> PLIST_SUB+=     EVO="@comment "
> .endif
> %%%
>
> Again, I do appreciate the idea behind this as I'm sure that users with
> evolution installed, who then proceed to install gaim using the port,  
> will be
> pleased to see that they neatly blend functionality.
>
> In my package build jail this backfires though. And in this case there  
> isn't
> even an option to turn the support on. And I think dosirak or pointyhat  
> (which
> is it these days?) will never build support for evolution into gaim,  
> right?

The best solution is to create a slave port, gaim-evolution or  
gaim-whatever.

> So, I guess what I'm asking is:
>
> - what's the 'correct' way of doing auto-dependencies

This is correct way. If you want it to be add in the package, then just  
add defined(PACKAGE_BUILDING) like this:

.if ${HAVE_GNOME:Mevolutiondataserver}!="" || defined(PACKAGE_BUILDING)

But, I don't think it's good idea and best to do is create a slave port  
because not everybody want this feature.

Cheers,
Mezz

> - is the form in which there is no way of forcing such a dependency a bug
>   (ie can I send-pr this example and any others I come across)
>
> And maybe even generalizing this to:
>
> - why are things like this off by default? (because in the common  
> desktop case
>   optimizing for size and gaining a few tens of MB is not really  
> necessary
>   IMHO)
>
> Thoughts?
>
> --Stijn


-- 
mezz7@cox.net  -  mezz@FreeBSD.org
FreeBSD GNOME Team
http://www.FreeBSD.org/gnome/  -  gnome@FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?opsinjg3ct9aq2h7>