From owner-freebsd-current@freebsd.org Fri Jul 15 22:19:12 2016 Return-Path: Delivered-To: freebsd-current@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 6B228B9AB63 for ; Fri, 15 Jul 2016 22:19:12 +0000 (UTC) (envelope-from cy.schubert@komquats.com) Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 376E01222 for ; Fri, 15 Jul 2016 22:19:11 +0000 (UTC) (envelope-from cy.schubert@komquats.com) Received: from spqr.komquats.com ([96.50.22.10]) by shaw.ca with SMTP id OBRmbVWIYBRmCOBRnbmw0E; Fri, 15 Jul 2016 16:19:05 -0600 X-Authority-Analysis: v=2.2 cv=S+mb+8kP c=1 sm=1 tr=0 a=jvE2nwUzI0ECrNeyr98KWA==:117 a=jvE2nwUzI0ECrNeyr98KWA==:17 a=L9H7d07YOLsA:10 a=9cW_t1CCXrUA:10 a=s5jvgZ67dGcA:10 a=cAmyUtKerLwA:10 a=BWvPGDcYAAAA:8 a=YxBL1-UpAAAA:8 a=6I5d2MoRAAAA:8 a=u8mJKi2VDGhv8RlnN5IA:9 a=pxhY87DP9d2VeQe4joPk:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=IjZwj45LgO3ly-622nXo:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 5975313782; Fri, 15 Jul 2016 14:32:00 -0700 (PDT) Received: from slippy (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id u6FMJ1nx089928; Fri, 15 Jul 2016 15:19:01 -0700 (PDT) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201607152219.u6FMJ1nx089928@slippy.cwsent.com> X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.6 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Guy Yur cc: Cy Schubert , freebsd-current Subject: Re: crossbuild buildworld on amd64 for arm fails to find KERNCONF GENERIC after r302865 In-Reply-To: Message from Guy Yur of "Fri, 15 Jul 2016 22:16:23 +0300." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 15 Jul 2016 15:19:01 -0700 X-CMAE-Envelope: MS4wfCL/0+h/rUjbcB94L1h1/ARulrQC5M8v9WJrxBJKUAyUjHYY0+rMm2bOybISZkj8sRZg7Bz4hqo4/Uwmv+z7suPqPDDD5ics8eoxfZxodgx0VZzWH+ii xFUag9jCdtR4lHym7jwO12vfiN0vIN7e5/K6aeeS3nQtcqhsBBZ1C4ng8cYwY/4ITBSsClERG5ChVNVCkNTrmdTtNB/VfiOBTLs= X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Jul 2016 22:19:12 -0000 In message , Guy Yur writes: > On Fri, Jul 15, 2016 at 6:11 PM, Cy Schubert wrote > : > > In message c > > om> > > , Guy Yur writes: > >> Hi, > >> > >> I am trying to crossbuild arm on an amd64 machine and buildworld > >> is checking for KERNCONF and fails to find GENERIC kernel. > >> I only set KERNCONF when I am doing buildkernel/installkernel > >> so KERNCONF is the default set in Makefile.inc1. > >> > >> # make buildworld TARGET=arm TARGET_ARCH=armv6 > >> make[1]: "/usr/src/Makefile.inc1" line 122: SYSTEM_COMPILER: > >> Determined that CC=cc matches the source tree. Not bootstrapping a > >> cross-compiler. > >> make[1]: "/usr/src/Makefile.inc1" line 1144: Missing KERNCONF > >> /usr/src/sys/arm/conf/GENERIC > >> *** Error code 1 > >> > >> Stop. > >> make: stopped in /usr/src > >> > >> > >> # uname -a > >> FreeBSD vm4.localdomain 12.0-CURRENT FreeBSD 12.0-CURRENT #13 > >> r302895M: Fri Jul 15 16:06:24 IDT 2016 > >> root@vm4.localdomain:/usr/obj/usr/src/sys/VIRTUALBOX amd64 > > > > Thanks for the report. I've reverted it now until I get the time to look at > > it more closely. > > > > > > -- > > Cheers, > > Cy Schubert > > FreeBSD UNIX: Web: http://www.FreeBSD.org > > > > The need of the many outweighs the greed of the few. > > > > Doing the missing check only for the kernel targets works for me. > > .if make(buildkernel) || \ > make(installkernel) || make(installkernel.debug) || \ > make(reinstallkernel) || make(reinstallkernel.debug) || \ > make(distributekernel) || make(distributekernel.debug) || \ > make(packagekernel) || make(create-kernel-packages) > .error Missing KERNCONF ${KERNCONFDIR}/${_kernel} > .endif Yes, this is one solution. The plan is to use this: .if make(*kernel) || make(*kernel.debug) || make(*kernel-packages) > > > It might be possible cover more of the section with the .if make. > I think these are all the targets that use BUILDKERNELS, INSTALLKERNEL. > > .if make(buildkernel) || \ > make(installkernel) || make(installkernel.debug) || \ > make(reinstallkernel) || make(reinstallkernel.debug) || \ > make(distributekernel) || make(distributekernel.debug) || \ > make(packagekernel) || make(create-kernel-packages) > BUILDKERNELS= > ... > .error Missing KERNCONF ${KERNCONFDIR}/${_kernel} > .endif > .endfor > .endif That causes other breakage. I believe I have a solution. I just need to make sure to thoroughly test it first. -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few.