Quick test building a module cross all targets and architectures

Konstantin Belousov kostikbel at gmail.com
Tue Oct 27 12:16:32 UTC 2015


On Tue, Oct 27, 2015 at 10:31:26AM +0100, Hans Petter Selasky wrote:
> I understand that the compilation environments are different.
> 
> How would you suggest to build-test a handful of C-files under a single 
> device keyword and associated kernel module cross all kernels we have in 
> a 10-minutes time-frame? MODULES_OVERRIDE can be defined from within 
> kernel configs aswell, so possibly a MODULES_OVERRIDE_OVERRIDE is needed 
> for this kind of feature. How about some kind of KERNCONF_APPEND= 
> parameter, which contains instructions for "config" to only emit a 
> single device keyword, yet, keeping all options and parameters.

Did you tried to pass 
-DNO_CLEAN -DNO_KERNELCLEAN -DNO_KERNELCONFIG -DNO_KERNELDEPEND -DNO_KERNELOBJ
options for make universe over the already built tree ?

When I develop, I use
make buildkernel -DNO_KERNELCLEAN -DNO_KERNELCONFIG -DNO_KERNELDEPEND -DNO_KERNELOBJ
unless I change config, or add a file, or add a module etc. This
combination gives me seconds for whole kernel and modules rebuild time
when I know that the build metadata, i.e. files participating in the
build, and the build options, did not changed from the latest full
rebuild.

I think that a similar trick should work with make universe, it might be
somewhat more involved to properly pass the directions, may be not. But
it should give the build time in the range of tens of minutes, indeed.


More information about the freebsd-current mailing list