From owner-freebsd-stable@freebsd.org Tue Dec 13 17:16:52 2016 Return-Path: Delivered-To: freebsd-stable@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 89E40C761DB for ; Tue, 13 Dec 2016 17:16:52 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from pmta2.delivery6.ore.mailhop.org (pmta2.delivery6.ore.mailhop.org [54.200.129.228]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6CEDC1B6 for ; Tue, 13 Dec 2016 17:16:51 +0000 (UTC) (envelope-from ian@freebsd.org) X-MHO-User: e90a8156-c157-11e6-9ec7-5d8fa496b077 X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 73.78.92.27 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [73.78.92.27]) by outbound2.ore.mailhop.org (Halon) with ESMTPSA id e90a8156-c157-11e6-9ec7-5d8fa496b077; Tue, 13 Dec 2016 17:16:40 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id uBDHGmoC001481; Tue, 13 Dec 2016 10:16:48 -0700 (MST) (envelope-from ian@freebsd.org) Message-ID: <1481649408.1889.338.camel@freebsd.org> Subject: Re: make buildkernel does not respect KERNCONF or JOBS in /etc/make.conf From: Ian Lepore To: tech-lists , freebsd-stable@freebsd.org Date: Tue, 13 Dec 2016 10:16:48 -0700 In-Reply-To: <1481649233.1889.337.camel@freebsd.org> References: <127a9164-9ad2-47c4-9ec4-e9f59cbe94f2@zyxst.net> <8637hu76pm.wl-herbert@mailbox.org> <86shpspvgx.wl-herbert@mailbox.org> <8f66557b-cf51-f140-eb49-03e806fb73ca@zyxst.net> <1481649233.1889.337.camel@freebsd.org> Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: Evolution 3.18.5.1 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Dec 2016 17:16:52 -0000 On Tue, 2016-12-13 at 10:13 -0700, Ian Lepore wrote: > On Tue, 2016-12-13 at 10:00 +0000, tech-lists wrote: > > > > On 12/12/2016 23:40, Herbert J. Skuhra wrote: > > > > > > > > > PORTS_MODULES does not work if KERNCONF contains multiple > > > kernels: > > > > > > The problem is obviously in /usr/src/sys/conf/kern.post.mk (line > > > 66): > > > > > > WRKDIRPREFIX?=  ${MAKEOBJDIRPREFIX}${SRC_BASE}/sys/${KERNCONF} > > hmm! I didn't know that. > > > > I can't confirm exactly when the old way stopped working and when > > I  > > started defining modules in src.conf. > > > > If I wanted to install a known, good kernel as /boot/workingkernel > > with  > > all of its modules, so that I can avoid kernel.old being a bad > > kernel  > > and kernel being non-bootable, how would I go about doing it? > > > > many thanks, > > > I think the problem might have started with some changes to the > kernel > build infrastructure that result in reading make.conf and/or src.conf > when they didn't used to, so now KERNCONF with multiple entries is > defined differently in kern.post.mk than it used to be. > > I wonder if this patch might fix it (I'm not in a position to test it > myself right now -- this is purely a shot in the dark)... > > iIndex: sys/conf/kern.post.mk > =================================================================== > --- sys/conf/kern.post.mk (revision 302505) > +++ sys/conf/kern.post.mk (working copy) > @@ -63,7 +63,7 @@ OSRELDATE!= awk > '/^\#define[[:space:]]*__FreeBSD_v >       ${MAKEOBJDIRPREFIX}${SRC_BASE}/include/osreldate > .h >  .endif >  # Keep the related ports builds in the obj directory so that they > are only rebuilt once per kernel build > -WRKDIRPREFIX?= ${MAKEOBJDIRPREFIX}${SRC_BASE}/sys/${KERNCONF} > +WRKDIRPREFIX?= ${MAKEOBJDIRPREFIX}${SRC_BASE}/sys/${.OBJDIR} >  PORTSMODULESENV=\ >   PATH=${PATH}:${LOCALBASE}/bin:${LOCALBASE}/sbin \ >   SRC_BASE=${SRC_BASE} \ > > -- Ian Actually, now that I look at it again, I wonder if it should be just: +WRKDIRPREFIX?= ${.OBJDIR} -- Ian