Benjamin Walsh | fb61bd4 | 2016-03-01 10:41:00 -0500 | [diff] [blame] | 1 | # |
| 2 | # Copyright (c) 2015 Wind River Systems, Inc. |
| 3 | # |
David B. Kinder | ac74d8b | 2017-01-18 17:01:01 -0800 | [diff] [blame] | 4 | # SPDX-License-Identifier: Apache-2.0 |
Benjamin Walsh | fb61bd4 | 2016-03-01 10:41:00 -0500 | [diff] [blame] | 5 | # |
Anas Nashif | e96eff6 | 2015-05-10 12:16:10 -0400 | [diff] [blame] | 6 | |
Yannis Damigos | 3e3e297 | 2016-03-01 12:31:29 +0200 | [diff] [blame] | 7 | # In zsh the value of $0 depends on the FUNCTION_ARGZERO option which is |
| 8 | # set by default. FUNCTION_ARGZERO, when it is set, sets $0 temporarily |
| 9 | # to the name of the function/script when executing a shell function or |
| 10 | # sourcing a script. POSIX_ARGZERO option, when it is set, exposes the |
| 11 | # original value of $0 in spite of the current FUNCTION_ARGZERO setting. |
d0u9 | 6cd1596 | 2016-03-18 20:50:21 +0800 | [diff] [blame] | 12 | # |
| 13 | # Note: The version of zsh need to be 5.0.6 or above. Any versions below |
| 14 | # 5.0.6 maybe encoutner errors when sourcing this script. |
Christopher Métrailler | 46da745 | 2019-05-17 11:24:11 +0200 | [diff] [blame] | 15 | if [ -n "${ZSH_VERSION:-}" ]; then |
Ulf Magnusson | 0194d04 | 2019-11-22 21:04:20 +0100 | [diff] [blame] | 16 | dir="${(%):-%N}" |
Yannis Damigos | 3e3e297 | 2016-03-01 12:31:29 +0200 | [diff] [blame] | 17 | if [ $options[posixargzero] != "on" ]; then |
| 18 | setopt posixargzero |
Ulf Magnusson | 0194d04 | 2019-11-22 21:04:20 +0100 | [diff] [blame] | 19 | name=$(basename -- "$0") |
Hosun Zhu | b479e91 | 2019-11-04 22:18:48 +0800 | [diff] [blame] | 20 | unsetopt posixargzero |
Yannis Damigos | 3e3e297 | 2016-03-01 12:31:29 +0200 | [diff] [blame] | 21 | else |
Ulf Magnusson | 0194d04 | 2019-11-22 21:04:20 +0100 | [diff] [blame] | 22 | name=$(basename -- "$0") |
Yannis Damigos | 3e3e297 | 2016-03-01 12:31:29 +0200 | [diff] [blame] | 23 | fi |
| 24 | else |
Ulf Magnusson | 0194d04 | 2019-11-22 21:04:20 +0100 | [diff] [blame] | 25 | dir="${BASH_SOURCE[0]}" |
| 26 | name=$(basename -- "$0") |
Yannis Damigos | 3e3e297 | 2016-03-01 12:31:29 +0200 | [diff] [blame] | 27 | fi |
| 28 | |
Ulf Magnusson | 0194d04 | 2019-11-22 21:04:20 +0100 | [diff] [blame] | 29 | if [ "X$name" "==" "Xzephyr-env.sh" ]; then |
Anas Nashif | ac47c45 | 2015-06-19 21:21:48 -0400 | [diff] [blame] | 30 | echo "Source this file (do NOT execute it!) to set the Zephyr Kernel environment." |
Anas Nashif | e96eff6 | 2015-05-10 12:16:10 -0400 | [diff] [blame] | 31 | exit |
| 32 | fi |
| 33 | |
| 34 | # You can further customize your environment by creating a bash script called |
Marti Bolivar | e3a3126 | 2017-03-31 15:08:33 -0400 | [diff] [blame] | 35 | # .zephyrrc in your home directory. It will be automatically |
Anas Nashif | e96eff6 | 2015-05-10 12:16:10 -0400 | [diff] [blame] | 36 | # run (if it exists) by this script. |
| 37 | |
Carles Cufi | 4e5757d | 2017-07-15 18:13:36 +0200 | [diff] [blame] | 38 | if uname | grep -q "MINGW"; then |
Marti Bolivar | 5f95120 | 2017-03-31 15:26:25 -0400 | [diff] [blame] | 39 | win_build=1 |
Ulf Magnusson | 0194d04 | 2019-11-22 21:04:20 +0100 | [diff] [blame] | 40 | pwd_opt="-W" |
Marti Bolivar | 5f95120 | 2017-03-31 15:26:25 -0400 | [diff] [blame] | 41 | else |
| 42 | win_build=0 |
Ulf Magnusson | 0194d04 | 2019-11-22 21:04:20 +0100 | [diff] [blame] | 43 | pwd_opt="" |
Marti Bolivar | 5f95120 | 2017-03-31 15:26:25 -0400 | [diff] [blame] | 44 | fi |
Louise Mendoza | c1510f5 | 2015-12-08 20:49:00 -0600 | [diff] [blame] | 45 | |
Anas Nashif | e96eff6 | 2015-05-10 12:16:10 -0400 | [diff] [blame] | 46 | # identify OS source tree root directory |
Ulf Magnusson | 0194d04 | 2019-11-22 21:04:20 +0100 | [diff] [blame] | 47 | export ZEPHYR_BASE=$( builtin cd "$( dirname "$dir" )" > /dev/null && pwd ${pwd_opt}) |
| 48 | unset pwd_opt |
Anas Nashif | e96eff6 | 2015-05-10 12:16:10 -0400 | [diff] [blame] | 49 | |
Anas Nashif | b882377 | 2015-06-05 22:46:00 -0400 | [diff] [blame] | 50 | scripts_path=${ZEPHYR_BASE}/scripts |
Marti Bolivar | 5f95120 | 2017-03-31 15:26:25 -0400 | [diff] [blame] | 51 | if [ "$win_build" -eq 1 ]; then |
| 52 | scripts_path=$(echo "/$scripts_path" | sed 's/\\/\//g' | sed 's/://') |
| 53 | fi |
| 54 | unset win_build |
Inaky Perez-Gonzalez | 62ebe72 | 2017-01-06 12:27:39 -0800 | [diff] [blame] | 55 | if ! echo "${PATH}" | grep -q "${scripts_path}"; then |
| 56 | export PATH=${scripts_path}:${PATH} |
| 57 | fi |
Anas Nashif | e96eff6 | 2015-05-10 12:16:10 -0400 | [diff] [blame] | 58 | unset scripts_path |
| 59 | |
| 60 | # enable custom environment settings |
Anas Nashif | 8accfcf | 2015-06-05 22:42:27 -0400 | [diff] [blame] | 61 | zephyr_answer_file=~/zephyr-env_install.bash |
Anas Nashif | 3096b54 | 2016-02-12 22:24:47 -0500 | [diff] [blame] | 62 | [ -f ${zephyr_answer_file} ] && { |
Ulf Magnusson | 0d8495c | 2019-11-22 21:04:45 +0100 | [diff] [blame] | 63 | echo "Warning: Please rename ~/zephyr-env_install.bash to ~/.zephyrrc" |
| 64 | . ${zephyr_answer_file} |
Anas Nashif | 3096b54 | 2016-02-12 22:24:47 -0500 | [diff] [blame] | 65 | } |
| 66 | unset zephyr_answer_file |
| 67 | zephyr_answer_file=~/.zephyrrc |
Ulf Magnusson | 0d8495c | 2019-11-22 21:04:45 +0100 | [diff] [blame] | 68 | [ -f ${zephyr_answer_file} ] && . ${zephyr_answer_file} |
Anas Nashif | 8accfcf | 2015-06-05 22:42:27 -0400 | [diff] [blame] | 69 | unset zephyr_answer_file |