• Peter Wen's avatar
    Android: Use turbine to generate java headers · 55ab173a
    Peter Wen authored
    See go/faster-javac for a detailed analysis of why turbine was chosen to
    speed up our java builds. The current implementation is an initial
    implementation that can be further optimized. It already gives savings
    of 10-30% of our java incremental builds depending on the target in
    question (see go/project-turbo for timing details).
    
    This implementation does remove some of the benefits of the previous way
    that java_library_impl was implemented, namely when a target's
    .interface.jar file changes, it no longer short-circuits dependent
    targets from being built since we now use group(target_name). This is
    arguably more correct as prebuilts depend on javac jars directly. In the
    future (after the androidx migration and other build improvements) this
    can be improved by having prebuilts depend on the interface jars
    instead.
    
    Bug: 1056299
    Change-Id: I49d18604203749cf447ce77c54a8f8469c83eae1
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2105415
    Commit-Queue: Peter Wen <wnwen@chromium.org>
    Auto-Submit: Peter Wen <wnwen@chromium.org>
    Reviewed-by: default avatarAndrew Grieve <agrieve@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#750651}
    55ab173a
rules.gni 184 KB