[oe] [oe-commits] Shiqun Lin : sanity.bbclass: improve the sanity check for PATH and BBPATH
Paul Eggleton
paul.eggleton at linux.intel.com
Fri May 22 08:41:25 UTC 2015
On Friday 22 May 2015 07:15:36 Andreas Müller wrote:
> On Wed, May 20, 2015 at 11:20 PM, <git at git.openembedded.org> wrote:
> > Module: openembedded-core.git
> > Branch: master-next
> > Commit: b6a23572b8f14e27d4341892b9069e7cac1e9c14
> > URL:
> > http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=b6a23572b
> > 8f14e27d4341892b9069e7cac1e9c14
> >
> > Author: Shiqun Lin <Shiqun.Lin at windriver.com>
> > Date: Wed Jan 7 15:00:31 2015 +0800
> >
> > sanity.bbclass: improve the sanity check for PATH and BBPATH
> >
> > Build fails if "./" is in the PATH
> >
> > To reproduce the issue:
> > $ export PATH="./:$PATH"
> > $ make -C build-tools elfutils
> >
> > Error: ./ld: unrecognized option '--sysroot=/'
> >
> > Signed-off-by: Shiqun Lin <Shiqun.Lin at windriver.com>
> > Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> >
> > ---
> >
> > meta/classes/sanity.bbclass | 8 ++++----
> > 1 file changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
> > index fc8c980..e738110 100644
> > --- a/meta/classes/sanity.bbclass
> > +++ b/meta/classes/sanity.bbclass
> >
> > @@ -653,9 +653,9 @@ def check_sanity_version_change(status, d):
> > status.addresult("You have a 32-bit libc, but no 32-bit
> > headers. You must install the 32-bit libc headers.\n")>
> > bbpaths = d.getVar('BBPATH', True).split(":")
> >
> > - if ("." in bbpaths or "" in bbpaths) and not status.reparse:
> >
> > + if ("." in bbpaths or "./" in bbpaths or "" in bbpaths) and not
status.reparse:
> > status.addresult("BBPATH references the current directory, either
> > through " \>
> > - "an empty entry, or a '.'.\n\t This is unsafe and means
> > your "\ + "an empty entry, a './' or a '.'.\n\t This is
> > unsafe and means your "\>
> > "layer configuration is adding empty elements to
> > BBPATH.\n\t "\
> > "Please check your layer.conf files and other BBPATH "
> > \
> > "settings to remove the current working directory "
> > \
> >
> > @@ -693,8 +693,8 @@ def check_sanity_everybuild(status, d):
> > sanity_check_conffiles(status, d)
> >
> > paths = d.getVar('PATH', True).split(":")
> >
> > - if "." in paths or "" in paths:
> > - status.addresult("PATH contains '.' or '' (empty element), which
> > will break the build, please remove this.\nParsed PATH is " + str(paths)
> > + "\n") + if "." in paths or "./" in paths or "" in paths:
> > + status.addresult("PATH contains '.', './' or '' (empty element),
> > which will break the build, please remove this.\nParsed PATH is " +
> > str(paths) + "\n")>
> > # Check that the DISTRO is valid, if set
> > # need to take into account DISTRO renaming DISTRO
> >
> > --
>
> The PATH part is problematic: My system (fedora 22) or my user - have
> not yet checked where it comes from - sets './' in PATH. I am not
> happy risking fallout on my system for yocto's sanity.
FWIW, it's not in PATH for my account on F21.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
More information about the Openembedded-devel
mailing list