make config-recursive for an individual port

Gary Aitken freebsd at dreamchaser.org
Sun Jan 31 00:59:11 UTC 2021


On 1/30/21 3:31 PM, RW via freebsd-questions wrote:
> On Sat, 30 Jan 2021 10:43:42 -0700
> Gary Aitken wrote:
>> On 1/30/21 10:14 AM, Steve O'Hara-Smith wrote:
>>> On Sat, 30 Jan 2021 17:08:28 +0000
>>> RW via freebsd-questions <freebsd-questions at freebsd.org> wrote:
...
>> I understand the -recursive will configure dependent ports.  What I
>> don't understand is why it would configure dependent ports which are
>> already installed, since they will not be reinstalled.
> 
> Because you asked it to by using the 'config-recursive' target rather
> than 'config'. The config-recursive target is a lot older than pkg(8)
> and it's not optimised for what you are trying to do.

thanks, historical cruft is not a good justification but is certainly
understandable.

> Probably what you want is:
> 
>     make config
>     make -DBATCH install
> 
> or just the second line if you want the default options for the current
> port.

Unfortunately, no.  Let me ask something different.  Is there a way to say
"configure recursively all uninstalled ports required for this port"?

> As already mentioned running "make missing" and pre-installing
> missing packages with pkg(8) makes sense if you want to save time,
> though not necessarily effort.

Thanks, yes, that is more useful for my situation in most cases.  However,
in this case some of the dependent ports don't have a package, so it would
still be nice to configure only those ports without packages prior to doing
a build.  I guess that means doing something like
     make missing | xargs -L 1 pkg install -Ay
     make missing | xargs -L 1 make config

Gary



More information about the freebsd-questions mailing list