48 lines
1.7 KiB
Bash
48 lines
1.7 KiB
Bash
|
#!/bin/bash
|
|||
|
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
|||
|
#
|
|||
|
# This source code is licensed under the MIT license found in the
|
|||
|
# LICENSE file in the root directory of this source tree.
|
|||
|
|
|||
|
# This script is used to source in Xcode the environment settings required to run properly.
|
|||
|
# The script first sources the base `.xcode.env` file.
|
|||
|
# Then it sources the `.xcode.env.local` file if present, to override some local config
|
|||
|
# Finally, it will execute the command passed i input if any.
|
|||
|
#
|
|||
|
# USAGE:
|
|||
|
# ./with-environment.sh command
|
|||
|
|
|||
|
# Start with a default
|
|||
|
NODE_BINARY=$(command -v node)
|
|||
|
export NODE_BINARY
|
|||
|
|
|||
|
# Override the default with the global environment
|
|||
|
ENV_PATH="$PODS_ROOT/../.xcode.env"
|
|||
|
if [ -f "$ENV_PATH" ]; then
|
|||
|
source "$ENV_PATH"
|
|||
|
fi
|
|||
|
|
|||
|
# Override the global with the local environment
|
|||
|
LOCAL_ENV_PATH="${ENV_PATH}.local"
|
|||
|
if [ -f "$LOCAL_ENV_PATH" ]; then
|
|||
|
source "$LOCAL_ENV_PATH"
|
|||
|
fi
|
|||
|
|
|||
|
# Check whether NODE_BINARY has been properly set, otherwise help the users with a meaningful error.
|
|||
|
if [ -n "$NODE_BINARY" ]; then
|
|||
|
echo "Node found at: ${NODE_BINARY}"
|
|||
|
else
|
|||
|
echo '[Warning] You need to configure your node path in the `".xcode.env" file` environment. ' \
|
|||
|
'You can set it up quickly by running: ' \
|
|||
|
'`echo export NODE_BINARY=$(command -v node) > .xcode.env` ' \
|
|||
|
'in the ios folder. This is needed by React Native to work correctly. ' \
|
|||
|
'We fallback to the DEPRECATED behavior of finding `node`. This will be REMOVED in a future version. ' \
|
|||
|
'You can read more about this here: https://reactnative.dev/docs/environment-setup#optional-configuring-your-environment' >&2
|
|||
|
source "${REACT_NATIVE_PATH}/scripts/find-node-for-xcode.sh"
|
|||
|
fi
|
|||
|
|
|||
|
# Execute argument, if present
|
|||
|
if [ -n "$1" ]; then
|
|||
|
$1
|
|||
|
fi
|