commit | 3f8f4c3a85cc3952c74ee274f868e716e6a973ad | [log] [tgz] |
---|---|---|
author | Michael Bolin <mbolin@fb.com> | Mon Sep 16 18:12:43 2013 -0700 |
committer | Michael Bolin <mbolin@fb.com> | Thu Sep 19 15:25:03 2013 -0700 |
tree | 69537e6398cf4550aa0c0a138332597b319cb0d4 | |
parent | ff4723894d96eb458f072fe3850262c83a25c5f8 [diff] |
Introduce preprocess_java_classes_bash option to android_binary. Summary: This introduces a new pair of options to `android_binary`: `preprocess_java_classes_deps` and `preprocess_java_classes_bash`. Together, these options give the developer the opportunity to pre-process the `.class` files for the APK before they are fed into ProGuard. `preprocess_java_classes_bash` is a `genrule`-like `bash` argument that must contain the strings `$IN_JARS_DIR` and `$OUT_JARS_DIR`. Just like in a `genrule`, `preprocess_java_classes_bash` may contain `$(exe //build:target)` or `$(location //build:target)` expressions so long as the target is listed in `preprocess_java_classes_deps`. (This also ensures that any such targets are built before the `android_binary` rule itself.) The contract is that the executable must write out the contents of `$OUT_JARS_DIR` so that the file structure matches that of `$IN_JARS_DIR` exactly. Test Plan: Sandcastle builds.
Buck is an Android build tool. To see what Buck can do for you, check out the documentation at http://facebook.github.io/buck/.
To build Buck, run the following:
git clone git@github.com:facebook/buck.git cd buck ant ./bin/buck --help
Apache License 2.0