aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorNan Zhang <nanzhang@google.com>2017-11-03 14:53:31 -0700
committerNan Zhang <nanzhang@google.com>2017-11-03 15:19:15 -0700
commit3c807db06ed10aa70b368df3dfd5b93a718988f5 (patch)
treed6edb43be23f457f59f947d07dde3f56c09acb1b /scripts
parentf45c6934c84ba3432bffb20dcf4b5bdf0c0dda2e (diff)
downloadbuild_soong-3c807db06ed10aa70b368df3dfd5b93a718988f5.tar.gz
build_soong-3c807db06ed10aa70b368df3dfd5b93a718988f5.tar.bz2
build_soong-3c807db06ed10aa70b368df3dfd5b93a718988f5.zip
Add default jar wrapper when wrapper property is not specified
Bug: b/68779881 Test: manually copied the jar-wrapper.sh to out/soong/host/linux-x86/framework Change-Id: Idee1e7e64c6e3c89c89a8cd9c107a38533356b6c
Diffstat (limited to 'scripts')
-rw-r--r--scripts/jar-wrapper.sh58
1 files changed, 58 insertions, 0 deletions
diff --git a/scripts/jar-wrapper.sh b/scripts/jar-wrapper.sh
new file mode 100644
index 00000000..71c1d906
--- /dev/null
+++ b/scripts/jar-wrapper.sh
@@ -0,0 +1,58 @@
+#!/bin/bash
+#
+# Copyright (C) 2007 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
+ fullprog=`/bin/ls -ld "${prog}"`
+ fullprog=`expr "${fullprog}" : ".* -> \(.*\)$"`
+ if expr "x${fullprog}" : 'x/' >/dev/null; then
+ prog="${fullprog}"
+ else
+ progdir=`dirname "${prog}"`
+ prog="${progdir}/${fullprog}"
+ fi
+done
+
+oldwd=`pwd`
+progdir=`dirname "${prog}"`
+cd "${progdir}"
+progdir=`pwd`
+prog="${progdir}"/`basename "${prog}"`
+cd "${oldwd}"
+
+jarfile=`basename "${prog}"`.jar
+jardir="${progdir}"
+
+if [ ! -r "${jardir}/${jarfile}" ]; then
+ jardir=`dirname "${progdir}"`/framework
+fi
+
+if [ ! -r "${jardir}/${jarfile}" ]; then
+ echo `basename "${prog}"`": can't find ${jarfile}"
+ exit 1
+fi
+
+javaOpts=""
+while expr "x$1" : 'x-J' >/dev/null; do
+ opt=`expr "$1" : '-J\(.*\)'`
+ javaOpts="${javaOpts} -${opt}"
+ shift
+done
+
+exec java ${javaOpts} -jar ${jardir}/${jarfile} "$@"