aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/package-bazel.sh
diff options
context:
space:
mode:
authorGravatar Lukacs Berki <lberki@google.com>2015-10-19 10:52:31 +0000
committerGravatar Lukacs Berki <lberki@google.com>2015-10-19 13:43:53 +0000
commiteb851fe67fcd06660bc49a56fb44fe03a748aa17 (patch)
tree5195429112789dab6f996879e8e129cb6e65a640 /src/package-bazel.sh
parent8cef2f921ce51bb8a166bf3591ce0e6318a8871e (diff)
Another go at adding a bazel_notools binary that doesn't contain the embedded tools.
The previous change got the order of the parameters of package-bazel.sh wrong, thus building a non-functional bazel binary. -- MOS_MIGRATED_REVID=105742752
Diffstat (limited to 'src/package-bazel.sh')
-rwxr-xr-xsrc/package-bazel.sh45
1 files changed, 45 insertions, 0 deletions
diff --git a/src/package-bazel.sh b/src/package-bazel.sh
new file mode 100755
index 0000000000..9181d812d2
--- /dev/null
+++ b/src/package-bazel.sh
@@ -0,0 +1,45 @@
+#!/bin/bash -eu
+#
+# Copyright 2015 The Bazel Authors. All rights reserved.
+#
+# 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.
+
+# This script bootstraps building a Bazel binary without Bazel then
+# use this compiled Bazel to bootstrap Bazel itself. It can also
+# be provided with a previous version of Bazel to bootstrap Bazel
+# itself.
+
+WORKDIR=$(pwd)
+OUT=$1
+EMBEDDED_TOOLS=$2
+DEPLOY_JAR=$3
+INSTALL_BASE_KEY=$4
+shift 4
+
+TMP_DIR=${TMPDIR:-/tmp}
+PACKAGE_DIR="$(mktemp -d ${TMP_DIR%%/}/bazel.XXXXXXXX)"
+mkdir -p "${PACKAGE_DIR}"
+trap "rm -fr ${PACKAGE_DIR}" EXIT
+
+cp $* ${PACKAGE_DIR}
+cp ${DEPLOY_JAR} ${PACKAGE_DIR}/A-server.jar
+cp ${INSTALL_BASE_KEY} ${PACKAGE_DIR}/install_base_key
+# The timestamp of embedded tools should already be zeroed out in the input zip
+touch -t 198001010000.00 ${PACKAGE_DIR}/*
+
+if [[ ${EMBEDDED_TOOLS} != "" ]]; then
+ mkdir ${PACKAGE_DIR}/embedded_tools
+ (cd ${PACKAGE_DIR}/embedded_tools && unzip -q ${WORKDIR}/${EMBEDDED_TOOLS})
+fi
+
+(cd ${PACKAGE_DIR}; zip -qrD ${WORKDIR}/${OUT} *)