android13/build/bazel/scripts/difftool
liiir1985 7f62dcda9f initial 2024-06-22 20:45:49 +08:00
..
.gitignore initial 2024-06-22 20:45:49 +08:00
BUILD.bazel initial 2024-06-22 20:45:49 +08:00
README.md initial 2024-06-22 20:45:49 +08:00
clangcompile.py initial 2024-06-22 20:45:49 +08:00
collect.py initial 2024-06-22 20:45:49 +08:00
commands.py initial 2024-06-22 20:45:49 +08:00
difftool.py initial 2024-06-22 20:45:49 +08:00
difftool_test.py initial 2024-06-22 20:45:49 +08:00

README.md

Difftool

This directory contains tools to compare build artifacts from two separate build invocations as a way of gauging build correctness and debugging potential problems with build systems under development.

Usage

Use of these tools requires a multistep process:

  1. Build using legacy build system:
    $ m libc
    
  2. Collect results to a tmp directory.
    $ ./collect.py out/combined-aosp_flame.ninja \
          out/target/product/flame/obj/libc.so \
          /tmp/legacyFiles
    
  3. Build using the new build system:
    $ USE_BAZEL_ANALYSIS=1 m libc
    
  4. Collect results to a tmp directory.
    $ ./collect.py out/combined-aosp_flame.ninja \
          out/target/product/flame/obj/libc.so \
          /tmp/newFiles
    
  5. Run comparative analysis on the two tmp directories. (See documentation of difftool.py for exact usage.)
    $ ./difftool.py /tmp/legacyFiles \
          out/target/product/flame/obj/libc.so \
          /tmp/newFiles \
          out/target/product/flame/obj/libc.so
    

Use ./collect.py -h or ./difftool.py -h for full usage information of these subtools.