From ba2923a3912f266c8fa1691858db29c2ce597928 Mon Sep 17 00:00:00 2001 From: Chris Wren Date: Tue, 10 Dec 2013 15:48:47 -0500 Subject: expose the protoutil for launcher as an executable script Change-Id: Ie990262534d85b118c165589ecee55d64f3a58cc --- util/com/android/launcher3/DecoderRing.java | 5 +- util/etc/launcher_protoutil | 83 +++++++++++++++++++++++++++++ util/etc/manifest.txt | 1 + 3 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 util/etc/launcher_protoutil create mode 100644 util/etc/manifest.txt (limited to 'util') diff --git a/util/com/android/launcher3/DecoderRing.java b/util/com/android/launcher3/DecoderRing.java index 1d9e0defb..bd0275e5f 100644 --- a/util/com/android/launcher3/DecoderRing.java +++ b/util/com/android/launcher3/DecoderRing.java @@ -49,7 +49,7 @@ class DecoderRing { public static void main(String[ ] args) throws Exception { File source = null; - Class type = Key.class; + Class type = null; int skip = 0; for (int i = 0; i < args.length; i++) { @@ -79,6 +79,9 @@ class DecoderRing { } } + if (type == null) { + usage(args); + } // read in the bytes ByteArrayOutputStream byteStream = new ByteArrayOutputStream(); diff --git a/util/etc/launcher_protoutil b/util/etc/launcher_protoutil new file mode 100644 index 000000000..833b5835e --- /dev/null +++ b/util/etc/launcher_protoutil @@ -0,0 +1,83 @@ +#!/bin/bash +# +# Copyright (C) 2013 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=launcher_protoutil_lib.jar +libdir="$progdir" + +if [ ! -r "$libdir/$jarfile" ]; then + # set 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 decoder 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" from the command line and pass them to the Java +# invocation (instead of to the decoder). 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/util/etc/manifest.txt b/util/etc/manifest.txt new file mode 100644 index 000000000..84842ed53 --- /dev/null +++ b/util/etc/manifest.txt @@ -0,0 +1 @@ +Main-Class: com.android.launcher3.DecoderRing -- cgit v1.2.3