mirror of
https://git.yoctoproject.org/poky-contrib
synced 2025-05-08 23:52:25 +08:00

Provide a reasonable default configuration for VSCode and the yocto.bitbake extension. The generated default configuration is generic and minimal. It's mostly supposed to prevent VSCode from OOM exceptions if the build directory is in the scope of the indexer plugins of VSCode. But it also configures the yocto-bitbake plugin to just work without manual user interaction. The configuration is only generated if VSCode is installed. Currently, VSCode is one of many popular editors for Yocto/OE. Removing the check would mean that the configuration would be generated by e.g. oe-selftest or for users not using VSCode. If it should prove useful, the check can be removed later. Customization for other layers is possible. A layer might provide it's own oe-setup-build-env script which calls the oe-setup-vscode script from poky with different folders. But it's also possible to override the oe-setup-vscode script by another layer with a custom implementation. (From OE-Core rev: 48829be7ab2edcbc2e4473f81cdaf35889d63f9c) Signed-off-by: Adrian Freihofer <adrian.freihofer@siemens.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
60 lines
1.5 KiB
Bash
Executable File
60 lines
1.5 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# OE Build Environment Setup Script
|
|
#
|
|
# Copyright (C) 2006-2011 Linux Foundation
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
#
|
|
|
|
#
|
|
# Normally this is called as '. ./oe-init-build-env <builddir>'
|
|
#
|
|
# This works in most shells (not dash), but not all of them pass the arguments
|
|
# when being sourced. To workaround the shell limitation use "set <builddir>"
|
|
# prior to sourcing this script.
|
|
#
|
|
if [ -n "$BASH_SOURCE" ]; then
|
|
THIS_SCRIPT=$BASH_SOURCE
|
|
elif [ -n "$ZSH_NAME" ]; then
|
|
THIS_SCRIPT=$0
|
|
else
|
|
THIS_SCRIPT="$(pwd)/oe-init-build-env"
|
|
if [ ! -e "$THIS_SCRIPT" ]; then
|
|
echo "Error: $THIS_SCRIPT doesn't exist!" >&2
|
|
echo "Please run this script in oe-init-build-env's directory." >&2
|
|
exit 1
|
|
fi
|
|
fi
|
|
if [ -n "$BBSERVER" ]; then
|
|
unset BBSERVER
|
|
fi
|
|
|
|
if [ -z "$ZSH_NAME" ] && [ "$0" = "$THIS_SCRIPT" ]; then
|
|
echo "Error: This script needs to be sourced. Please run as '. $THIS_SCRIPT'" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "$OEROOT" ]; then
|
|
OEROOT=$(dirname "$THIS_SCRIPT")
|
|
OEROOT=$(readlink -f "$OEROOT")
|
|
fi
|
|
unset THIS_SCRIPT
|
|
|
|
export OEROOT
|
|
. "$OEROOT"/scripts/oe-buildenv-internal &&
|
|
TEMPLATECONF="$TEMPLATECONF" "$OEROOT"/scripts/oe-setup-builddir || {
|
|
unset OEROOT
|
|
return 1
|
|
}
|
|
|
|
# Generate an initial configuration for VSCode and the yocto-bitbake plugin.
|
|
if command -v code > /dev/null && [ ! -d "$OEROOT/.vscode" ]; then
|
|
oe-setup-vscode "$OEROOT" "$BUILDDIR"
|
|
fi
|
|
|
|
unset OEROOT
|
|
|
|
[ -z "$BUILDDIR" ] || cd "$BUILDDIR"
|
|
|