Date: Sat, 27 Aug 2016 09:59:20 -0700 From: Kevin Oberman <rkoberman@gmail.com> To: "Russell L. Carter" <rcarter@pinyon.org> Cc: "Matthew D. Fuller" <fullermd@over-yonder.net>, FreeBSD Ports ML <freebsd-ports@freebsd.org> Subject: Re: Forcing poudriere to rebuild a package and all dependencies Message-ID: <CAN6yY1tXD%2BTt_vn8rHb37XDs6B4e2LESAKZhAJOgF2z31eNyKw@mail.gmail.com> In-Reply-To: <bbae8d87-4288-3261-6ff1-aae1db26098f@pinyon.org> References: <58f20db2-7d41-ee44-0ab3-0c57f638eee3@pinyon.org> <20160827134659.GT79735@over-yonder.net> <bbae8d87-4288-3261-6ff1-aae1db26098f@pinyon.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Aug 27, 2016 at 9:10 AM, Russell L. Carter <rcarter@pinyon.org> wrote: > On 08/27/16 06:46, Matthew D. Fuller wrote: > >> On Fri, Aug 26, 2016 at 03:21:16PM -0700 I heard the voice of >> Russell L. Carter, and lo! it spake thus: >> >>> >>> Here's my /usr/local/etc/poudriere.d/make.conf, [...] >>> [...] >>> # Set this to the list of ports you wish to rebuild every time the >>> # kernel is built. >>> PORTS_MODULES=nvidia-driver-340 nvidia-driver virtualbox-ose-kmod >>> sysutils/vm-bhyve sysutils/pefs-kmod >>> >> >> Incidentally, PORTS_MODULES is a var used by the _kernel_ build, not >> anything in the _ports_, so setting it in the poudriere environment >> doesn't do anything. >> >> >> > Hmm, ok. How would a kernel build know anything at all about building > a specific port? I'm apparently missing something... > > Thanks, > Russell > It doesn't, really. PORT_MODULES simply tells the kernel build to kick off a make for the specified ports. This is intended for ports which build kernel modules that should always be rebuilt for a new kernel. While there is an attempt made to keep the KBI stable within a major release, it isnot realy always possible and, since the KBI is only used by the kernel itself, changes to the KBI were always "safe". But with kernel modules from external sources (i.e. ports), this is no longer true. The result was the PORT_MODULES make variable which causes the kernel install to rebuild the modules listed whenever the kernel is rebuilt. This guarantees that the modules are in sync with the kernel on those occasions when the KBI is changed. It also is relevant to when ports go mucking around in the kernel such as with lsof. My src.conf contains "PORTS_MODULES=emulators/virtualbox-ose-kmod multimedia/cuse4bsd-kmod sysutils/lsof". I might also mention that this fuction is very tricky and gets broken too often. As of about three weeks ago cuse4bsd-kmod fails to build and I also see the PORTS_MODULES are getting built in the buildkernel which seems wrong to me. It used to only take place in installkernel. -- Kevin Oberman, Part time kid herder and retired Network Engineer E-mail: rkoberman@gmail.com PGP Fingerprint: D03FB98AFA78E3B78C1694B318AB39EF1B055683
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAN6yY1tXD%2BTt_vn8rHb37XDs6B4e2LESAKZhAJOgF2z31eNyKw>