Skip to content

Commit

Permalink
Fix cogsetup.sh to work from non-root dirs
Browse files Browse the repository at this point in the history
Test: source make/envsetup.sh
Change-Id: I36de407dbbb0cf266f1701d0895ba71d3ad41dba
  • Loading branch information
lizkammer committed Jan 31, 2024
1 parent 0a45b9e commit 79effa5
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions cogsetup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -21,18 +21,21 @@ function _create_out_symlink_for_cog() {
OUT_DIR="out"
fi

if [[ -L "${OUT_DIR}" ]]; then
# getoutdir ensures paths are absolute. envsetup could be called from a
# directory other than the root of the source tree
local outdir=$(getoutdir)
if [[ -L "${outdir}" ]]; then
return
fi
if [ -d "${OUT_DIR}" ]; then
echo -e "\tOutput directory ${OUT_DIR} cannot be present in a Cog workspace."
echo -e "\tDelete \"${OUT_DIR}\" or create a symlink from \"${OUT_DIR}\" to a directory outside your workspace."
if [ -d "${outdir}" ]; then
echo -e "\tOutput directory ${outdir} cannot be present in a Cog workspace."
echo -e "\tDelete \"${outdir}\" or create a symlink from \"${outdir}\" to a directory outside your workspace."
return 1
fi

DEFAULT_OUTPUT_DIR="${HOME}/.cog/android-build-out"
mkdir -p ${DEFAULT_OUTPUT_DIR}
ln -s ${DEFAULT_OUTPUT_DIR} `pwd`/out
ln -s ${DEFAULT_OUTPUT_DIR} ${outdir}
}

# This function sets up the build environment to be appropriate for Cog.
Expand Down Expand Up @@ -63,4 +66,4 @@ if [[ "${PWD}" != /google/cog/* ]]; then
echo -e "\e[01;31mERROR:\e[0m This script must be run from a Cog workspace."
fi

_setup_cog_env
_setup_cog_env

0 comments on commit 79effa5

Please sign in to comment.