Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 4 Oct 1998 19:19:43 +0000
From:      dmaddox@scsn.net (Donald J. Maddox)
To:        Mike Smith <mike@smith.net.au>
Cc:        current@FreeBSD.ORG
Subject:   Re: Shouldn't 'make includes' install stand.h?
Message-ID:  <19981004191943.A422@scsn.net>
In-Reply-To: <199810042108.OAA06658@dingo.cdrom.com>; from Mike Smith on Sun, Oct 04, 1998 at 02:08:42PM -0700
References:  <19981004133239.A309@scsn.net> <199810042108.OAA06658@dingo.cdrom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Oct 04, 1998 at 02:08:42PM -0700, Mike Smith wrote:
> > > > Shouldn't a 'make -DCLOBBER includes' result in a _complete_ set
> > > > of includes?  Are there other includes than stand.h that don't
> > > > get installed by 'make includes'?
> > > 
> > > No.  "Make includes" installs random header files.  libstand.h is 
> > > installed at the same time libstand is; if you install just the former, 
> > > you're going to die in the link phase when you can't find the latter.
> > 
> >     'Random header files'?  Ok, if you say so, but so far, the only "standard"
> > component of /usr/include I've managed to identify as _not_ installed by
> > 'make includes' is stand.h.  This seems counterintuitive to me...
> 
> libstand.h is not a "standard" component of /usr/include, any more than 
> eg. zlib.h.
> 
> >     Your point about installing the header without the lib is valid, but it
> > seems to me that this is applicable to just about all of the includes, in one
> > way or another.  Maybe there shouldn't be a 'make includes' target at all?
> 
> 'make includes' theoretically exists as a catchall to install headers
> not associated with any particular item.  It's commonly abused to avoid 
> the chicken-and-egg problem that occurs when you try to build a tool 
> that consumes an interface to something else that hasn't been built yet.
> 
> >     I'm not trying to be combative here; this is not a religious issue to
> > me...  The current behavior just seems to me to violate POLA.
> 
> Only if you have misapprehensions about what 'make includes' does.  It 
> seems mostly to trip up people with such misapprehensions.

Well, I can only plead guilty as charged.

If I want to rebuild everything in /usr/bin, I can cd to /usr/src/bin,
type 'make all install', and watch everything in /usr/bin be rebuilt.
The same applies to /bin, /sbin, /usr/sbin, /usr/share, etc., etc., etc.

I thought the 'make includes' target was intended to rebuild /usr/include
in the same way; it appears, however, that the only way to repopulate the
/usr/include dir _completely_ is 'make world'.  Oh well...


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



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