43 lines
1.1 KiB
Markdown
43 lines
1.1 KiB
Markdown
|
# 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.
|
||
|
|