[llvmlinux] RFC: Unique handling of kernel-config files and working checkpoints

Behan Webster behanw at converseincode.com
Tue Jul 16 13:01:15 UTC 2013


On 07/16/13 05:38, Jan-Simon Möller wrote:
> SO to reach your goal, its better to improve this.
>
> Add the possibility to use (llvm/clang/kernel) patches from a checkpoint
> instead of the default directory. That gives us a "real" checkpoint.
>
> e.g.
> ls target/x86/checkpoints/<name>/:
>
> 	./llvmlinux.cfg		# make config output
> 	./patches/kernel	#(combined patches for this target's kernel at ref
> 					   $foo)
> 	./patches/llvm		#(needed for llvm at rev $foo)
> 	./patches/clang		#(needed for clang at rev $foo)
> 	./kernel.config		# matching kernel .config
>
> You get the idea.  Mix that with your naming scheme below as you wish.
>
> The point is: we need a matching set of patches (aka "back-in-time") available
> w/o changing the build-systems git revision back.
>
> A make target "make checkpoint NAME=foo" could automate copying things around.
>
> @Behan might have some hints here.
Actually, config.mk files all already designed to drive all this already 
(IIRC I explained this when I introduced them on the mailing list). You 
can already override any make variable, choose your own kernel config 
file, specify extra kernel patch dirs, etc. Tinti has been using them to 
provide checkpoints for the rpi target.

He's already established the precedent of having a targets/*/checkpoint 
dir, which seems sufficient. I would propose having the kernel config 
named similarly to the config file in that directory. So for instance

     targets/x86_64/checkpoint/myconfig.mk
     targets/x86_64/checkpoint/myconfig.config

Which can be used as:

     $ cd targets/x86_64
     $ make config=checkpoint/myconfig.mk kernel-build

The only improvement that I might suggest is a "list-checkpoints" make 
target which listed possible checkpoint config files.

Behan

-- 
Behan Webster
behanw at converseincode.com



More information about the LLVMLinux mailing list