[RFC] NO_INSTALL in meta-ports considered harmful

Marcin Wisnicki mwisnicki+freebsd at gmail.com
Sun May 10 21:28:49 UTC 2009


On Sun, 10 May 2009 15:22:04 -0400, Glen Barber wrote:

> On Sun, May 10, 2009 at 2:51 PM, Marcin Wisnicki
> <mwisnicki+freebsd at gmail.com> wrote:
>> They will be installed since they are run dependencies.
>>
>>From what I can tell (from several metaports) -- they, themselves, are
> not installed.  The ports defined in the metaport are installed.

That's the point. The metaports should be installed as well (reasons given 
in my original mail).

> There is no source code for, using your example, CUPS[1].  CUPS (in the
> FreeBSD ports tree) is, for lack of a better explanation, a pointer to
> which specific ports you need to have in order to get a fully operation
> CUPS system running.  Looking at the Makefile for print/cups [2] you can
> see the dependencies and that CUPS is not actually built (which in
> definition is what makes this a metaport).

I know this.

The proper way to make a metaport is to:
1. use only RUN_DEPENDS
2. set NO_BUILD
3. do *NOT* set NO_INSTALL
4. provide empty do-install target

There are several metaports that get it right, like for example x11/gnome2:

http://www.freebsd.org/cgi/cvsweb.cgi/ports/x11/gnome2/Makefile?rev=1.155



More information about the freebsd-ports mailing list