mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00

This adds SPDX license headers in place of the wide assortment of things currently in our script headers. We default to GPL-2.0-only except for the oeqa code where it was clearly submitted and marked as MIT on the most part or some scripts which had the "or later" GPL versioning. The patch also drops other obsolete bits of file headers where they were encoountered such as editor modelines, obsolete maintainer information or the phrase "All rights reserved" which is now obsolete and not required in copyright headers (in this case its actually confusing for licensing as all rights were not reserved). More work is needed for OE-Core but this takes care of the bulk of the scripts and meta/lib directories. The top level LICENSE files are tweaked to match the new structure and the SPDX naming. (From OE-Core rev: f8c9c511b5f1b7dbd45b77f345cb6c048ae6763e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
121 lines
3.8 KiB
Bash
Executable File
121 lines
3.8 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# OE-Core Build Environment Setup Script
|
|
#
|
|
# Copyright (C) 2006-2011 Linux Foundation
|
|
#
|
|
# SPDX-License-Identifier: GPL-2.0-or-later
|
|
#
|
|
|
|
if ! $(return >/dev/null 2>&1) ; then
|
|
echo 'oe-buildenv-internal: error: this script must be sourced'
|
|
echo ''
|
|
echo 'Usage: . $OEROOT/scripts/oe-buildenv-internal &&'
|
|
echo ''
|
|
echo 'OpenEmbedded oe-buildenv-internal - an internal script that is'
|
|
echo 'used in oe-init-build-env to initialize oe build environment'
|
|
echo ''
|
|
exit 2
|
|
fi
|
|
|
|
# It is assumed OEROOT is already defined when this is called
|
|
if [ -z "$OEROOT" ]; then
|
|
echo >&2 "Error: OEROOT is not defined!"
|
|
return 1
|
|
fi
|
|
|
|
if [ -z "$OE_SKIP_SDK_CHECK" ] && [ -n "$OECORE_SDK_VERSION" ]; then
|
|
echo >&2 "Error: The OE SDK/ADT was detected as already being present in this shell environment. Please use a clean shell when sourcing this environment script."
|
|
return 1
|
|
fi
|
|
|
|
py_v27_check=$(python2 -c 'import sys; print sys.version_info >= (2,7,3)')
|
|
if [ "$py_v27_check" != "True" ]; then
|
|
echo >&2 "OpenEmbedded requires 'python' to be python v2 (>= 2.7.3), not python v3."
|
|
echo >&2 "Please upgrade your python v2."
|
|
fi
|
|
unset py_v27_check
|
|
|
|
# We potentially have code that doesn't parse correctly with older versions
|
|
# of Python, and rather than fixing that and being eternally vigilant for
|
|
# any other new feature use, just check the version here.
|
|
py_v34_check=$(python3 -c 'import sys; print(sys.version_info >= (3,4,0))')
|
|
if [ "$py_v34_check" != "True" ]; then
|
|
echo >&2 "BitBake requires Python 3.4.0 or later as 'python3'"
|
|
return 1
|
|
fi
|
|
unset py_v34_check
|
|
|
|
if [ -z "$BDIR" ]; then
|
|
if [ -z "$1" ]; then
|
|
BDIR="build"
|
|
else
|
|
BDIR="$1"
|
|
if [ "$BDIR" = "/" ]; then
|
|
echo >&2 "Error: / is not supported as a build directory."
|
|
return 1
|
|
fi
|
|
|
|
# Remove any possible trailing slashes. This is used to work around
|
|
# buggy readlink in Ubuntu 10.04 that doesn't ignore trailing slashes
|
|
# and hence "readlink -f new_dir_to_be_created/" returns empty.
|
|
BDIR=$(echo $BDIR | sed -re 's|/+$||')
|
|
|
|
BDIR=$(readlink -f "$BDIR")
|
|
if [ -z "$BDIR" ]; then
|
|
PARENTDIR=$(dirname "$1")
|
|
echo >&2 "Error: the directory $PARENTDIR does not exist?"
|
|
return 1
|
|
fi
|
|
fi
|
|
if [ -n "$2" ]; then
|
|
BITBAKEDIR="$2"
|
|
fi
|
|
fi
|
|
if [ "${BDIR#/}" != "$BDIR" ]; then
|
|
BUILDDIR="$BDIR"
|
|
else
|
|
BUILDDIR="$(pwd)/$BDIR"
|
|
fi
|
|
unset BDIR
|
|
|
|
if [ -z "$BITBAKEDIR" ]; then
|
|
BITBAKEDIR="$OEROOT/bitbake$BBEXTRA"
|
|
test -d "$BITBAKEDIR" || BITBAKEDIR="$OEROOT/../bitbake$BBEXTRA"
|
|
fi
|
|
|
|
BITBAKEDIR=$(readlink -f "$BITBAKEDIR")
|
|
BUILDDIR=$(readlink -f "$BUILDDIR")
|
|
BBPATH=$BUILDDIR
|
|
|
|
export BBPATH
|
|
|
|
if [ ! -d "$BITBAKEDIR" ]; then
|
|
echo >&2 "Error: The bitbake directory ($BITBAKEDIR) does not exist! Please ensure a copy of bitbake exists at this location or specify an alternative path on the command line"
|
|
return 1
|
|
fi
|
|
|
|
# Make sure our paths are at the beginning of $PATH
|
|
for newpath in "$BITBAKEDIR/bin" "$OEROOT/scripts"; do
|
|
# Remove any existences of $newpath from $PATH
|
|
PATH=$(echo $PATH | sed -re "s#(^|:)$newpath(:|$)#\2#g;s#^:##")
|
|
|
|
# Add $newpath to $PATH
|
|
PATH="$newpath:$PATH"
|
|
done
|
|
unset BITBAKEDIR newpath
|
|
|
|
# Used by the runqemu script
|
|
export BUILDDIR
|
|
export PATH
|
|
|
|
BB_ENV_EXTRAWHITE_OE="MACHINE DISTRO TCMODE TCLIBC HTTP_PROXY http_proxy \
|
|
HTTPS_PROXY https_proxy FTP_PROXY ftp_proxy FTPS_PROXY ftps_proxy ALL_PROXY \
|
|
all_proxy NO_PROXY no_proxy SSH_AGENT_PID SSH_AUTH_SOCK BB_SRCREV_POLICY \
|
|
SDKMACHINE BB_NUMBER_THREADS BB_NO_NETWORK PARALLEL_MAKE GIT_PROXY_COMMAND \
|
|
SOCKS5_PASSWD SOCKS5_USER SCREENDIR STAMPS_DIR BBPATH_EXTRA BB_SETSCENE_ENFORCE"
|
|
|
|
BB_ENV_EXTRAWHITE="$(echo $BB_ENV_EXTRAWHITE $BB_ENV_EXTRAWHITE_OE | tr ' ' '\n' | LC_ALL=C sort --unique | tr '\n' ' ')"
|
|
|
|
export BB_ENV_EXTRAWHITE
|