• Shinichiro Hamaji's avatar
    Use .KATI_RESTAT to reduce unnecessary rebuilds of binaries · 0e7587a9
    Shinichiro Hamaji authored
    When a shared object is rebuilt, all dependent libraries and
    executables are rebuilt. Such rebuild is unnecessary when there
    is no interface change. With this patch, .toc files will be
    generated for all .so files. The rule which generates .toc files
    has ninja's restat=1 and .toc files are not changed ninja won't
    rebuild dependent targets.
    
    Performance:
    
    $ m && touch bionic/libc/stdio/stdio.c && time m
    Before: 1m03s (2563 targets)
    After: 21s (90 targets)
    
    Bug: 24597504
    Change-Id: Ia5dd950273d143f4e99eee8bef7478f1a94cd138
    0e7587a9
binary.mk 54.5 KB