From a00765b85cb48cfe791845f33ef8477c7aa520fe Mon Sep 17 00:00:00 2001 From: Karthikeyan Periasamy Date: Tue, 23 Feb 2021 11:57:18 -0800 Subject: [PATCH] Video : get unifdef explicitly CRs-Fixed: 2836558 Change-Id: Iab81cd0ed9791e7426719fbc1b43d9ccafc89bb7 Signed-off-by: Karthikeyan Periasamy --- Android.bp | 5 ++++- video_kernel_headers.py | 19 +++++++++++++------ 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Android.bp b/Android.bp index a2a67d5ec0..9b144883fc 100644 --- a/Android.bp +++ b/Android.bp @@ -9,7 +9,9 @@ video_headers_out = [ video_kernel_headers_verbose = "--verbose " genrule { name: "qti_generate_video_kernel_headers", - tools: ["headers_install.sh"], + tools: ["headers_install.sh", + "unifdef" + ], tool_files: [ "video_kernel_headers.py", ], @@ -19,6 +21,7 @@ genrule { "--header_arch arm64 " + "--gen_dir $(genDir) " + "--video_include_uapi $(locations include/uapi/*/**/*.h) " + + "--unifdef $(location unifdef) " + "--headers_install $(location headers_install.sh)", out: video_headers_out, } diff --git a/video_kernel_headers.py b/video_kernel_headers.py index 3046ca60a1..b98a5ac61b 100644 --- a/video_kernel_headers.py +++ b/video_kernel_headers.py @@ -19,26 +19,28 @@ import re import subprocess import sys -def run_headers_install(verbose, gen_dir, headers_install, prefix, h): +def run_headers_install(verbose, gen_dir, headers_install, unifdef, prefix, h): if not h.startswith(prefix): print('error: expected prefix [%s] on header [%s]' % (prefix, h)) return False out_h = os.path.join(gen_dir, h[len(prefix):]) (out_h_dirname, out_h_basename) = os.path.split(out_h) - cmd = ["bash", headers_install, h, out_h] + env = os.environ.copy() + env["LOC_UNIFDEF"] = unifdef + cmd = ["sh", headers_install, h, out_h] if verbose: print('run_headers_install: cmd is %s' % cmd) - result = subprocess.call(cmd) + result = subprocess.call(cmd, env=env) if result != 0: print('error: run_headers_install: cmd %s failed %d' % (cmd, result)) return False return True -def gen_video_headers(verbose, gen_dir, headers_install, video_include_uapi): +def gen_video_headers(verbose, gen_dir, headers_install, unifdef, video_include_uapi): error_count = 0 for h in video_include_uapi: video_uapi_include_prefix = os.path.join(h.split('/include/uapi/')[0], @@ -46,7 +48,7 @@ def gen_video_headers(verbose, gen_dir, headers_install, video_include_uapi): 'uapi') + os.sep if not run_headers_install( - verbose, gen_dir, headers_install, + verbose, gen_dir, headers_install, unifdef, video_uapi_include_prefix, h): error_count += 1 return error_count @@ -72,6 +74,10 @@ def main(): parser.add_argument( '--headers_install', required=True, help='The headers_install tool to process input headers.') + parser.add_argument( + '--unifdef', + required=True, + help='The unifdef tool used by headers_install.') args = parser.parse_args() @@ -80,9 +86,10 @@ def main(): print('gen_dir [%s]' % args.gen_dir) print('video_include_uapi [%s]' % args.video_include_uapi) print('headers_install [%s]' % args.headers_install) + print('unifdef [%s]' % args.unifdef) return gen_video_headers(args.verbose, args.gen_dir, - args.headers_install, args.video_include_uapi) + args.headers_install, args.unifdef, args.video_include_uapi) if __name__ == '__main__': sys.exit(main())