buildenv target
Ruslan Ermilov
ru at FreeBSD.org
Tue Feb 15 02:58:52 PST 2005
On Mon, Feb 14, 2005 at 02:37:23PM -0800, John-Mark Gurney wrote:
> John Baldwin wrote this message on Mon, Feb 14, 2005 at 15:11 -0500:
> > Did you know that you can just do:
> >
> > make kernel-toolchain TARGET_ARCH=arm
> > make buildkernel TARGeT_ARCH=arm KERNCONF=TS7200
>
> yes, I did, and the problem is that this is extreamly slow if you've
> only modified one line of one file for testing... Do you build all of
> your kernels this way??
>
You're not right. If you say to NOT config, clean, depend, and build
modules, the repeated build will resume from the same point where it
stopped. For example,
hammer# /usr/bin/time -h make -s -DNO_KERNELCLEAN -DNO_KERNELCONFIG -DNO_KERNELDEPEND -DNO_MODULES buildkernel
--------------------------------------------------------------
>>> Kernel build for HAMMER started on Tue Feb 15 12:56:32 EET 2005
--------------------------------------------------------------
===> HAMMER
--------------------------------------------------------------
>>> stage 2.2: rebuilding the object tree
--------------------------------------------------------------
--------------------------------------------------------------
>>> stage 2.3: build tools
--------------------------------------------------------------
--------------------------------------------------------------
>>> stage 3.2: building everything
--------------------------------------------------------------
--------------------------------------------------------------
>>> Kernel build for HAMMER completed on Tue Feb 15 12:56:33 EET 2005
--------------------------------------------------------------
1,15s real 0,40s user 0,68s sys
> > That's rather easy. You can even cross-build against a different kernel tree
> > (I use this a lot for my p4 trees). For example:
> >
> > make TARGET_ARCH=amd64 KERNCONF=LINT KERNSRCDIR=/home/john/work/p4/proc \
> > buildkernel NO_MODULES=yes
> >
> > With repeated builds (e.g. when fixing compile errors) adding
> > NO_KERNELCLEAN=yes NO_KERNELDEPEND=yes is good as well.
>
> I really hate having to remeber and type those everytime that I build a
> kernel... You're also forgetting NO_KERNELCONFIG=yes to that... since
> if it's just a typo, you usually don't need a config for a typo...
>
How about saving these in a script then, so you don't have to remember
them all the time?
> yes, there are other complex solutions, but I'd like a simplier solution,
> and one that is a lot more friendly to my fingers...
>
I'd still like to see your buildenv target committed.
Cheers,
--
Ruslan Ermilov
ru at FreeBSD.org
FreeBSD committer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20050215/cb588aac/attachment.bin
More information about the freebsd-arch
mailing list