| #!/usr/bin/env python3 |
| # Copyright 2021 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import argparse |
| import os |
| import subprocess |
| import sys |
| import pipes |
| |
| |
| def main(): |
| parser = argparse.ArgumentParser("Generate media driver dep file") |
| parser.add_argument("depsfile") |
| parser.add_argument("--input-dir", action='append') |
| args = parser.parse_args() |
| |
| find_args = ["find"] |
| find_args += args.input_dir |
| find_args += ["-path", "*/.git", "-prune", "-o", "-type", "f", "-print"] |
| |
| files = subprocess.check_output(find_args) |
| file_lines = files.splitlines() |
| |
| va_install_dir = "build-intel-media-driver/install" |
| |
| output_files = [ |
| "strip/libva.so.2", "strip/libva-magma.so.2", "strip/libigdgmm.so.11", |
| "strip/iHD_drv_video.so" |
| ] |
| |
| debug_output_files = [x + ".debug " for x in output_files] |
| |
| with open(args.depsfile, "wb") as depsfile: |
| for output_file in output_files + debug_output_files: |
| depsfile.write((os.path.join(va_install_dir, output_file) + ": ").encode("utf-8")) |
| depsfile.write(b" ".join(x.replace(b' ', b'\\ ') for x in file_lines)) |
| depsfile.write(b"\n") |
| return 0 |
| |
| |
| if __name__ == "__main__": |
| sys.exit(main()) |