From owner-freebsd-drivers@FreeBSD.ORG Sat Sep 17 19:57:01 2005 Return-Path: X-Original-To: freebsd-drivers@freebsd.org Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D612C16A41F for ; Sat, 17 Sep 2005 19:57:01 +0000 (GMT) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (vc4-2-0-87.dsl.netrack.net [199.45.160.85]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73B5243D46 for ; Sat, 17 Sep 2005 19:57:01 +0000 (GMT) (envelope-from imp@bsdimp.com) Received: from localhost (localhost.village.org [127.0.0.1] (may be forged)) by harmony.bsdimp.com (8.13.3/8.13.3) with ESMTP id j8HJu0c7093051; Sat, 17 Sep 2005 13:56:00 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Sat, 17 Sep 2005 13:56:10 -0600 (MDT) Message-Id: <20050917.135610.68256548.imp@bsdimp.com> To: ttw@cobbled.net From: "M. Warner Losh" In-Reply-To: <20050917183132.GK6440@eyore.cobbled.net> References: <20050917173941.GJ6440@eyore.cobbled.net> <20050917.120027.32524785.imp@bsdimp.com> <20050917183132.GK6440@eyore.cobbled.net> X-Mailer: Mew version 3.3 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0 (harmony.bsdimp.com [127.0.0.1]); Sat, 17 Sep 2005 13:56:00 -0600 (MDT) Cc: freebsd-drivers@freebsd.org Subject: Re: basic driver build environment X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 17 Sep 2005 19:57:01 -0000 In message: <20050917183132.GK6440@eyore.cobbled.net> n0g0013 writes: : On 17.09-12:00, M. Warner Losh wrote: : [ ... ] : > : a. cleaner config for building modules in random : > : directory (thought '-I' to make would work but it doesn't) : [ ... ] : > When I'm developing a new module, I do the following: : > : > setenv SYSDIR /path/to/freebsd/src/sys : > make : > : > The Makefile looks like : > : > # Maybe have a .PATH here : > : > KMOD= foo : > SRCS= foo_a foo_b : > : > .include : > : > At work, we wrap setting SYSDIR in an include file, since our build : > system knows about it. : : i get the following (plus more similar) error/s : : @/sys/bus.h:456:23: device_if.h: No such file or directory : : even when setting the SYSDIR to "/usr/src/sys". perhaps i'm missing : something about the "wrap setting SYSDIR in an include file" to make : it work??? : : if i understand correctly it's looking for the kernel architecture : files from the kernel build (i.e in the 'obj' directory). : : apologies if i'm being braindamaged here. Add bus_if.h and device_if.h to your SRCS line. They are generated. If it is a pci device, you'll also need pci_if.h Warner