Name | Date | Size | #Lines | LOC | ||
---|---|---|---|---|---|---|
.. | - | - | ||||
BUILD.gn | D | 03-May-2024 | 366 | 12 | 9 | |
README.chromium | D | 03-May-2024 | 2.1 KiB | 47 | 42 | |
proguard.flags | D | 03-May-2024 | 267 | 13 | 10 | |
stateful-lambdas.patch | D | 03-May-2024 | 3.4 KiB | 65 | 63 |
README.chromium
1Name: Desugar, transforming Java 8 bytecode to be Java 7 compatible 2Short Name: desugar 3URL: https://github.com/bazelbuild/bazel 4Version: 1.1.0 5License: Apache 2.0 6Security Critical: no 7 8Description: 9Desugar is a Google-developed open-source Java library used by the build process 10to transform Java 8 bytecode to Java 7. It is used to enable Java 8 features 11such as lambda experssions for Chrome on Android. 12 13Googlers: See: go/desugar 14 15Local Modifications: 16* Added BUILD.gn, proguard.flags. 17* Made all lambdas be "stateful" to avoid <clinit> bloat. 18* Desugar_deploy.jar split into Desugar.jar and Desugar_runtime.jar. 19* Desugar.jar has been run through r8.jar to remove unused .class files. 20 21Update instructions (requires @google.com account for uploading): 22* Check out Bazel from https://github.com/bazelbuild/bazel 23* Compile or install Bazel by following instructions on 24 https://docs.bazel.build/versions/master/install.html 25* Apply stateful-lambdas.patch: 26 git apply $CHROMIUM_SRC/third_party/bazel/desugar/stateful-lambdas.patch 27* Build Desugar_deploy.jar: 28 bazel build //src/tools/android/java/com/google/devtools/build/android/desugar:Desugar_deploy.jar 29* Move Desugar_deploy.jar to location within Chromium: 30 rm $CHROMIUM_SRC/third_party/bazel/desugar/Desugar.jar 31 mv bazel-bin/src/tools/android/java/com/google/devtools/build/android/desugar/Desugar_deploy.jar $CHROMIUM_SRC/third_party/bazel/desugar/Desugar.jar 32* Update Desugar_runtime.jar: 33 unzip Desugar.jar "com/google/devtools/build/android/desugar/runtime*" 34 zip -rD0 Desugar_runtime.jar com 35 rm -r com 36* Shrink via r8 (optional - reduces size by about 66%). 37 java -jar ../../r8/lib/r8.jar --debug --classfile --output Desugar.new.jar --pg-conf proguard.flags --no-desugaring --lib ../../jdk/extras/java_8/jre/lib/rt.jar Desugar.jar 38 mv Desugar.new.jar Desugar.jar 39* Perform a sanity check of chrome_public_apk: 40 ninja chrome_public_apk 41 bin/chrome_public_apk run 42* Update this README.chromium (Version) 43* Upload new jar to CIPD: 44 cd third_party/bazel 45 cipd create --pkg-def cipd.yaml 46* Update revision //DEPS 47