Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 May 2001 17:37:54 +0100
From:      Brian Somers <brian@Awfulhak.org>
To:        Warner Losh <imp@village.org>
Cc:        Brian Somers <brian@Awfulhak.org>, Bruce Evans <bde@zeta.org.au>, cvs-all@FreeBSD.org, current@FreeBSD.org, freebsd-arch@FreeBSD.org
Subject:   Re: Where to put include files (was: cvs commit: src Makefile.inc1) 
Message-ID:  <200105171637.f4HGbsb65668@hak.lan.Awfulhak.org>
In-Reply-To: Message from Warner Losh <imp@village.org>  of "Thu, 17 May 2001 10:00:25 MDT." <200105171600.f4HG0Pl05438@billy-club.village.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
[cc'd to -arch and not to cvs-committers]

For anyone that's reading -arch and hasn't seen this on -current, the 
thread is discussing userland sources that have -I../../sys in their 
Makefile and then #include <sys/dev/blahio.h>.

I think everyone agrees that these headers should be made public, the 
question is ``where to put them ?''.

Warner wrote:
> In message <200105171233.f4HCXhb62786@hak.lan.Awfulhak.org> Brian
> Somers writes:
> : Solaris calls it's ioctl files /usr/include/sys/<driver>_io.h so I'd 
> : spell digiio.h /usr/include/sys/digi_io.h.
> 
> Actually, the more I think about it, the more I like putting it in
> /usr/include/sys/fooio.h.  We have lots of other files there now.  The
> down side to this approach is that it breaks up the driver sources
> that we've been trying to concentrate into sys/dev/foo/* (or
> introduces asymetry such that you can't just toss in a -I/sys and have
> the same tree that gets stuck under /usr/include).

The SHARED variable in src/include/Makefile makes this side of things 
tricky too - we've got to be careful that we either keep our sources 
together and maintain a resemblance of the hierarchy in /usr/include 
or split our sources.

When I was working on Solaris I found it better to have the *io.h 
files in sys (separate from the driver) as it made it very clear that 
it was a public interface - the driver lived somewhere that just got 
built into a module and wasn't seen by the outside world.

So I think I'd tend to vote (FWIW) for moving digiio.h (and other 
similar things) out of sys/dev/<drivername>/ and into sys/sys/.

Comments ?

-- 
Brian <brian@Awfulhak.org>                        <brian@[uk.]FreeBSD.org>
      <http://www.Awfulhak.org>;                   <brian@[uk.]OpenBSD.org>
Don't _EVER_ lose your sense of humour !



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




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