Date: Tue, 17 Apr 2012 11:52:26 +0100 From: Anton Shterenlikht <mexas@bristol.ac.uk> To: Dimitry Andric <dim@freebsd.org> Cc: Chris Rees <crees@freebsd.org>, Chris <behrnetworks@gmail.com>, Current FreeBSD <freebsd-current@freebsd.org>, "O. Hartmann" <ohartman@zedat.fu-berlin.de>, Doug Barton <dougb@freebsd.org> Subject: Re: "/sys/conf/kmod.mk", line 111: Malformed conditional (${MK_CLANG_IS_CC} Message-ID: <20120417105226.GA29511@mech-cluster241.men.bris.ac.uk> In-Reply-To: <4F8D3CB8.5090907@FreeBSD.org> References: <CADLo838ZKXXS4mVcjG3cnRp=aQdx5Cpas6DLiSsGQO1acqHnwQ@mail.gmail.com> <4F52286E.4030608@FreeBSD.org> <4F523C1A.4060008@zedat.fu-berlin.de> <CAFYLaXPveMM0RCoHSLpG8i2-i6cStWSPrf4FkzZu63Eg--UE%2Bw@mail.gmail.com> <4F8BBFF3.50205@FreeBSD.org> <CAFYLaXNfYD0E6UbXHO9gBYY0x3eNACQDstubaPZSL_6x4tMzSw@mail.gmail.com> <20120416230857.GA26957@mech-cluster241.men.bris.ac.uk> <4F8D3565.2020803@FreeBSD.org> <20120417093652.GA29091@mech-cluster241.men.bris.ac.uk> <4F8D3CB8.5090907@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Apr 17, 2012 at 11:49:44AM +0200, Dimitry Andric wrote: > On 2012-04-17 11:36, Anton Shterenlikht wrote: > >On Tue, Apr 17, 2012 at 11:18:29AM +0200, Dimitry Andric wrote: > ... > >>That said, i think it may be time to bow to the pressure, and just put a > >>fixup for this issue in kmod.mk, and the other .mk files, like I > >>initially did in r232473, but with a BIG FAT WARNING printed, so you at > >>least know you are attempting to shoot your extremities. :) > > > >No, I wouldn't want that. > >It's just that I thought the ports system > >never uses anything from /usr/src. > > Well, only the ports that build kernel modules need it, as far as I > know. This is because in FreeBSD we do not install the 'full' kernel > headers anywhere during installworld. > > Maybe we could adopt the Linux solution and dump them somewhere in a > versioned directory. :) > > > >Perhaps the ports which do use /sys should > >print a warning to the user. Something like > >"before building this port, make sure your > >installed world version matches the version > >of your FreeBSD sources." > > > >By the way, what would happen if I try > >to build those ports with no /sys at all? > > It would hopefully error out. If you look in /usr/share/mk/bsd.kmod.mk, > you will see this at the bottom: > > .if !defined(SYSDIR) || !exists(${SYSDIR}/kern/) || \ > !exists(${SYSDIR}/conf/kmod.mk) > .error Unable to locate the kernel source tree. Set SYSDIR to override. > .endif > > So, setting SYSDIR to the correct directory is also a possible solution. Ah.. I get it now. So the ports that build kernel modules invoke /usr/share/mk/bsd.kmod.mk, right? So how about adding a warning to the user (that /sys version must match the installed world version) at the beginning of this file? Who maintains this file, @ports or @head? -- Anton Shterenlikht Room 2.6, Queen's Building Mech Eng Dept Bristol University University Walk, Bristol BS8 1TR, UK Tel: +44 (0)117 331 5944 Fax: +44 (0)117 929 4423
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120417105226.GA29511>