From ba068f434f3eb70c89bab2cb434b67432f23ef6d Mon Sep 17 00:00:00 2001 From: "Luis R. Rodriguez" Date: Tue, 4 Nov 2014 15:17:36 -0800 Subject: [PATCH] backports: add backport version parsing for kernel integration The way we'll define backports versioning information for kernel integration is slightly different, we'll rely completely on Kconfig for the job, but in the end share the same C code defines. Signed-off-by: Luis R. Rodriguez --- gentree.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gentree.py b/gentree.py index afa49673fb69..3e130f10f4ce 100755 --- a/gentree.py +++ b/gentree.py @@ -861,6 +861,24 @@ def process(kerneldir, copy_list_file, git_revision=None, f.write('BACKPORTS_GIT_TRACKED="backport tracker ID: $(shell git rev-parse HEAD 2>/dev/null || echo \'not built in git tree\')"\n') f.close() git_debug_snapshot(args, "add versions files") + else: + kconf_regexes = [ + (re.compile(r'.*(?P%%BACKPORT_DIR%%)'), '%%BACKPORT_DIR%%', 'backports/'), + (re.compile(r'.*(?P%%BACKPORTS_VERSION%%).*'), '%%BACKPORTS_VERSION%%', backports_version), + (re.compile(r'.*(?P%%BACKPORTED_KERNEL_VERSION%%).*'), '%%BACKPORTED_KERNEL_VERSION%%', kernel_version), + (re.compile(r'.*(?P%%BACKPORTED_KERNEL_NAME%%).*'), '%%BACKPORTED_KERNEL_NAME%%', args.base_name), + ] + out = '' + for l in open(os.path.join(bpid.target_dir, 'Kconfig'), 'r'): + for r in kconf_regexes: + m = r[0].match(l) + if m: + l = re.sub(r'(' + r[1] + ')', r'' + r[2] + '', l) + out += l + outf = open(os.path.join(bpid.target_dir, 'Kconfig'), 'w') + outf.write(out) + outf.close() + git_debug_snapshot(args, "modify top level backports/Kconfig with backports identity") if disable_list: # No need to verify_sources() as compat's Kconfig has no 'source' call -- 2.30.2