From owner-freebsd-hackers@FreeBSD.ORG Fri Feb 9 00:02:24 2007 Return-Path: X-Original-To: freebsd-hackers@freebsd.org Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 5571E16A405 for ; Fri, 9 Feb 2007 00:02:24 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from mxout5.cac.washington.edu (mxout5.cac.washington.edu [140.142.32.135]) by mx1.freebsd.org (Postfix) with ESMTP id 529F413C441 for ; Fri, 9 Feb 2007 00:02:23 +0000 (UTC) (envelope-from youshi10@u.washington.edu) Received: from hymn08.u.washington.edu (hymn08.u.washington.edu [140.142.13.238]) by mxout5.cac.washington.edu (8.13.7+UW06.06/8.13.7+UW06.09) with ESMTP id l1902BHP020219 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Thu, 8 Feb 2007 16:02:11 -0800 Received: from localhost (localhost [127.0.0.1]) by hymn08.u.washington.edu (8.13.7+UW06.06/8.13.7+UW06.09) with ESMTP id l1902BFK030701 for ; Thu, 8 Feb 2007 16:02:11 -0800 X-Auth-Received: from [192.55.52.1] by hymn08.u.washington.edu via HTTP; Thu, 08 Feb 2007 16:02:11 PST Date: Thu, 8 Feb 2007 16:02:11 -0800 (PST) From: youshi10@u.washington.edu To: freebsd-hackers@freebsd.org In-Reply-To: <20070208125910.A87229@xorpc.icir.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-PMX-Version: 5.3.0.289146, Antispam-Engine: 2.5.0.283055, Antispam-Data: 2007.2.8.154934 X-Uwash-Spam: Gauge=IIIIIII, Probability=7%, Report='NO_REAL_NAME 0, __CT 0, __CT_TEXT_PLAIN 0, __HAS_MSGID 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __SANE_MSGID 0' Subject: Re: kernel headers dependency graph ? (systm.h tangle) X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Feb 2007 00:02:24 -0000 On Thu, 8 Feb 2007, Luigi Rizzo wrote: > Hi, > Is there a tool to produce a dependency graph for C headers ? > > If that matters (i.e. someone has already studied it), > i am interested in the header situation in the FreeBSD kernel. > > It may be a well known thing, but i just realized > that is entagled with and both bring > in a lot of other headers, and you cannot bring in simply > the string.h functions, or printf, because there is no > leaf header for them. > I don't know if this is the only case, or there are other > 'classes' which are intermixed with lots of other stuff. > > I suppose the problem has been already discussed and it is just > the result of historical reasons, but is there any reason other > than ENOTIME why (to cite things that are trivial to fix while > preserving compatibility): > > - we don't have sys/string.h with all the memcpy/bcopy and friends > that are currently spread between systm.h and libkern.h > > - printf/scanf and strto*() are not in their own header; > > and so on ? > > cheers > luigi Not sure if it's been done before, but it sounds like a good job for Perl or (I can't believe I'm suggesting this) Ruby. -Garrett