This commit is contained in:
2025-12-30 01:53:55 +01:00
commit fed2adb924
15 changed files with 522 additions and 0 deletions

47
scripts/setup-env.sh Executable file
View File

@@ -0,0 +1,47 @@
#!/usr/bin/env bash
set -e
# -------------------------------------------------------------------
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "${SCRIPT_DIR}/setup-paths.sh"
# -------------------------------------------------------------------
# Sanity checks
if [ ! -d "${POKY_DIR}" ]; then
echo "ERROR: poky not found at ${POKY_DIR}"
return 1 2>/dev/null || exit 1
fi
# Create cache directories
mkdir -p "${DL_DIR}"
mkdir -p "${SSTATE_DIR}"
# Initialize Yocto build environment
source "${POKY_DIR}/oe-init-build-env" "${YOCTO_ROOT}/${BUILD_DIR}"
# Inject cache paths into local.conf (idempotent)
CONF_FILE="${BUILDDIR}/conf/local.conf"
START_MARKER="# >>> yocto cache (managed) >>>"
END_MARKER="# <<< yocto cache (managed) <<<"
# Remove old managed block if present
sed -i "/${START_MARKER}/,/${END_MARKER}/d" "${CONF_FILE}"
# Append managed block
cat <<EOF >> "${CONF_FILE}"
${START_MARKER}
DL_DIR = "${DL_DIR}"
SSTATE_DIR = "${SSTATE_DIR}"
${END_MARKER}
EOF
echo
echo "Yocto environment ready:"
echo " BUILD_DIR = ${BUILDDIR}"
echo " DL_DIR = ${DL_DIR}"
echo " SSTATE_DIR = ${SSTATE_DIR}"
echo