On 11/12/20 7:47 PM, Andreas Oberritter wrote:
On Thu, 12 Nov 2020 19:32:59 +0800
Robert Yang <liezhi.y...@windriver.com> wrote:

Hi Andreas,

On 11/12/20 7:24 PM, Andreas Oberritter wrote:
Dear Robert,

On Thu, 12 Nov 2020 19:25:49 +0800
"Robert Yang" <liezhi.y...@windriver.com> wrote:

This can make it possible to do extra settings such as PATH for other layers,
for exampole, other layers may also have scripts directories as oe-core, we
have to run them with path since they are not in PATH, for example, there is a
tool meta-browser/scripts/firefox-gen-l10n-recipes, we have to use
/path/to/meta-browser/scripts to run it. Make oe-buildenv-internal check and
enable $OEROOT/extrasettings, and set a line like the following can fix the
problem:

PATH=/relative/to/$OEROOT/meta-browser/scripts:$PATH

Signed-off-by: Robert Yang <liezhi.y...@windriver.com>
---
   scripts/oe-buildenv-internal | 4 ++++
   1 file changed, 4 insertions(+)

diff --git a/scripts/oe-buildenv-internal b/scripts/oe-buildenv-internal
index ba0a9b44d6..bf84003d72 100755
--- a/scripts/oe-buildenv-internal
+++ b/scripts/oe-buildenv-internal
@@ -98,6 +98,10 @@ for newpath in "$BITBAKEDIR/bin" "$OEROOT/scripts"; do
   done
   unset BITBAKEDIR newpath
+if [ -e $OEROOT/extrasettings ]; then
+. $OEROOT/extrasettings
+fi

I think this filename isn't very descriptive, and people finding this file 
might wonder what it is about.

There is no such a file by default, the file should be created by other layers
or people out of oe-core.


How about sourcing all files (maybe with a given suffix like .sh) in 
$OEROOT/scripts/oe-buildenv-internal.d/ in lexical order?

If we do this, people need to patch oe-core/scripts/oe-buildenv-internal.d/ to
add their own settings, and oe-core can't accept such customization patches,
then it would make their oe-core repo non-fastword because of the local patches,
so I'm afraid that we can't do this.

The same restrictions apply to $OEROOT/extrasettings.

There is a slightly different, if make a symlink outside of oe-core
to oe-init-build-env, then the symlink's dir will be used as OEROOT:

if [ -z "$OEROOT" ]; then
    OEROOT=$(dirname "$THIS_SCRIPT")
    OEROOT=$(readlink -f "$OEROOT")
fi

So $OEROOT/extrasettings can be in the symlink's directory which is out of
oe-core, but '$OEROOT/scripts' can't since it conflicts with oe-core/scripts,
another directory such as $OEROOT/oe-buildenv-internal.d/ should work.

// Robert


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#144508): 
https://lists.openembedded.org/g/openembedded-core/message/144508
Mute This Topic: https://lists.openembedded.org/mt/78204025/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to