cvs commit: src/usr.sbin/config main.c
Ruslan Ermilov
ru at FreeBSD.org
Fri Apr 22 22:05:10 PDT 2005
On Fri, Apr 22, 2005 at 01:58:34PM -0700, Marcel Moolenaar wrote:
> On Apr 22, 2005, at 1:34 PM, Ruslan Ermilov wrote:
>
> >>>I personally fail to see how this can be solved... :-(
> >>
> >>Ok, what about this:
> >>mkdep(1) creates lines of the form
> >>
> >> foo.o: foo.c inc1.h inc2.h
> >>
> >>Would this problem be solved if mkdep(1) created lines like:
> >>
> >> foo.o .depend: foo.c inc1.h inc2.h
> >>
> >>or equivalent?
> >>
> >>Would something else break if we do that?
> >>
> >I fail to see what this gives us, except for also breaking
> >"make .depend" when .depend is present and inc2.h disappears.
>
> True, there is a phase ordering problem. But isn't that something
> that can be worked around by making the necessary adjustments to
> make(1). The adjustments would be that if .depend is out of
> date, it is being made without making any sources that are out
> of date (or missing). This may require adding a special source
> to the mix of special sources that make(1) already has: .SOFTDEP
> or something like that. One can also hardcode this special case,
> but that seems ugly.
>
That's an idea! I've tested the following, and it seems that it
can be made to work, after some polishing. In .depend, have the
following dependencies generated by mkdep(1):
.depend: <all sources>
.for f in <all sources>
.if !exists($f)
$f:
.endif
.endfor
Cheers,
--
Ruslan Ermilov
ru at FreeBSD.org
FreeBSD committer
-------------- 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/cvs-all/attachments/20050423/0b60617e/attachment.bin
More information about the cvs-all
mailing list