diff options
| -rw-r--r-- | android/bazel_handler.go | 3 | ||||
| -rwxr-xr-x | bazel/bazelenv.sh | 78 | ||||
| -rw-r--r-- | bazel/master.WORKSPACE.bazel | 0 | ||||
| -rw-r--r-- | ui/build/config.go | 4 | ||||
| -rw-r--r-- | ui/build/soong.go | 7 |
5 files changed, 12 insertions, 80 deletions
diff --git a/android/bazel_handler.go b/android/bazel_handler.go index c87a945bb..5c7d9fc67 100644 --- a/android/bazel_handler.go +++ b/android/bazel_handler.go @@ -192,8 +192,7 @@ func pwdPrefix() string { func (context *bazelContext) issueBazelCommand(command string, labels []string, extraFlags ...string) (string, error) { - cmdFlags := []string{"--bazelrc=build/bazel/common.bazelrc", - "--output_base=" + context.outputBase, command} + cmdFlags := []string{"--output_base=" + context.outputBase, command} cmdFlags = append(cmdFlags, labels...) cmdFlags = append(cmdFlags, extraFlags...) diff --git a/bazel/bazelenv.sh b/bazel/bazelenv.sh deleted file mode 100755 index fcf71f118..000000000 --- a/bazel/bazelenv.sh +++ /dev/null @@ -1,78 +0,0 @@ -#!/bin/bash - -# Copyright 2020 Google Inc. 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. - -# Helper script for setting environment variables required for Bazel/Soong -# mixed builds prototype. For development use only. -# -# Usage: -# export BAZEL_PATH=[some_bazel_path] && source bazelenv.sh -# -# If BAZEL_PATH is not set, `which bazel` will be used -# to locate the appropriate bazel to use. - - -# Function to find top of the source tree (if $TOP isn't set) by walking up the -# tree. -function gettop -{ - local TOPFILE=build/soong/root.bp - if [ -n "${TOP-}" -a -f "${TOP-}/${TOPFILE}" ] ; then - # The following circumlocution ensures we remove symlinks from TOP. - (cd $TOP; PWD= /bin/pwd) - else - if [ -f $TOPFILE ] ; then - # The following circumlocution (repeated below as well) ensures - # that we record the true directory name and not one that is - # faked up with symlink names. - PWD= /bin/pwd - else - local HERE=$PWD - T= - while [ \( ! \( -f $TOPFILE \) \) -a \( $PWD != "/" \) ]; do - \cd .. - T=`PWD= /bin/pwd -P` - done - \cd $HERE - if [ -f "$T/$TOPFILE" ]; then - echo $T - fi - fi - fi -} - -BASE_DIR="$(mktemp -d)" - -if [ -z "$BAZEL_PATH" ] ; then - export BAZEL_PATH="$(which bazel)" -fi - -# TODO(cparsons): Use USE_BAZEL=1 instead once "mixed Soong/Bazel builds" are -# production ready. -export USE_BAZEL_ANALYSIS=1 -# TODO(cparsons): Retrieve this information in either envsetup.sh or -# bazel.sh. -export BAZEL_HOME="$BASE_DIR/bazelhome" -export BAZEL_OUTPUT_BASE="$BASE_DIR/output" -export BAZEL_WORKSPACE="$(gettop)" - -echo "USE_BAZEL_ANALYSIS=${USE_BAZEL_ANALYSIS}" -echo "BAZEL_PATH=${BAZEL_PATH}" -echo "BAZEL_HOME=${BAZEL_HOME}" -echo "BAZEL_OUTPUT_BASE=${BAZEL_OUTPUT_BASE}" -echo "BAZEL_WORKSPACE=${BAZEL_WORKSPACE}" - -mkdir -p $BAZEL_HOME -mkdir -p $BAZEL_OUTPUT_BASE diff --git a/bazel/master.WORKSPACE.bazel b/bazel/master.WORKSPACE.bazel deleted file mode 100644 index e69de29bb..000000000 --- a/bazel/master.WORKSPACE.bazel +++ /dev/null diff --git a/ui/build/config.go b/ui/build/config.go index 641aae660..229bd5cea 100644 --- a/ui/build/config.go +++ b/ui/build/config.go @@ -703,6 +703,10 @@ func (c *configImpl) NinjaArgs() []string { return c.ninjaArgs } +func (c *configImpl) BazelOutDir() string { + return filepath.Join(c.OutDir(), "bazel") +} + func (c *configImpl) SoongOutDir() string { return filepath.Join(c.OutDir(), "soong") } diff --git a/ui/build/soong.go b/ui/build/soong.go index b20237cf1..bb5cbf0e9 100644 --- a/ui/build/soong.go +++ b/ui/build/soong.go @@ -133,6 +133,13 @@ func runSoong(ctx Context, config Config) { "-j", strconv.Itoa(config.Parallel()), "--frontend_file", fifo, "-f", filepath.Join(config.SoongOutDir(), file)) + + // For Bazel mixed builds. + cmd.Environment.Set("BAZEL_PATH", "./tools/bazel") + cmd.Environment.Set("BAZEL_HOME", filepath.Join(config.BazelOutDir(), "bazelhome")) + cmd.Environment.Set("BAZEL_OUTPUT_BASE", filepath.Join(config.BazelOutDir(), "output")) + cmd.Environment.Set("BAZEL_WORKSPACE", absPath(ctx, ".")) + cmd.Environment.Set("SOONG_SANDBOX_SOONG_BUILD", "true") cmd.Sandbox = soongSandbox cmd.RunAndStreamOrFatal() |