'make -DNO_DEPENDS install' causing error
Peter Pentchev
roam at ringlet.net
Mon Nov 5 03:43:05 PST 2007
On Wed, Oct 31, 2007 at 09:44:13AM -0700, Doug Barton wrote:
> On Wed, 31 Oct 2007, Peter Pentchev wrote:
>
>> On Wed, Oct 31, 2007 at 09:21:54AM -0700, Doug Barton wrote:
>>> On Wed, 31 Oct 2007, Peter Pentchev wrote:
>>>
>>>> Errr... maybe I should actually take a careful look at portmaster first,
>>>> but after a cursory look at portmaster.sh.in... how do you handle the
>>>> case of a port installation that executes commands from a runtime
>>>> dependency? That is, a runtime dependency that is actually used at
>>>> install time, too?
>>>
>>> That should be a build dependency then. I'll take a look at the example
>>> you
>>> cited, but my gut feeling is that what you're describing shouldn't
>>> happen.
>>
>> Erm, nope... A build dependency is not meant to modify anything
>> on the user's system,
>
> Except building the new port of course. :)
Well, sure :) I should have mentioned "not meant to modify anything
in ${PREFIX}" - and, of course, this does not cover the case when
${WKRDIRPREFIX} is within ${PREFIX}, but that's a whole 'nuther kettle
of fish there :)
>> but the installation process may need to, say, rebuild indexes or
>> otherwise update some kind of configuration. Think add-on packages - some
>> of them might need some kind of registration in the main package's
>> configuration.
>>
>> At least that's the way I see it, and ICBW, but I think that there are
>> various legitimate cases when a run-time dependency ought to be installed
>> before the package installation itself.
>
> I guess what I'm getting at is that (as far as I can see) that's not what
> happens now. The parent port is installed first, then run depends are
> checked. But like I said, I'll take a look at your original example, and
> those below.
Errrr... do you mean that's what happens now in the ports collection,
when a "make install" is issued in a directory with a Makefile which
includes bsd.port.mk?! 'Cause, you know, that's just... not true :)
You could either check it yourself, by running "make install" in
a port directory and looking at the sequence of actions :) Or you could
check the _INSTALL_SEQ and _INSTALL_SUSEQ variables in bsd.port.mk around
line 4117 - "run-depends" is in _INSTALL_SEQ, "do-install" is in
_INSTALL_SUSEQ, and bsd.port.mk runs the _SEQ targets before _SUSEQ
(bsd.port.mk around line 4176 for the normal case and 4161-4167 for
the su-use case).
The Ports Collection as such processes the runtime dependencies before
actually running the port's install target.
>> For more examples, take a look at the plist of most X11 fonts (@exec
>> fc-cache), most JDK implementations (@exec registervm), most docbook-*
>> ports (@exec xmlcatmgr), some GNOME ports like gnomevfs (@exec
>> gconftool-2), and many others.
G'luck,
Peter
--
Peter Pentchev roam at ringlet.net roam at cnsys.bg roam at FreeBSD.org
PGP key: http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553
This sentence is false.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20071105/306b502a/attachment.pgp
More information about the freebsd-ports
mailing list