diff options
author | Alan Leung <acleung@google.com> | 2017-11-20 14:42:18 -0800 |
---|---|---|
committer | Alan Leung <acleung@google.com> | 2017-11-20 15:32:03 -0800 |
commit | 10bec877ee7377a67999c1ef80c82440e20d0693 (patch) | |
tree | 74f4db711a9944375e22503cbd23bb9c01187448 | |
parent | fdac55c253bce064163768531b6f2706db567329 (diff) | |
download | r8-android-o-mr1-iot-preview-8.tar.gz |
Add back D8 target.android-o-mr1-iot-release-1.0.0android-o-mr1-iot-preview-8android-o-mr1-iot-preview-7o-mr1-iot-preview-8o-mr1-iot-preview-7
This builds the actual D8 compiler instead of the hack
that builds and run CompatDX
Test: m d8
Bug: 69329508
Change-Id: I6d620ca9aa2bf2e391ed4ea53a89323930e0eb02
-rw-r--r-- | Android.bp | 7 | ||||
-rwxr-xr-x | etc/d8 | 89 | ||||
-rwxr-xr-x | etc/d8-compat-dx | 2 | ||||
-rwxr-xr-x | etc/r8 | 2 | ||||
-rw-r--r-- | manifest_d8.txt | 1 |
5 files changed, 97 insertions, 4 deletions
diff --git a/Android.bp b/Android.bp index 472c5e087..808cd95f8 100644 --- a/Android.bp +++ b/Android.bp @@ -1,4 +1,11 @@ java_binary_host { + name: "d8", + wrapper: "etc/d8", + manifest: "manifest_d8.txt", + static_libs: [ "r8-src" ], +} + +java_binary_host { name: "d8-compat-dx", wrapper: "etc/d8-compat-dx", manifest: "manifest_d8_compat_dx.txt", @@ -0,0 +1,89 @@ +#!/bin/bash +# +# Copyright (C) 2017 The Android Open Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Set up prog to be the path of this script, including following symlinks, +# and set up progdir to be the fully-qualified pathname of its directory. +prog="$0" +while [ -h "${prog}" ]; do + newProg=`/bin/ls -ld "${prog}"` + newProg=`expr "${newProg}" : ".* -> \(.*\)$"` + if expr "x${newProg}" : 'x/' >/dev/null; then + prog="${newProg}" + else + progdir=`dirname "${prog}"` + prog="${progdir}/${newProg}" + fi +done +oldwd=`pwd` +progdir=`dirname "${prog}"` +cd "${progdir}" +progdir=`pwd` +prog="${progdir}"/`basename "${prog}"` +cd "${oldwd}" + +jarfile=d8.jar +libdir="$progdir" + +if [ ! -r "$libdir/$jarfile" ]; then + # set r8.jar location for the SDK case + libdir="$libdir/lib" +fi + + +if [ ! -r "$libdir/$jarfile" ]; then + # set r8.jar location for the Android tree case + libdir=`dirname "$progdir"`/framework +fi + +if [ ! -r "$libdir/$jarfile" ]; then + echo `basename "$prog"`": can't find $jarfile" + exit 1 +fi + +# By default, give r8 a max heap size of 1 gig. This can be overridden +# by using a "-J" option (see below). +defaultMx="-Xmx1024M" + +# The following will extract any initial parameters of the form +# "-J<stuff>" from the command line and pass them to the Java +# invocation (instead of to r8). This makes it possible for you to add +# a command-line parameter such as "-JXmx256M" in your scripts, for +# example. "java" (with no args) and "java -X" give a summary of +# available options. + +javaOpts="" + +while expr "x$1" : 'x-J' >/dev/null; do + opt=`expr "x$1" : 'x-J\(.*\)'` + javaOpts="${javaOpts} -${opt}" + if expr "x${opt}" : "xXmx[0-9]" >/dev/null; then + defaultMx="no" + fi + shift +done + +if [ "${defaultMx}" != "no" ]; then + javaOpts="${javaOpts} ${defaultMx}" +fi + +if [ "$OSTYPE" = "cygwin" ]; then + # For Cygwin, convert the jarfile path into native Windows style. + jarpath=`cygpath -w "$libdir/$jarfile"` +else + jarpath="$libdir/$jarfile" +fi + +exec java $javaOpts -jar "$jarpath" "$@" diff --git a/etc/d8-compat-dx b/etc/d8-compat-dx index 21d391fa4..e531cd3fb 100755 --- a/etc/d8-compat-dx +++ b/etc/d8-compat-dx @@ -53,8 +53,6 @@ if [ ! -r "$libdir/$jarfile" ]; then exit 1 fi -echo $progdir - # By default, give d8 a max heap size of 1 gig. This can be overridden # by using a "-J" option (see below). defaultMx="-Xmx1024M" @@ -53,8 +53,6 @@ if [ ! -r "$libdir/$jarfile" ]; then exit 1 fi -echo $progdir - # By default, give r8 a max heap size of 1 gig. This can be overridden # by using a "-J" option (see below). defaultMx="-Xmx1024M" diff --git a/manifest_d8.txt b/manifest_d8.txt new file mode 100644 index 000000000..31110d980 --- /dev/null +++ b/manifest_d8.txt @@ -0,0 +1 @@ +Main-Class: com.android.tools.r8.D8 |