Date: Mon, 27 Jan 2014 17:14:39 -0800 From: John-Mark Gurney <jmg@funkthat.com> To: Brooks Davis <brooks@freebsd.org> Cc: hackers@freebsd.org Subject: Re: make buildkernel figure out compiler type.. Message-ID: <20140128011439.GV13704@funkthat.com> In-Reply-To: <20140127172842.GE8857@lor.one-eyed-alien.net> References: <20140124200141.GE75135@funkthat.com> <20140127172842.GE8857@lor.one-eyed-alien.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Brooks Davis wrote this message on Mon, Jan 27, 2014 at 11:28 -0600: > On Fri, Jan 24, 2014 at 12:01:42PM -0800, John-Mark Gurney wrote: > > When I was building armeb, I would often specify the correct compiler > > on buildtools/kernel-tools, but then when I went to buildkernel, I > > would forget... So, I figured out if we just drop COMPILER_TYPE from > > KMAKEENV, the right magic will be executed to figure out which of > > clang/gcc should be used... > > > > $ svn diff Makefile.inc1 > > Index: Makefile.inc1 > > =================================================================== > > --- Makefile.inc1 (revision 260499) > > +++ Makefile.inc1 (working copy) > > @@ -451,7 +451,7 @@ IMAKE_MTREE= MTREE_CMD="nmtree ${MTREEFLAGS}" > > .endif > > > > # kernel stage > > -KMAKEENV= ${WMAKEENV} > > +KMAKEENV= ${WMAKEENV:NCOMPILER_TYPE=*} > > KMAKE= ${KMAKEENV} ${MAKE} ${.MAKEFLAGS} ${KERNEL_FLAGS} KERNEL=${INSTKERNNAME} > > > > # > > > > Comments? > > If COMPILER_TYPE isn't set then every submake will need to figure out > which compiler is in use. That's not too expensive for a build without > modules, but is potentially quite expensive with, hence the passing of > COMPILER_TYPE. I'm not convinced the tradeoff is worth it for a little > edge-case user convenience. Interestingly, I decided to try to test this out, and I couldn't measure a performance difference between the two.. This was using a "make buildkernel -j 8" on amd64 which builds all the modules and I couldn't measure a performance difference between the two... After seeing an output of make -dA, I doubt executing a couple more commands will really make that much of a measurable difference... Also, won't it be set once at the top? If not, why don't we export COMPILER_TYPE when we set it, then that'd solve your issue? right? -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not."
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20140128011439.GV13704>