From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6787079713742389248 X-Received: by 2002:a2e:a40d:: with SMTP id p13mr13540296ljn.183.1587978736846; Mon, 27 Apr 2020 02:12:16 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a19:c88a:: with SMTP id y132ls4202728lff.4.gmail; Mon, 27 Apr 2020 02:12:16 -0700 (PDT) X-Google-Smtp-Source: APiQypK8dmIky5GCCBlLcGIqzRhtBDj8DBbXn4uDtpwyQpnhHMYYStTdpqR8s/0VMKhk9gMfWXme X-Received: by 2002:ac2:4c89:: with SMTP id d9mr15195040lfl.165.1587978736020; Mon, 27 Apr 2020 02:12:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587978736; cv=none; d=google.com; s=arc-20160816; b=CEJJLLYXRa2P3vc0RcKi76tJoDUGv7h0smJ8MA7kp3TDKkB2TCwn/14gFbDfdRN3gc SB3Cm7OIJ39zTaMs4oWYRlHxGYuoDVjtm/CkvkrVt65EIcWfGPEVDuyeM0EfbBkHLM0T Zrt0zI5TmP4KxHKlk7P3UXbpGUVN6uTmNFKrlhAmZ88ELHWx8ZhYh7oJRDxz9tEpYWR1 4JcjiGtlykaBdnEbs+vpQ8In9NG7JmNWgUFH9V36Nsz2mt0pdqo/P+VVgBTVaprpwXJ6 a5RXw3AI2wNZcee4dpJdr7cB7T0gz2GNAwxt7zbAZSQ8QTX93mFgenaTcW+6x89Wxj7h iXrQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=D/QecrNVU0CG1qGpO2meQUj5ma540sPDcX99abBLkRI=; b=auqsGbgYSIFU1/BinKJi+mW7BrnKvkYbJcwDUpLHiKLHIQGkwU+O5jEuYAdSTiIObs TkkZPdgLRfkHT3SR9edk6NFqQKgIm5qrUqjl8uJ9/TClocaqBVbxeGtcR7Bc03ETMr// OSbcRoj2Bl6PHtUkRy49RrQbZ65a1KmMsq1ecIty2mmE/vGBD1Xzy50ZcUJmO+ab1QOa WvlHir9LIyEYlgmCbN2srrDpeGWFkkoSYm4c//YggXZ+RsHB8W6djfgbB1IwNNvjZYNZ YPJ6k5bqSybtPA1QORjYrVhzXPfBxPQLjtNiDOkctNH8Fn9/uFBGVU7JMGHbXf86RF5t jjAA== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=BlehWx3f; spf=pass (google.com: domain of vijaikumar.kanagarajan@gmail.com designates 2a00:1450:4864:20::341 as permitted sender) smtp.mailfrom=vijaikumar.kanagarajan@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from mail-wm1-x341.google.com (mail-wm1-x341.google.com. [2a00:1450:4864:20::341]) by gmr-mx.google.com with ESMTPS id u25si307533ljg.1.2020.04.27.02.12.16 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 27 Apr 2020 02:12:16 -0700 (PDT) Received-SPF: pass (google.com: domain of vijaikumar.kanagarajan@gmail.com designates 2a00:1450:4864:20::341 as permitted sender) client-ip=2a00:1450:4864:20::341; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=BlehWx3f; spf=pass (google.com: domain of vijaikumar.kanagarajan@gmail.com designates 2a00:1450:4864:20::341 as permitted sender) smtp.mailfrom=vijaikumar.kanagarajan@gmail.com; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: by mail-wm1-x341.google.com with SMTP id r26so19577622wmh.0 for ; Mon, 27 Apr 2020 02:12:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=D/QecrNVU0CG1qGpO2meQUj5ma540sPDcX99abBLkRI=; b=BlehWx3fWY0DqiR/cRF0RUCL9kYnIZkg36Bwuv9ObRljzypHQPyljADf0XmOFF2mSv st1hpCFeTHD4eMebDCTHOjnsah47RDzCZ/qA1f5icmCdi6cYWWAbXo6EFakmKpNJWjaU axr6oHiLRNWf2ugphcmM1PdrxVo55rBeC3hiQSBdNElJqigDFs3D33YMnpditfxzt+hR ermeppyxFxDY0HZJOIqsHjUUtdb3eNMFsOIGqx00WYwWQiHqbH/nTzSUIUjlfPHFRidF xc3W8dOUg2lz94N5I0R6AHwHaLjdbvegK1lIjRulggWYyn0Lt41KMso+MFosxWVV1cet GimA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=D/QecrNVU0CG1qGpO2meQUj5ma540sPDcX99abBLkRI=; b=BlPe4YKy1ew9fI/paO8UJ2VyE3ju5oR/LMmPr9aCU+ofWi3eQZZNYKdJFT6JJHNFOq 9LS1xqsPu7hCHzyQbVljf8U8uMV4NALTMPkZ6qF1QnDpywz/Ht4gCrpABRa37A2zDQIg 9sMUFePC6+byGQAmFUBKklZVImnOKRLD+cMKETvWJuRc6RoJLrYH0b8rNr+IgKvujQW5 Ro3pQ0cuDknQ0zJvxY1WyHSTVloTuCowKv2t1GPWB736fUfRzb6kwj6H4jdxtjbDYg1k QQpklrk7w5+PA9HLUmtkCVnjinqUaCsIqKboAnwqGT2xxcuzH2blk7tSc+NA7j+TGGzO TJ/w== X-Gm-Message-State: AGi0Puaw9OQxJ0hMk8nGGN7fAn+n5+V0veicp8aZLuatXr5+e1ATpBI1 SNXfBmwx8MUikzNfMctzgKrB0gym2zU= X-Received: by 2002:a05:600c:22d6:: with SMTP id 22mr24930236wmg.121.1587978735008; Mon, 27 Apr 2020 02:12:15 -0700 (PDT) Return-Path: Received: from oxygen.mgc.mentorg.com (nat-sch.mentorg.com. [139.181.36.34]) by smtp.gmail.com with ESMTPSA id z15sm19434316wrs.47.2020.04.27.02.12.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Apr 2020 02:12:14 -0700 (PDT) From: Vijai Kumar K X-Google-Original-From: Vijai Kumar K To: isar-users@googlegroups.com, jan.kiszka@siemens.com, henning.schild@siemens.com Cc: Vijai Kumar K Subject: [PATCH v2] Replace ISARROOT with more relevant variables Date: Mon, 27 Apr 2020 14:41:54 +0530 Message-Id: <20200427091154.5855-1-Vijaikumar_Kanagarajan@mentor.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <5a0aed27-fb1f-4d12-b35f-669d813582a5@googlegroups.com> References: <5a0aed27-fb1f-4d12-b35f-669d813582a5@googlegroups.com> X-TUID: QJS3r5s6wNNq When switching between two ISAR workspaces in the same shell session, the ISARROOT setting of the previous workspace would be picked up for the new workspace resulting in an incorrect configuration. The user had to manually unset ISARROOT to avoid any issues. As like OEROOT in OE, let us unset ISARROOT at the end of the initialization script. This helps us to avoid the above issue and also preserves support for passing ISARROOT from a caller script as in OE. ISARROOT is used mostly to derive the location of bitbake, scripts, testsuite, meta and meta-isar directories. Layers like meta, meta-isar already have their paths in LAYERDIR_core and LAYERDIR_isar which can be used. For other directories introduce dedicated variables BITBAKEDIR, SCRIPTSDIR and TESTSUITEDIR. Signed-off-by: Vijai Kumar K --- isar-init-build-env | 1 + meta/classes/image-sdk-extension.bbclass | 2 +- meta/classes/wic-img.bbclass | 31 ++++++++++++------------ scripts/ci_build.sh | 12 +++++---- scripts/isar-buildenv-internal | 7 ++++-- 5 files changed, 30 insertions(+), 23 deletions(-) diff --git a/isar-init-build-env b/isar-init-build-env index b08bb59..85fb82f 100755 --- a/isar-init-build-env +++ b/isar-init-build-env @@ -55,5 +55,6 @@ export ISARROOT unset ISARROOT return 1 } +unset ISARROOT [ -z "$BUILDDIR" ] || cd "$BUILDDIR" diff --git a/meta/classes/image-sdk-extension.bbclass b/meta/classes/image-sdk-extension.bbclass index b9f2cf4..b91fdd6 100644 --- a/meta/classes/image-sdk-extension.bbclass +++ b/meta/classes/image-sdk-extension.bbclass @@ -19,7 +19,7 @@ do_populate_sdk() { sudo rm -f ${SDKCHROOT_DIR}/chroot-setup.sh ${SDKCHROOT_DIR}/configscript.sh # Copy mount_chroot.sh for convenience - sudo cp ${ISARROOT}/scripts/mount_chroot.sh ${SDKCHROOT_DIR} + sudo cp ${SCRIPTSDIR}/mount_chroot.sh ${SDKCHROOT_DIR} # Create SDK archive cd -P ${SDKCHROOT_DIR}/.. diff --git a/meta/classes/wic-img.bbclass b/meta/classes/wic-img.bbclass index afab394..1bb1021 100644 --- a/meta/classes/wic-img.bbclass +++ b/meta/classes/wic-img.bbclass @@ -86,7 +86,7 @@ STAGING_DATADIR ?= "/usr/lib/" STAGING_LIBDIR ?= "/usr/lib/" STAGING_DIR ?= "${TMPDIR}" IMAGE_BASENAME ?= "${PN}-${DISTRO}" -FAKEROOTCMD ?= "${ISARROOT}/scripts/wic_fakeroot" +FAKEROOTCMD ?= "${SCRIPTSDIR}/wic_fakeroot" RECIPE_SYSROOT_NATIVE ?= "/" BUILDCHROOT_DIR = "${BUILDCHROOT_TARGET_DIR}" @@ -132,7 +132,7 @@ do_wic_image() { buildchroot_do_mounts sudo -s <<'EOSUDO' ( flock 9 - for dir in ${BBLAYERS} ${STAGING_DIR} ${ISARROOT}/scripts ${ISARROOT}/bitbake; do + for dir in ${BBLAYERS} ${STAGING_DIR} ${SCRIPTSDIR} ${BITBAKEDIR}; do mkdir -p ${BUILDCHROOT_DIR}/$dir if ! mountpoint ${BUILDCHROOT_DIR}/$dir >/dev/null 2>&1; then mount --bind --make-private $dir ${BUILDCHROOT_DIR}/$dir @@ -149,25 +149,26 @@ EOSUDO sudo -E chroot ${BUILDCHROOT_DIR} \ sh -c ' \ - ISARROOT="$1" - WKS_FULL_PATH="$2" - STAGING_DIR="$3" - MACHINE="$4" - WICTMP="$5" - IMAGE_FULLNAME="$6" - IMAGE_BASENAME="$7" - shift 7 - - export PATH="$ISARROOT/bitbake/bin:$PATH" - "$ISARROOT"/scripts/wic create "$WKS_FULL_PATH" \ + BITBAKEDIR="$1" + SCRIPTSDIR="$2" + WKS_FULL_PATH="$3" + STAGING_DIR="$4" + MACHINE="$5" + WICTMP="$6" + IMAGE_FULLNAME="$7" + IMAGE_BASENAME="$8" + shift 8 + + export PATH="$BITBAKEDIR/bin:$PATH" + "$SCRIPTSDIR"/wic create "$WKS_FULL_PATH" \ --vars "$STAGING_DIR/$MACHINE/imgdata/" \ -o "/$WICTMP/${IMAGE_FULLNAME}.wic/" \ --bmap \ -e "$IMAGE_BASENAME" $@' \ - my_script "${ISARROOT}" "${WKS_FULL_PATH}" "${STAGING_DIR}" \ + my_script "${BITBAKEDIR}" "${SCRIPTSDIR}" "${WKS_FULL_PATH}" "${STAGING_DIR}" \ "${MACHINE}" "${WICTMP}" "${IMAGE_FULLNAME}" "${IMAGE_BASENAME}" \ ${WIC_CREATE_EXTRA_ARGS} - sudo chown -R $(stat -c "%U" ${ISARROOT}) ${ISARROOT}/meta ${ISARROOT}/meta-isar ${ISARROOT}/scripts || true + sudo chown -R $(stat -c "%U" ${LAYERDIR_core}) ${LAYERDIR_core} ${LAYERDIR_isar} ${SCRIPTSDIR} || true WIC_DIRECT=$(ls -t -1 ${BUILDCHROOT_DIR}/$WICTMP/${IMAGE_FULLNAME}.wic/*.direct | head -1) sudo chown -R $(id -u):$(id -g) ${BUILDCHROOT_DIR}/${WICTMP} mv -f ${WIC_DIRECT} ${WIC_IMAGE_FILE} diff --git a/scripts/ci_build.sh b/scripts/ci_build.sh index adc403b..d15aba9 100755 --- a/scripts/ci_build.sh +++ b/scripts/ci_build.sh @@ -138,8 +138,8 @@ if [ -n "$CROSS_BUILD" ]; then fi if [ -n "$REPRO_BUILD" ]; then - ISAR_TESTSUITE_GPG_PUB_KEY_FILE="$ISARROOT/testsuite/base-apt/test_pub.key" - ISAR_TESTSUITE_GPG_PRIV_KEY_FILE="$ISARROOT/testsuite/base-apt/test_priv.key" + ISAR_TESTSUITE_GPG_PUB_KEY_FILE="$TESTSUITEDIR/base-apt/test_pub.key" + ISAR_TESTSUITE_GPG_PRIV_KEY_FILE="$TESTSUITEDIR/base-apt/test_priv.key" export GNUPGHOME=$(mktemp -d) gpg --import $ISAR_TESTSUITE_GPG_PUB_KEY_FILE $ISAR_TESTSUITE_GPG_PRIV_KEY_FILE @@ -187,9 +187,11 @@ if [ -z "$FAST_BUILD" ]; then bitbake $BB_ARGS $TARGETS_SET fi -cp -a "${ISARROOT}/meta/classes/dpkg-base.bbclass" "${ISARROOT}/meta/classes/dpkg-base.bbclass.ci-backup" -echo -e "do_fetch_append() {\n\n}" >> "${ISARROOT}/meta/classes/dpkg-base.bbclass" +eval $(bitbake -e | grep "^LAYERDIR_core=") + +cp -a "${LAYERDIR_core}/classes/dpkg-base.bbclass" "${LAYERDIR_core}/classes/dpkg-base.bbclass.ci-backup" +echo -e "do_fetch_append() {\n\n}" >> "${LAYERDIR_core}/classes/dpkg-base.bbclass" bitbake $BB_ARGS mc:qemuamd64-stretch:isar-image-base -mv "${ISARROOT}/meta/classes/dpkg-base.bbclass.ci-backup" "${ISARROOT}/meta/classes/dpkg-base.bbclass" +mv "${LAYERDIR_core}/classes/dpkg-base.bbclass.ci-backup" "${LAYERDIR_core}/classes/dpkg-base.bbclass" diff --git a/scripts/isar-buildenv-internal b/scripts/isar-buildenv-internal index 72a91ab..fe1e65f 100755 --- a/scripts/isar-buildenv-internal +++ b/scripts/isar-buildenv-internal @@ -59,8 +59,11 @@ fi unset BDIR export BUILDDIR +export BITBAKEDIR="${ISARROOT}/bitbake" +export SCRIPTSDIR="${ISARROOT}/scripts" +export TESTSUITEDIR="${ISARROOT}/testsuite" -for newpath in "$ISARROOT/bitbake/bin" "$ISARROOT/scripts"; do +for newpath in "$BITBAKEDIR/bin" "$SCRIPTSDIR"; do # Remove any existences of $newpath from $PATH PATH=$(echo $PATH | sed -re "s#(^|:)$newpath(:|$)#\2#g;s#^:##") @@ -74,5 +77,5 @@ export PATH BBPATH="${BUILDDIR}" export BBPATH -BB_ENV_EXTRAWHITE="BUILDDIR ISARROOT http_proxy https_proxy ftp_proxy no_proxy GNUPGHOME" +BB_ENV_EXTRAWHITE="BUILDDIR BITBAKEDIR SCRIPTSDIR TESTSUITEDIR http_proxy https_proxy ftp_proxy no_proxy GNUPGHOME" export BB_ENV_EXTRAWHITE -- 2.17.1