tree: 0c194bd728b8531951727b70bda122c552310e9d [path history] [tgz]
  1. BUILD.bazel
  2. collect.py
  3. difftool.py
  4. README.md
scripts/difftool/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.