kernel config: add initial support for config sets
Add support for a kernel config sets. A series of versioned
configuration files from which we will select one config based on
the version of the kernel which we are building.
We define a set via the job configuration:
job.config_set('kernel.default_config_set',
[ 'http://somethere.or.other/configs/',
'2.6.1', '2.6.10', '2.6.8', '2.6.8-mm1' ])
Now when we select a kernel by version number the nearest preceeding
configuration will be selected.
Signed-off-by: Andy Whitcroft <apw@shadowen.org>
git-svn-id: http://test.kernel.org/svn/autotest/trunk@504 592f7852-d20e-0410-864c-8624ca9c26a4
diff --git a/client/bin/kernel.py b/client/bin/kernel.py
index 08092a7..de2b8a9 100755
--- a/client/bin/kernel.py
+++ b/client/bin/kernel.py
@@ -81,6 +81,15 @@
return
self.logfile.write('BASE: %s\n' % base_tree)
+
+ # Where we have direct version hint record that
+ # for later configuration selection.
+ shorthand = re.compile(r'^\d+\.\d+\.\d+')
+ if shorthand.match(base_tree):
+ self.base_tree_version = base_tree
+ else:
+ self.base_tree_version = None
+
if os.path.exists(base_tree):
self.get_kernel_tree(base_tree)
else:
@@ -115,7 +124,8 @@
self.job.stdout.redirect(os.path.join(self.log_dir, 'stdout'))
self.set_cross_cc()
config = kernel_config.kernel_config(self.job, self.build_dir,
- self.config_dir, config_file, config_list, defconfig)
+ self.config_dir, config_file, config_list,
+ defconfig, self.base_tree_version)
self.job.stdout.restore()