Herbert J. Skuhra
2016-Dec-12 06:58 UTC
make buildkernel does not respect KERNCONF or JOBS in /etc/make.conf
Scott Bennett skrev:> > On Sun, 11 Dec 2016 12:34:58 +0000 tech-lists <tech-lists at zyxst.net> > wrote: > >> I have found that make buildkernel/installkernel does not respect >> KERNCONF= variables. It also doesn't respect MAKE_JOBS_NUMBER. It *DOES* >> however respect WITH_CCACHE_BUILD. It's hard to say when the behaviour >> changed to what it is, but it was sometime around the time that >> 11-CURRENT became 11-STABLE. >> >> Sources are 11-STABLE r309795 >> >> Here is my /etc/make.conf, which used to work: >> >> MALLOC_PRODUCTION=yes >> WITH_CCACHE_BUILD=yes >> MAKE_JOBS_NUMBER=32 >> KERNCONF=PUMPKIN GENERIC >> WITH_MANCOMPRESS=YES >> WITHOUT_DEBUG=YES >> DEFAULT_VERSIONS+= ssl=libressl >> OPTIMIZED_CFLAGS=YES >> BUILD_OPTIMIZED=YES >> >> I used to be able to buildworld and kernel like this: >> >> root at localhost:/usr/src# make cleandir && make clean && make buildworld >> && make buildkernel && make installkernel && mergemaster -p >> >> and I'd get two installed kernels, PUMPKIN and GENERIC >> >> now I have to specify on the line: >> >> root at localhost:/usr/src# make cleandir && make clean && make -j32 >> buildworld && make -j32 buildkernel KERNCONF=PUMPKIN >> >> Also, I have to specify jobs # for both buildworld and buildkernel >> otherwise it just uses one, two or four cores. >> >> How can I get it to work like it did previously? >> > You may have misremembered how you did it previously. Try adding > > BUILDKERNELS=PUMPKIN GENERIC > > to your /etc/src.conf and removing the KERNCONF line from /etc/make.conf > before you run it again. KERNCONF goes on the "make buildkernel" command, > not into /etc/make.conf, but should not be necessary at all if /etc/src.conf > contains the list of kernels to be built. (See src.conf(5).)- BUILDKERNELS is used in Makefile.inc1 but not listed in neither src.conf(5) nor make.conf(5) - KERNCONF is listed in make.conf(5) - I use KERNCONF in /etc/make.conf to build two kernels and it works So why are you giving this advice? -- Herbert
Thomas Mueller
2016-Dec-12 09:07 UTC
make buildkernel does not respect KERNCONF or JOBS in /etc/make.conf
> BUILDKERNELS=PUMPKIN GENERIC> > to your /etc/src.conf and removing the KERNCONF line from /etc/make.conf > > before you run it again. KERNCONF goes on the "make buildkernel" command, > > not into /etc/make.conf, but should not be necessary at all if /etc/src.conf > > contains the list of kernels to be built. (See src.conf(5).)> - BUILDKERNELS is used in Makefile.inc1 but not listed in neither > src.conf(5) nor make.conf(5) > - KERNCONF is listed in make.conf(5) > - I use KERNCONF in /etc/make.conf to build two kernels and it works> So why are you giving this advice?> HerbertI would have thought KERNCONF would belong in src.conf, but just checked the man pages, and KERNCONF is listed in man make.conf but not src.conf . I usually build at least two kernels, one being the custom kernel and the other being GENERIB. GENERIB differs from GENERIC in not supporting very outdated devices (ISA SCSI cards for instance) but including support from some wi-fi drivers not in GENERIC. I need rsu. My question is, do you build modules redundantly, or just once? I don't want to build the same modules more than once. Tom