--- /dev/null
+diff -u -r ../raw/sched/src/com/android/sched/util/codec/CaseInsensitiveDirectFSCodec.java ./sched/src/com/android/sched/util/codec/CaseInsensitiveDirectFSCodec.java
+--- ../raw/sched/src/com/android/sched/util/codec/CaseInsensitiveDirectFSCodec.java 2016-10-03 10:53:49.000000000 -0400
++++ ./sched/src/com/android/sched/util/codec/CaseInsensitiveDirectFSCodec.java 2016-10-03 17:25:26.969577397 -0400
+@@ -64,7 +64,7 @@
+ public VFS checkString(@Nonnull CodecContext context, @Nonnull String string)
+ throws ParsingException {
+ try {
+- Service service = messageDigestCodec.checkString(context, "SHA");
++ Service service = messageDigestCodec.checkString(context, "MD5");
+ return new CaseInsensitiveFS(codec.checkString(context, string),
+ /* nbGroup = */ 1, /* szGroup = */ 2, new MessageDigestFactory(service),
+ /* debug = */ false);
--- /dev/null
+diff -u -r ../orig/jill/src/com/android/jill/frontend/java/JavaTransformer.java ./jill/src/com/android/jill/frontend/java/JavaTransformer.java
+--- ../orig/jill/src/com/android/jill/frontend/java/JavaTransformer.java 2016-10-03 17:38:30.000000000 -0400
++++ ./jill/src/com/android/jill/frontend/java/JavaTransformer.java 2016-10-05 19:44:23.446481214 -0400
+@@ -197,7 +197,7 @@
+ @Nonnull
+ private OutputVFS wrapOutputVFS(@Nonnull VFS baseVFS) {
+ MessageDigestCodec mdCodec = new MessageDigestCodec();
+- Service service = mdCodec.parseString(new CodecContext(), "SHA");
++ Service service = mdCodec.parseString(new CodecContext(), "MD5");
+
+ try {
+ return new GenericOutputVFS(new DeflateFS(new MessageDigestFS(
--- /dev/null
+TERMUX_PKG_HOMEPAGE=https://source.android.com/source/jack.html
+TERMUX_PKG_DESCRIPTION="Java Android Compiler Kit"
+# Use the date of the below git commit as the version number:
+TERMUX_PKG_VERSION=20170201
+TERMUX_PKG_SRCURL=https://android.googlesource.com/toolchain/jack/+archive/bfe543d753a274a3aa696eafc9481cea67c73390.tar.gz
+TERMUX_PKG_PLATFORM_INDEPENDENT=true
+
+termux_step_extract_package() {
+ mkdir -p $TERMUX_PKG_SRCDIR
+ cd $TERMUX_PKG_SRCDIR
+
+ filename=`basename $TERMUX_PKG_SRCURL`
+ file=$TERMUX_PKG_CACHEDIR/$filename
+ test ! -f $file && termux_download $TERMUX_PKG_SRCURL $file $TERMUX_PKG_SHA256
+ tar xf $file
+
+ rm sched/src/com/android/sched/util/log/tracer/probe/GcDurationProbe.java
+}
+
+termux_step_make () {
+ cd $TERMUX_PKG_SRCDIR
+ ./gradlew assemble
+ local JACK_JAR=$PWD/jack/gradle-build/libs/jack.jar
+ local JILL_JAR=$PWD/jill/gradle-build/libs/jill.jar
+
+ # Create $USR/share/dex for dex files, and $USR/share/jack for .jack library files produced by jill:
+ mkdir -p $TERMUX_PREFIX/share/{dex,jack}
+ local JACK_JACK=$TERMUX_PKG_TMPDIR/jack.jack
+ #java -jar $JILL_JAR --output=$JACK_JACK $JACK_JAR
+ #java -jar $JACK_JAR --output-dex $TERMUX_PKG_TMPDIR --import $JACK_JACK
+ java -jar $JACK_JAR --output-dex $TERMUX_PKG_TMPDIR --import $JACK_JAR
+ mv $TERMUX_PKG_TMPDIR/classes.dex $TERMUX_PREFIX/share/dex/jack.dex
+ #$TERMUX_DX -JXmx4096M --num-threads=4 --dex --output=$TERMUX_PREFIX/share/dex/jack.jar #$TERMUX_JACK
+
+ cd $TERMUX_PKG_TMPDIR
+ rm -rf android-jar
+ mkdir android-jar
+ cd android-jar
+
+ # We need the android.jar clases in jill format (.jack extension) for jack to compile against.
+ cp $ANDROID_HOME/platforms/android-24/android.jar .
+ # Remove resources not needed for compilation to reduce size:
+ unzip -q android.jar
+ rm -Rf android.jar resources.arsc res assets
+ zip -r -q android.jar .
+ java -jar $JILL_JAR $TERMUX_PKG_TMPDIR/android-jar/android.jar --output $TERMUX_PREFIX/share/jack/android.jack
+
+ # Add support annotations .jack file:
+ local ANNOTATIONS_VERSION=24.2.0
+ local ANNOTATIONS_JAR=$TERMUX_PKG_CACHEDIR/support-annotations-${ANNOTATIONS_VERSION}.jar
+ if [ ! -f $ANNOTATIONS_JAR ]; then
+ termux_download http://uiq3.sourceforge.net/Repository/com/android/support/support-annotations/${ANNOTATIONS_VERSION}/support-annotations-${ANNOTATIONS_VERSION}.jar \
+ $ANNOTATIONS_JAR \
+ af5868da6750bdf42aec5d85fa87ac30de2b72939ca80437a6247e5753a07cad
+ fi
+ java -jar $JILL_JAR $ANNOTATIONS_JAR --output $TERMUX_PREFIX/share/jack/support-annotations-${ANNOTATIONS_VERSION}.jack
+
+ mkdir -p $TERMUX_PREFIX/bin
+ install $TERMUX_PKG_BUILDER_DIR/jack.sh $TERMUX_PREFIX/bin/jack
+ perl -p -i -e "s%\@TERMUX_PREFIX\@%${TERMUX_PREFIX}%g" $TERMUX_PREFIX/bin/jack
+}
--- /dev/null
+diff -u -r ../raw/jack/src/com/android/jack/library/JackLibraryFactory.java ./jack/src/com/android/jack/library/JackLibraryFactory.java
+--- ../raw/jack/src/com/android/jack/library/JackLibraryFactory.java 2016-10-03 10:53:49.000000000 -0400
++++ ./jack/src/com/android/jack/library/JackLibraryFactory.java 2016-10-03 17:15:04.255000764 -0400
+@@ -55,7 +55,7 @@
+ @Nonnull
+ public static final MessageDigestPropertyId MESSAGE_DIGEST_ALGO = MessageDigestPropertyId
+ .create("jack.library.digest.algo", "Message digest algorithm use in Jack library")
+- .requiredIf(GENERATE_JACKLIB_DIGEST.getValue().isTrue()).addDefaultValue("SHA")
++ .requiredIf(GENERATE_JACKLIB_DIGEST.getValue().isTrue()).addDefaultValue("MD5")
+ .addCategory(DumpInLibrary.class);
+
+ @Nonnull
--- /dev/null
+#!/bin/sh
+
+CLASSPATH=""
+for f in @TERMUX_PREFIX@/share/jack/*.jack; do
+ CLASSPATH="$f:$CLASSPATH"
+done
+
+exec dalvikvm -Xmx256m \
+ -Djava.io.tmpdir=@TERMUX_PREFIX@/tmp \
+ -cp @TERMUX_PREFIX@/share/dex/jack.dex \
+ com.android.jack.Main \
+ -cp $CLASSPATH \
+ -D jack.annotation-processor=off \
+ -D jack.classpath.default-libraries=off \
+ $@
--- /dev/null
+diff -u -r ../raw/jack/src/com/android/jack/digest/OriginDigestFeature.java ./jack/src/com/android/jack/digest/OriginDigestFeature.java
+--- ../raw/jack/src/com/android/jack/digest/OriginDigestFeature.java 2016-10-03 10:53:49.000000000 -0400
++++ ./jack/src/com/android/jack/digest/OriginDigestFeature.java 2016-10-03 17:18:14.296094146 -0400
+@@ -38,5 +38,5 @@
+ @Nonnull
+ public static final MessageDigestPropertyId ORIGIN_DIGEST_ALGO = MessageDigestPropertyId
+ .create("jack.source.digest.algo", "Digest algorithm use for source identification")
+- .requiredIf(OriginDigestFeature.ORIGIN_DIGEST.getValue().isTrue()).addDefaultValue("SHA");
++ .requiredIf(OriginDigestFeature.ORIGIN_DIGEST.getValue().isTrue()).addDefaultValue("MD5");
+ }
--- /dev/null
+diff -u -r ../raw/sched/src/com/android/sched/util/log/tracer/ProbeManager.java ./sched/src/com/android/sched/util/log/tracer/ProbeManager.java
+--- ../raw/sched/src/com/android/sched/util/log/tracer/ProbeManager.java 2016-10-03 10:53:49.000000000 -0400
++++ ./sched/src/com/android/sched/util/log/tracer/ProbeManager.java 2016-10-03 17:05:07.716121072 -0400
+@@ -41,7 +41,7 @@
+ private static final PropertyId<ProbeManager> PROBE_MANAGER = PropertyId.create(
+ "sched.tracer.probes", "Define which probes use for tracing",
+ new ProbeManagerCodec()).addDefaultValue(
+- "event-count,gc-duration,thread-cpu-time");
++ "");
+
+ @Nonnull
+ public static final ThreadLocal<Boolean> enable = new ThreadLocal<Boolean>() {
+diff -u -r ../raw/sched/src/com/android/sched/util/log/tracer/TemplateFtl.java ./sched/src/com/android/sched/util/log/tracer/TemplateFtl.java
+--- ../raw/sched/src/com/android/sched/util/log/tracer/TemplateFtl.java 2016-10-03 10:53:49.000000000 -0400
++++ ./sched/src/com/android/sched/util/log/tracer/TemplateFtl.java 2016-10-03 17:03:38.829479240 -0400
+@@ -18,7 +18,6 @@
+
+ import com.android.sched.util.log.tracer.probe.EventCountProbe;
+ import com.android.sched.util.log.tracer.probe.GcCountProbe;
+-import com.android.sched.util.log.tracer.probe.GcDurationProbe;
+ import com.android.sched.util.log.tracer.probe.HeapAllocationCountProbe;
+ import com.android.sched.util.log.tracer.probe.HeapAllocationSizeProbe;
+ import com.android.sched.util.log.tracer.probe.HeapMemoryProbe;
+@@ -55,8 +54,6 @@
+ new MappingProbe[]{new MappingProbe(HeapAllocationSizeProbe.class, "memory")}, null),
+ HEAP_ALLOCATION_COUNT("Heap allocation count usage", "count.html.ftl", "heap-alloc-count.html",
+ new MappingProbe[]{new MappingProbe(HeapAllocationCountProbe.class, "count")}, null),
+- GC_TIME("Garbage Collector duration", "time.html.ftl", "time-gc.html",
+- new MappingProbe[]{new MappingProbe(GcDurationProbe.class, "time")}, null),
+ GC_COUNT("Garbage Collector count", "count.html.ftl", "count-gc.html",
+ new MappingProbe[]{new MappingProbe(GcCountProbe.class, "count")}, null),
+ CONTENTION_DURATION("Contention duration", "time.html.ftl", "time-contention.html",
--- /dev/null
+diff -u -r ../raw/sched/src/com/android/sched/vfs/CaseInsensitiveFS.java ./sched/src/com/android/sched/vfs/CaseInsensitiveFS.java
+--- ../raw/sched/src/com/android/sched/vfs/CaseInsensitiveFS.java 2016-10-03 10:53:49.000000000 -0400
++++ ./sched/src/com/android/sched/vfs/CaseInsensitiveFS.java 2016-10-03 17:21:25.053176313 -0400
+@@ -78,7 +78,7 @@
+ @Nonnull
+ public static final MessageDigestPropertyId ALGO = MessageDigestPropertyId.create(
+ "sched.vfs.case-insensitive.algo", "Algorithm used to encode a path name").addDefaultValue(
+- "SHA");
++ "MD5");
+
+ @Nonnull
+ public static final BooleanPropertyId DEBUG = BooleanPropertyId.create(