All of lore.kernel.org
 help / color / mirror / Atom feed
* libtalloc failure due to waf
@ 2018-02-15 22:53 Denys Dmytriyenko
  2018-02-15 23:10 ` Tim Orling
                   ` (2 more replies)
  0 siblings, 3 replies; 28+ messages in thread
From: Denys Dmytriyenko @ 2018-02-15 22:53 UTC (permalink / raw)
  To: openembedded-devel

Hi,

I'm getting below stack dump building libtalloc 2.1.10 in master. Works fine in 
rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not familiar with 
waf, any help? Thanks.


ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python function in exec_python_func() autogenerated:

The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:waf_preconfigure(d)
     0003:
File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass', lineno: 34, function: waf_preconfigure
     0030:    from distutils.version import StrictVersion
     0031:    subsrcdir = d.getVar('S')
     0032:    wafbin = os.path.join(subsrcdir, 'waf')
     0033:    try:
 *** 0034:        result = subprocess.check_output([wafbin, '--version'], cwd=subsrcdir, stderr=subprocess.STDOUT)
     0035:        version = result.decode('utf-8').split()[1]
     0036:        if StrictVersion(version) >= StrictVersion("1.8.7"):
     0037:            d.setVar("WAF_EXTRA_CONF", "--bindir=${bindir} --libdir=${libdir}")
     0038:    except subprocess.CalledProcessError as e:
File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function: check_output
     0622:        # empty string. That is maintained here for backwards compatibility.
     0623:        kwargs['input'] = '' if kwargs.get('universal_newlines', False) else b''
     0624:
     0625:    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
 *** 0626:               **kwargs).stdout
     0627:
     0628:
     0629:class CompletedProcess(object):
     0630:    """A process that has finished running.
File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function: run
     0689:        if 'stdin' in kwargs:
     0690:            raise ValueError('stdin and input arguments may not both be used.')
     0691:        kwargs['stdin'] = PIPE
     0692:
 *** 0693:    with Popen(*popenargs, **kwargs) as process:
     0694:        try:
     0695:            stdout, stderr = process.communicate(input, timeout=timeout)
     0696:        except TimeoutExpired:
     0697:            process.kill()
File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function: __init__
     0943:                                startupinfo, creationflags, shell,
     0944:                                p2cread, p2cwrite,
     0945:                                c2pread, c2pwrite,
     0946:                                errread, errwrite,
 *** 0947:                                restore_signals, start_new_session)
     0948:        except:
     0949:            # Cleanup if the child failed starting.
     0950:            for f in filter(None, (self.stdin, self.stdout, self.stderr)):
     0951:                try:
File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function: _execute_child
     1547:                                # The error must be from chdir(cwd).
     1548:                                err_msg += ': ' + repr(cwd)
     1549:                            else:
     1550:                                err_msg += ': ' + repr(orig_executable)
 *** 1551:                    raise child_exception_type(errno_num, err_msg)
     1552:                raise child_exception_type(err_msg)
     1553:
     1554:
     1555:        def _handle_exitstatus(self, sts, _WIFSIGNALED=os.WIFSIGNALED,
Exception: FileNotFoundError: [Errno 2] No such file or directory: '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'

ERROR: libtalloc-2.1.10-r0 do_configure: Function failed: waf_preconfigure
ERROR: Logfile of failure stored in: /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
ERROR: Task (/OE/master/sources/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.1.10.bb:do_configure) failed with exit code '1'


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 22:53 libtalloc failure due to waf Denys Dmytriyenko
@ 2018-02-15 23:10 ` Tim Orling
  2018-02-15 23:16   ` Joshua Watt
                     ` (2 more replies)
  2018-02-15 23:14 ` Joshua Watt
  2018-02-15 23:27 ` Khem Raj
  2 siblings, 3 replies; 28+ messages in thread
From: Tim Orling @ 2018-02-15 23:10 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: openembedded-devel

Seeing the same and trying to figure it out. Also, seems there is no recipe
for waf-native, so it becomes a new required host tool.
On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org> wrote:

> Hi,
>
> I'm getting below stack dump building libtalloc 2.1.10 in master. Works
> fine in
> rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not familiar with
> waf, any help? Thanks.
>
>
> ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python function
> in exec_python_func() autogenerated:
>
> The stack trace of python calls that resulted in this exception/failure
> was:
> File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
>      0001:
>  *** 0002:waf_preconfigure(d)
>      0003:
> File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass', lineno: 34,
> function: waf_preconfigure
>      0030:    from distutils.version import StrictVersion
>      0031:    subsrcdir = d.getVar('S')
>      0032:    wafbin = os.path.join(subsrcdir, 'waf')
>      0033:    try:
>  *** 0034:        result = subprocess.check_output([wafbin, '--version'],
> cwd=subsrcdir, stderr=subprocess.STDOUT)
>      0035:        version = result.decode('utf-8').split()[1]
>      0036:        if StrictVersion(version) >= StrictVersion("1.8.7"):
>      0037:            d.setVar("WAF_EXTRA_CONF", "--bindir=${bindir}
> --libdir=${libdir}")
>      0038:    except subprocess.CalledProcessError as e:
> File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> check_output
>      0622:        # empty string. That is maintained here for backwards
> compatibility.
>      0623:        kwargs['input'] = '' if kwargs.get('universal_newlines',
> False) else b''
>      0624:
>      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout,
> check=True,
>  *** 0626:               **kwargs).stdout
>      0627:
>      0628:
>      0629:class CompletedProcess(object):
>      0630:    """A process that has finished running.
> File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function: run
>      0689:        if 'stdin' in kwargs:
>      0690:            raise ValueError('stdin and input arguments may not
> both be used.')
>      0691:        kwargs['stdin'] = PIPE
>      0692:
>  *** 0693:    with Popen(*popenargs, **kwargs) as process:
>      0694:        try:
>      0695:            stdout, stderr = process.communicate(input,
> timeout=timeout)
>      0696:        except TimeoutExpired:
>      0697:            process.kill()
> File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function: __init__
>      0943:                                startupinfo, creationflags,
> shell,
>      0944:                                p2cread, p2cwrite,
>      0945:                                c2pread, c2pwrite,
>      0946:                                errread, errwrite,
>  *** 0947:                                restore_signals,
> start_new_session)
>      0948:        except:
>      0949:            # Cleanup if the child failed starting.
>      0950:            for f in filter(None, (self.stdin, self.stdout,
> self.stderr)):
>      0951:                try:
> File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> _execute_child
>      1547:                                # The error must be from
> chdir(cwd).
>      1548:                                err_msg += ': ' + repr(cwd)
>      1549:                            else:
>      1550:                                err_msg += ': ' +
> repr(orig_executable)
>  *** 1551:                    raise child_exception_type(errno_num,
> err_msg)
>      1552:                raise child_exception_type(err_msg)
>      1553:
>      1554:
>      1555:        def _handle_exitstatus(self, sts,
> _WIFSIGNALED=os.WIFSIGNALED,
> Exception: FileNotFoundError: [Errno 2] No such file or directory:
> '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
>
> ERROR: libtalloc-2.1.10-r0 do_configure: Function failed: waf_preconfigure
> ERROR: Logfile of failure stored in:
> /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> ERROR: Task
> (/OE/master/sources/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> failed with exit code '1'
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 22:53 libtalloc failure due to waf Denys Dmytriyenko
  2018-02-15 23:10 ` Tim Orling
@ 2018-02-15 23:14 ` Joshua Watt
  2018-02-15 23:27 ` Khem Raj
  2 siblings, 0 replies; 28+ messages in thread
From: Joshua Watt @ 2018-02-15 23:14 UTC (permalink / raw)
  To: Denys Dmytriyenko, openembedded-devel

This was fixed here: http://lists.openembedded.org/pipermail/openembedd
ed-devel/2018-February/116701.html

I think it will probably be pushed to master soon, it is on the
stagging/master-next branch in contrib (370ea5786)

Joshua Watt

On Thu, 2018-02-15 at 17:53 -0500, Denys Dmytriyenko wrote:
> Hi,
> 
> I'm getting below stack dump building libtalloc 2.1.10 in master.
> Works fine in 
> rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> familiar with 
> waf, any help? Thanks.
> 
> 
> ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
> function in exec_python_func() autogenerated:
> 
> The stack trace of python calls that resulted in this
> exception/failure was:
> File: 'exec_python_func() autogenerated', lineno: 2, function:
> <module>
>      0001:
>  *** 0002:waf_preconfigure(d)
>      0003:
> File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass', lineno:
> 34, function: waf_preconfigure
>      0030:    from distutils.version import StrictVersion
>      0031:    subsrcdir = d.getVar('S')
>      0032:    wafbin = os.path.join(subsrcdir, 'waf')
>      0033:    try:
>  *** 0034:        result = subprocess.check_output([wafbin, '
> --version'], cwd=subsrcdir, stderr=subprocess.STDOUT)
>      0035:        version = result.decode('utf-8').split()[1]
>      0036:        if StrictVersion(version) >=
> StrictVersion("1.8.7"):
>      0037:            d.setVar("WAF_EXTRA_CONF", "--bindir=${bindir}
> --libdir=${libdir}")
>      0038:    except subprocess.CalledProcessError as e:
> File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> check_output
>      0622:        # empty string. That is maintained here for
> backwards compatibility.
>      0623:        kwargs['input'] = '' if
> kwargs.get('universal_newlines', False) else b''
>      0624:
>      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout,
> check=True,
>  *** 0626:               **kwargs).stdout
>      0627:
>      0628:
>      0629:class CompletedProcess(object):
>      0630:    """A process that has finished running.
> File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function: run
>      0689:        if 'stdin' in kwargs:
>      0690:            raise ValueError('stdin and input arguments may
> not both be used.')
>      0691:        kwargs['stdin'] = PIPE
>      0692:
>  *** 0693:    with Popen(*popenargs, **kwargs) as process:
>      0694:        try:
>      0695:            stdout, stderr = process.communicate(input,
> timeout=timeout)
>      0696:        except TimeoutExpired:
>      0697:            process.kill()
> File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
> __init__
>      0943:                                startupinfo, creationflags,
> shell,
>      0944:                                p2cread, p2cwrite,
>      0945:                                c2pread, c2pwrite,
>      0946:                                errread, errwrite,
>  *** 0947:                                restore_signals,
> start_new_session)
>      0948:        except:
>      0949:            # Cleanup if the child failed starting.
>      0950:            for f in filter(None, (self.stdin, self.stdout,
> self.stderr)):
>      0951:                try:
> File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> _execute_child
>      1547:                                # The error must be from
> chdir(cwd).
>      1548:                                err_msg += ': ' + repr(cwd)
>      1549:                            else:
>      1550:                                err_msg += ': ' +
> repr(orig_executable)
>  *** 1551:                    raise child_exception_type(errno_num,
> err_msg)
>      1552:                raise child_exception_type(err_msg)
>      1553:
>      1554:
>      1555:        def _handle_exitstatus(self, sts,
> _WIFSIGNALED=os.WIFSIGNALED,
> Exception: FileNotFoundError: [Errno 2] No such file or directory:
> '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> 
> ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> waf_preconfigure
> ERROR: Logfile of failure stored in: /OE/master/build/tmp-
> glibc/work/armv7ahf-neon-oe-linux-gnueabi/libtalloc/2.1.10-
> r0/temp/log.do_configure.52699
> ERROR: Task (/OE/master/sources/meta-openembedded/meta-
> networking/recipes-
> support/libtalloc/libtalloc_2.1.10.bb:do_configure) failed with exit
> code '1'


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:10 ` Tim Orling
@ 2018-02-15 23:16   ` Joshua Watt
  2018-02-15 23:20     ` Tim Orling
  2018-02-15 23:20   ` Christopher Larson
  2018-02-15 23:24   ` Andre McCurdy
  2 siblings, 1 reply; 28+ messages in thread
From: Joshua Watt @ 2018-02-15 23:16 UTC (permalink / raw)
  To: Tim Orling, Denys Dmytriyenko; +Cc: openembedded-devel

On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> Seeing the same and trying to figure it out. Also, seems there is no
> recipe
> for waf-native, so it becomes a new required host tool.

There is no "waf" tool, so a "waf-native" tool doesn't make sense...
it's not how waf works. Each project has their own copy of the waf
program, it's not something the host has to provide.

> On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org>
> wrote:
> 
> > Hi,
> > 
> > I'm getting below stack dump building libtalloc 2.1.10 in master.
> > Works
> > fine in
> > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> > familiar with
> > waf, any help? Thanks.
> > 
> > 
> > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
> > function
> > in exec_python_func() autogenerated:
> > 
> > The stack trace of python calls that resulted in this
> > exception/failure
> > was:
> > File: 'exec_python_func() autogenerated', lineno: 2, function:
> > <module>
> >      0001:
> >  *** 0002:waf_preconfigure(d)
> >      0003:
> > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> > lineno: 34,
> > function: waf_preconfigure
> >      0030:    from distutils.version import StrictVersion
> >      0031:    subsrcdir = d.getVar('S')
> >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> >      0033:    try:
> >  *** 0034:        result = subprocess.check_output([wafbin, '
> > --version'],
> > cwd=subsrcdir, stderr=subprocess.STDOUT)
> >      0035:        version = result.decode('utf-8').split()[1]
> >      0036:        if StrictVersion(version) >=
> > StrictVersion("1.8.7"):
> >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > --bindir=${bindir}
> > --libdir=${libdir}")
> >      0038:    except subprocess.CalledProcessError as e:
> > File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> > check_output
> >      0622:        # empty string. That is maintained here for
> > backwards
> > compatibility.
> >      0623:        kwargs['input'] = '' if
> > kwargs.get('universal_newlines',
> > False) else b''
> >      0624:
> >      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout,
> > check=True,
> >  *** 0626:               **kwargs).stdout
> >      0627:
> >      0628:
> >      0629:class CompletedProcess(object):
> >      0630:    """A process that has finished running.
> > File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function:
> > run
> >      0689:        if 'stdin' in kwargs:
> >      0690:            raise ValueError('stdin and input arguments
> > may not
> > both be used.')
> >      0691:        kwargs['stdin'] = PIPE
> >      0692:
> >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> >      0694:        try:
> >      0695:            stdout, stderr = process.communicate(input,
> > timeout=timeout)
> >      0696:        except TimeoutExpired:
> >      0697:            process.kill()
> > File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
> > __init__
> >      0943:                                startupinfo,
> > creationflags,
> > shell,
> >      0944:                                p2cread, p2cwrite,
> >      0945:                                c2pread, c2pwrite,
> >      0946:                                errread, errwrite,
> >  *** 0947:                                restore_signals,
> > start_new_session)
> >      0948:        except:
> >      0949:            # Cleanup if the child failed starting.
> >      0950:            for f in filter(None, (self.stdin,
> > self.stdout,
> > self.stderr)):
> >      0951:                try:
> > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> > _execute_child
> >      1547:                                # The error must be from
> > chdir(cwd).
> >      1548:                                err_msg += ': ' +
> > repr(cwd)
> >      1549:                            else:
> >      1550:                                err_msg += ': ' +
> > repr(orig_executable)
> >  *** 1551:                    raise child_exception_type(errno_num,
> > err_msg)
> >      1552:                raise child_exception_type(err_msg)
> >      1553:
> >      1554:
> >      1555:        def _handle_exitstatus(self, sts,
> > _WIFSIGNALED=os.WIFSIGNALED,
> > Exception: FileNotFoundError: [Errno 2] No such file or directory:
> > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > 
> > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> > waf_preconfigure
> > ERROR: Logfile of failure stored in:
> > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > ERROR: Task
> > (/OE/master/sources/meta-openembedded/meta-networking/recipes-
> > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > failed with exit code '1'
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > 


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:10 ` Tim Orling
  2018-02-15 23:16   ` Joshua Watt
@ 2018-02-15 23:20   ` Christopher Larson
  2018-02-15 23:24   ` Andre McCurdy
  2 siblings, 0 replies; 28+ messages in thread
From: Christopher Larson @ 2018-02-15 23:20 UTC (permalink / raw)
  To: Tim Orling; +Cc: Openembedded Discussion

waf is generally shipped in the source tree, not used from any host. But I
expect "[oe] [meta-networking][PATCH] waf-samba.bbclass: No longer inherit
waf.bbclass” may be of interest here.

On Thu, Feb 15, 2018 at 4:10 PM, Tim Orling <ticotimo@gmail.com> wrote:

> Seeing the same and trying to figure it out. Also, seems there is no recipe
> for waf-native, so it becomes a new required host tool.
> On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org> wrote:
>
> > Hi,
> >
> > I'm getting below stack dump building libtalloc 2.1.10 in master. Works
> > fine in
> > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not familiar
> with
> > waf, any help? Thanks.
> >
> >
> > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
> function
> > in exec_python_func() autogenerated:
> >
> > The stack trace of python calls that resulted in this exception/failure
> > was:
> > File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
> >      0001:
> >  *** 0002:waf_preconfigure(d)
> >      0003:
> > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass', lineno: 34,
> > function: waf_preconfigure
> >      0030:    from distutils.version import StrictVersion
> >      0031:    subsrcdir = d.getVar('S')
> >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> >      0033:    try:
> >  *** 0034:        result = subprocess.check_output([wafbin,
> '--version'],
> > cwd=subsrcdir, stderr=subprocess.STDOUT)
> >      0035:        version = result.decode('utf-8').split()[1]
> >      0036:        if StrictVersion(version) >= StrictVersion("1.8.7"):
> >      0037:            d.setVar("WAF_EXTRA_CONF", "--bindir=${bindir}
> > --libdir=${libdir}")
> >      0038:    except subprocess.CalledProcessError as e:
> > File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> > check_output
> >      0622:        # empty string. That is maintained here for backwards
> > compatibility.
> >      0623:        kwargs['input'] = '' if kwargs.get('universal_
> newlines',
> > False) else b''
> >      0624:
> >      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout,
> > check=True,
> >  *** 0626:               **kwargs).stdout
> >      0627:
> >      0628:
> >      0629:class CompletedProcess(object):
> >      0630:    """A process that has finished running.
> > File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function: run
> >      0689:        if 'stdin' in kwargs:
> >      0690:            raise ValueError('stdin and input arguments may not
> > both be used.')
> >      0691:        kwargs['stdin'] = PIPE
> >      0692:
> >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> >      0694:        try:
> >      0695:            stdout, stderr = process.communicate(input,
> > timeout=timeout)
> >      0696:        except TimeoutExpired:
> >      0697:            process.kill()
> > File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
> __init__
> >      0943:                                startupinfo, creationflags,
> > shell,
> >      0944:                                p2cread, p2cwrite,
> >      0945:                                c2pread, c2pwrite,
> >      0946:                                errread, errwrite,
> >  *** 0947:                                restore_signals,
> > start_new_session)
> >      0948:        except:
> >      0949:            # Cleanup if the child failed starting.
> >      0950:            for f in filter(None, (self.stdin, self.stdout,
> > self.stderr)):
> >      0951:                try:
> > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> > _execute_child
> >      1547:                                # The error must be from
> > chdir(cwd).
> >      1548:                                err_msg += ': ' + repr(cwd)
> >      1549:                            else:
> >      1550:                                err_msg += ': ' +
> > repr(orig_executable)
> >  *** 1551:                    raise child_exception_type(errno_num,
> > err_msg)
> >      1552:                raise child_exception_type(err_msg)
> >      1553:
> >      1554:
> >      1555:        def _handle_exitstatus(self, sts,
> > _WIFSIGNALED=os.WIFSIGNALED,
> > Exception: FileNotFoundError: [Errno 2] No such file or directory:
> > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> >
> > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> waf_preconfigure
> > ERROR: Logfile of failure stored in:
> > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > ERROR: Task
> > (/OE/master/sources/meta-openembedded/meta-networking/
> recipes-support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > failed with exit code '1'
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>



-- 
Christopher Larson
kergoth at gmail dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Senior Software Engineer, Mentor Graphics


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:16   ` Joshua Watt
@ 2018-02-15 23:20     ` Tim Orling
  2018-02-15 23:24       ` Denys Dmytriyenko
  2018-02-15 23:32       ` Joshua Watt
  0 siblings, 2 replies; 28+ messages in thread
From: Tim Orling @ 2018-02-15 23:20 UTC (permalink / raw)
  To: Joshua Watt; +Cc: openembedded-devel

Then why did ‘sudo dnf install waf’ get me past the error above? And why
does Fedora have a package for it?

https://src.fedoraproject.org/rpms/waf

Regardless, something broke.
On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com> wrote:

> On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > Seeing the same and trying to figure it out. Also, seems there is no
> > recipe
> > for waf-native, so it becomes a new required host tool.
>
> There is no "waf" tool, so a "waf-native" tool doesn't make sense...
> it's not how waf works. Each project has their own copy of the waf
> program, it's not something the host has to provide.
>
> > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org>
> > wrote:
> >
> > > Hi,
> > >
> > > I'm getting below stack dump building libtalloc 2.1.10 in master.
> > > Works
> > > fine in
> > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> > > familiar with
> > > waf, any help? Thanks.
> > >
> > >
> > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
> > > function
> > > in exec_python_func() autogenerated:
> > >
> > > The stack trace of python calls that resulted in this
> > > exception/failure
> > > was:
> > > File: 'exec_python_func() autogenerated', lineno: 2, function:
> > > <module>
> > >      0001:
> > >  *** 0002:waf_preconfigure(d)
> > >      0003:
> > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> > > lineno: 34,
> > > function: waf_preconfigure
> > >      0030:    from distutils.version import StrictVersion
> > >      0031:    subsrcdir = d.getVar('S')
> > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> > >      0033:    try:
> > >  *** 0034:        result = subprocess.check_output([wafbin, '
> > > --version'],
> > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > >      0035:        version = result.decode('utf-8').split()[1]
> > >      0036:        if StrictVersion(version) >=
> > > StrictVersion("1.8.7"):
> > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > > --bindir=${bindir}
> > > --libdir=${libdir}")
> > >      0038:    except subprocess.CalledProcessError as e:
> > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> > > check_output
> > >      0622:        # empty string. That is maintained here for
> > > backwards
> > > compatibility.
> > >      0623:        kwargs['input'] = '' if
> > > kwargs.get('universal_newlines',
> > > False) else b''
> > >      0624:
> > >      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout,
> > > check=True,
> > >  *** 0626:               **kwargs).stdout
> > >      0627:
> > >      0628:
> > >      0629:class CompletedProcess(object):
> > >      0630:    """A process that has finished running.
> > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function:
> > > run
> > >      0689:        if 'stdin' in kwargs:
> > >      0690:            raise ValueError('stdin and input arguments
> > > may not
> > > both be used.')
> > >      0691:        kwargs['stdin'] = PIPE
> > >      0692:
> > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> > >      0694:        try:
> > >      0695:            stdout, stderr = process.communicate(input,
> > > timeout=timeout)
> > >      0696:        except TimeoutExpired:
> > >      0697:            process.kill()
> > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
> > > __init__
> > >      0943:                                startupinfo,
> > > creationflags,
> > > shell,
> > >      0944:                                p2cread, p2cwrite,
> > >      0945:                                c2pread, c2pwrite,
> > >      0946:                                errread, errwrite,
> > >  *** 0947:                                restore_signals,
> > > start_new_session)
> > >      0948:        except:
> > >      0949:            # Cleanup if the child failed starting.
> > >      0950:            for f in filter(None, (self.stdin,
> > > self.stdout,
> > > self.stderr)):
> > >      0951:                try:
> > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> > > _execute_child
> > >      1547:                                # The error must be from
> > > chdir(cwd).
> > >      1548:                                err_msg += ': ' +
> > > repr(cwd)
> > >      1549:                            else:
> > >      1550:                                err_msg += ': ' +
> > > repr(orig_executable)
> > >  *** 1551:                    raise child_exception_type(errno_num,
> > > err_msg)
> > >      1552:                raise child_exception_type(err_msg)
> > >      1553:
> > >      1554:
> > >      1555:        def _handle_exitstatus(self, sts,
> > > _WIFSIGNALED=os.WIFSIGNALED,
> > > Exception: FileNotFoundError: [Errno 2] No such file or directory:
> > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > >
> > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> > > waf_preconfigure
> > > ERROR: Logfile of failure stored in:
> > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > > ERROR: Task
> > > (/OE/master/sources/meta-openembedded/meta-networking/recipes-
> > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > failed with exit code '1'
> > > --
> > > _______________________________________________
> > > Openembedded-devel mailing list
> > > Openembedded-devel@lists.openembedded.org
> > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > >
>


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:10 ` Tim Orling
  2018-02-15 23:16   ` Joshua Watt
  2018-02-15 23:20   ` Christopher Larson
@ 2018-02-15 23:24   ` Andre McCurdy
  2 siblings, 0 replies; 28+ messages in thread
From: Andre McCurdy @ 2018-02-15 23:24 UTC (permalink / raw)
  To: Tim Orling; +Cc: openembeded-devel

On Thu, Feb 15, 2018 at 3:10 PM, Tim Orling <ticotimo@gmail.com> wrote:
> Seeing the same and trying to figure it out. Also, seems there is no recipe
> for waf-native, so it becomes a new required host tool.
> On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org> wrote:
>
>> Hi,
>>
>> I'm getting below stack dump building libtalloc 2.1.10 in master. Works
>> fine in
>> rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not familiar with
>> waf, any help? Thanks.

Does reverting this help?

  http://git.openembedded.org/openembedded-core/commit/?id=aa168ee7f785ff007ca645db57698883922b5eb3

It looks like the new version may need to be a little more forgiving
if ${S}/waf doesn't exist?


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:20     ` Tim Orling
@ 2018-02-15 23:24       ` Denys Dmytriyenko
  2018-02-15 23:30         ` Khem Raj
                           ` (2 more replies)
  2018-02-15 23:32       ` Joshua Watt
  1 sibling, 3 replies; 28+ messages in thread
From: Denys Dmytriyenko @ 2018-02-15 23:24 UTC (permalink / raw)
  To: Tim Orling; +Cc: openembedded-devel

On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
> Then why did ‘sudo dnf install waf’ get me past the error above? And why
> does Fedora have a package for it?
> 
> https://src.fedoraproject.org/rpms/waf
> 
> Regardless, something broke.

I thought so too. As waf.bbclass from oe-core looks for waf binary in the root 
of the source package, I looked inside libtalloc 2.1.9 and 2.1.10 and neither 
of them have any "waf" files at the root. How was it working before? What 
broke?


> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com> wrote:
> 
> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > > Seeing the same and trying to figure it out. Also, seems there is no
> > > recipe
> > > for waf-native, so it becomes a new required host tool.
> >
> > There is no "waf" tool, so a "waf-native" tool doesn't make sense...
> > it's not how waf works. Each project has their own copy of the waf
> > program, it's not something the host has to provide.
> >
> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org>
> > > wrote:
> > >
> > > > Hi,
> > > >
> > > > I'm getting below stack dump building libtalloc 2.1.10 in master.
> > > > Works
> > > > fine in
> > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> > > > familiar with
> > > > waf, any help? Thanks.
> > > >
> > > >
> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
> > > > function
> > > > in exec_python_func() autogenerated:
> > > >
> > > > The stack trace of python calls that resulted in this
> > > > exception/failure
> > > > was:
> > > > File: 'exec_python_func() autogenerated', lineno: 2, function:
> > > > <module>
> > > >      0001:
> > > >  *** 0002:waf_preconfigure(d)
> > > >      0003:
> > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> > > > lineno: 34,
> > > > function: waf_preconfigure
> > > >      0030:    from distutils.version import StrictVersion
> > > >      0031:    subsrcdir = d.getVar('S')
> > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> > > >      0033:    try:
> > > >  *** 0034:        result = subprocess.check_output([wafbin, '
> > > > --version'],
> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > > >      0035:        version = result.decode('utf-8').split()[1]
> > > >      0036:        if StrictVersion(version) >=
> > > > StrictVersion("1.8.7"):
> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > > > --bindir=${bindir}
> > > > --libdir=${libdir}")
> > > >      0038:    except subprocess.CalledProcessError as e:
> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> > > > check_output
> > > >      0622:        # empty string. That is maintained here for
> > > > backwards
> > > > compatibility.
> > > >      0623:        kwargs['input'] = '' if
> > > > kwargs.get('universal_newlines',
> > > > False) else b''
> > > >      0624:
> > > >      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout,
> > > > check=True,
> > > >  *** 0626:               **kwargs).stdout
> > > >      0627:
> > > >      0628:
> > > >      0629:class CompletedProcess(object):
> > > >      0630:    """A process that has finished running.
> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function:
> > > > run
> > > >      0689:        if 'stdin' in kwargs:
> > > >      0690:            raise ValueError('stdin and input arguments
> > > > may not
> > > > both be used.')
> > > >      0691:        kwargs['stdin'] = PIPE
> > > >      0692:
> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> > > >      0694:        try:
> > > >      0695:            stdout, stderr = process.communicate(input,
> > > > timeout=timeout)
> > > >      0696:        except TimeoutExpired:
> > > >      0697:            process.kill()
> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
> > > > __init__
> > > >      0943:                                startupinfo,
> > > > creationflags,
> > > > shell,
> > > >      0944:                                p2cread, p2cwrite,
> > > >      0945:                                c2pread, c2pwrite,
> > > >      0946:                                errread, errwrite,
> > > >  *** 0947:                                restore_signals,
> > > > start_new_session)
> > > >      0948:        except:
> > > >      0949:            # Cleanup if the child failed starting.
> > > >      0950:            for f in filter(None, (self.stdin,
> > > > self.stdout,
> > > > self.stderr)):
> > > >      0951:                try:
> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> > > > _execute_child
> > > >      1547:                                # The error must be from
> > > > chdir(cwd).
> > > >      1548:                                err_msg += ': ' +
> > > > repr(cwd)
> > > >      1549:                            else:
> > > >      1550:                                err_msg += ': ' +
> > > > repr(orig_executable)
> > > >  *** 1551:                    raise child_exception_type(errno_num,
> > > > err_msg)
> > > >      1552:                raise child_exception_type(err_msg)
> > > >      1553:
> > > >      1554:
> > > >      1555:        def _handle_exitstatus(self, sts,
> > > > _WIFSIGNALED=os.WIFSIGNALED,
> > > > Exception: FileNotFoundError: [Errno 2] No such file or directory:
> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > > >
> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> > > > waf_preconfigure
> > > > ERROR: Logfile of failure stored in:
> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > > > ERROR: Task
> > > > (/OE/master/sources/meta-openembedded/meta-networking/recipes-
> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > > failed with exit code '1'
> > > > --
> > > > _______________________________________________
> > > > Openembedded-devel mailing list
> > > > Openembedded-devel@lists.openembedded.org
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > > >
> >


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 22:53 libtalloc failure due to waf Denys Dmytriyenko
  2018-02-15 23:10 ` Tim Orling
  2018-02-15 23:14 ` Joshua Watt
@ 2018-02-15 23:27 ` Khem Raj
  2 siblings, 0 replies; 28+ messages in thread
From: Khem Raj @ 2018-02-15 23:27 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: openembeded-devel

looks through the waf-apache thread. Once that lands in master you should be ok

On Thu, Feb 15, 2018 at 2:53 PM, Denys Dmytriyenko <denis@denix.org> wrote:
> Hi,
>
> I'm getting below stack dump building libtalloc 2.1.10 in master. Works fine in
> rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not familiar with
> waf, any help? Thanks.
>
>
> ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python function in exec_python_func() autogenerated:
>
> The stack trace of python calls that resulted in this exception/failure was:
> File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
>      0001:
>  *** 0002:waf_preconfigure(d)
>      0003:
> File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass', lineno: 34, function: waf_preconfigure
>      0030:    from distutils.version import StrictVersion
>      0031:    subsrcdir = d.getVar('S')
>      0032:    wafbin = os.path.join(subsrcdir, 'waf')
>      0033:    try:
>  *** 0034:        result = subprocess.check_output([wafbin, '--version'], cwd=subsrcdir, stderr=subprocess.STDOUT)
>      0035:        version = result.decode('utf-8').split()[1]
>      0036:        if StrictVersion(version) >= StrictVersion("1.8.7"):
>      0037:            d.setVar("WAF_EXTRA_CONF", "--bindir=${bindir} --libdir=${libdir}")
>      0038:    except subprocess.CalledProcessError as e:
> File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function: check_output
>      0622:        # empty string. That is maintained here for backwards compatibility.
>      0623:        kwargs['input'] = '' if kwargs.get('universal_newlines', False) else b''
>      0624:
>      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
>  *** 0626:               **kwargs).stdout
>      0627:
>      0628:
>      0629:class CompletedProcess(object):
>      0630:    """A process that has finished running.
> File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function: run
>      0689:        if 'stdin' in kwargs:
>      0690:            raise ValueError('stdin and input arguments may not both be used.')
>      0691:        kwargs['stdin'] = PIPE
>      0692:
>  *** 0693:    with Popen(*popenargs, **kwargs) as process:
>      0694:        try:
>      0695:            stdout, stderr = process.communicate(input, timeout=timeout)
>      0696:        except TimeoutExpired:
>      0697:            process.kill()
> File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function: __init__
>      0943:                                startupinfo, creationflags, shell,
>      0944:                                p2cread, p2cwrite,
>      0945:                                c2pread, c2pwrite,
>      0946:                                errread, errwrite,
>  *** 0947:                                restore_signals, start_new_session)
>      0948:        except:
>      0949:            # Cleanup if the child failed starting.
>      0950:            for f in filter(None, (self.stdin, self.stdout, self.stderr)):
>      0951:                try:
> File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function: _execute_child
>      1547:                                # The error must be from chdir(cwd).
>      1548:                                err_msg += ': ' + repr(cwd)
>      1549:                            else:
>      1550:                                err_msg += ': ' + repr(orig_executable)
>  *** 1551:                    raise child_exception_type(errno_num, err_msg)
>      1552:                raise child_exception_type(err_msg)
>      1553:
>      1554:
>      1555:        def _handle_exitstatus(self, sts, _WIFSIGNALED=os.WIFSIGNALED,
> Exception: FileNotFoundError: [Errno 2] No such file or directory: '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
>
> ERROR: libtalloc-2.1.10-r0 do_configure: Function failed: waf_preconfigure
> ERROR: Logfile of failure stored in: /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> ERROR: Task (/OE/master/sources/meta-openembedded/meta-networking/recipes-support/libtalloc/libtalloc_2.1.10.bb:do_configure) failed with exit code '1'
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:24       ` Denys Dmytriyenko
@ 2018-02-15 23:30         ` Khem Raj
  2018-02-15 23:33           ` Denys Dmytriyenko
  2018-02-15 23:31         ` Denys Dmytriyenko
  2018-02-15 23:35         ` Joshua Watt
  2 siblings, 1 reply; 28+ messages in thread
From: Khem Raj @ 2018-02-15 23:30 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: openembeded-devel

On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis@denix.org> wrote:
> On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
>> Then why did ‘sudo dnf install waf’ get me past the error above? And why
>> does Fedora have a package for it?
>>
>> https://src.fedoraproject.org/rpms/waf
>>
>> Regardless, something broke.
>
> I thought so too. As waf.bbclass from oe-core looks for waf binary in the root
> of the source package, I looked inside libtalloc 2.1.9 and 2.1.10 and neither
> of them have any "waf" files at the root. How was it working before? What
> broke?

its using waf-samba.bbclass, there is a patch floating for that
https://patchwork.openembedded.org/patch/148046/

>
>
>> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com> wrote:
>>
>> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
>> > > Seeing the same and trying to figure it out. Also, seems there is no
>> > > recipe
>> > > for waf-native, so it becomes a new required host tool.
>> >
>> > There is no "waf" tool, so a "waf-native" tool doesn't make sense...
>> > it's not how waf works. Each project has their own copy of the waf
>> > program, it's not something the host has to provide.
>> >
>> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org>
>> > > wrote:
>> > >
>> > > > Hi,
>> > > >
>> > > > I'm getting below stack dump building libtalloc 2.1.10 in master.
>> > > > Works
>> > > > fine in
>> > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
>> > > > familiar with
>> > > > waf, any help? Thanks.
>> > > >
>> > > >
>> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
>> > > > function
>> > > > in exec_python_func() autogenerated:
>> > > >
>> > > > The stack trace of python calls that resulted in this
>> > > > exception/failure
>> > > > was:
>> > > > File: 'exec_python_func() autogenerated', lineno: 2, function:
>> > > > <module>
>> > > >      0001:
>> > > >  *** 0002:waf_preconfigure(d)
>> > > >      0003:
>> > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
>> > > > lineno: 34,
>> > > > function: waf_preconfigure
>> > > >      0030:    from distutils.version import StrictVersion
>> > > >      0031:    subsrcdir = d.getVar('S')
>> > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
>> > > >      0033:    try:
>> > > >  *** 0034:        result = subprocess.check_output([wafbin, '
>> > > > --version'],
>> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
>> > > >      0035:        version = result.decode('utf-8').split()[1]
>> > > >      0036:        if StrictVersion(version) >=
>> > > > StrictVersion("1.8.7"):
>> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
>> > > > --bindir=${bindir}
>> > > > --libdir=${libdir}")
>> > > >      0038:    except subprocess.CalledProcessError as e:
>> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
>> > > > check_output
>> > > >      0622:        # empty string. That is maintained here for
>> > > > backwards
>> > > > compatibility.
>> > > >      0623:        kwargs['input'] = '' if
>> > > > kwargs.get('universal_newlines',
>> > > > False) else b''
>> > > >      0624:
>> > > >      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout,
>> > > > check=True,
>> > > >  *** 0626:               **kwargs).stdout
>> > > >      0627:
>> > > >      0628:
>> > > >      0629:class CompletedProcess(object):
>> > > >      0630:    """A process that has finished running.
>> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function:
>> > > > run
>> > > >      0689:        if 'stdin' in kwargs:
>> > > >      0690:            raise ValueError('stdin and input arguments
>> > > > may not
>> > > > both be used.')
>> > > >      0691:        kwargs['stdin'] = PIPE
>> > > >      0692:
>> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
>> > > >      0694:        try:
>> > > >      0695:            stdout, stderr = process.communicate(input,
>> > > > timeout=timeout)
>> > > >      0696:        except TimeoutExpired:
>> > > >      0697:            process.kill()
>> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
>> > > > __init__
>> > > >      0943:                                startupinfo,
>> > > > creationflags,
>> > > > shell,
>> > > >      0944:                                p2cread, p2cwrite,
>> > > >      0945:                                c2pread, c2pwrite,
>> > > >      0946:                                errread, errwrite,
>> > > >  *** 0947:                                restore_signals,
>> > > > start_new_session)
>> > > >      0948:        except:
>> > > >      0949:            # Cleanup if the child failed starting.
>> > > >      0950:            for f in filter(None, (self.stdin,
>> > > > self.stdout,
>> > > > self.stderr)):
>> > > >      0951:                try:
>> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
>> > > > _execute_child
>> > > >      1547:                                # The error must be from
>> > > > chdir(cwd).
>> > > >      1548:                                err_msg += ': ' +
>> > > > repr(cwd)
>> > > >      1549:                            else:
>> > > >      1550:                                err_msg += ': ' +
>> > > > repr(orig_executable)
>> > > >  *** 1551:                    raise child_exception_type(errno_num,
>> > > > err_msg)
>> > > >      1552:                raise child_exception_type(err_msg)
>> > > >      1553:
>> > > >      1554:
>> > > >      1555:        def _handle_exitstatus(self, sts,
>> > > > _WIFSIGNALED=os.WIFSIGNALED,
>> > > > Exception: FileNotFoundError: [Errno 2] No such file or directory:
>> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
>> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
>> > > >
>> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
>> > > > waf_preconfigure
>> > > > ERROR: Logfile of failure stored in:
>> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
>> > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
>> > > > ERROR: Task
>> > > > (/OE/master/sources/meta-openembedded/meta-networking/recipes-
>> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
>> > > > failed with exit code '1'
>> > > > --
>> > > > _______________________________________________
>> > > > Openembedded-devel mailing list
>> > > > Openembedded-devel@lists.openembedded.org
>> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>> > > >
>> >
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:24       ` Denys Dmytriyenko
  2018-02-15 23:30         ` Khem Raj
@ 2018-02-15 23:31         ` Denys Dmytriyenko
  2018-02-15 23:35         ` Joshua Watt
  2 siblings, 0 replies; 28+ messages in thread
From: Denys Dmytriyenko @ 2018-02-15 23:31 UTC (permalink / raw)
  To: Tim Orling; +Cc: openembedded-devel

On Thu, Feb 15, 2018 at 06:24:40PM -0500, Denys Dmytriyenko wrote:
> On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
> > Then why did ‘sudo dnf install waf’ get me past the error above? And why
> > does Fedora have a package for it?
> > 
> > https://src.fedoraproject.org/rpms/waf
> > 
> > Regardless, something broke.
> 
> I thought so too. As waf.bbclass from oe-core looks for waf binary in the root 
> of the source package, I looked inside libtalloc 2.1.9 and 2.1.10 and neither 
> of them have any "waf" files at the root.

Though, there's buildtools/bin/waf script...

Either way, checked closely logs for rocko and it also can't find waf, but 
instead of Python exception, it's just a warning:

WARNING: Unable to execute waf --version, exit code 127. Assuming waf version without bindir/libdir support.


Now, this commit has changed the code that used to work into something that 
fails with an exception:

http://cgit.openembedded.org/openembedded-core/commit/?id=aa168ee7f785ff007ca645db57698883922b5eb3

-- 
Denys


> How was it working before? What broke?
> 
> 
> > On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com> wrote:
> > 
> > > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > > > Seeing the same and trying to figure it out. Also, seems there is no
> > > > recipe
> > > > for waf-native, so it becomes a new required host tool.
> > >
> > > There is no "waf" tool, so a "waf-native" tool doesn't make sense...
> > > it's not how waf works. Each project has their own copy of the waf
> > > program, it's not something the host has to provide.
> > >
> > > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org>
> > > > wrote:
> > > >
> > > > > Hi,
> > > > >
> > > > > I'm getting below stack dump building libtalloc 2.1.10 in master.
> > > > > Works
> > > > > fine in
> > > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> > > > > familiar with
> > > > > waf, any help? Thanks.
> > > > >
> > > > >
> > > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
> > > > > function
> > > > > in exec_python_func() autogenerated:
> > > > >
> > > > > The stack trace of python calls that resulted in this
> > > > > exception/failure
> > > > > was:
> > > > > File: 'exec_python_func() autogenerated', lineno: 2, function:
> > > > > <module>
> > > > >      0001:
> > > > >  *** 0002:waf_preconfigure(d)
> > > > >      0003:
> > > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> > > > > lineno: 34,
> > > > > function: waf_preconfigure
> > > > >      0030:    from distutils.version import StrictVersion
> > > > >      0031:    subsrcdir = d.getVar('S')
> > > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> > > > >      0033:    try:
> > > > >  *** 0034:        result = subprocess.check_output([wafbin, '
> > > > > --version'],
> > > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > > > >      0035:        version = result.decode('utf-8').split()[1]
> > > > >      0036:        if StrictVersion(version) >=
> > > > > StrictVersion("1.8.7"):
> > > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > > > > --bindir=${bindir}
> > > > > --libdir=${libdir}")
> > > > >      0038:    except subprocess.CalledProcessError as e:
> > > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> > > > > check_output
> > > > >      0622:        # empty string. That is maintained here for
> > > > > backwards
> > > > > compatibility.
> > > > >      0623:        kwargs['input'] = '' if
> > > > > kwargs.get('universal_newlines',
> > > > > False) else b''
> > > > >      0624:
> > > > >      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout,
> > > > > check=True,
> > > > >  *** 0626:               **kwargs).stdout
> > > > >      0627:
> > > > >      0628:
> > > > >      0629:class CompletedProcess(object):
> > > > >      0630:    """A process that has finished running.
> > > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function:
> > > > > run
> > > > >      0689:        if 'stdin' in kwargs:
> > > > >      0690:            raise ValueError('stdin and input arguments
> > > > > may not
> > > > > both be used.')
> > > > >      0691:        kwargs['stdin'] = PIPE
> > > > >      0692:
> > > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> > > > >      0694:        try:
> > > > >      0695:            stdout, stderr = process.communicate(input,
> > > > > timeout=timeout)
> > > > >      0696:        except TimeoutExpired:
> > > > >      0697:            process.kill()
> > > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
> > > > > __init__
> > > > >      0943:                                startupinfo,
> > > > > creationflags,
> > > > > shell,
> > > > >      0944:                                p2cread, p2cwrite,
> > > > >      0945:                                c2pread, c2pwrite,
> > > > >      0946:                                errread, errwrite,
> > > > >  *** 0947:                                restore_signals,
> > > > > start_new_session)
> > > > >      0948:        except:
> > > > >      0949:            # Cleanup if the child failed starting.
> > > > >      0950:            for f in filter(None, (self.stdin,
> > > > > self.stdout,
> > > > > self.stderr)):
> > > > >      0951:                try:
> > > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> > > > > _execute_child
> > > > >      1547:                                # The error must be from
> > > > > chdir(cwd).
> > > > >      1548:                                err_msg += ': ' +
> > > > > repr(cwd)
> > > > >      1549:                            else:
> > > > >      1550:                                err_msg += ': ' +
> > > > > repr(orig_executable)
> > > > >  *** 1551:                    raise child_exception_type(errno_num,
> > > > > err_msg)
> > > > >      1552:                raise child_exception_type(err_msg)
> > > > >      1553:
> > > > >      1554:
> > > > >      1555:        def _handle_exitstatus(self, sts,
> > > > > _WIFSIGNALED=os.WIFSIGNALED,
> > > > > Exception: FileNotFoundError: [Errno 2] No such file or directory:
> > > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > > > >
> > > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> > > > > waf_preconfigure
> > > > > ERROR: Logfile of failure stored in:
> > > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > > > > ERROR: Task
> > > > > (/OE/master/sources/meta-openembedded/meta-networking/recipes-
> > > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > > > failed with exit code '1'
> > > > > --
> > > > > _______________________________________________
> > > > > Openembedded-devel mailing list
> > > > > Openembedded-devel@lists.openembedded.org
> > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > > > >
> > >


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:20     ` Tim Orling
  2018-02-15 23:24       ` Denys Dmytriyenko
@ 2018-02-15 23:32       ` Joshua Watt
  1 sibling, 0 replies; 28+ messages in thread
From: Joshua Watt @ 2018-02-15 23:32 UTC (permalink / raw)
  To: Tim Orling; +Cc: openembedded-devel

On Thu, 2018-02-15 at 23:20 +0000, Tim Orling wrote:
> Then why did ‘sudo dnf install waf’ get me past the error above? And
> why does Fedora have a package for it?
> 
> https://src.fedoraproject.org/rpms/waf

There is a... complicated.... history (which I am not a part of)
between the maintainers of Waf and distros (see https://lists.debian.or
g/debian-devel/2010/02/msg00714.html). I'm not sure exactly what Fedora
(and I think debian has (had?) a package as well) are going for with
that, but I do know that the recipes in OE use waf "as intended" (by
the maintainers of Waf), in which each one has its own copy of the
program. 
Thankfully, OE doesn't seem to have some moral disproval to a package
containing its own binary build program.
I don't exactly know why installing it fixed the error.... that doesn't
seem to make sense to me looking at the code, but even if it did a
"waf-native" tool is still not the correct answer.
Thanks,Joshua Watt
> Regardless, something broke.
> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com>
> wrote:
> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > 
> > > Seeing the same and trying to figure it out. Also, seems there is
> > no
> > 
> > > recipe
> > 
> > > for waf-native, so it becomes a new required host tool.
> > 
> > 
> > 
> > There is no "waf" tool, so a "waf-native" tool doesn't make
> > sense...
> > 
> > it's not how waf works. Each project has their own copy of the waf
> > 
> > program, it's not something the host has to provide.
> > 
> > 
> > 
> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.or
> > g>
> > 
> > > wrote:
> > 
> > >
> > 
> > > > Hi,
> > 
> > > >
> > 
> > > > I'm getting below stack dump building libtalloc 2.1.10 in
> > master.
> > 
> > > > Works
> > 
> > > > fine in
> > 
> > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> > 
> > > > familiar with
> > 
> > > > waf, any help? Thanks.
> > 
> > > >
> > 
> > > >
> > 
> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a
> > python
> > 
> > > > function
> > 
> > > > in exec_python_func() autogenerated:
> > 
> > > >
> > 
> > > > The stack trace of python calls that resulted in this
> > 
> > > > exception/failure
> > 
> > > > was:
> > 
> > > > File: 'exec_python_func() autogenerated', lineno: 2, function:
> > 
> > > > <module>
> > 
> > > >      0001:
> > 
> > > >  *** 0002:waf_preconfigure(d)
> > 
> > > >      0003:
> > 
> > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> > 
> > > > lineno: 34,
> > 
> > > > function: waf_preconfigure
> > 
> > > >      0030:    from distutils.version import StrictVersion
> > 
> > > >      0031:    subsrcdir = d.getVar('S')
> > 
> > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> > 
> > > >      0033:    try:
> > 
> > > >  *** 0034:        result = subprocess.check_output([wafbin, '
> > 
> > > > --version'],
> > 
> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > 
> > > >      0035:        version = result.decode('utf-8').split()[1]
> > 
> > > >      0036:        if StrictVersion(version) >=
> > 
> > > > StrictVersion("1.8.7"):
> > 
> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > 
> > > > --bindir=${bindir}
> > 
> > > > --libdir=${libdir}")
> > 
> > > >      0038:    except subprocess.CalledProcessError as e:
> > 
> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626,
> > function:
> > 
> > > > check_output
> > 
> > > >      0622:        # empty string. That is maintained here for
> > 
> > > > backwards
> > 
> > > > compatibility.
> > 
> > > >      0623:        kwargs['input'] = '' if
> > 
> > > > kwargs.get('universal_newlines',
> > 
> > > > False) else b''
> > 
> > > >      0624:
> > 
> > > >      0625:    return run(*popenargs, stdout=PIPE,
> > timeout=timeout,
> > 
> > > > check=True,
> > 
> > > >  *** 0626:               **kwargs).stdout
> > 
> > > >      0627:
> > 
> > > >      0628:
> > 
> > > >      0629:class CompletedProcess(object):
> > 
> > > >      0630:    """A process that has finished running.
> > 
> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693,
> > function:
> > 
> > > > run
> > 
> > > >      0689:        if 'stdin' in kwargs:
> > 
> > > >      0690:            raise ValueError('stdin and input
> > arguments
> > 
> > > > may not
> > 
> > > > both be used.')
> > 
> > > >      0691:        kwargs['stdin'] = PIPE
> > 
> > > >      0692:
> > 
> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> > 
> > > >      0694:        try:
> > 
> > > >      0695:            stdout, stderr =
> > process.communicate(input,
> > 
> > > > timeout=timeout)
> > 
> > > >      0696:        except TimeoutExpired:
> > 
> > > >      0697:            process.kill()
> > 
> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947,
> > function:
> > 
> > > > __init__
> > 
> > > >      0943:                                startupinfo,
> > 
> > > > creationflags,
> > 
> > > > shell,
> > 
> > > >      0944:                                p2cread, p2cwrite,
> > 
> > > >      0945:                                c2pread, c2pwrite,
> > 
> > > >      0946:                                errread, errwrite,
> > 
> > > >  *** 0947:                                restore_signals,
> > 
> > > > start_new_session)
> > 
> > > >      0948:        except:
> > 
> > > >      0949:            # Cleanup if the child failed starting.
> > 
> > > >      0950:            for f in filter(None, (self.stdin,
> > 
> > > > self.stdout,
> > 
> > > > self.stderr)):
> > 
> > > >      0951:                try:
> > 
> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551,
> > function:
> > 
> > > > _execute_child
> > 
> > > >      1547:                                # The error must be
> > from
> > 
> > > > chdir(cwd).
> > 
> > > >      1548:                                err_msg += ': ' +
> > 
> > > > repr(cwd)
> > 
> > > >      1549:                            else:
> > 
> > > >      1550:                                err_msg += ': ' +
> > 
> > > > repr(orig_executable)
> > 
> > > >  *** 1551:                    raise
> > child_exception_type(errno_num,
> > 
> > > > err_msg)
> > 
> > > >      1552:                raise child_exception_type(err_msg)
> > 
> > > >      1553:
> > 
> > > >      1554:
> > 
> > > >      1555:        def _handle_exitstatus(self, sts,
> > 
> > > > _WIFSIGNALED=os.WIFSIGNALED,
> > 
> > > > Exception: FileNotFoundError: [Errno 2] No such file or
> > directory:
> > 
> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > 
> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > 
> > > >
> > 
> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> > 
> > > > waf_preconfigure
> > 
> > > > ERROR: Logfile of failure stored in:
> > 
> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > 
> > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > 
> > > > ERROR: Task
> > 
> > > > (/OE/master/sources/meta-openembedded/meta-networking/recipes-
> > 
> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > 
> > > > failed with exit code '1'
> > 
> > > > --
> > 
> > > > _______________________________________________
> > 
> > > > Openembedded-devel mailing list
> > 
> > > > Openembedded-devel@lists.openembedded.org
> > 
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-dev
> > el
> > 
> > > >
> > 
From denis@denix.org  Thu Feb 15 23:32:53 2018
Return-Path: <denis@denix.org>
X-Original-To: openembedded-devel@lists.openembedded.org
Delivered-To: openembedded-devel@lists.openembedded.org
Received: from mailout4.zoneedit.com (mailout4.zoneedit.com [64.68.198.17])
	by mail.openembedded.org (Postfix) with ESMTP id 31E5460102
	for <openembedded-devel@lists.openembedded.org>;
	Thu, 15 Feb 2018 23:32:53 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
	by mailout4.zoneedit.com (Postfix) with ESMTP id C32E820B15;
	Thu, 15 Feb 2018 23:32:54 +0000 (UTC)
Received: from mailout4.zoneedit.com ([127.0.0.1])
	by localhost (zmo03-pco.easydns.vpn [127.0.0.1]) (amavisd-new,
	port 10024)
	with ESMTP id v7s0BLgl_8bP; Thu, 15 Feb 2018 23:32:54 +0000 (UTC)
Received: from mail.denix.org (pool-100-15-85-143.washdc.fios.verizon.net
	[100.15.85.143])
	(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
	(No client certificate requested)
	by mailout4.zoneedit.com (Postfix) with ESMTPSA id 9F9222017C;
	Thu, 15 Feb 2018 23:32:52 +0000 (UTC)
Received: by mail.denix.org (Postfix, from userid 1000)
	id 672531632B0; Thu, 15 Feb 2018 18:32:52 -0500 (EST)
Date: Thu, 15 Feb 2018 18:32:52 -0500
From: Denys Dmytriyenko <denis@denix.org>
To: Andre McCurdy <armccurdy@gmail.com>
Message-ID: <20180215233252.GO2786@denix.org>
References: <20180215225339.GL2786@denix.org>
	<CANx9H-AcRnG-Er1bE-uVxSFEQX9X8_p8T=+TyGHXn0dLnbN2=w@mail.gmail.com>
	<CAJ86T=WS5dkQ8K9jqgK5vGG1vCpnOTNFzd4WA6Qvp6pFXEKV8g@mail.gmail.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <CAJ86T=WS5dkQ8K9jqgK5vGG1vCpnOTNFzd4WA6Qvp6pFXEKV8g@mail.gmail.com>
User-Agent: Mutt/1.5.20 (2009-06-14)
Cc: openembeded-devel <openembedded-devel@lists.openembedded.org>
Subject: Re: [oe] libtalloc failure due to waf
X-BeenThere: openembedded-devel@lists.openembedded.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Using the OpenEmbedded metadata to build Distributions
	<openembedded-devel.lists.openembedded.org>
List-Unsubscribe: <http://lists.openembedded.org/mailman/options/openembedded-devel>,
	<mailto:openembedded-devel-request@lists.openembedded.org?subject=unsubscribe>
List-Archive: <http://lists.openembedded.org/pipermail/openembedded-devel/>
List-Post: <mailto:openembedded-devel@lists.openembedded.org>
List-Help: <mailto:openembedded-devel-request@lists.openembedded.org?subject=help>
List-Subscribe: <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>,
	<mailto:openembedded-devel-request@lists.openembedded.org?subject=subscribe>
X-List-Received-Date: Thu, 15 Feb 2018 23:32:53 -0000

On Thu, Feb 15, 2018 at 03:24:16PM -0800, Andre McCurdy wrote:
> On Thu, Feb 15, 2018 at 3:10 PM, Tim Orling <ticotimo@gmail.com> wrote:
> > Seeing the same and trying to figure it out. Also, seems there is no recipe
> > for waf-native, so it becomes a new required host tool.
> > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org> wrote:
> >
> >> Hi,
> >>
> >> I'm getting below stack dump building libtalloc 2.1.10 in master. Works
> >> fine in
> >> rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not familiar with
> >> waf, any help? Thanks.
> 
> Does reverting this help?
> 
>   http://git.openembedded.org/openembedded-core/commit/?id=aa168ee7f785ff007ca645db57698883922b5eb3
> 
> It looks like the new version may need to be a little more forgiving
> if ${S}/waf doesn't exist?

Bingo! I just came to the same conclusion.


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:30         ` Khem Raj
@ 2018-02-15 23:33           ` Denys Dmytriyenko
  2018-02-16  0:37             ` Joshua Watt
  0 siblings, 1 reply; 28+ messages in thread
From: Denys Dmytriyenko @ 2018-02-15 23:33 UTC (permalink / raw)
  To: Khem Raj; +Cc: openembeded-devel

On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis@denix.org> wrote:
> > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
> >> Then why did ‘sudo dnf install waf’ get me past the error above? And why
> >> does Fedora have a package for it?
> >>
> >> https://src.fedoraproject.org/rpms/waf
> >>
> >> Regardless, something broke.
> >
> > I thought so too. As waf.bbclass from oe-core looks for waf binary in the root
> > of the source package, I looked inside libtalloc 2.1.9 and 2.1.10 and neither
> > of them have any "waf" files at the root. How was it working before? What
> > broke?
> 
> its using waf-samba.bbclass, there is a patch floating for that
> https://patchwork.openembedded.org/patch/148046/

So, it will fix libtalloc, but some other packages that still use waf.bbclass 
will keep on failing with an exception?


> >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com> wrote:
> >>
> >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> >> > > Seeing the same and trying to figure it out. Also, seems there is no
> >> > > recipe
> >> > > for waf-native, so it becomes a new required host tool.
> >> >
> >> > There is no "waf" tool, so a "waf-native" tool doesn't make sense...
> >> > it's not how waf works. Each project has their own copy of the waf
> >> > program, it's not something the host has to provide.
> >> >
> >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org>
> >> > > wrote:
> >> > >
> >> > > > Hi,
> >> > > >
> >> > > > I'm getting below stack dump building libtalloc 2.1.10 in master.
> >> > > > Works
> >> > > > fine in
> >> > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> >> > > > familiar with
> >> > > > waf, any help? Thanks.
> >> > > >
> >> > > >
> >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
> >> > > > function
> >> > > > in exec_python_func() autogenerated:
> >> > > >
> >> > > > The stack trace of python calls that resulted in this
> >> > > > exception/failure
> >> > > > was:
> >> > > > File: 'exec_python_func() autogenerated', lineno: 2, function:
> >> > > > <module>
> >> > > >      0001:
> >> > > >  *** 0002:waf_preconfigure(d)
> >> > > >      0003:
> >> > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> >> > > > lineno: 34,
> >> > > > function: waf_preconfigure
> >> > > >      0030:    from distutils.version import StrictVersion
> >> > > >      0031:    subsrcdir = d.getVar('S')
> >> > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> >> > > >      0033:    try:
> >> > > >  *** 0034:        result = subprocess.check_output([wafbin, '
> >> > > > --version'],
> >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> >> > > >      0035:        version = result.decode('utf-8').split()[1]
> >> > > >      0036:        if StrictVersion(version) >=
> >> > > > StrictVersion("1.8.7"):
> >> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> >> > > > --bindir=${bindir}
> >> > > > --libdir=${libdir}")
> >> > > >      0038:    except subprocess.CalledProcessError as e:
> >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> >> > > > check_output
> >> > > >      0622:        # empty string. That is maintained here for
> >> > > > backwards
> >> > > > compatibility.
> >> > > >      0623:        kwargs['input'] = '' if
> >> > > > kwargs.get('universal_newlines',
> >> > > > False) else b''
> >> > > >      0624:
> >> > > >      0625:    return run(*popenargs, stdout=PIPE, timeout=timeout,
> >> > > > check=True,
> >> > > >  *** 0626:               **kwargs).stdout
> >> > > >      0627:
> >> > > >      0628:
> >> > > >      0629:class CompletedProcess(object):
> >> > > >      0630:    """A process that has finished running.
> >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function:
> >> > > > run
> >> > > >      0689:        if 'stdin' in kwargs:
> >> > > >      0690:            raise ValueError('stdin and input arguments
> >> > > > may not
> >> > > > both be used.')
> >> > > >      0691:        kwargs['stdin'] = PIPE
> >> > > >      0692:
> >> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> >> > > >      0694:        try:
> >> > > >      0695:            stdout, stderr = process.communicate(input,
> >> > > > timeout=timeout)
> >> > > >      0696:        except TimeoutExpired:
> >> > > >      0697:            process.kill()
> >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
> >> > > > __init__
> >> > > >      0943:                                startupinfo,
> >> > > > creationflags,
> >> > > > shell,
> >> > > >      0944:                                p2cread, p2cwrite,
> >> > > >      0945:                                c2pread, c2pwrite,
> >> > > >      0946:                                errread, errwrite,
> >> > > >  *** 0947:                                restore_signals,
> >> > > > start_new_session)
> >> > > >      0948:        except:
> >> > > >      0949:            # Cleanup if the child failed starting.
> >> > > >      0950:            for f in filter(None, (self.stdin,
> >> > > > self.stdout,
> >> > > > self.stderr)):
> >> > > >      0951:                try:
> >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> >> > > > _execute_child
> >> > > >      1547:                                # The error must be from
> >> > > > chdir(cwd).
> >> > > >      1548:                                err_msg += ': ' +
> >> > > > repr(cwd)
> >> > > >      1549:                            else:
> >> > > >      1550:                                err_msg += ': ' +
> >> > > > repr(orig_executable)
> >> > > >  *** 1551:                    raise child_exception_type(errno_num,
> >> > > > err_msg)
> >> > > >      1552:                raise child_exception_type(err_msg)
> >> > > >      1553:
> >> > > >      1554:
> >> > > >      1555:        def _handle_exitstatus(self, sts,
> >> > > > _WIFSIGNALED=os.WIFSIGNALED,
> >> > > > Exception: FileNotFoundError: [Errno 2] No such file or directory:
> >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> >> > > >
> >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> >> > > > waf_preconfigure
> >> > > > ERROR: Logfile of failure stored in:
> >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> >> > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> >> > > > ERROR: Task
> >> > > > (/OE/master/sources/meta-openembedded/meta-networking/recipes-
> >> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> >> > > > failed with exit code '1'
> >> > > > --
> >> > > > _______________________________________________
> >> > > > Openembedded-devel mailing list
> >> > > > Openembedded-devel@lists.openembedded.org
> >> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >> > > >
> >> >
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> 


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:24       ` Denys Dmytriyenko
  2018-02-15 23:30         ` Khem Raj
  2018-02-15 23:31         ` Denys Dmytriyenko
@ 2018-02-15 23:35         ` Joshua Watt
  2 siblings, 0 replies; 28+ messages in thread
From: Joshua Watt @ 2018-02-15 23:35 UTC (permalink / raw)
  To: Denys Dmytriyenko, Tim Orling; +Cc: openembedded-devel

On Thu, 2018-02-15 at 18:24 -0500, Denys Dmytriyenko wrote:
> On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
> > Then why did ‘sudo dnf install waf’ get me past the error above?
> > And why
> > does Fedora have a package for it?
> > 
> > https://src.fedoraproject.org/rpms/waf
> > 
> > Regardless, something broke.
> 
> I thought so too. As waf.bbclass from oe-core looks for waf binary in
> the root 
> of the source package, I looked inside libtalloc 2.1.9 and 2.1.10 and
> neither 
> of them have any "waf" files at the root. How was it working before?
> What 
> broke?

We added support for detecting the waf version to waf.bbclass so that
we could correctly supply --bindir and --libdir.

libtalloc (and some others) were indirectly getting waf.bbclass via
waf-samba.bbclass. waf-samba.bbclass redirects the build to look for
waf elsewhere than the project root, and really didn't need to be
inheriting from waf.bbclass at all, hence my patch.

> 
> 
> > On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com>
> > wrote:
> > 
> > > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > > > Seeing the same and trying to figure it out. Also, seems there
> > > > is no
> > > > recipe
> > > > for waf-native, so it becomes a new required host tool.
> > > 
> > > There is no "waf" tool, so a "waf-native" tool doesn't make
> > > sense...
> > > it's not how waf works. Each project has their own copy of the
> > > waf
> > > program, it's not something the host has to provide.
> > > 
> > > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.
> > > > org>
> > > > wrote:
> > > > 
> > > > > Hi,
> > > > > 
> > > > > I'm getting below stack dump building libtalloc 2.1.10 in
> > > > > master.
> > > > > Works
> > > > > fine in
> > > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> > > > > familiar with
> > > > > waf, any help? Thanks.
> > > > > 
> > > > > 
> > > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a
> > > > > python
> > > > > function
> > > > > in exec_python_func() autogenerated:
> > > > > 
> > > > > The stack trace of python calls that resulted in this
> > > > > exception/failure
> > > > > was:
> > > > > File: 'exec_python_func() autogenerated', lineno: 2,
> > > > > function:
> > > > > <module>
> > > > >      0001:
> > > > >  *** 0002:waf_preconfigure(d)
> > > > >      0003:
> > > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> > > > > lineno: 34,
> > > > > function: waf_preconfigure
> > > > >      0030:    from distutils.version import StrictVersion
> > > > >      0031:    subsrcdir = d.getVar('S')
> > > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> > > > >      0033:    try:
> > > > >  *** 0034:        result = subprocess.check_output([wafbin, '
> > > > > --version'],
> > > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > > > >      0035:        version = result.decode('utf-8').split()[1]
> > > > >      0036:        if StrictVersion(version) >=
> > > > > StrictVersion("1.8.7"):
> > > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > > > > --bindir=${bindir}
> > > > > --libdir=${libdir}")
> > > > >      0038:    except subprocess.CalledProcessError as e:
> > > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626,
> > > > > function:
> > > > > check_output
> > > > >      0622:        # empty string. That is maintained here for
> > > > > backwards
> > > > > compatibility.
> > > > >      0623:        kwargs['input'] = '' if
> > > > > kwargs.get('universal_newlines',
> > > > > False) else b''
> > > > >      0624:
> > > > >      0625:    return run(*popenargs, stdout=PIPE,
> > > > > timeout=timeout,
> > > > > check=True,
> > > > >  *** 0626:               **kwargs).stdout
> > > > >      0627:
> > > > >      0628:
> > > > >      0629:class CompletedProcess(object):
> > > > >      0630:    """A process that has finished running.
> > > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693,
> > > > > function:
> > > > > run
> > > > >      0689:        if 'stdin' in kwargs:
> > > > >      0690:            raise ValueError('stdin and input
> > > > > arguments
> > > > > may not
> > > > > both be used.')
> > > > >      0691:        kwargs['stdin'] = PIPE
> > > > >      0692:
> > > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> > > > >      0694:        try:
> > > > >      0695:            stdout, stderr =
> > > > > process.communicate(input,
> > > > > timeout=timeout)
> > > > >      0696:        except TimeoutExpired:
> > > > >      0697:            process.kill()
> > > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947,
> > > > > function:
> > > > > __init__
> > > > >      0943:                                startupinfo,
> > > > > creationflags,
> > > > > shell,
> > > > >      0944:                                p2cread, p2cwrite,
> > > > >      0945:                                c2pread, c2pwrite,
> > > > >      0946:                                errread, errwrite,
> > > > >  *** 0947:                                restore_signals,
> > > > > start_new_session)
> > > > >      0948:        except:
> > > > >      0949:            # Cleanup if the child failed starting.
> > > > >      0950:            for f in filter(None, (self.stdin,
> > > > > self.stdout,
> > > > > self.stderr)):
> > > > >      0951:                try:
> > > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551,
> > > > > function:
> > > > > _execute_child
> > > > >      1547:                                # The error must be
> > > > > from
> > > > > chdir(cwd).
> > > > >      1548:                                err_msg += ': ' +
> > > > > repr(cwd)
> > > > >      1549:                            else:
> > > > >      1550:                                err_msg += ': ' +
> > > > > repr(orig_executable)
> > > > >  *** 1551:                    raise
> > > > > child_exception_type(errno_num,
> > > > > err_msg)
> > > > >      1552:                raise child_exception_type(err_msg)
> > > > >      1553:
> > > > >      1554:
> > > > >      1555:        def _handle_exitstatus(self, sts,
> > > > > _WIFSIGNALED=os.WIFSIGNALED,
> > > > > Exception: FileNotFoundError: [Errno 2] No such file or
> > > > > directory:
> > > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > > > > 
> > > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> > > > > waf_preconfigure
> > > > > ERROR: Logfile of failure stored in:
> > > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > > > > ERROR: Task
> > > > > (/OE/master/sources/meta-openembedded/meta-
> > > > > networking/recipes-
> > > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > > > failed with exit code '1'
> > > > > --
> > > > > _______________________________________________
> > > > > Openembedded-devel mailing list
> > > > > Openembedded-devel@lists.openembedded.org
> > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-d
> > > > > evel
> > > > > 


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-15 23:33           ` Denys Dmytriyenko
@ 2018-02-16  0:37             ` Joshua Watt
  2018-02-16  1:03               ` Denys Dmytriyenko
  0 siblings, 1 reply; 28+ messages in thread
From: Joshua Watt @ 2018-02-16  0:37 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: openembedded-devel

On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org> wrote:

On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis@denix.org>
wrote:
> > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
> >> Then why did ‘sudo dnf install waf’ get me past the error above? And
why
> >> does Fedora have a package for it?
> >>
> >> https://src.fedoraproject.org/rpms/waf
> >>
> >> Regardless, something broke.
> >
> > I thought so too. As waf.bbclass from oe-core looks for waf binary in
the root
> > of the source package, I looked inside libtalloc 2.1.9 and 2.1.10 and
neither
> > of them have any "waf" files at the root. How was it working before?
What
> > broke?
>
> its using waf-samba.bbclass, there is a patch floating for that
> https://patchwork.openembedded.org/patch/148046/

So, it will fix libtalloc, but some other packages that still use
waf.bbclass
will keep on failing with an exception?


They shouldn't. I tested all the ones I could find. The way waf-samba uses
waf is more of the exception than the rule.... Most projects will follow
the waf.bbclass pattern of a wscript and waf in $S, but we can probably
parameterize it if necessary.

Do you know of a specific recipe that fails?




> >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com>
wrote:
> >>
> >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> >> > > Seeing the same and trying to figure it out. Also, seems there is
no
> >> > > recipe
> >> > > for waf-native, so it becomes a new required host tool.
> >> >
> >> > There is no "waf" tool, so a "waf-native" tool doesn't make sense...
> >> > it's not how waf works. Each project has their own copy of the waf
> >> > program, it's not something the host has to provide.
> >> >
> >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org>
> >> > > wrote:
> >> > >
> >> > > > Hi,
> >> > > >
> >> > > > I'm getting below stack dump building libtalloc 2.1.10 in master.
> >> > > > Works
> >> > > > fine in
> >> > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> >> > > > familiar with
> >> > > > waf, any help? Thanks.
> >> > > >
> >> > > >
> >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
> >> > > > function
> >> > > > in exec_python_func() autogenerated:
> >> > > >
> >> > > > The stack trace of python calls that resulted in this
> >> > > > exception/failure
> >> > > > was:
> >> > > > File: 'exec_python_func() autogenerated', lineno: 2, function:
> >> > > > <module>
> >> > > >      0001:
> >> > > >  *** 0002:waf_preconfigure(d)
> >> > > >      0003:
> >> > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> >> > > > lineno: 34,
> >> > > > function: waf_preconfigure
> >> > > >      0030:    from distutils.version import StrictVersion
> >> > > >      0031:    subsrcdir = d.getVar('S')
> >> > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> >> > > >      0033:    try:
> >> > > >  *** 0034:        result = subprocess.check_output([wafbin, '
> >> > > > --version'],
> >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> >> > > >      0035:        version = result.decode('utf-8').split()[1]
> >> > > >      0036:        if StrictVersion(version) >=
> >> > > > StrictVersion("1.8.7"):
> >> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> >> > > > --bindir=${bindir}
> >> > > > --libdir=${libdir}")
> >> > > >      0038:    except subprocess.CalledProcessError as e:
> >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> >> > > > check_output
> >> > > >      0622:        # empty string. That is maintained here for
> >> > > > backwards
> >> > > > compatibility.
> >> > > >      0623:        kwargs['input'] = '' if
> >> > > > kwargs.get('universal_newlines',
> >> > > > False) else b''
> >> > > >      0624:
> >> > > >      0625:    return run(*popenargs, stdout=PIPE,
timeout=timeout,
> >> > > > check=True,
> >> > > >  *** 0626:               **kwargs).stdout
> >> > > >      0627:
> >> > > >      0628:
> >> > > >      0629:class CompletedProcess(object):
> >> > > >      0630:    """A process that has finished running.
> >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function:
> >> > > > run
> >> > > >      0689:        if 'stdin' in kwargs:
> >> > > >      0690:            raise ValueError('stdin and input arguments
> >> > > > may not
> >> > > > both be used.')
> >> > > >      0691:        kwargs['stdin'] = PIPE
> >> > > >      0692:
> >> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> >> > > >      0694:        try:
> >> > > >      0695:            stdout, stderr = process.communicate(input,
> >> > > > timeout=timeout)
> >> > > >      0696:        except TimeoutExpired:
> >> > > >      0697:            process.kill()
> >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
> >> > > > __init__
> >> > > >      0943:                                startupinfo,
> >> > > > creationflags,
> >> > > > shell,
> >> > > >      0944:                                p2cread, p2cwrite,
> >> > > >      0945:                                c2pread, c2pwrite,
> >> > > >      0946:                                errread, errwrite,
> >> > > >  *** 0947:                                restore_signals,
> >> > > > start_new_session)
> >> > > >      0948:        except:
> >> > > >      0949:            # Cleanup if the child failed starting.
> >> > > >      0950:            for f in filter(None, (self.stdin,
> >> > > > self.stdout,
> >> > > > self.stderr)):
> >> > > >      0951:                try:
> >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> >> > > > _execute_child
> >> > > >      1547:                                # The error must be
from
> >> > > > chdir(cwd).
> >> > > >      1548:                                err_msg += ': ' +
> >> > > > repr(cwd)
> >> > > >      1549:                            else:
> >> > > >      1550:                                err_msg += ': ' +
> >> > > > repr(orig_executable)
> >> > > >  *** 1551:                    raise child_exception_type(errno_
num,
> >> > > > err_msg)
> >> > > >      1552:                raise child_exception_type(err_msg)
> >> > > >      1553:
> >> > > >      1554:
> >> > > >      1555:        def _handle_exitstatus(self, sts,
> >> > > > _WIFSIGNALED=os.WIFSIGNALED,
> >> > > > Exception: FileNotFoundError: [Errno 2] No such file or
directory:
> >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> >> > > >
> >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> >> > > > waf_preconfigure
> >> > > > ERROR: Logfile of failure stored in:
> >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> >> > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> >> > > > ERROR: Task
> >> > > > (/OE/master/sources/meta-openembedded/meta-networking/recipes-
> >> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> >> > > > failed with exit code '1'
> >> > > > --
> >> > > > _______________________________________________
> >> > > > Openembedded-devel mailing list
> >> > > > Openembedded-devel@lists.openembedded.org
> >> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >> > > >
> >> >
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>
--
_______________________________________________
Openembedded-devel mailing list
Openembedded-devel@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-16  0:37             ` Joshua Watt
@ 2018-02-16  1:03               ` Denys Dmytriyenko
  2018-02-16  8:45                 ` Martin Jansa
  0 siblings, 1 reply; 28+ messages in thread
From: Denys Dmytriyenko @ 2018-02-16  1:03 UTC (permalink / raw)
  To: Joshua Watt; +Cc: openembedded-devel

On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
> On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org> wrote:
> 
> On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> > On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis@denix.org>
> wrote:
> > > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
> > >> Then why did ‘sudo dnf install waf’ get me past the error above? And
> why
> > >> does Fedora have a package for it?
> > >>
> > >> https://src.fedoraproject.org/rpms/waf
> > >>
> > >> Regardless, something broke.
> > >
> > > I thought so too. As waf.bbclass from oe-core looks for waf binary in
> the root
> > > of the source package, I looked inside libtalloc 2.1.9 and 2.1.10 and
> neither
> > > of them have any "waf" files at the root. How was it working before?
> What
> > > broke?
> >
> > its using waf-samba.bbclass, there is a patch floating for that
> > https://patchwork.openembedded.org/patch/148046/
> 
> So, it will fix libtalloc, but some other packages that still use
> waf.bbclass
> will keep on failing with an exception?
> 
> 
> They shouldn't. I tested all the ones I could find. The way waf-samba uses
> waf is more of the exception than the rule.... Most projects will follow
> the waf.bbclass pattern of a wscript and waf in $S, but we can probably
> parameterize it if necessary.
> 
> Do you know of a specific recipe that fails?

No, but as Andre said here earlier, it should be more forgiving when ${S}/waf 
is not available or at least give a proper error message instead of dumping a 
cryptic exception stack...

In other words, before this waf.bbclass change in oe-core it was handling such 
situation just fine and there was a warning "Unable to execute waf --version, 
exit code 127". Now it never reaches that code and just throws an exception.


> > >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com>
> wrote:
> > >>
> > >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > >> > > Seeing the same and trying to figure it out. Also, seems there is
> no
> > >> > > recipe
> > >> > > for waf-native, so it becomes a new required host tool.
> > >> >
> > >> > There is no "waf" tool, so a "waf-native" tool doesn't make sense...
> > >> > it's not how waf works. Each project has their own copy of the waf
> > >> > program, it's not something the host has to provide.
> > >> >
> > >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <denis@denix.org>
> > >> > > wrote:
> > >> > >
> > >> > > > Hi,
> > >> > > >
> > >> > > > I'm getting below stack dump building libtalloc 2.1.10 in master.
> > >> > > > Works
> > >> > > > fine in
> > >> > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> > >> > > > familiar with
> > >> > > > waf, any help? Thanks.
> > >> > > >
> > >> > > >
> > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a python
> > >> > > > function
> > >> > > > in exec_python_func() autogenerated:
> > >> > > >
> > >> > > > The stack trace of python calls that resulted in this
> > >> > > > exception/failure
> > >> > > > was:
> > >> > > > File: 'exec_python_func() autogenerated', lineno: 2, function:
> > >> > > > <module>
> > >> > > >      0001:
> > >> > > >  *** 0002:waf_preconfigure(d)
> > >> > > >      0003:
> > >> > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> > >> > > > lineno: 34,
> > >> > > > function: waf_preconfigure
> > >> > > >      0030:    from distutils.version import StrictVersion
> > >> > > >      0031:    subsrcdir = d.getVar('S')
> > >> > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> > >> > > >      0033:    try:
> > >> > > >  *** 0034:        result = subprocess.check_output([wafbin, '
> > >> > > > --version'],
> > >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > >> > > >      0035:        version = result.decode('utf-8').split()[1]
> > >> > > >      0036:        if StrictVersion(version) >=
> > >> > > > StrictVersion("1.8.7"):
> > >> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > >> > > > --bindir=${bindir}
> > >> > > > --libdir=${libdir}")
> > >> > > >      0038:    except subprocess.CalledProcessError as e:
> > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626, function:
> > >> > > > check_output
> > >> > > >      0622:        # empty string. That is maintained here for
> > >> > > > backwards
> > >> > > > compatibility.
> > >> > > >      0623:        kwargs['input'] = '' if
> > >> > > > kwargs.get('universal_newlines',
> > >> > > > False) else b''
> > >> > > >      0624:
> > >> > > >      0625:    return run(*popenargs, stdout=PIPE,
> timeout=timeout,
> > >> > > > check=True,
> > >> > > >  *** 0626:               **kwargs).stdout
> > >> > > >      0627:
> > >> > > >      0628:
> > >> > > >      0629:class CompletedProcess(object):
> > >> > > >      0630:    """A process that has finished running.
> > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693, function:
> > >> > > > run
> > >> > > >      0689:        if 'stdin' in kwargs:
> > >> > > >      0690:            raise ValueError('stdin and input arguments
> > >> > > > may not
> > >> > > > both be used.')
> > >> > > >      0691:        kwargs['stdin'] = PIPE
> > >> > > >      0692:
> > >> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> > >> > > >      0694:        try:
> > >> > > >      0695:            stdout, stderr = process.communicate(input,
> > >> > > > timeout=timeout)
> > >> > > >      0696:        except TimeoutExpired:
> > >> > > >      0697:            process.kill()
> > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947, function:
> > >> > > > __init__
> > >> > > >      0943:                                startupinfo,
> > >> > > > creationflags,
> > >> > > > shell,
> > >> > > >      0944:                                p2cread, p2cwrite,
> > >> > > >      0945:                                c2pread, c2pwrite,
> > >> > > >      0946:                                errread, errwrite,
> > >> > > >  *** 0947:                                restore_signals,
> > >> > > > start_new_session)
> > >> > > >      0948:        except:
> > >> > > >      0949:            # Cleanup if the child failed starting.
> > >> > > >      0950:            for f in filter(None, (self.stdin,
> > >> > > > self.stdout,
> > >> > > > self.stderr)):
> > >> > > >      0951:                try:
> > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551, function:
> > >> > > > _execute_child
> > >> > > >      1547:                                # The error must be
> from
> > >> > > > chdir(cwd).
> > >> > > >      1548:                                err_msg += ': ' +
> > >> > > > repr(cwd)
> > >> > > >      1549:                            else:
> > >> > > >      1550:                                err_msg += ': ' +
> > >> > > > repr(orig_executable)
> > >> > > >  *** 1551:                    raise child_exception_type(errno_
> num,
> > >> > > > err_msg)
> > >> > > >      1552:                raise child_exception_type(err_msg)
> > >> > > >      1553:
> > >> > > >      1554:
> > >> > > >      1555:        def _handle_exitstatus(self, sts,
> > >> > > > _WIFSIGNALED=os.WIFSIGNALED,
> > >> > > > Exception: FileNotFoundError: [Errno 2] No such file or
> directory:
> > >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > >> > > >
> > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> > >> > > > waf_preconfigure
> > >> > > > ERROR: Logfile of failure stored in:
> > >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > >> > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > >> > > > ERROR: Task
> > >> > > > (/OE/master/sources/meta-openembedded/meta-networking/recipes-
> > >> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > >> > > > failed with exit code '1'
> > >> > > > --
> > >> > > > _______________________________________________
> > >> > > > Openembedded-devel mailing list
> > >> > > > Openembedded-devel@lists.openembedded.org
> > >> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > >> > > >
> > >> >
> > > --
> > > _______________________________________________
> > > Openembedded-devel mailing list
> > > Openembedded-devel@lists.openembedded.org
> > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-16  1:03               ` Denys Dmytriyenko
@ 2018-02-16  8:45                 ` Martin Jansa
  2018-02-16 20:08                   ` Martin Jansa
  0 siblings, 1 reply; 28+ messages in thread
From: Martin Jansa @ 2018-02-16  8:45 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: openembedded-devel

Check this thread:
http://lists.openembedded.org/pipermail/openembedded-commits/2018-January/218460.html

but my patch wasn't merged:
http://lists.openembedded.org/pipermail/openembedded-core/2018-January/146974.html
only the one from Joshua.

The original issue is still in rocko as well, the backported waf change
doesn't work and causes useless warning.

Either the "waf.bbclass: explicitly pass bindir and libdir if supported"
should be reverted in rocko or all fixes for this should be backported to
rocko once they are all in oe-core and meta-oe master.

Regards,

On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix.org> wrote:

> On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
> > On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org> wrote:
> >
> > On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> > > On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis@denix.org>
> > wrote:
> > > > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
> > > >> Then why did ‘sudo dnf install waf’ get me past the error above? And
> > why
> > > >> does Fedora have a package for it?
> > > >>
> > > >> https://src.fedoraproject.org/rpms/waf
> > > >>
> > > >> Regardless, something broke.
> > > >
> > > > I thought so too. As waf.bbclass from oe-core looks for waf binary in
> > the root
> > > > of the source package, I looked inside libtalloc 2.1.9 and 2.1.10 and
> > neither
> > > > of them have any "waf" files at the root. How was it working before?
> > What
> > > > broke?
> > >
> > > its using waf-samba.bbclass, there is a patch floating for that
> > > https://patchwork.openembedded.org/patch/148046/
> >
> > So, it will fix libtalloc, but some other packages that still use
> > waf.bbclass
> > will keep on failing with an exception?
> >
> >
> > They shouldn't. I tested all the ones I could find. The way waf-samba
> uses
> > waf is more of the exception than the rule.... Most projects will follow
> > the waf.bbclass pattern of a wscript and waf in $S, but we can probably
> > parameterize it if necessary.
> >
> > Do you know of a specific recipe that fails?
>
> No, but as Andre said here earlier, it should be more forgiving when
> ${S}/waf
> is not available or at least give a proper error message instead of
> dumping a
> cryptic exception stack...
>
> In other words, before this waf.bbclass change in oe-core it was handling
> such
> situation just fine and there was a warning "Unable to execute waf
> --version,
> exit code 127". Now it never reaches that code and just throws an
> exception.
>
>
> > > >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com>
> > wrote:
> > > >>
> > > >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > > >> > > Seeing the same and trying to figure it out. Also, seems there
> is
> > no
> > > >> > > recipe
> > > >> > > for waf-native, so it becomes a new required host tool.
> > > >> >
> > > >> > There is no "waf" tool, so a "waf-native" tool doesn't make
> sense...
> > > >> > it's not how waf works. Each project has their own copy of the waf
> > > >> > program, it's not something the host has to provide.
> > > >> >
> > > >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <
> denis@denix.org>
> > > >> > > wrote:
> > > >> > >
> > > >> > > > Hi,
> > > >> > > >
> > > >> > > > I'm getting below stack dump building libtalloc 2.1.10 in
> master.
> > > >> > > > Works
> > > >> > > > fine in
> > > >> > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> > > >> > > > familiar with
> > > >> > > > waf, any help? Thanks.
> > > >> > > >
> > > >> > > >
> > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a
> python
> > > >> > > > function
> > > >> > > > in exec_python_func() autogenerated:
> > > >> > > >
> > > >> > > > The stack trace of python calls that resulted in this
> > > >> > > > exception/failure
> > > >> > > > was:
> > > >> > > > File: 'exec_python_func() autogenerated', lineno: 2, function:
> > > >> > > > <module>
> > > >> > > >      0001:
> > > >> > > >  *** 0002:waf_preconfigure(d)
> > > >> > > >      0003:
> > > >> > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> > > >> > > > lineno: 34,
> > > >> > > > function: waf_preconfigure
> > > >> > > >      0030:    from distutils.version import StrictVersion
> > > >> > > >      0031:    subsrcdir = d.getVar('S')
> > > >> > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> > > >> > > >      0033:    try:
> > > >> > > >  *** 0034:        result = subprocess.check_output([wafbin, '
> > > >> > > > --version'],
> > > >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > > >> > > >      0035:        version = result.decode('utf-8').split()[1]
> > > >> > > >      0036:        if StrictVersion(version) >=
> > > >> > > > StrictVersion("1.8.7"):
> > > >> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > > >> > > > --bindir=${bindir}
> > > >> > > > --libdir=${libdir}")
> > > >> > > >      0038:    except subprocess.CalledProcessError as e:
> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626,
> function:
> > > >> > > > check_output
> > > >> > > >      0622:        # empty string. That is maintained here for
> > > >> > > > backwards
> > > >> > > > compatibility.
> > > >> > > >      0623:        kwargs['input'] = '' if
> > > >> > > > kwargs.get('universal_newlines',
> > > >> > > > False) else b''
> > > >> > > >      0624:
> > > >> > > >      0625:    return run(*popenargs, stdout=PIPE,
> > timeout=timeout,
> > > >> > > > check=True,
> > > >> > > >  *** 0626:               **kwargs).stdout
> > > >> > > >      0627:
> > > >> > > >      0628:
> > > >> > > >      0629:class CompletedProcess(object):
> > > >> > > >      0630:    """A process that has finished running.
> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693,
> function:
> > > >> > > > run
> > > >> > > >      0689:        if 'stdin' in kwargs:
> > > >> > > >      0690:            raise ValueError('stdin and input
> arguments
> > > >> > > > may not
> > > >> > > > both be used.')
> > > >> > > >      0691:        kwargs['stdin'] = PIPE
> > > >> > > >      0692:
> > > >> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> > > >> > > >      0694:        try:
> > > >> > > >      0695:            stdout, stderr =
> process.communicate(input,
> > > >> > > > timeout=timeout)
> > > >> > > >      0696:        except TimeoutExpired:
> > > >> > > >      0697:            process.kill()
> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947,
> function:
> > > >> > > > __init__
> > > >> > > >      0943:                                startupinfo,
> > > >> > > > creationflags,
> > > >> > > > shell,
> > > >> > > >      0944:                                p2cread, p2cwrite,
> > > >> > > >      0945:                                c2pread, c2pwrite,
> > > >> > > >      0946:                                errread, errwrite,
> > > >> > > >  *** 0947:                                restore_signals,
> > > >> > > > start_new_session)
> > > >> > > >      0948:        except:
> > > >> > > >      0949:            # Cleanup if the child failed starting.
> > > >> > > >      0950:            for f in filter(None, (self.stdin,
> > > >> > > > self.stdout,
> > > >> > > > self.stderr)):
> > > >> > > >      0951:                try:
> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551,
> function:
> > > >> > > > _execute_child
> > > >> > > >      1547:                                # The error must be
> > from
> > > >> > > > chdir(cwd).
> > > >> > > >      1548:                                err_msg += ': ' +
> > > >> > > > repr(cwd)
> > > >> > > >      1549:                            else:
> > > >> > > >      1550:                                err_msg += ': ' +
> > > >> > > > repr(orig_executable)
> > > >> > > >  *** 1551:                    raise
> child_exception_type(errno_
> > num,
> > > >> > > > err_msg)
> > > >> > > >      1552:                raise child_exception_type(err_msg)
> > > >> > > >      1553:
> > > >> > > >      1554:
> > > >> > > >      1555:        def _handle_exitstatus(self, sts,
> > > >> > > > _WIFSIGNALED=os.WIFSIGNALED,
> > > >> > > > Exception: FileNotFoundError: [Errno 2] No such file or
> > directory:
> > > >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > > >> > > >
> > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> > > >> > > > waf_preconfigure
> > > >> > > > ERROR: Logfile of failure stored in:
> > > >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > >> > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > > >> > > > ERROR: Task
> > > >> > > > (/OE/master/sources/meta-openembedded/meta-networking/
> recipes-
> > > >> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > >> > > > failed with exit code '1'
> > > >> > > > --
> > > >> > > > _______________________________________________
> > > >> > > > Openembedded-devel mailing list
> > > >> > > > Openembedded-devel@lists.openembedded.org
> > > >> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-
> devel
> > > >> > > >
> > > >> >
> > > > --
> > > > _______________________________________________
> > > > Openembedded-devel mailing list
> > > > Openembedded-devel@lists.openembedded.org
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > >
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-16  8:45                 ` Martin Jansa
@ 2018-02-16 20:08                   ` Martin Jansa
  2018-02-16 20:18                     ` Joshua Watt
  0 siblings, 1 reply; 28+ messages in thread
From: Martin Jansa @ 2018-02-16 20:08 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: openembedded-devel

And now it will fail to parse as well:

http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d22b31ed85d8823b1bc9e11ccfd72b61f

removed get_waf_parallel_make from waf.bbclass, so now all
waf-samba.bbclass users will fail to parse with:

bb.data_smart.ExpansionError: Failure expanding variable do_compile,
expression was
    python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
 which triggered exception NameError: name 'get_waf_parallel_make' is not
defined

On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail.com>
wrote:

> Check this thread:
> http://lists.openembedded.org/pipermail/openembedded-
> commits/2018-January/218460.html
>
> but my patch wasn't merged:
> http://lists.openembedded.org/pipermail/openembedded-core/
> 2018-January/146974.html
> only the one from Joshua.
>
> The original issue is still in rocko as well, the backported waf change
> doesn't work and causes useless warning.
>
> Either the "waf.bbclass: explicitly pass bindir and libdir if supported"
> should be reverted in rocko or all fixes for this should be backported to
> rocko once they are all in oe-core and meta-oe master.
>
> Regards,
>
> On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix.org>
> wrote:
>
>> On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
>> > On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org> wrote:
>> >
>> > On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
>> > > On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis@denix.org>
>> > wrote:
>> > > > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
>> > > >> Then why did ‘sudo dnf install waf’ get me past the error above?
>> And
>> > why
>> > > >> does Fedora have a package for it?
>> > > >>
>> > > >> https://src.fedoraproject.org/rpms/waf
>> > > >>
>> > > >> Regardless, something broke.
>> > > >
>> > > > I thought so too. As waf.bbclass from oe-core looks for waf binary
>> in
>> > the root
>> > > > of the source package, I looked inside libtalloc 2.1.9 and 2.1.10
>> and
>> > neither
>> > > > of them have any "waf" files at the root. How was it working before?
>> > What
>> > > > broke?
>> > >
>> > > its using waf-samba.bbclass, there is a patch floating for that
>> > > https://patchwork.openembedded.org/patch/148046/
>> >
>> > So, it will fix libtalloc, but some other packages that still use
>> > waf.bbclass
>> > will keep on failing with an exception?
>> >
>> >
>> > They shouldn't. I tested all the ones I could find. The way waf-samba
>> uses
>> > waf is more of the exception than the rule.... Most projects will follow
>> > the waf.bbclass pattern of a wscript and waf in $S, but we can probably
>> > parameterize it if necessary.
>> >
>> > Do you know of a specific recipe that fails?
>>
>> No, but as Andre said here earlier, it should be more forgiving when
>> ${S}/waf
>> is not available or at least give a proper error message instead of
>> dumping a
>> cryptic exception stack...
>>
>> In other words, before this waf.bbclass change in oe-core it was handling
>> such
>> situation just fine and there was a warning "Unable to execute waf
>> --version,
>> exit code 127". Now it never reaches that code and just throws an
>> exception.
>>
>>
>> > > >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com>
>> > wrote:
>> > > >>
>> > > >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
>> > > >> > > Seeing the same and trying to figure it out. Also, seems there
>> is
>> > no
>> > > >> > > recipe
>> > > >> > > for waf-native, so it becomes a new required host tool.
>> > > >> >
>> > > >> > There is no "waf" tool, so a "waf-native" tool doesn't make
>> sense...
>> > > >> > it's not how waf works. Each project has their own copy of the
>> waf
>> > > >> > program, it's not something the host has to provide.
>> > > >> >
>> > > >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <
>> denis@denix.org>
>> > > >> > > wrote:
>> > > >> > >
>> > > >> > > > Hi,
>> > > >> > > >
>> > > >> > > > I'm getting below stack dump building libtalloc 2.1.10 in
>> master.
>> > > >> > > > Works
>> > > >> > > > fine in
>> > > >> > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
>> > > >> > > > familiar with
>> > > >> > > > waf, any help? Thanks.
>> > > >> > > >
>> > > >> > > >
>> > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a
>> python
>> > > >> > > > function
>> > > >> > > > in exec_python_func() autogenerated:
>> > > >> > > >
>> > > >> > > > The stack trace of python calls that resulted in this
>> > > >> > > > exception/failure
>> > > >> > > > was:
>> > > >> > > > File: 'exec_python_func() autogenerated', lineno: 2,
>> function:
>> > > >> > > > <module>
>> > > >> > > >      0001:
>> > > >> > > >  *** 0002:waf_preconfigure(d)
>> > > >> > > >      0003:
>> > > >> > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
>> > > >> > > > lineno: 34,
>> > > >> > > > function: waf_preconfigure
>> > > >> > > >      0030:    from distutils.version import StrictVersion
>> > > >> > > >      0031:    subsrcdir = d.getVar('S')
>> > > >> > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
>> > > >> > > >      0033:    try:
>> > > >> > > >  *** 0034:        result = subprocess.check_output([wafbin,
>> '
>> > > >> > > > --version'],
>> > > >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
>> > > >> > > >      0035:        version = result.decode('utf-8').split()
>> [1]
>> > > >> > > >      0036:        if StrictVersion(version) >=
>> > > >> > > > StrictVersion("1.8.7"):
>> > > >> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
>> > > >> > > > --bindir=${bindir}
>> > > >> > > > --libdir=${libdir}")
>> > > >> > > >      0038:    except subprocess.CalledProcessError as e:
>> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626,
>> function:
>> > > >> > > > check_output
>> > > >> > > >      0622:        # empty string. That is maintained here for
>> > > >> > > > backwards
>> > > >> > > > compatibility.
>> > > >> > > >      0623:        kwargs['input'] = '' if
>> > > >> > > > kwargs.get('universal_newlines',
>> > > >> > > > False) else b''
>> > > >> > > >      0624:
>> > > >> > > >      0625:    return run(*popenargs, stdout=PIPE,
>> > timeout=timeout,
>> > > >> > > > check=True,
>> > > >> > > >  *** 0626:               **kwargs).stdout
>> > > >> > > >      0627:
>> > > >> > > >      0628:
>> > > >> > > >      0629:class CompletedProcess(object):
>> > > >> > > >      0630:    """A process that has finished running.
>> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693,
>> function:
>> > > >> > > > run
>> > > >> > > >      0689:        if 'stdin' in kwargs:
>> > > >> > > >      0690:            raise ValueError('stdin and input
>> arguments
>> > > >> > > > may not
>> > > >> > > > both be used.')
>> > > >> > > >      0691:        kwargs['stdin'] = PIPE
>> > > >> > > >      0692:
>> > > >> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
>> > > >> > > >      0694:        try:
>> > > >> > > >      0695:            stdout, stderr =
>> process.communicate(input,
>> > > >> > > > timeout=timeout)
>> > > >> > > >      0696:        except TimeoutExpired:
>> > > >> > > >      0697:            process.kill()
>> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947,
>> function:
>> > > >> > > > __init__
>> > > >> > > >      0943:                                startupinfo,
>> > > >> > > > creationflags,
>> > > >> > > > shell,
>> > > >> > > >      0944:                                p2cread, p2cwrite,
>> > > >> > > >      0945:                                c2pread, c2pwrite,
>> > > >> > > >      0946:                                errread, errwrite,
>> > > >> > > >  *** 0947:                                restore_signals,
>> > > >> > > > start_new_session)
>> > > >> > > >      0948:        except:
>> > > >> > > >      0949:            # Cleanup if the child failed starting.
>> > > >> > > >      0950:            for f in filter(None, (self.stdin,
>> > > >> > > > self.stdout,
>> > > >> > > > self.stderr)):
>> > > >> > > >      0951:                try:
>> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551,
>> function:
>> > > >> > > > _execute_child
>> > > >> > > >      1547:                                # The error must be
>> > from
>> > > >> > > > chdir(cwd).
>> > > >> > > >      1548:                                err_msg += ': ' +
>> > > >> > > > repr(cwd)
>> > > >> > > >      1549:                            else:
>> > > >> > > >      1550:                                err_msg += ': ' +
>> > > >> > > > repr(orig_executable)
>> > > >> > > >  *** 1551:                    raise
>> child_exception_type(errno_
>> > num,
>> > > >> > > > err_msg)
>> > > >> > > >      1552:                raise child_exception_type(err_msg)
>> > > >> > > >      1553:
>> > > >> > > >      1554:
>> > > >> > > >      1555:        def _handle_exitstatus(self, sts,
>> > > >> > > > _WIFSIGNALED=os.WIFSIGNALED,
>> > > >> > > > Exception: FileNotFoundError: [Errno 2] No such file or
>> > directory:
>> > > >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
>> > > >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
>> > > >> > > >
>> > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
>> > > >> > > > waf_preconfigure
>> > > >> > > > ERROR: Logfile of failure stored in:
>> > > >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
>> > > >> > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
>> > > >> > > > ERROR: Task
>> > > >> > > > (/OE/master/sources/meta-openembedded/meta-networking/recipe
>> s-
>> > > >> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
>> > > >> > > > failed with exit code '1'
>> > > >> > > > --
>> > > >> > > > _______________________________________________
>> > > >> > > > Openembedded-devel mailing list
>> > > >> > > > Openembedded-devel@lists.openembedded.org
>> > > >> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-
>> devel
>> > > >> > > >
>> > > >> >
>> > > > --
>> > > > _______________________________________________
>> > > > Openembedded-devel mailing list
>> > > > Openembedded-devel@lists.openembedded.org
>> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>> > >
>> > --
>> > _______________________________________________
>> > Openembedded-devel mailing list
>> > Openembedded-devel@lists.openembedded.org
>> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>> --
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>
>
>


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-16 20:08                   ` Martin Jansa
@ 2018-02-16 20:18                     ` Joshua Watt
  2018-02-16 20:55                       ` Martin Jansa
  0 siblings, 1 reply; 28+ messages in thread
From: Joshua Watt @ 2018-02-16 20:18 UTC (permalink / raw)
  To: Martin Jansa, Denys Dmytriyenko, Armin Kuster; +Cc: openembedded-devel

On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
> And now it will fail to parse as well:
> http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d22b3
> 1ed85d8823b1bc9e11ccfd72b61f
> 
> removed get_waf_parallel_make from waf.bbclass, so now all waf-
> samba.bbclass users will fail to parse with:

http://lists.openembedded.org/pipermail/openembedded-devel/2018-Februar
y/116701.html will fix that as well.... We probably need to speed along
that getting merged.Armin can you help with that? 
This patch should resolve all of the waf issues that have been
discussed here, with exception of the one improvement proposed by
Denys. While it should probably be improved, I don't beleive it
actually affects any recipes (some please give me an example if I am
wrong).
Sorry for the churn. Hopefull this will be better in the future since
waf and samba-waf are no longer tied together.
Joshua Watt
> bb.data_smart.ExpansionError: Failure expanding variable do_compile,
> expression was  
>     python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
>  which triggered exception NameError: name 'get_waf_parallel_make' is
> not defined
> On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail.com
> > wrote:
> > Check this thread:
> > http://lists.openembedded.org/pipermail/openembedded-commits/2018-J
> > anuary/218460.html
> > 
> > but my patch wasn't merged:
> > http://lists.openembedded.org/pipermail/openembedded-core/2018-Janu
> > ary/146974.html
> > only the one from Joshua.
> > 
> > 
> > The original issue is still in rocko as well, the backported waf
> > change doesn't work and causes useless warning.
> > 
> > Either the "waf.bbclass: explicitly pass bindir and libdir if
> > supported" should be reverted in rocko or all fixes for this should
> > be backported to rocko once they are all in oe-core and meta-oe
> > master.
> > 
> > Regards,
> > 
> > On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix.org
> > > wrote:
> > > On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
> > > 
> > > > On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org>
> > > wrote:
> > > 
> > > >
> > > 
> > > > On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> > > 
> > > > > On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis@den
> > > ix.org>
> > > 
> > > > wrote:
> > > 
> > > > > > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
> > > 
> > > > > >> Then why did ‘sudo dnf install waf’ get me past the error
> > > above? And
> > > 
> > > > why
> > > 
> > > > > >> does Fedora have a package for it?
> > > 
> > > > > >>
> > > 
> > > > > >> https://src.fedoraproject.org/rpms/waf
> > > 
> > > > > >>
> > > 
> > > > > >> Regardless, something broke.
> > > 
> > > > > >
> > > 
> > > > > > I thought so too. As waf.bbclass from oe-core looks for waf
> > > binary in
> > > 
> > > > the root
> > > 
> > > > > > of the source package, I looked inside libtalloc 2.1.9 and
> > > 2.1.10 and
> > > 
> > > > neither
> > > 
> > > > > > of them have any "waf" files at the root. How was it
> > > working before?
> > > 
> > > > What
> > > 
> > > > > > broke?
> > > 
> > > > >
> > > 
> > > > > its using waf-samba.bbclass, there is a patch floating for
> > > that
> > > 
> > > > > https://patchwork.openembedded.org/patch/148046/
> > > 
> > > >
> > > 
> > > > So, it will fix libtalloc, but some other packages that still
> > > use
> > > 
> > > > waf.bbclass
> > > 
> > > > will keep on failing with an exception?
> > > 
> > > >
> > > 
> > > >
> > > 
> > > > They shouldn't. I tested all the ones I could find. The way
> > > waf-samba uses
> > > 
> > > > waf is more of the exception than the rule.... Most projects
> > > will follow
> > > 
> > > > the waf.bbclass pattern of a wscript and waf in $S, but we can
> > > probably
> > > 
> > > > parameterize it if necessary.
> > > 
> > > >
> > > 
> > > > Do you know of a specific recipe that fails?
> > > 
> > > 
> > > 
> > > 
> > > No, but as Andre said here earlier, it should be more forgiving
> > > when ${S}/waf
> > > 
> > > is not available or at least give a proper error message instead
> > > of dumping a
> > > 
> > > cryptic exception stack...
> > > 
> > > 
> > > 
> > > In other words, before this waf.bbclass change in oe-core it was
> > > handling such
> > > 
> > > situation just fine and there was a warning "Unable to execute
> > > waf --version,
> > > 
> > > exit code 127". Now it never reaches that code and just throws an
> > > exception.
> > > 
> > > 
> > > 
> > > 
> > > 
> > > > > >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gm
> > > ail.com>
> > > 
> > > > wrote:
> > > 
> > > > > >>
> > > 
> > > > > >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > > 
> > > > > >> > > Seeing the same and trying to figure it out. Also,
> > > seems there is
> > > 
> > > > no
> > > 
> > > > > >> > > recipe
> > > 
> > > > > >> > > for waf-native, so it becomes a new required host
> > > tool.
> > > 
> > > > > >> >
> > > 
> > > > > >> > There is no "waf" tool, so a "waf-native" tool doesn't
> > > make sense...
> > > 
> > > > > >> > it's not how waf works. Each project has their own copy
> > > of the waf
> > > 
> > > > > >> > program, it's not something the host has to provide.
> > > 
> > > > > >> >
> > > 
> > > > > >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <den
> > > is@denix.org>
> > > 
> > > > > >> > > wrote:
> > > 
> > > > > >> > >
> > > 
> > > > > >> > > > Hi,
> > > 
> > > > > >> > > >
> > > 
> > > > > >> > > > I'm getting below stack dump building libtalloc
> > > 2.1.10 in master.
> > > 
> > > > > >> > > > Works
> > > 
> > > > > >> > > > fine in
> > > 
> > > > > >> > > > rocko with libtalloc 2.1.9. I need it for cifs-
> > > utils. I'm not
> > > 
> > > > > >> > > > familiar with
> > > 
> > > > > >> > > > waf, any help? Thanks.
> > > 
> > > > > >> > > >
> > > 
> > > > > >> > > >
> > > 
> > > > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error
> > > executing a python
> > > 
> > > > > >> > > > function
> > > 
> > > > > >> > > > in exec_python_func() autogenerated:
> > > 
> > > > > >> > > >
> > > 
> > > > > >> > > > The stack trace of python calls that resulted in
> > > this
> > > 
> > > > > >> > > > exception/failure
> > > 
> > > > > >> > > > was:
> > > 
> > > > > >> > > > File: 'exec_python_func() autogenerated', lineno: 2,
> > > function:
> > > 
> > > > > >> > > > <module>
> > > 
> > > > > >> > > >      0001:
> > > 
> > > > > >> > > >  *** 0002:waf_preconfigure(d)
> > > 
> > > > > >> > > >      0003:
> > > 
> > > > > >> > > > File: '/OE/master/sources/oe-
> > > core/meta/classes/waf.bbclass',
> > > 
> > > > > >> > > > lineno: 34,
> > > 
> > > > > >> > > > function: waf_preconfigure
> > > 
> > > > > >> > > >      0030:    from distutils.version import
> > > StrictVersion
> > > 
> > > > > >> > > >      0031:    subsrcdir = d.getVar('S')
> > > 
> > > > > >> > > >      0032:    wafbin = os.path.join(subsrcdir,
> > > 'waf')
> > > 
> > > > > >> > > >      0033:    try:
> > > 
> > > > > >> > > >  *** 0034:        result =
> > > subprocess.check_output([wafbin, '
> > > 
> > > > > >> > > > --version'],
> > > 
> > > > > >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > > 
> > > > > >> > > >      0035:        version = result.decode('utf-
> > > 8').split()[1]
> > > 
> > > > > >> > > >      0036:        if StrictVersion(version) >=
> > > 
> > > > > >> > > > StrictVersion("1.8.7"):
> > > 
> > > > > >> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > > 
> > > > > >> > > > --bindir=${bindir}
> > > 
> > > > > >> > > > --libdir=${libdir}")
> > > 
> > > > > >> > > >      0038:    except subprocess.CalledProcessError
> > > as e:
> > > 
> > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno:
> > > 626, function:
> > > 
> > > > > >> > > > check_output
> > > 
> > > > > >> > > >      0622:        # empty string. That is maintained
> > > here for
> > > 
> > > > > >> > > > backwards
> > > 
> > > > > >> > > > compatibility.
> > > 
> > > > > >> > > >      0623:        kwargs['input'] = '' if
> > > 
> > > > > >> > > > kwargs.get('universal_newlines',
> > > 
> > > > > >> > > > False) else b''
> > > 
> > > > > >> > > >      0624:
> > > 
> > > > > >> > > >      0625:    return run(*popenargs, stdout=PIPE,
> > > 
> > > > timeout=timeout,
> > > 
> > > > > >> > > > check=True,
> > > 
> > > > > >> > > >  *** 0626:               **kwargs).stdout
> > > 
> > > > > >> > > >      0627:
> > > 
> > > > > >> > > >      0628:
> > > 
> > > > > >> > > >      0629:class CompletedProcess(object):
> > > 
> > > > > >> > > >      0630:    """A process that has finished
> > > running.
> > > 
> > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno:
> > > 693, function:
> > > 
> > > > > >> > > > run
> > > 
> > > > > >> > > >      0689:        if 'stdin' in kwargs:
> > > 
> > > > > >> > > >      0690:            raise ValueError('stdin and
> > > input arguments
> > > 
> > > > > >> > > > may not
> > > 
> > > > > >> > > > both be used.')
> > > 
> > > > > >> > > >      0691:        kwargs['stdin'] = PIPE
> > > 
> > > > > >> > > >      0692:
> > > 
> > > > > >> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as
> > > process:
> > > 
> > > > > >> > > >      0694:        try:
> > > 
> > > > > >> > > >      0695:            stdout, stderr =
> > > process.communicate(input,
> > > 
> > > > > >> > > > timeout=timeout)
> > > 
> > > > > >> > > >      0696:        except TimeoutExpired:
> > > 
> > > > > >> > > >      0697:            process.kill()
> > > 
> > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno:
> > > 947, function:
> > > 
> > > > > >> > > > __init__
> > > 
> > > > > >> > > >      0943:                               
> > > startupinfo,
> > > 
> > > > > >> > > > creationflags,
> > > 
> > > > > >> > > > shell,
> > > 
> > > > > >> > > >      0944:                                p2cread,
> > > p2cwrite,
> > > 
> > > > > >> > > >      0945:                                c2pread,
> > > c2pwrite,
> > > 
> > > > > >> > > >      0946:                                errread,
> > > errwrite,
> > > 
> > > > > >> > > >  *** 0947:                               
> > > restore_signals,
> > > 
> > > > > >> > > > start_new_session)
> > > 
> > > > > >> > > >      0948:        except:
> > > 
> > > > > >> > > >      0949:            # Cleanup if the child failed
> > > starting.
> > > 
> > > > > >> > > >      0950:            for f in filter(None,
> > > (self.stdin,
> > > 
> > > > > >> > > > self.stdout,
> > > 
> > > > > >> > > > self.stderr)):
> > > 
> > > > > >> > > >      0951:                try:
> > > 
> > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno:
> > > 1551, function:
> > > 
> > > > > >> > > > _execute_child
> > > 
> > > > > >> > > >      1547:                                # The
> > > error must be
> > > 
> > > > from
> > > 
> > > > > >> > > > chdir(cwd).
> > > 
> > > > > >> > > >      1548:                                err_msg +=
> > > ': ' +
> > > 
> > > > > >> > > > repr(cwd)
> > > 
> > > > > >> > > >      1549:                            else:
> > > 
> > > > > >> > > >      1550:                                err_msg +=
> > > ': ' +
> > > 
> > > > > >> > > > repr(orig_executable)
> > > 
> > > > > >> > > >  *** 1551:                    raise
> > > child_exception_type(errno_
> > > 
> > > > num,
> > > 
> > > > > >> > > > err_msg)
> > > 
> > > > > >> > > >      1552:                raise
> > > child_exception_type(err_msg)
> > > 
> > > > > >> > > >      1553:
> > > 
> > > > > >> > > >      1554:
> > > 
> > > > > >> > > >      1555:        def _handle_exitstatus(self, sts,
> > > 
> > > > > >> > > > _WIFSIGNALED=os.WIFSIGNALED,
> > > 
> > > > > >> > > > Exception: FileNotFoundError: [Errno 2] No such file
> > > or
> > > 
> > > > directory:
> > > 
> > > > > >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-
> > > linux-
> > > 
> > > > > >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > > 
> > > > > >> > > >
> > > 
> > > > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function
> > > failed:
> > > 
> > > > > >> > > > waf_preconfigure
> > > 
> > > > > >> > > > ERROR: Logfile of failure stored in:
> > > 
> > > > > >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-
> > > linux-
> > > 
> > > > > >> > > > gnueabi/libtalloc/2.1.10-
> > > r0/temp/log.do_configure.52699
> > > 
> > > > > >> > > > ERROR: Task
> > > 
> > > > > >> > > > (/OE/master/sources/meta-openembedded/meta-
> > > networking/recipes-
> > > 
> > > > > >> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > 
> > > > > >> > > > failed with exit code '1'
> > > 
> > > > > >> > > > --
> > > 
> > > > > >> > > > _______________________________________________
> > > 
> > > > > >> > > > Openembedded-devel mailing list
> > > 
> > > > > >> > > > Openembedded-devel@lists.openembedded.org
> > > 
> > > > > >> > > > http://lists.openembedded.org/mailman/listinfo/opene
> > > mbedded-devel
> > > 
> > > > > >> > > >
> > > 
> > > > > >> >
> > > 
> > > > > > --
> > > 
> > > > > > _______________________________________________
> > > 
> > > > > > Openembedded-devel mailing list
> > > 
> > > > > > Openembedded-devel@lists.openembedded.org
> > > 
> > > > > > http://lists.openembedded.org/mailman/listinfo/openembedded
> > > -devel
> > > 
> > > > >
> > > 
> > > > --
> > > 
> > > > _______________________________________________
> > > 
> > > > Openembedded-devel mailing list
> > > 
> > > > Openembedded-devel@lists.openembedded.org
> > > 
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-dev
> > > el
> > > 
> > > --
> > > 
> > > _______________________________________________
> > > 
> > > Openembedded-devel mailing list
> > > 
> > > Openembedded-devel@lists.openembedded.org
> > > 
> > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > > 
From mkelly@xevo.com  Fri Feb 16 20:25:01 2018
Return-Path: <mkelly@xevo.com>
X-Original-To: openembedded-devel@lists.openembedded.org
Delivered-To: openembedded-devel@lists.openembedded.org
X-Greylist: delayed 1139 seconds by postgrey-1.34 at layers.openembedded.org;
	Fri, 16 Feb 2018 20:25:00 UTC
Received: from NAM02-SN1-obe.outbound.protection.outlook.com
	(mail-sn1nam02on0067.outbound.protection.outlook.com [104.47.36.67])
	by mail.openembedded.org (Postfix) with ESMTP id 484C678441
	for <openembedded-devel@lists.openembedded.org>;
	Fri, 16 Feb 2018 20:25:00 +0000 (UTC)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
	d=uievolution.onmicrosoft.com; s=selector1-xevo-com;
	h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
	bh=lrYIuL3baP6AGoMyC+bmxwBN0a+aqGStdXnpjYi1bpw=;
	b=n5KcSxtGOrtsXRAcVu1UHD8RdUwa1Ec9Dq3GL8hWCMb1QXk6w/gDVeA1+wplpT9su/yQeP2+nwvk/hqamlFEGzor2SVEF5zjrERHZpRAZdHQo7QFz7zOu1evYtRws9wg45C6mizYXCGAgcd2K+o4rkkU45Iq15CRLR7ees29INA=
Authentication-Results: spf=none (sender IP is )
	smtp.mailfrom=mkelly@xevo.com; 
Received: from [10.201.1.39] (65.122.179.226) by
	BN6PR0101MB2932.prod.exchangelabs.com (10.174.87.141) with Microsoft
	SMTP Server (version=TLS1_2,
	cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id
	15.20.485.10; Fri, 16 Feb 2018 19:51:48 +0000
To: Joshua Watt <jpewhacker@gmail.com>,
	openembedded-devel@lists.openembedded.org
References: <20180211215129.9564-1-JPEWhacker@gmail.com>
From: Martin Kelly <mkelly@xevo.com>
Message-ID: <fb6228f3-5aa3-3dbd-963f-7f21c8e36279@xevo.com>
Date: Fri, 16 Feb 2018 11:51:41 -0800
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101
	Thunderbird/52.6.0
MIME-Version: 1.0
In-Reply-To: <20180211215129.9564-1-JPEWhacker@gmail.com>
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Language: en-US
Content-Transfer-Encoding: 7bit
X-Originating-IP: [65.122.179.226]
X-ClientProxiedBy: CY4PR13CA0035.namprd13.prod.outlook.com (10.173.156.149) To
	BN6PR0101MB2932.prod.exchangelabs.com (10.174.87.141)
X-MS-PublicTrafficType: Email
X-MS-Office365-Filtering-Correlation-Id: 771dab19-b244-4425-e304-08d57576b793
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0;
	RULEID:(7020095)(4652020)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603307)(7153060)(7193020);
	SRVR:BN6PR0101MB2932; 
X-Microsoft-Exchange-Diagnostics: 1; BN6PR0101MB2932;
	3:9RMCoH3n1NNbAByMB0blHnyaV3+WWe2tztgzmqNCR6/C5g5oUG0iMzTdJoJIfYHxZPlW5nHOkZ/Wr42NpUU8+ys/wSYQ1/oqQXl6imWZjmhnLhXuBcSX9GISLSFO78SwGsBWk3YIuLUv36jIoz5qHDE3WVIMtiMllHiri+25O/lrAnn/D23bwD3LTdjpI0M/9KVrFbp0GqrEBxN7lrIQNgkG4oV/dmWLZj5PF7Ut5dPcXVqCfHDPJqAm64hjOkga;
	25:pkCVQT6RZAKozo15aeOvI/a6VMghquyA2JMN8iyzMNFjO5tExi7kOmlL4Wsnv4NrRZbt95el2lpYRDnzrh71xhQ0yMm3inpmewmLrb/iSpucYPJ5Doxn4fVbk3EWle+dY9MnaxrGF2gkL+LmkY9xyq4LWoPJKsCHhrNfVFXRf+6uxw31ti2jqabS7s6huQY4TSYyUqGvw2kA6DXa1wkM9yyPKelFJP2C6n7UiH61RDglopwfBWBp079Iecly5a+Ep9z3/2SgqYVjh9s6I5BWFbXpGdOSfagckKWrqngT8cyJ+Z6xdg9yoR7HxcAcJgxj9u87FVUIgDnRvJBjtVF39w==;
	31:MNu7dMWSpmcbw5T1WbGD0gmb2w088NjdAmI/o6Bt1OI68QPA1Q5xLXjjz33JjINUEdsJCc4dn9jYHjMHuIz4k6wmO8b5+ZbNYk0ctshSsl4kNq8ZMkIZ679jGn8inkYcMoKCEcvRvJSE3s2FWczHFToMie6yntgFJHoqeZ+mxxpYM7yKeMOnbtXvph5A6+LOx9EuVng2txgsuUcOZAVnkP8FN8qYEa5UQ3ryo+URBfQ=
X-MS-TrafficTypeDiagnostic: BN6PR0101MB2932:
X-Microsoft-Exchange-Diagnostics: 1; BN6PR0101MB2932;
	20:zABbYl+fgIrl/k7gjPpR5Bb2qvVTiWX/50u9iDJt7VZUt+eoF1cLg+Nl1DTHN1KeF6gsmops76kC6CGqSq+BQdTWrHCvgOq41edohWZaGFxlL6UebmIfE8PCNdZmSuiEPtBN8AesIpQNK9hve6DBwttHQv5H0ZglIbEBb6d4Ctt/hqz0gDYr+eZSu87hciPNqdUsW/zKzN4uhgDz4MDn7+UWK66C2/nu0YPH0sDM/0dw68upliA02/zAuuz2GFuv0zERLu7TIaurhm5P1wCKK0ou8GkqCxXyAolPzTcW4ue+UB3ZIcO2oDqIbQnGinTbuBS2GXNXL0g3t1Ic/QG6D2pXvcgAste78YreysUlL9I4glzUFT35l3Vj3j6cWCPtp2cNOZdevCS6NM5yfn9TOvVCTRVmU0JrnUqZKkBUoPo=;
	4:tV4MgVVomyfP1DbhnaaRyDDbnHKsHgfRNnXKP9AGHvITIcpK6W4b8O3O1lbf/cbmBlAPNaZmT9na9J/wHKLRNpDHHZeh3QBZk8Z/qHCITjeoXwocmajqogIsRi3m9oWMGs00DheThCZNAQYSUOa8V98wfu+lsMh6+TXftfcVSbWckdynOjADuaqWlD7eEbdLl+ZQfYCxWq8cIcua3IBr35sIzPjx2uDCL3SXexGPqHk5vw0Ft1bBiSde5v/UJa1DY4Ct8G0YZeVrCBt0OvpEmKS+hqS2t8Xbm8eRhpYVDTBiW/KCczKnJwlIi9fcvtmO
X-Microsoft-Antispam-PRVS: <BN6PR0101MB2932CAF0FD2FEC8A114BA963ABCB0@BN6PR0101MB2932.prod.exchangelabs.com>
X-Exchange-Antispam-Report-Test: UriScan:(85827821059158);
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
	RULEID:(6040501)(2401047)(8121501046)(5005006)(3231101)(944501161)(3002001)(93006095)(93001095)(10201501046)(6041288)(20161123562045)(20161123558120)(20161123560045)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);
	SRVR:BN6PR0101MB2932; BCL:0; PCL:0; RULEID:;
	SRVR:BN6PR0101MB2932; 
X-Forefront-PRVS: 0585417D7B
X-Forefront-Antispam-Report: SFV:NSPM;
	SFS:(10009020)(6049001)(39840400004)(376002)(346002)(366004)(396003)(39380400002)(199004)(189003)(6246003)(50466002)(23676004)(53546011)(52146003)(230700001)(316002)(53936002)(2486003)(16576012)(386003)(52116002)(6306002)(76176011)(83506002)(58126008)(81166006)(6116002)(3846002)(347745004)(66066001)(81156014)(77096007)(36756003)(966005)(47776003)(67846002)(64126003)(5660300001)(8676002)(26005)(31686004)(186003)(478600001)(8936002)(31696002)(305945005)(6666003)(2950100002)(7736002)(16526019)(39060400002)(106356001)(65956001)(345774005)(65806001)(25786009)(65826007)(4326008)(105586002)(2906002)(86362001)(16799955002)(68736007)(90366009)(97736004)(229853002)(6486002);
	DIR:OUT; SFP:1101; SCL:1; SRVR:BN6PR0101MB2932; H:[10.201.1.39];
	FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; 
Received-SPF: None (protection.outlook.com: xevo.com does not designate
	permitted sender hosts)
X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTjZQUjAxMDFNQjI5MzI7MjM6ME9VYzlleXEzWnl3a004SEM3ajZvNHZY?=
	=?utf-8?B?TzFFdXFyWjlvaFhXZGtLSGdLcUFUYXRIVzBJVSt6Ry9EbHl4d0FXbWpGaTRl?=
	=?utf-8?B?aUFQdWdDTGczb0ZidzNiTGFQM0xsZ0dEUll1T3dqbXFxWkpjd0ZDSkxqaGx5?=
	=?utf-8?B?dlBNNytDb3lOVkx0QVphdVM2ZzV0bmltU3dIa2VBaVdDSityZHkzTVM4Yit6?=
	=?utf-8?B?T1dmV1hlTE1GSVV4WU1LWkRRUjRlL3FxeTltekg2N3dmOE0wNHp5Tms4SmZq?=
	=?utf-8?B?NVpaRDBJSklEelJtVWZRdTRjL2QydWxncWo3R3pGRGUzaW54dUd5WlQ4S01r?=
	=?utf-8?B?K24rMHVYeHViazhDbnJYNENJL2xkbVVDVTBIMTYweFNFNE1TaGY4SUcvK2JT?=
	=?utf-8?B?cndsbXl5Q2xFMzA2bkp2U1Jnd25uNUZIb2IrWlRXVTZjazlwZHFMblI0cDds?=
	=?utf-8?B?ZkIrNDVjVzk4QkRGazErZFo3OEZtK1p4QUdGNjFHQmZVM2tUeFlSZXN2VlZp?=
	=?utf-8?B?SWdTQVRsczZTa0NvVDhyRWZDaytFdW52a0M2cWRLTjNHT2lGU0xLQk9RblFK?=
	=?utf-8?B?eDROb09iajZOdk1WR09VTEVSbXQzeEtPT1l4MW9qQmhvcllkZ1RxK25BbUZp?=
	=?utf-8?B?Q0drRTNxTExJVFVwdDJwNXNiTTZQczJ4MlhweVpZa2xLYWh5YXBSL0cxTEw0?=
	=?utf-8?B?WS9lcldpeGV5SEJDWEdLZjFlQWpaMDFJQ3lHaW5zZTNRNVNnWDMxdzZVZzU4?=
	=?utf-8?B?RGdXWGRieFljZEpKOUpXUjUvMEZ6dXR3RW1rYzBBeGNSdUlJSm9uYjBxTUdx?=
	=?utf-8?B?ODVlZFNHQlo3Q0d6eGNVaGZ4STJWUENVTDIyajkyNERvOVluSWFJakwxaWdr?=
	=?utf-8?B?NHp4V3d3S3BuTldyTk8yLzg0bHo2Q1JFblF2MVZobkx4MFRvQU83VitXT0xw?=
	=?utf-8?B?UmRlbDVtUGRGd0ZYQjZmS2tLSmRxaTM3SzZGWG8vcEJuYmFVK0tMTEE0Zitt?=
	=?utf-8?B?YWpZdlRCMXNFMm9xRjY3MndOVWo2RWZ5dzkxdkVyb1VNY0JaeEhJTkM3NVhC?=
	=?utf-8?B?UGRwSytUdHVvZ01nbjlWL0s0WU9Pbm5oTUVDNUtNSjcydCs5YzRxZUtMQ0pu?=
	=?utf-8?B?UkxVc242bWpWdjBoWHU4Q1gzM0Y4bm9MK2VxMzI3VklWMDQyd0pmcnBpVDZI?=
	=?utf-8?B?TVNJa0syc3JpZWZjZ0podWFrRmxrRHJ0dkMwei9zVzNlaS9yZjNjSFV4YStU?=
	=?utf-8?B?ekFNRXF3MWJDR2grVHJySE5KMlZvU05SbEFVZjgvWUxJY1BtZlVCTW5YRTdh?=
	=?utf-8?B?TlVaR2x5ZjhNSTR0eTFyQi9QeDNaTHdCVzgxOU1ESTlEc1ZLVEM5UzJWVlRP?=
	=?utf-8?B?RmhIOWYwdVNERVJxMW1zU2ZmMCtXbWYyK0N1YkgxUy9ab2kwcDRUck1nNTla?=
	=?utf-8?B?U0VqTlNmenJNc0paaWJJMTAyMnoxS01FOWlZSEtxSlMvSW1KY0MwM2JVWjBt?=
	=?utf-8?B?MzlKQm9RSkxBeWhwM2Y3T2tFaFlObkZqYVJtWHc0NXdWdDVsV3lkYncyMGd6?=
	=?utf-8?B?dzBTTDQ0U29pVXBNakNvcWlpL2RjZUg1akVnVDdNbmQxQWZFT0FQVzVkOHUx?=
	=?utf-8?B?MlYzclplY3pIWkh1UUE5VW90ZmVQUUlnU0I0R3hSajduUzJTaXFUK2c1N0R3?=
	=?utf-8?B?dzhwU2tnaGFJcDhhenBiMTJoMnN6cVhScTRrOE1tZkYxSWw3REFhWU5FK0R1?=
	=?utf-8?B?QTZHT0NxV1o3OUVwL2p0eHBNaXUwcEE5UHV4bGdvemJRek4zT1NGbkdLYU41?=
	=?utf-8?B?YVJSS29URzZhdE1jSllNY3F6VTBGZE9MbHlVYVVHdTZ4a1BMNTdYWnEzeXRB?=
	=?utf-8?B?Y1BYMVdnNEtRSk9PaVdtbUVlTTM5Y0dMODNtb3JyQXpEME5EMnZzVGpkandl?=
	=?utf-8?B?VURlWEVkQVN5T3k5M3o2KzBGRnQxd08ya1V4U3BRUlhPd3NpWWZaUnlQUldY?=
	=?utf-8?B?Mjg2WnIwelR2aGlUL2hLd1NNVE95ODVqQmc4QUhRWjA0c2lNTUVIekdGTmc1?=
	=?utf-8?Q?9frPbc=3D?=
X-Microsoft-Exchange-Diagnostics: 1; BN6PR0101MB2932;
	6:6qXpGNn+siTX0HXz2T04uudkX1T0RWlUw1xRRDYKNao3tO5ZZDUdKp5v6a073KBtfxGns8qstJ5VanqO1FuWajf2RIAUGBfpWNztSF1OYiJREsN20AvN+LlZhmkR8/iZy+gqefBaYNmPX+/AOhp0y3MB+HOUxMJIrPewUJxUhhkcEZ9xfaaFUJCaTHopAC9TE3ZfkBeUMA9HZ0B0MaYWjg7E2s4usOO19PBRSsp8GBvNO5vGtnrnVXky1NbQjuu5E7BRKYo1PnOE42q19/SoNINkaMqiOszWQ+MzD6T4LdikUa6DM4UlvP8SzMu07sS48pm/etR7qc9RViWzqm5uXZR1+xBvItAoDZvPaSzYD4o=;
	5:ZkOTg/Z0EtXDXR6vHgzcGxbgkceK/xtREYVU/SHe+D9nMCbg+xKOeee0yinelAPkK3zt7Hc67O82NjqsaCcPcbckSO6Li+yoT1MBDGF7QCNU2wMA8X1Eznn/aE/2McKMcZEr7uKLkxPaT8VKcAwBAgYk112+OFJ/D6NEELG5WIw=;
	24:wsJA3zhJeYI8L5xIh6qIp0uii9/thBGMg97+oPbbt8/sxSgLPrS0qeFVsO5Uhjtj+8qm8+KH1E45JIbk+Akel/i69a6geX+7Dfpb0llwr5w=;
	7:PiEF9JHCxQotzOAVamhfvM8C5ckxoSjAQ7rmEPVZbZjaTxxWbR23vnOsjFWW/1iKMgdgknK4wcNj2wJ0rTAVf3nBkvn+tevi230Fy7vFP9ef/NlfQrTin9m6kKsdO4QhL4SD7lv3XatrpTTNuRGd1U9lgfbbxBtje2vPE511dyK/tX8ItJzbZKfG7/wtkLiWFdaBJXtyNmXEHylSAZbzlAkMHg9LwDWQJVlezDyWg91GoTIJpqFIMzmOh7lMAEgO
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-OriginatorOrg: xevo.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Feb 2018 19:51:48.4150 (UTC)
X-MS-Exchange-CrossTenant-Network-Message-Id: 771dab19-b244-4425-e304-08d57576b793
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-CrossTenant-Id: e0a7ca1f-2458-4cd6-a7c7-d733c07495ab
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR0101MB2932
Cc: Stefan Agner <stefan.agner@toradex.com>
Subject: Re: [oe] [meta-networking][PATCH] waf-samba.bbclass: No longer
 inherit waf.bbclass
X-BeenThere: openembedded-devel@lists.openembedded.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Using the OpenEmbedded metadata to build Distributions
	<openembedded-devel.lists.openembedded.org>
List-Unsubscribe: <http://lists.openembedded.org/mailman/options/openembedded-devel>,
	<mailto:openembedded-devel-request@lists.openembedded.org?subject=unsubscribe>
List-Archive: <http://lists.openembedded.org/pipermail/openembedded-devel/>
List-Post: <mailto:openembedded-devel@lists.openembedded.org>
List-Help: <mailto:openembedded-devel-request@lists.openembedded.org?subject=help>
List-Subscribe: <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>,
	<mailto:openembedded-devel-request@lists.openembedded.org?subject=subscribe>
X-List-Received-Date: Fri, 16 Feb 2018 20:25:01 -0000

On 02/11/2018 01:51 PM, Joshua Watt wrote:
> waf-samba.bbclass uses waf in a very different way than the "standard"
> method that waf.bbclass targets and ends getting very little useful
> functionality from that class.
> 
> Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
> ---
>   meta-networking/classes/waf-samba.bbclass | 29 +++++++++++++++++++++++++++--
>   1 file changed, 27 insertions(+), 2 deletions(-)
> 
> diff --git a/meta-networking/classes/waf-samba.bbclass b/meta-networking/classes/waf-samba.bbclass
> index e49017624..4b1499fd4 100644
> --- a/meta-networking/classes/waf-samba.bbclass
> +++ b/meta-networking/classes/waf-samba.bbclass
> @@ -1,7 +1,7 @@
>   # waf is a build system which is used by samba related project.
>   # Obtain details from https://wiki.samba.org/index.php/Waf
> -#
> -inherit qemu pythonnative waf
> +#
> +inherit qemu pythonnative
>   
>   DEPENDS += "qemu-native libxslt-native docbook-xsl-stylesheets-native python"
>   
> @@ -21,6 +21,31 @@ CONFIGUREOPTS = " --prefix=${prefix} \
>                     ${PACKAGECONFIG_CONFARGS} \
>                   "
>   
> +# avoids build breaks when using no-static-libs.inc
> +DISABLE_STATIC = ""
> +
> +def get_waf_parallel_make(d):
> +    pm = d.getVar('PARALLEL_MAKE')
> +    if pm:
> +        # look for '-j' and throw other options (e.g. '-l') away
> +        # because they might have different meaning in bjam
> +        pm = pm.split()
> +        while pm:
> +            v = None
> +            opt = pm.pop(0)
> +            if opt == '-j':
> +                v = pm.pop(0)
> +            elif opt.startswith('-j'):
> +                v = opt[2:].strip()
> +            else:
> +                v = None
> +
> +            if v:
> +                v = min(64, int(v))
> +                return '-j' + str(v)
> +
> +    return ""
> +
>   # Three methods for waf cross compile:
>   # 1. answers:
>   #    Only --cross-answers - try the cross-answers file, and if
> 

Though I am not a waf expert and cannot vouch for that part of the 
patch, this patch fixes a build error I'm seeing after the removal of 
get_waf_parallel_make from waf.bbclass, so thank you for that!


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-16 20:18                     ` Joshua Watt
@ 2018-02-16 20:55                       ` Martin Jansa
  2018-02-16 21:00                         ` Joshua Watt
  0 siblings, 1 reply; 28+ messages in thread
From: Martin Jansa @ 2018-02-16 20:55 UTC (permalink / raw)
  To: Joshua Watt; +Cc: openembedded-devel

Don't you want to update that one to use the new function from utils
instead of re-introducing get_waf_parallel_make?

On Fri, Feb 16, 2018 at 9:18 PM, Joshua Watt <jpewhacker@gmail.com> wrote:

> On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
>
> And now it will fail to parse as well:
>
> http://git.openembedded.org/openembedded-core/commit/?id=
> ccd1142d22b31ed85d8823b1bc9e11ccfd72b61f
>
> removed get_waf_parallel_make from waf.bbclass, so now all
> waf-samba.bbclass users will fail to parse with:
>
>
> http://lists.openembedded.org/pipermail/openembedded-devel/
> 2018-February/116701.html will fix that as well.... We probably need to
> speed along that getting merged.
> Armin can you help with that?
>
> This patch should resolve all of the waf issues that have been discussed
> here, with exception of the one improvement proposed by Denys. While it
> should probably be improved, I don't beleive it actually affects any
> recipes (some please give me an example if I am wrong).
>
> Sorry for the churn. Hopefull this will be better in the future since waf
> and samba-waf are no longer tied together.
>
> Joshua Watt
>
>
> bb.data_smart.ExpansionError: Failure expanding variable do_compile,
> expression was
>     python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
>  which triggered exception NameError: name 'get_waf_parallel_make' is not
> defined
>
> On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail.com>
> wrote:
>
> Check this thread:
> http://lists.openembedded.org/pipermail/openembedded-commits
> /2018-January/218460.html
>
> but my patch wasn't merged:
> http://lists.openembedded.org/pipermail/openembedded-core/20
> 18-January/146974.html
> only the one from Joshua.
>
> The original issue is still in rocko as well, the backported waf change
> doesn't work and causes useless warning.
>
> Either the "waf.bbclass: explicitly pass bindir and libdir if supported"
> should be reverted in rocko or all fixes for this should be backported to
> rocko once they are all in oe-core and meta-oe master.
>
> Regards,
>
> On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix.org>
> wrote:
>
> On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
> > On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org> wrote:
> >
> > On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> > > On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis@denix.org>
> > wrote:
> > > > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling wrote:
> > > >> Then why did ‘sudo dnf install waf’ get me past the error above? And
> > why
> > > >> does Fedora have a package for it?
> > > >>
> > > >> https://src.fedoraproject.org/rpms/waf
> > > >>
> > > >> Regardless, something broke.
> > > >
> > > > I thought so too. As waf.bbclass from oe-core looks for waf binary in
> > the root
> > > > of the source package, I looked inside libtalloc 2.1.9 and 2.1.10 and
> > neither
> > > > of them have any "waf" files at the root. How was it working before?
> > What
> > > > broke?
> > >
> > > its using waf-samba.bbclass, there is a patch floating for that
> > > https://patchwork.openembedded.org/patch/148046/
> >
> > So, it will fix libtalloc, but some other packages that still use
> > waf.bbclass
> > will keep on failing with an exception?
> >
> >
> > They shouldn't. I tested all the ones I could find. The way waf-samba
> uses
> > waf is more of the exception than the rule.... Most projects will follow
> > the waf.bbclass pattern of a wscript and waf in $S, but we can probably
> > parameterize it if necessary.
> >
> > Do you know of a specific recipe that fails?
>
> No, but as Andre said here earlier, it should be more forgiving when
> ${S}/waf
> is not available or at least give a proper error message instead of
> dumping a
> cryptic exception stack...
>
> In other words, before this waf.bbclass change in oe-core it was handling
> such
> situation just fine and there was a warning "Unable to execute waf
> --version,
> exit code 127". Now it never reaches that code and just throws an
> exception.
>
>
> > > >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacker@gmail.com>
> > wrote:
> > > >>
> > > >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > > >> > > Seeing the same and trying to figure it out. Also, seems there
> is
> > no
> > > >> > > recipe
> > > >> > > for waf-native, so it becomes a new required host tool.
> > > >> >
> > > >> > There is no "waf" tool, so a "waf-native" tool doesn't make
> sense...
> > > >> > it's not how waf works. Each project has their own copy of the waf
> > > >> > program, it's not something the host has to provide.
> > > >> >
> > > >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko <
> denis@denix.org>
> > > >> > > wrote:
> > > >> > >
> > > >> > > > Hi,
> > > >> > > >
> > > >> > > > I'm getting below stack dump building libtalloc 2.1.10 in
> master.
> > > >> > > > Works
> > > >> > > > fine in
> > > >> > > > rocko with libtalloc 2.1.9. I need it for cifs-utils. I'm not
> > > >> > > > familiar with
> > > >> > > > waf, any help? Thanks.
> > > >> > > >
> > > >> > > >
> > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error executing a
> python
> > > >> > > > function
> > > >> > > > in exec_python_func() autogenerated:
> > > >> > > >
> > > >> > > > The stack trace of python calls that resulted in this
> > > >> > > > exception/failure
> > > >> > > > was:
> > > >> > > > File: 'exec_python_func() autogenerated', lineno: 2, function:
> > > >> > > > <module>
> > > >> > > >      0001:
> > > >> > > >  *** 0002:waf_preconfigure(d)
> > > >> > > >      0003:
> > > >> > > > File: '/OE/master/sources/oe-core/meta/classes/waf.bbclass',
> > > >> > > > lineno: 34,
> > > >> > > > function: waf_preconfigure
> > > >> > > >      0030:    from distutils.version import StrictVersion
> > > >> > > >      0031:    subsrcdir = d.getVar('S')
> > > >> > > >      0032:    wafbin = os.path.join(subsrcdir, 'waf')
> > > >> > > >      0033:    try:
> > > >> > > >  *** 0034:        result = subprocess.check_output([wafbin, '
> > > >> > > > --version'],
> > > >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > > >> > > >      0035:        version = result.decode('utf-8').split()[1]
> > > >> > > >      0036:        if StrictVersion(version) >=
> > > >> > > > StrictVersion("1.8.7"):
> > > >> > > >      0037:            d.setVar("WAF_EXTRA_CONF", "
> > > >> > > > --bindir=${bindir}
> > > >> > > > --libdir=${libdir}")
> > > >> > > >      0038:    except subprocess.CalledProcessError as e:
> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 626,
> function:
> > > >> > > > check_output
> > > >> > > >      0622:        # empty string. That is maintained here for
> > > >> > > > backwards
> > > >> > > > compatibility.
> > > >> > > >      0623:        kwargs['input'] = '' if
> > > >> > > > kwargs.get('universal_newlines',
> > > >> > > > False) else b''
> > > >> > > >      0624:
> > > >> > > >      0625:    return run(*popenargs, stdout=PIPE,
> > timeout=timeout,
> > > >> > > > check=True,
> > > >> > > >  *** 0626:               **kwargs).stdout
> > > >> > > >      0627:
> > > >> > > >      0628:
> > > >> > > >      0629:class CompletedProcess(object):
> > > >> > > >      0630:    """A process that has finished running.
> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 693,
> function:
> > > >> > > > run
> > > >> > > >      0689:        if 'stdin' in kwargs:
> > > >> > > >      0690:            raise ValueError('stdin and input
> arguments
> > > >> > > > may not
> > > >> > > > both be used.')
> > > >> > > >      0691:        kwargs['stdin'] = PIPE
> > > >> > > >      0692:
> > > >> > > >  *** 0693:    with Popen(*popenargs, **kwargs) as process:
> > > >> > > >      0694:        try:
> > > >> > > >      0695:            stdout, stderr =
> process.communicate(input,
> > > >> > > > timeout=timeout)
> > > >> > > >      0696:        except TimeoutExpired:
> > > >> > > >      0697:            process.kill()
> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 947,
> function:
> > > >> > > > __init__
> > > >> > > >      0943:                                startupinfo,
> > > >> > > > creationflags,
> > > >> > > > shell,
> > > >> > > >      0944:                                p2cread, p2cwrite,
> > > >> > > >      0945:                                c2pread, c2pwrite,
> > > >> > > >      0946:                                errread, errwrite,
> > > >> > > >  *** 0947:                                restore_signals,
> > > >> > > > start_new_session)
> > > >> > > >      0948:        except:
> > > >> > > >      0949:            # Cleanup if the child failed starting.
> > > >> > > >      0950:            for f in filter(None, (self.stdin,
> > > >> > > > self.stdout,
> > > >> > > > self.stderr)):
> > > >> > > >      0951:                try:
> > > >> > > > File: '/usr/lib/python3.5/subprocess.py', lineno: 1551,
> function:
> > > >> > > > _execute_child
> > > >> > > >      1547:                                # The error must be
> > from
> > > >> > > > chdir(cwd).
> > > >> > > >      1548:                                err_msg += ': ' +
> > > >> > > > repr(cwd)
> > > >> > > >      1549:                            else:
> > > >> > > >      1550:                                err_msg += ': ' +
> > > >> > > > repr(orig_executable)
> > > >> > > >  *** 1551:                    raise
> child_exception_type(errno_
> > num,
> > > >> > > > err_msg)
> > > >> > > >      1552:                raise child_exception_type(err_msg)
> > > >> > > >      1553:
> > > >> > > >      1554:
> > > >> > > >      1555:        def _handle_exitstatus(self, sts,
> > > >> > > > _WIFSIGNALED=os.WIFSIGNALED,
> > > >> > > > Exception: FileNotFoundError: [Errno 2] No such file or
> > directory:
> > > >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > > >> > > >
> > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Function failed:
> > > >> > > > waf_preconfigure
> > > >> > > > ERROR: Logfile of failure stored in:
> > > >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-oe-linux-
> > > >> > > > gnueabi/libtalloc/2.1.10-r0/temp/log.do_configure.52699
> > > >> > > > ERROR: Task
> > > >> > > > (/OE/master/sources/meta-openembedded/meta-networking/recipe
> s-
> > > >> > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > >> > > > failed with exit code '1'
> > > >> > > > --
> > > >> > > > _______________________________________________
> > > >> > > > Openembedded-devel mailing list
> > > >> > > > Openembedded-devel@lists.openembedded.org
> > > >> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-
> devel
> > > >> > > >
> > > >> >
> > > > --
> > > > _______________________________________________
> > > > Openembedded-devel mailing list
> > > > Openembedded-devel@lists.openembedded.org
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > >
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>
>
>
>


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-16 20:55                       ` Martin Jansa
@ 2018-02-16 21:00                         ` Joshua Watt
  2018-02-16 22:18                           ` Tim Orling
  0 siblings, 1 reply; 28+ messages in thread
From: Joshua Watt @ 2018-02-16 21:00 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembedded-devel

On Fri, 2018-02-16 at 21:55 +0100, Martin Jansa wrote:
> Don't you want to update that one to use the new function from utils
> instead of re-introducing get_waf_parallel_make?

.... yes. I guess I can do that now. It didn't exist when I wrote the
first version of this patch
> On Fri, Feb 16, 2018 at 9:18 PM, Joshua Watt <jpewhacker@gmail.com>
> wrote:
> > On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
> > > And now it will fail to parse as well:
> > > http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d
> > > 22b31ed85d8823b1bc9e11ccfd72b61f
> > > 
> > > removed get_waf_parallel_make from waf.bbclass, so now all waf-
> > > samba.bbclass users will fail to parse with:
> > 
> > http://lists.openembedded.org/pipermail/openembedded-devel/2018-Feb
> > ruary/116701.html will fix that as well.... We probably need to
> > speed along that getting merged.
> > Armin can you help with that? 
> > 
> > This patch should resolve all of the waf issues that have been
> > discussed here, with exception of the one improvement proposed by
> > Denys. While it should probably be improved, I don't beleive it
> > actually affects any recipes (some please give me an example if I
> > am wrong).
> > 
> > Sorry for the churn. Hopefull this will be better in the future
> > since waf and samba-waf are no longer tied together.
> > 
> > Joshua Watt
> > > bb.data_smart.ExpansionError: Failure expanding variable
> > > do_compile, expression was  
> > >     python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
> > >  which triggered exception NameError: name
> > > 'get_waf_parallel_make' is not defined
> > > On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail
> > > .com> wrote:
> > > > Check this thread:
> > > > http://lists.openembedded.org/pipermail/openembedded-commits/20
> > > > 18-January/218460.html
> > > > 
> > > > but my patch wasn't merged:
> > > > http://lists.openembedded.org/pipermail/openembedded-core/2018-
> > > > January/146974.html
> > > > only the one from Joshua.
> > > > 
> > > > 
> > > > The original issue is still in rocko as well, the backported
> > > > waf change doesn't work and causes useless warning.
> > > > 
> > > > Either the "waf.bbclass: explicitly pass bindir and libdir if
> > > > supported" should be reverted in rocko or all fixes for this
> > > > should be backported to rocko once they are all in oe-core and
> > > > meta-oe master.
> > > > 
> > > > Regards,
> > > > 
> > > > On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix
> > > > .org> wrote:
> > > > > On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
> > > > > 
> > > > > > On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org
> > > > > > wrote:
> > > > > 
> > > > > >
> > > > > 
> > > > > > On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> > > > > 
> > > > > > > On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis
> > > > > @denix.org>
> > > > > 
> > > > > > wrote:
> > > > > 
> > > > > > > > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling
> > > > > wrote:
> > > > > 
> > > > > > > >> Then why did ‘sudo dnf install waf’ get me past the
> > > > > error above? And
> > > > > 
> > > > > > why
> > > > > 
> > > > > > > >> does Fedora have a package for it?
> > > > > 
> > > > > > > >>
> > > > > 
> > > > > > > >> https://src.fedoraproject.org/rpms/waf
> > > > > 
> > > > > > > >>
> > > > > 
> > > > > > > >> Regardless, something broke.
> > > > > 
> > > > > > > >
> > > > > 
> > > > > > > > I thought so too. As waf.bbclass from oe-core looks for
> > > > > waf binary in
> > > > > 
> > > > > > the root
> > > > > 
> > > > > > > > of the source package, I looked inside libtalloc 2.1.9
> > > > > and 2.1.10 and
> > > > > 
> > > > > > neither
> > > > > 
> > > > > > > > of them have any "waf" files at the root. How was it
> > > > > working before?
> > > > > 
> > > > > > What
> > > > > 
> > > > > > > > broke?
> > > > > 
> > > > > > >
> > > > > 
> > > > > > > its using waf-samba.bbclass, there is a patch floating
> > > > > for that
> > > > > 
> > > > > > > https://patchwork.openembedded.org/patch/148046/
> > > > > 
> > > > > >
> > > > > 
> > > > > > So, it will fix libtalloc, but some other packages that
> > > > > still use
> > > > > 
> > > > > > waf.bbclass
> > > > > 
> > > > > > will keep on failing with an exception?
> > > > > 
> > > > > >
> > > > > 
> > > > > >
> > > > > 
> > > > > > They shouldn't. I tested all the ones I could find. The way
> > > > > waf-samba uses
> > > > > 
> > > > > > waf is more of the exception than the rule.... Most
> > > > > projects will follow
> > > > > 
> > > > > > the waf.bbclass pattern of a wscript and waf in $S, but we
> > > > > can probably
> > > > > 
> > > > > > parameterize it if necessary.
> > > > > 
> > > > > >
> > > > > 
> > > > > > Do you know of a specific recipe that fails?
> > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > No, but as Andre said here earlier, it should be more
> > > > > forgiving when ${S}/waf
> > > > > 
> > > > > is not available or at least give a proper error message
> > > > > instead of dumping a
> > > > > 
> > > > > cryptic exception stack...
> > > > > 
> > > > > 
> > > > > 
> > > > > In other words, before this waf.bbclass change in oe-core it
> > > > > was handling such
> > > > > 
> > > > > situation just fine and there was a warning "Unable to
> > > > > execute waf --version,
> > > > > 
> > > > > exit code 127". Now it never reaches that code and just
> > > > > throws an exception.
> > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > 
> > > > > > > >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacke
> > > > > r@gmail.com>
> > > > > 
> > > > > > wrote:
> > > > > 
> > > > > > > >>
> > > > > 
> > > > > > > >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > > > > 
> > > > > > > >> > > Seeing the same and trying to figure it out. Also,
> > > > > seems there is
> > > > > 
> > > > > > no
> > > > > 
> > > > > > > >> > > recipe
> > > > > 
> > > > > > > >> > > for waf-native, so it becomes a new required host
> > > > > tool.
> > > > > 
> > > > > > > >> >
> > > > > 
> > > > > > > >> > There is no "waf" tool, so a "waf-native" tool
> > > > > doesn't make sense...
> > > > > 
> > > > > > > >> > it's not how waf works. Each project has their own
> > > > > copy of the waf
> > > > > 
> > > > > > > >> > program, it's not something the host has to provide.
> > > > > 
> > > > > > > >> >
> > > > > 
> > > > > > > >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko
> > > > > <denis@denix.org>
> > > > > 
> > > > > > > >> > > wrote:
> > > > > 
> > > > > > > >> > >
> > > > > 
> > > > > > > >> > > > Hi,
> > > > > 
> > > > > > > >> > > >
> > > > > 
> > > > > > > >> > > > I'm getting below stack dump building libtalloc
> > > > > 2.1.10 in master.
> > > > > 
> > > > > > > >> > > > Works
> > > > > 
> > > > > > > >> > > > fine in
> > > > > 
> > > > > > > >> > > > rocko with libtalloc 2.1.9. I need it for cifs-
> > > > > utils. I'm not
> > > > > 
> > > > > > > >> > > > familiar with
> > > > > 
> > > > > > > >> > > > waf, any help? Thanks.
> > > > > 
> > > > > > > >> > > >
> > > > > 
> > > > > > > >> > > >
> > > > > 
> > > > > > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error
> > > > > executing a python
> > > > > 
> > > > > > > >> > > > function
> > > > > 
> > > > > > > >> > > > in exec_python_func() autogenerated:
> > > > > 
> > > > > > > >> > > >
> > > > > 
> > > > > > > >> > > > The stack trace of python calls that resulted in
> > > > > this
> > > > > 
> > > > > > > >> > > > exception/failure
> > > > > 
> > > > > > > >> > > > was:
> > > > > 
> > > > > > > >> > > > File: 'exec_python_func() autogenerated',
> > > > > lineno: 2, function:
> > > > > 
> > > > > > > >> > > > <module>
> > > > > 
> > > > > > > >> > > >      0001:
> > > > > 
> > > > > > > >> > > >  *** 0002:waf_preconfigure(d)
> > > > > 
> > > > > > > >> > > >      0003:
> > > > > 
> > > > > > > >> > > > File: '/OE/master/sources/oe-
> > > > > core/meta/classes/waf.bbclass',
> > > > > 
> > > > > > > >> > > > lineno: 34,
> > > > > 
> > > > > > > >> > > > function: waf_preconfigure
> > > > > 
> > > > > > > >> > > >      0030:    from distutils.version import
> > > > > StrictVersion
> > > > > 
> > > > > > > >> > > >      0031:    subsrcdir = d.getVar('S')
> > > > > 
> > > > > > > >> > > >      0032:    wafbin = os.path.join(subsrcdir,
> > > > > 'waf')
> > > > > 
> > > > > > > >> > > >      0033:    try:
> > > > > 
> > > > > > > >> > > >  *** 0034:        result =
> > > > > subprocess.check_output([wafbin, '
> > > > > 
> > > > > > > >> > > > --version'],
> > > > > 
> > > > > > > >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > > > > 
> > > > > > > >> > > >      0035:        version = result.decode('utf-
> > > > > 8').split()[1]
> > > > > 
> > > > > > > >> > > >      0036:        if StrictVersion(version) >=
> > > > > 
> > > > > > > >> > > > StrictVersion("1.8.7"):
> > > > > 
> > > > > > > >> > > >      0037:            d.setVar("WAF_EXTRA_CONF",
> > > > > "
> > > > > 
> > > > > > > >> > > > --bindir=${bindir}
> > > > > 
> > > > > > > >> > > > --libdir=${libdir}")
> > > > > 
> > > > > > > >> > > >      0038:    except
> > > > > subprocess.CalledProcessError as e:
> > > > > 
> > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > lineno: 626, function:
> > > > > 
> > > > > > > >> > > > check_output
> > > > > 
> > > > > > > >> > > >      0622:        # empty string. That is
> > > > > maintained here for
> > > > > 
> > > > > > > >> > > > backwards
> > > > > 
> > > > > > > >> > > > compatibility.
> > > > > 
> > > > > > > >> > > >      0623:        kwargs['input'] = '' if
> > > > > 
> > > > > > > >> > > > kwargs.get('universal_newlines',
> > > > > 
> > > > > > > >> > > > False) else b''
> > > > > 
> > > > > > > >> > > >      0624:
> > > > > 
> > > > > > > >> > > >      0625:    return run(*popenargs,
> > > > > stdout=PIPE,
> > > > > 
> > > > > > timeout=timeout,
> > > > > 
> > > > > > > >> > > > check=True,
> > > > > 
> > > > > > > >> > > >  *** 0626:               **kwargs).stdout
> > > > > 
> > > > > > > >> > > >      0627:
> > > > > 
> > > > > > > >> > > >      0628:
> > > > > 
> > > > > > > >> > > >      0629:class CompletedProcess(object):
> > > > > 
> > > > > > > >> > > >      0630:    """A process that has finished
> > > > > running.
> > > > > 
> > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > lineno: 693, function:
> > > > > 
> > > > > > > >> > > > run
> > > > > 
> > > > > > > >> > > >      0689:        if 'stdin' in kwargs:
> > > > > 
> > > > > > > >> > > >      0690:            raise ValueError('stdin
> > > > > and input arguments
> > > > > 
> > > > > > > >> > > > may not
> > > > > 
> > > > > > > >> > > > both be used.')
> > > > > 
> > > > > > > >> > > >      0691:        kwargs['stdin'] = PIPE
> > > > > 
> > > > > > > >> > > >      0692:
> > > > > 
> > > > > > > >> > > >  *** 0693:    with Popen(*popenargs, **kwargs)
> > > > > as process:
> > > > > 
> > > > > > > >> > > >      0694:        try:
> > > > > 
> > > > > > > >> > > >      0695:            stdout, stderr =
> > > > > process.communicate(input,
> > > > > 
> > > > > > > >> > > > timeout=timeout)
> > > > > 
> > > > > > > >> > > >      0696:        except TimeoutExpired:
> > > > > 
> > > > > > > >> > > >      0697:            process.kill()
> > > > > 
> > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > lineno: 947, function:
> > > > > 
> > > > > > > >> > > > __init__
> > > > > 
> > > > > > > >> > > >      0943:                               
> > > > > startupinfo,
> > > > > 
> > > > > > > >> > > > creationflags,
> > > > > 
> > > > > > > >> > > > shell,
> > > > > 
> > > > > > > >> > > >      0944:                               
> > > > > p2cread, p2cwrite,
> > > > > 
> > > > > > > >> > > >      0945:                               
> > > > > c2pread, c2pwrite,
> > > > > 
> > > > > > > >> > > >      0946:                               
> > > > > errread, errwrite,
> > > > > 
> > > > > > > >> > > >  *** 0947:                               
> > > > > restore_signals,
> > > > > 
> > > > > > > >> > > > start_new_session)
> > > > > 
> > > > > > > >> > > >      0948:        except:
> > > > > 
> > > > > > > >> > > >      0949:            # Cleanup if the child
> > > > > failed starting.
> > > > > 
> > > > > > > >> > > >      0950:            for f in filter(None,
> > > > > (self.stdin,
> > > > > 
> > > > > > > >> > > > self.stdout,
> > > > > 
> > > > > > > >> > > > self.stderr)):
> > > > > 
> > > > > > > >> > > >      0951:                try:
> > > > > 
> > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > lineno: 1551, function:
> > > > > 
> > > > > > > >> > > > _execute_child
> > > > > 
> > > > > > > >> > > >      1547:                                # The
> > > > > error must be
> > > > > 
> > > > > > from
> > > > > 
> > > > > > > >> > > > chdir(cwd).
> > > > > 
> > > > > > > >> > > >      1548:                               
> > > > > err_msg += ': ' +
> > > > > 
> > > > > > > >> > > > repr(cwd)
> > > > > 
> > > > > > > >> > > >      1549:                            else:
> > > > > 
> > > > > > > >> > > >      1550:                               
> > > > > err_msg += ': ' +
> > > > > 
> > > > > > > >> > > > repr(orig_executable)
> > > > > 
> > > > > > > >> > > >  *** 1551:                    raise
> > > > > child_exception_type(errno_
> > > > > 
> > > > > > num,
> > > > > 
> > > > > > > >> > > > err_msg)
> > > > > 
> > > > > > > >> > > >      1552:                raise
> > > > > child_exception_type(err_msg)
> > > > > 
> > > > > > > >> > > >      1553:
> > > > > 
> > > > > > > >> > > >      1554:
> > > > > 
> > > > > > > >> > > >      1555:        def _handle_exitstatus(self,
> > > > > sts,
> > > > > 
> > > > > > > >> > > > _WIFSIGNALED=os.WIFSIGNALED,
> > > > > 
> > > > > > > >> > > > Exception: FileNotFoundError: [Errno 2] No such
> > > > > file or
> > > > > 
> > > > > > directory:
> > > > > 
> > > > > > > >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-
> > > > > oe-linux-
> > > > > 
> > > > > > > >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > > > > 
> > > > > > > >> > > >
> > > > > 
> > > > > > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure:
> > > > > Function failed:
> > > > > 
> > > > > > > >> > > > waf_preconfigure
> > > > > 
> > > > > > > >> > > > ERROR: Logfile of failure stored in:
> > > > > 
> > > > > > > >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-
> > > > > oe-linux-
> > > > > 
> > > > > > > >> > > > gnueabi/libtalloc/2.1.10-
> > > > > r0/temp/log.do_configure.52699
> > > > > 
> > > > > > > >> > > > ERROR: Task
> > > > > 
> > > > > > > >> > > > (/OE/master/sources/meta-openembedded/meta-
> > > > > networking/recipes-
> > > > > 
> > > > > > > >> > > >
> > > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > > > 
> > > > > > > >> > > > failed with exit code '1'
> > > > > 
> > > > > > > >> > > > --
> > > > > 
> > > > > > > >> > > > _______________________________________________
> > > > > 
> > > > > > > >> > > > Openembedded-devel mailing list
> > > > > 
> > > > > > > >> > > > Openembedded-devel@lists.openembedded.org
> > > > > 
> > > > > > > >> > > > http://lists.openembedded.org/mailman/listinfo/o
> > > > > penembedded-devel
> > > > > 
> > > > > > > >> > > >
> > > > > 
> > > > > > > >> >
> > > > > 
> > > > > > > > --
> > > > > 
> > > > > > > > _______________________________________________
> > > > > 
> > > > > > > > Openembedded-devel mailing list
> > > > > 
> > > > > > > > Openembedded-devel@lists.openembedded.org
> > > > > 
> > > > > > > > http://lists.openembedded.org/mailman/listinfo/openembe
> > > > > dded-devel
> > > > > 
> > > > > > >
> > > > > 
> > > > > > --
> > > > > 
> > > > > > _______________________________________________
> > > > > 
> > > > > > Openembedded-devel mailing list
> > > > > 
> > > > > > Openembedded-devel@lists.openembedded.org
> > > > > 
> > > > > > http://lists.openembedded.org/mailman/listinfo/openembedded
> > > > > -devel
> > > > > 
> > > > > --
> > > > > 
> > > > > _______________________________________________
> > > > > 
> > > > > Openembedded-devel mailing list
> > > > > 
> > > > > Openembedded-devel@lists.openembedded.org
> > > > > 
> > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-d
> > > > > evel
> > > > > 
From gmills@linux.vnet.ibm.com  Fri Feb 16 21:14:08 2018
Return-Path: <gmills@linux.vnet.ibm.com>
X-Original-To: openembedded-devel@lists.openembedded.org
Delivered-To: openembedded-devel@lists.openembedded.org
X-Greylist: delayed 1936 seconds by postgrey-1.34 at layers.openembedded.org;
	Fri, 16 Feb 2018 21:14:07 UTC
Received: from mx0a-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com
	[148.163.158.5])
	by mail.openembedded.org (Postfix) with ESMTP id 16B666074F
	for <openembedded-devel@lists.openembedded.org>;
	Fri, 16 Feb 2018 21:14:07 +0000 (UTC)
Received: from pps.filterd (m0098419.ppops.net [127.0.0.1])
	by mx0b-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id
	w1GKcoWu085472 for <openembedded-devel@lists.openembedded.org>;
	Fri, 16 Feb 2018 15:41:53 -0500
Received: from e19.ny.us.ibm.com (e19.ny.us.ibm.com [129.33.205.209])
	by mx0b-001b2d01.pphosted.com with ESMTP id 2g642nd98t-1
	(version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT)
	for <openembedded-devel@lists.openembedded.org>;
	Fri, 16 Feb 2018 15:41:52 -0500
Received: from localhost
	by e19.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only!
	Violators will be prosecuted
	for <openembedded-devel@lists.openembedded.org> from
	<gmills@linux.vnet.ibm.com>; Fri, 16 Feb 2018 15:41:52 -0500
Received: from b01cxnp22036.gho.pok.ibm.com (9.57.198.26)
	by e19.ny.us.ibm.com (146.89.104.206) with IBM ESMTP SMTP Gateway:
	Authorized Use Only! Violators will be prosecuted; 
	Fri, 16 Feb 2018 15:41:50 -0500
Received: from b01ledav003.gho.pok.ibm.com (b01ledav003.gho.pok.ibm.com
	[9.57.199.108])
	by b01cxnp22036.gho.pok.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id
	w1GKfna358130474; Fri, 16 Feb 2018 20:41:49 GMT
Received: from b01ledav003.gho.pok.ibm.com (unknown [127.0.0.1])
	by IMSVA (Postfix) with ESMTP id 875C1B2056;
	Fri, 16 Feb 2018 15:38:11 -0500 (EST)
Received: from gfw162.aus.stglabs.ibm.com (unknown [9.3.62.92])
	by b01ledav003.gho.pok.ibm.com (Postfix) with ESMTP id 4CBAFB2046;
	Fri, 16 Feb 2018 15:38:11 -0500 (EST)
From: Gunnar Mills <gmills@linux.vnet.ibm.com>
To: openembedded-devel@lists.openembedded.org
Date: Fri, 16 Feb 2018 14:41:46 -0600
X-Mailer: git-send-email 2.7.2
X-TM-AS-GCONF: 00
x-cbid: 18021620-0056-0000-0000-0000041F6B35
X-IBM-SpamModules-Scores: 
X-IBM-SpamModules-Versions: BY=3.00008544; HX=3.00000241; KW=3.00000007;
	PH=3.00000004; SC=3.00000254; SDB=6.00990712; UDB=6.00503162;
	IPR=6.00770058; 
	MB=3.00019592; MTD=3.00000008; XFM=3.00000015; UTC=2018-02-16 20:41:50
X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused
x-cbparentid: 18021620-0057-0000-0000-000008616D32
Message-Id: <1518813706-3315-1-git-send-email-gmills@linux.vnet.ibm.com>
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, ,
	definitions=2018-02-16_07:, , signatures=0
X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0
	priorityscore=1501
	malwarescore=0 suspectscore=1 phishscore=0 bulkscore=0 spamscore=0
	clxscore=1011 lowpriorityscore=0 impostorscore=0 adultscore=2
	classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1709140000
	definitions=main-1802160241
Subject: [oe] [meta-oe][PATCH] nodejs: Add support for building on ppc64le
X-BeenThere: openembedded-devel@lists.openembedded.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Using the OpenEmbedded metadata to build Distributions
	<openembedded-devel.lists.openembedded.org>
List-Unsubscribe: <http://lists.openembedded.org/mailman/options/openembedded-devel>,
	<mailto:openembedded-devel-request@lists.openembedded.org?subject=unsubscribe>
List-Archive: <http://lists.openembedded.org/pipermail/openembedded-devel/>
List-Post: <mailto:openembedded-devel@lists.openembedded.org>
List-Help: <mailto:openembedded-devel-request@lists.openembedded.org?subject=help>
List-Subscribe: <http://lists.openembedded.org/mailman/listinfo/openembedded-devel>,
	<mailto:openembedded-devel-request@lists.openembedded.org?subject=subscribe>
X-List-Received-Date: Fri, 16 Feb 2018 21:14:08 -0000

ppc64le is a little-endian mode of ppc64.
Nodejs determines the endianness of the system and
since it already supports bi-endian ppc64, just pass
nodejs "ppc64" when the TARGET_ARCH is ppc64le.

Signed-off-by: Gunnar Mills <gmills@linux.vnet.ibm.com>
---
 meta-oe/recipes-devtools/nodejs/nodejs_8.9.0.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta-oe/recipes-devtools/nodejs/nodejs_8.9.0.bb b/meta-oe/recipes-devtools/nodejs/nodejs_8.9.0.bb
index 1cab6a4..3806aac 100644
--- a/meta-oe/recipes-devtools/nodejs/nodejs_8.9.0.bb
+++ b/meta-oe/recipes-devtools/nodejs/nodejs_8.9.0.bb
@@ -26,7 +26,7 @@ def map_nodejs_arch(a, d):
     if   re.match('i.86$', a): return 'ia32'
     elif re.match('x86_64$', a): return 'x64'
     elif re.match('aarch64$', a): return 'arm64'
-    elif re.match('powerpc64$', a): return 'ppc64'
+    elif re.match('(powerpc64|ppc64le)$', a): return 'ppc64'
     elif re.match('powerpc$', a): return 'ppc'
     return a
 
-- 
2.7.2



^ permalink raw reply related	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-16 21:00                         ` Joshua Watt
@ 2018-02-16 22:18                           ` Tim Orling
  2018-02-22  1:36                             ` Denys Dmytriyenko
  0 siblings, 1 reply; 28+ messages in thread
From: Tim Orling @ 2018-02-16 22:18 UTC (permalink / raw)
  To: Joshua Watt; +Cc: openembedded-devel

Expediting the fix is greatly appreciated.

Thank you!

--Tim

On Fri, Feb 16, 2018 at 1:00 PM, Joshua Watt <jpewhacker@gmail.com> wrote:

> On Fri, 2018-02-16 at 21:55 +0100, Martin Jansa wrote:
> > Don't you want to update that one to use the new function from utils
> > instead of re-introducing get_waf_parallel_make?
>
> .... yes. I guess I can do that now. It didn't exist when I wrote the
> first version of this patch
> > On Fri, Feb 16, 2018 at 9:18 PM, Joshua Watt <jpewhacker@gmail.com>
> > wrote:
> > > On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
> > > > And now it will fail to parse as well:
> > > > http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d
> > > > 22b31ed85d8823b1bc9e11ccfd72b61f
> > > >
> > > > removed get_waf_parallel_make from waf.bbclass, so now all waf-
> > > > samba.bbclass users will fail to parse with:
> > >
> > > http://lists.openembedded.org/pipermail/openembedded-devel/2018-Feb
> > > ruary/116701.html will fix that as well.... We probably need to
> > > speed along that getting merged.
> > > Armin can you help with that?
> > >
> > > This patch should resolve all of the waf issues that have been
> > > discussed here, with exception of the one improvement proposed by
> > > Denys. While it should probably be improved, I don't beleive it
> > > actually affects any recipes (some please give me an example if I
> > > am wrong).
> > >
> > > Sorry for the churn. Hopefull this will be better in the future
> > > since waf and samba-waf are no longer tied together.
> > >
> > > Joshua Watt
> > > > bb.data_smart.ExpansionError: Failure expanding variable
> > > > do_compile, expression was
> > > >     python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
> > > >  which triggered exception NameError: name
> > > > 'get_waf_parallel_make' is not defined
> > > > On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail
> > > > .com> wrote:
> > > > > Check this thread:
> > > > > http://lists.openembedded.org/pipermail/openembedded-commits/20
> > > > > 18-January/218460.html
> > > > >
> > > > > but my patch wasn't merged:
> > > > > http://lists.openembedded.org/pipermail/openembedded-core/2018-
> > > > > January/146974.html
> > > > > only the one from Joshua.
> > > > >
> > > > >
> > > > > The original issue is still in rocko as well, the backported
> > > > > waf change doesn't work and causes useless warning.
> > > > >
> > > > > Either the "waf.bbclass: explicitly pass bindir and libdir if
> > > > > supported" should be reverted in rocko or all fixes for this
> > > > > should be backported to rocko once they are all in oe-core and
> > > > > meta-oe master.
> > > > >
> > > > > Regards,
> > > > >
> > > > > On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix
> > > > > .org> wrote:
> > > > > > On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
> > > > > >
> > > > > > > On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org
> > > > > > > wrote:
> > > > > >
> > > > > > >
> > > > > >
> > > > > > > On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> > > > > >
> > > > > > > > On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis
> > > > > > @denix.org>
> > > > > >
> > > > > > > wrote:
> > > > > >
> > > > > > > > > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling
> > > > > > wrote:
> > > > > >
> > > > > > > > >> Then why did ‘sudo dnf install waf’ get me past the
> > > > > > error above? And
> > > > > >
> > > > > > > why
> > > > > >
> > > > > > > > >> does Fedora have a package for it?
> > > > > >
> > > > > > > > >>
> > > > > >
> > > > > > > > >> https://src.fedoraproject.org/rpms/waf
> > > > > >
> > > > > > > > >>
> > > > > >
> > > > > > > > >> Regardless, something broke.
> > > > > >
> > > > > > > > >
> > > > > >
> > > > > > > > > I thought so too. As waf.bbclass from oe-core looks for
> > > > > > waf binary in
> > > > > >
> > > > > > > the root
> > > > > >
> > > > > > > > > of the source package, I looked inside libtalloc 2.1.9
> > > > > > and 2.1.10 and
> > > > > >
> > > > > > > neither
> > > > > >
> > > > > > > > > of them have any "waf" files at the root. How was it
> > > > > > working before?
> > > > > >
> > > > > > > What
> > > > > >
> > > > > > > > > broke?
> > > > > >
> > > > > > > >
> > > > > >
> > > > > > > > its using waf-samba.bbclass, there is a patch floating
> > > > > > for that
> > > > > >
> > > > > > > > https://patchwork.openembedded.org/patch/148046/
> > > > > >
> > > > > > >
> > > > > >
> > > > > > > So, it will fix libtalloc, but some other packages that
> > > > > > still use
> > > > > >
> > > > > > > waf.bbclass
> > > > > >
> > > > > > > will keep on failing with an exception?
> > > > > >
> > > > > > >
> > > > > >
> > > > > > >
> > > > > >
> > > > > > > They shouldn't. I tested all the ones I could find. The way
> > > > > > waf-samba uses
> > > > > >
> > > > > > > waf is more of the exception than the rule.... Most
> > > > > > projects will follow
> > > > > >
> > > > > > > the waf.bbclass pattern of a wscript and waf in $S, but we
> > > > > > can probably
> > > > > >
> > > > > > > parameterize it if necessary.
> > > > > >
> > > > > > >
> > > > > >
> > > > > > > Do you know of a specific recipe that fails?
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > No, but as Andre said here earlier, it should be more
> > > > > > forgiving when ${S}/waf
> > > > > >
> > > > > > is not available or at least give a proper error message
> > > > > > instead of dumping a
> > > > > >
> > > > > > cryptic exception stack...
> > > > > >
> > > > > >
> > > > > >
> > > > > > In other words, before this waf.bbclass change in oe-core it
> > > > > > was handling such
> > > > > >
> > > > > > situation just fine and there was a warning "Unable to
> > > > > > execute waf --version,
> > > > > >
> > > > > > exit code 127". Now it never reaches that code and just
> > > > > > throws an exception.
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > > > >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacke
> > > > > > r@gmail.com>
> > > > > >
> > > > > > > wrote:
> > > > > >
> > > > > > > > >>
> > > > > >
> > > > > > > > >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > > > > >
> > > > > > > > >> > > Seeing the same and trying to figure it out. Also,
> > > > > > seems there is
> > > > > >
> > > > > > > no
> > > > > >
> > > > > > > > >> > > recipe
> > > > > >
> > > > > > > > >> > > for waf-native, so it becomes a new required host
> > > > > > tool.
> > > > > >
> > > > > > > > >> >
> > > > > >
> > > > > > > > >> > There is no "waf" tool, so a "waf-native" tool
> > > > > > doesn't make sense...
> > > > > >
> > > > > > > > >> > it's not how waf works. Each project has their own
> > > > > > copy of the waf
> > > > > >
> > > > > > > > >> > program, it's not something the host has to provide.
> > > > > >
> > > > > > > > >> >
> > > > > >
> > > > > > > > >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko
> > > > > > <denis@denix.org>
> > > > > >
> > > > > > > > >> > > wrote:
> > > > > >
> > > > > > > > >> > >
> > > > > >
> > > > > > > > >> > > > Hi,
> > > > > >
> > > > > > > > >> > > >
> > > > > >
> > > > > > > > >> > > > I'm getting below stack dump building libtalloc
> > > > > > 2.1.10 in master.
> > > > > >
> > > > > > > > >> > > > Works
> > > > > >
> > > > > > > > >> > > > fine in
> > > > > >
> > > > > > > > >> > > > rocko with libtalloc 2.1.9. I need it for cifs-
> > > > > > utils. I'm not
> > > > > >
> > > > > > > > >> > > > familiar with
> > > > > >
> > > > > > > > >> > > > waf, any help? Thanks.
> > > > > >
> > > > > > > > >> > > >
> > > > > >
> > > > > > > > >> > > >
> > > > > >
> > > > > > > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error
> > > > > > executing a python
> > > > > >
> > > > > > > > >> > > > function
> > > > > >
> > > > > > > > >> > > > in exec_python_func() autogenerated:
> > > > > >
> > > > > > > > >> > > >
> > > > > >
> > > > > > > > >> > > > The stack trace of python calls that resulted in
> > > > > > this
> > > > > >
> > > > > > > > >> > > > exception/failure
> > > > > >
> > > > > > > > >> > > > was:
> > > > > >
> > > > > > > > >> > > > File: 'exec_python_func() autogenerated',
> > > > > > lineno: 2, function:
> > > > > >
> > > > > > > > >> > > > <module>
> > > > > >
> > > > > > > > >> > > >      0001:
> > > > > >
> > > > > > > > >> > > >  *** 0002:waf_preconfigure(d)
> > > > > >
> > > > > > > > >> > > >      0003:
> > > > > >
> > > > > > > > >> > > > File: '/OE/master/sources/oe-
> > > > > > core/meta/classes/waf.bbclass',
> > > > > >
> > > > > > > > >> > > > lineno: 34,
> > > > > >
> > > > > > > > >> > > > function: waf_preconfigure
> > > > > >
> > > > > > > > >> > > >      0030:    from distutils.version import
> > > > > > StrictVersion
> > > > > >
> > > > > > > > >> > > >      0031:    subsrcdir = d.getVar('S')
> > > > > >
> > > > > > > > >> > > >      0032:    wafbin = os.path.join(subsrcdir,
> > > > > > 'waf')
> > > > > >
> > > > > > > > >> > > >      0033:    try:
> > > > > >
> > > > > > > > >> > > >  *** 0034:        result =
> > > > > > subprocess.check_output([wafbin, '
> > > > > >
> > > > > > > > >> > > > --version'],
> > > > > >
> > > > > > > > >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > > > > >
> > > > > > > > >> > > >      0035:        version = result.decode('utf-
> > > > > > 8').split()[1]
> > > > > >
> > > > > > > > >> > > >      0036:        if StrictVersion(version) >=
> > > > > >
> > > > > > > > >> > > > StrictVersion("1.8.7"):
> > > > > >
> > > > > > > > >> > > >      0037:            d.setVar("WAF_EXTRA_CONF",
> > > > > > "
> > > > > >
> > > > > > > > >> > > > --bindir=${bindir}
> > > > > >
> > > > > > > > >> > > > --libdir=${libdir}")
> > > > > >
> > > > > > > > >> > > >      0038:    except
> > > > > > subprocess.CalledProcessError as e:
> > > > > >
> > > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > > lineno: 626, function:
> > > > > >
> > > > > > > > >> > > > check_output
> > > > > >
> > > > > > > > >> > > >      0622:        # empty string. That is
> > > > > > maintained here for
> > > > > >
> > > > > > > > >> > > > backwards
> > > > > >
> > > > > > > > >> > > > compatibility.
> > > > > >
> > > > > > > > >> > > >      0623:        kwargs['input'] = '' if
> > > > > >
> > > > > > > > >> > > > kwargs.get('universal_newlines',
> > > > > >
> > > > > > > > >> > > > False) else b''
> > > > > >
> > > > > > > > >> > > >      0624:
> > > > > >
> > > > > > > > >> > > >      0625:    return run(*popenargs,
> > > > > > stdout=PIPE,
> > > > > >
> > > > > > > timeout=timeout,
> > > > > >
> > > > > > > > >> > > > check=True,
> > > > > >
> > > > > > > > >> > > >  *** 0626:               **kwargs).stdout
> > > > > >
> > > > > > > > >> > > >      0627:
> > > > > >
> > > > > > > > >> > > >      0628:
> > > > > >
> > > > > > > > >> > > >      0629:class CompletedProcess(object):
> > > > > >
> > > > > > > > >> > > >      0630:    """A process that has finished
> > > > > > running.
> > > > > >
> > > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > > lineno: 693, function:
> > > > > >
> > > > > > > > >> > > > run
> > > > > >
> > > > > > > > >> > > >      0689:        if 'stdin' in kwargs:
> > > > > >
> > > > > > > > >> > > >      0690:            raise ValueError('stdin
> > > > > > and input arguments
> > > > > >
> > > > > > > > >> > > > may not
> > > > > >
> > > > > > > > >> > > > both be used.')
> > > > > >
> > > > > > > > >> > > >      0691:        kwargs['stdin'] = PIPE
> > > > > >
> > > > > > > > >> > > >      0692:
> > > > > >
> > > > > > > > >> > > >  *** 0693:    with Popen(*popenargs, **kwargs)
> > > > > > as process:
> > > > > >
> > > > > > > > >> > > >      0694:        try:
> > > > > >
> > > > > > > > >> > > >      0695:            stdout, stderr =
> > > > > > process.communicate(input,
> > > > > >
> > > > > > > > >> > > > timeout=timeout)
> > > > > >
> > > > > > > > >> > > >      0696:        except TimeoutExpired:
> > > > > >
> > > > > > > > >> > > >      0697:            process.kill()
> > > > > >
> > > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > > lineno: 947, function:
> > > > > >
> > > > > > > > >> > > > __init__
> > > > > >
> > > > > > > > >> > > >      0943:
> > > > > > startupinfo,
> > > > > >
> > > > > > > > >> > > > creationflags,
> > > > > >
> > > > > > > > >> > > > shell,
> > > > > >
> > > > > > > > >> > > >      0944:
> > > > > > p2cread, p2cwrite,
> > > > > >
> > > > > > > > >> > > >      0945:
> > > > > > c2pread, c2pwrite,
> > > > > >
> > > > > > > > >> > > >      0946:
> > > > > > errread, errwrite,
> > > > > >
> > > > > > > > >> > > >  *** 0947:
> > > > > > restore_signals,
> > > > > >
> > > > > > > > >> > > > start_new_session)
> > > > > >
> > > > > > > > >> > > >      0948:        except:
> > > > > >
> > > > > > > > >> > > >      0949:            # Cleanup if the child
> > > > > > failed starting.
> > > > > >
> > > > > > > > >> > > >      0950:            for f in filter(None,
> > > > > > (self.stdin,
> > > > > >
> > > > > > > > >> > > > self.stdout,
> > > > > >
> > > > > > > > >> > > > self.stderr)):
> > > > > >
> > > > > > > > >> > > >      0951:                try:
> > > > > >
> > > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > > lineno: 1551, function:
> > > > > >
> > > > > > > > >> > > > _execute_child
> > > > > >
> > > > > > > > >> > > >      1547:                                # The
> > > > > > error must be
> > > > > >
> > > > > > > from
> > > > > >
> > > > > > > > >> > > > chdir(cwd).
> > > > > >
> > > > > > > > >> > > >      1548:
> > > > > > err_msg += ': ' +
> > > > > >
> > > > > > > > >> > > > repr(cwd)
> > > > > >
> > > > > > > > >> > > >      1549:                            else:
> > > > > >
> > > > > > > > >> > > >      1550:
> > > > > > err_msg += ': ' +
> > > > > >
> > > > > > > > >> > > > repr(orig_executable)
> > > > > >
> > > > > > > > >> > > >  *** 1551:                    raise
> > > > > > child_exception_type(errno_
> > > > > >
> > > > > > > num,
> > > > > >
> > > > > > > > >> > > > err_msg)
> > > > > >
> > > > > > > > >> > > >      1552:                raise
> > > > > > child_exception_type(err_msg)
> > > > > >
> > > > > > > > >> > > >      1553:
> > > > > >
> > > > > > > > >> > > >      1554:
> > > > > >
> > > > > > > > >> > > >      1555:        def _handle_exitstatus(self,
> > > > > > sts,
> > > > > >
> > > > > > > > >> > > > _WIFSIGNALED=os.WIFSIGNALED,
> > > > > >
> > > > > > > > >> > > > Exception: FileNotFoundError: [Errno 2] No such
> > > > > > file or
> > > > > >
> > > > > > > directory:
> > > > > >
> > > > > > > > >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-
> > > > > > oe-linux-
> > > > > >
> > > > > > > > >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > > > > >
> > > > > > > > >> > > >
> > > > > >
> > > > > > > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure:
> > > > > > Function failed:
> > > > > >
> > > > > > > > >> > > > waf_preconfigure
> > > > > >
> > > > > > > > >> > > > ERROR: Logfile of failure stored in:
> > > > > >
> > > > > > > > >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-
> > > > > > oe-linux-
> > > > > >
> > > > > > > > >> > > > gnueabi/libtalloc/2.1.10-
> > > > > > r0/temp/log.do_configure.52699
> > > > > >
> > > > > > > > >> > > > ERROR: Task
> > > > > >
> > > > > > > > >> > > > (/OE/master/sources/meta-openembedded/meta-
> > > > > > networking/recipes-
> > > > > >
> > > > > > > > >> > > >
> > > > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > > > >
> > > > > > > > >> > > > failed with exit code '1'
> > > > > >
> > > > > > > > >> > > > --
> > > > > >
> > > > > > > > >> > > > _______________________________________________
> > > > > >
> > > > > > > > >> > > > Openembedded-devel mailing list
> > > > > >
> > > > > > > > >> > > > Openembedded-devel@lists.openembedded.org
> > > > > >
> > > > > > > > >> > > > http://lists.openembedded.org/mailman/listinfo/o
> > > > > > penembedded-devel
> > > > > >
> > > > > > > > >> > > >
> > > > > >
> > > > > > > > >> >
> > > > > >
> > > > > > > > > --
> > > > > >
> > > > > > > > > _______________________________________________
> > > > > >
> > > > > > > > > Openembedded-devel mailing list
> > > > > >
> > > > > > > > > Openembedded-devel@lists.openembedded.org
> > > > > >
> > > > > > > > > http://lists.openembedded.org/mailman/listinfo/openembe
> > > > > > dded-devel
> > > > > >
> > > > > > > >
> > > > > >
> > > > > > > --
> > > > > >
> > > > > > > _______________________________________________
> > > > > >
> > > > > > > Openembedded-devel mailing list
> > > > > >
> > > > > > > Openembedded-devel@lists.openembedded.org
> > > > > >
> > > > > > > http://lists.openembedded.org/mailman/listinfo/openembedded
> > > > > > -devel
> > > > > >
> > > > > > --
> > > > > >
> > > > > > _______________________________________________
> > > > > >
> > > > > > Openembedded-devel mailing list
> > > > > >
> > > > > > Openembedded-devel@lists.openembedded.org
> > > > > >
> > > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-d
> > > > > > evel
> > > > > >
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-16 22:18                           ` Tim Orling
@ 2018-02-22  1:36                             ` Denys Dmytriyenko
  2018-02-22  2:48                               ` Tim Orling
  0 siblings, 1 reply; 28+ messages in thread
From: Denys Dmytriyenko @ 2018-02-22  1:36 UTC (permalink / raw)
  To: Tim Orling; +Cc: openembedded-devel

Any updates on this one yet? Thanks.

On Fri, Feb 16, 2018 at 02:18:32PM -0800, Tim Orling wrote:
> Expediting the fix is greatly appreciated.
> 
> Thank you!
> 
> --Tim
> 
> On Fri, Feb 16, 2018 at 1:00 PM, Joshua Watt <jpewhacker@gmail.com> wrote:
> 
> > On Fri, 2018-02-16 at 21:55 +0100, Martin Jansa wrote:
> > > Don't you want to update that one to use the new function from utils
> > > instead of re-introducing get_waf_parallel_make?
> >
> > .... yes. I guess I can do that now. It didn't exist when I wrote the
> > first version of this patch
> > > On Fri, Feb 16, 2018 at 9:18 PM, Joshua Watt <jpewhacker@gmail.com>
> > > wrote:
> > > > On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
> > > > > And now it will fail to parse as well:
> > > > > http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d
> > > > > 22b31ed85d8823b1bc9e11ccfd72b61f
> > > > >
> > > > > removed get_waf_parallel_make from waf.bbclass, so now all waf-
> > > > > samba.bbclass users will fail to parse with:
> > > >
> > > > http://lists.openembedded.org/pipermail/openembedded-devel/2018-Feb
> > > > ruary/116701.html will fix that as well.... We probably need to
> > > > speed along that getting merged.
> > > > Armin can you help with that?
> > > >
> > > > This patch should resolve all of the waf issues that have been
> > > > discussed here, with exception of the one improvement proposed by
> > > > Denys. While it should probably be improved, I don't beleive it
> > > > actually affects any recipes (some please give me an example if I
> > > > am wrong).
> > > >
> > > > Sorry for the churn. Hopefull this will be better in the future
> > > > since waf and samba-waf are no longer tied together.
> > > >
> > > > Joshua Watt
> > > > > bb.data_smart.ExpansionError: Failure expanding variable
> > > > > do_compile, expression was
> > > > >     python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
> > > > >  which triggered exception NameError: name
> > > > > 'get_waf_parallel_make' is not defined
> > > > > On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail
> > > > > .com> wrote:
> > > > > > Check this thread:
> > > > > > http://lists.openembedded.org/pipermail/openembedded-commits/20
> > > > > > 18-January/218460.html
> > > > > >
> > > > > > but my patch wasn't merged:
> > > > > > http://lists.openembedded.org/pipermail/openembedded-core/2018-
> > > > > > January/146974.html
> > > > > > only the one from Joshua.
> > > > > >
> > > > > >
> > > > > > The original issue is still in rocko as well, the backported
> > > > > > waf change doesn't work and causes useless warning.
> > > > > >
> > > > > > Either the "waf.bbclass: explicitly pass bindir and libdir if
> > > > > > supported" should be reverted in rocko or all fixes for this
> > > > > > should be backported to rocko once they are all in oe-core and
> > > > > > meta-oe master.
> > > > > >
> > > > > > Regards,
> > > > > >
> > > > > > On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix
> > > > > > .org> wrote:
> > > > > > > On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
> > > > > > >
> > > > > > > > On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org
> > > > > > > > wrote:
> > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > > > On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> > > > > > >
> > > > > > > > > On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis
> > > > > > > @denix.org>
> > > > > > >
> > > > > > > > wrote:
> > > > > > >
> > > > > > > > > > On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling
> > > > > > > wrote:
> > > > > > >
> > > > > > > > > >> Then why did ‘sudo dnf install waf’ get me past the
> > > > > > > error above? And
> > > > > > >
> > > > > > > > why
> > > > > > >
> > > > > > > > > >> does Fedora have a package for it?
> > > > > > >
> > > > > > > > > >>
> > > > > > >
> > > > > > > > > >> https://src.fedoraproject.org/rpms/waf
> > > > > > >
> > > > > > > > > >>
> > > > > > >
> > > > > > > > > >> Regardless, something broke.
> > > > > > >
> > > > > > > > > >
> > > > > > >
> > > > > > > > > > I thought so too. As waf.bbclass from oe-core looks for
> > > > > > > waf binary in
> > > > > > >
> > > > > > > > the root
> > > > > > >
> > > > > > > > > > of the source package, I looked inside libtalloc 2.1.9
> > > > > > > and 2.1.10 and
> > > > > > >
> > > > > > > > neither
> > > > > > >
> > > > > > > > > > of them have any "waf" files at the root. How was it
> > > > > > > working before?
> > > > > > >
> > > > > > > > What
> > > > > > >
> > > > > > > > > > broke?
> > > > > > >
> > > > > > > > >
> > > > > > >
> > > > > > > > > its using waf-samba.bbclass, there is a patch floating
> > > > > > > for that
> > > > > > >
> > > > > > > > > https://patchwork.openembedded.org/patch/148046/
> > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > > > So, it will fix libtalloc, but some other packages that
> > > > > > > still use
> > > > > > >
> > > > > > > > waf.bbclass
> > > > > > >
> > > > > > > > will keep on failing with an exception?
> > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > > > They shouldn't. I tested all the ones I could find. The way
> > > > > > > waf-samba uses
> > > > > > >
> > > > > > > > waf is more of the exception than the rule.... Most
> > > > > > > projects will follow
> > > > > > >
> > > > > > > > the waf.bbclass pattern of a wscript and waf in $S, but we
> > > > > > > can probably
> > > > > > >
> > > > > > > > parameterize it if necessary.
> > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > > > Do you know of a specific recipe that fails?
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > No, but as Andre said here earlier, it should be more
> > > > > > > forgiving when ${S}/waf
> > > > > > >
> > > > > > > is not available or at least give a proper error message
> > > > > > > instead of dumping a
> > > > > > >
> > > > > > > cryptic exception stack...
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > In other words, before this waf.bbclass change in oe-core it
> > > > > > > was handling such
> > > > > > >
> > > > > > > situation just fine and there was a warning "Unable to
> > > > > > > execute waf --version,
> > > > > > >
> > > > > > > exit code 127". Now it never reaches that code and just
> > > > > > > throws an exception.
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > > > >> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacke
> > > > > > > r@gmail.com>
> > > > > > >
> > > > > > > > wrote:
> > > > > > >
> > > > > > > > > >>
> > > > > > >
> > > > > > > > > >> > On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> > > > > > >
> > > > > > > > > >> > > Seeing the same and trying to figure it out. Also,
> > > > > > > seems there is
> > > > > > >
> > > > > > > > no
> > > > > > >
> > > > > > > > > >> > > recipe
> > > > > > >
> > > > > > > > > >> > > for waf-native, so it becomes a new required host
> > > > > > > tool.
> > > > > > >
> > > > > > > > > >> >
> > > > > > >
> > > > > > > > > >> > There is no "waf" tool, so a "waf-native" tool
> > > > > > > doesn't make sense...
> > > > > > >
> > > > > > > > > >> > it's not how waf works. Each project has their own
> > > > > > > copy of the waf
> > > > > > >
> > > > > > > > > >> > program, it's not something the host has to provide.
> > > > > > >
> > > > > > > > > >> >
> > > > > > >
> > > > > > > > > >> > > On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko
> > > > > > > <denis@denix.org>
> > > > > > >
> > > > > > > > > >> > > wrote:
> > > > > > >
> > > > > > > > > >> > >
> > > > > > >
> > > > > > > > > >> > > > Hi,
> > > > > > >
> > > > > > > > > >> > > >
> > > > > > >
> > > > > > > > > >> > > > I'm getting below stack dump building libtalloc
> > > > > > > 2.1.10 in master.
> > > > > > >
> > > > > > > > > >> > > > Works
> > > > > > >
> > > > > > > > > >> > > > fine in
> > > > > > >
> > > > > > > > > >> > > > rocko with libtalloc 2.1.9. I need it for cifs-
> > > > > > > utils. I'm not
> > > > > > >
> > > > > > > > > >> > > > familiar with
> > > > > > >
> > > > > > > > > >> > > > waf, any help? Thanks.
> > > > > > >
> > > > > > > > > >> > > >
> > > > > > >
> > > > > > > > > >> > > >
> > > > > > >
> > > > > > > > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure: Error
> > > > > > > executing a python
> > > > > > >
> > > > > > > > > >> > > > function
> > > > > > >
> > > > > > > > > >> > > > in exec_python_func() autogenerated:
> > > > > > >
> > > > > > > > > >> > > >
> > > > > > >
> > > > > > > > > >> > > > The stack trace of python calls that resulted in
> > > > > > > this
> > > > > > >
> > > > > > > > > >> > > > exception/failure
> > > > > > >
> > > > > > > > > >> > > > was:
> > > > > > >
> > > > > > > > > >> > > > File: 'exec_python_func() autogenerated',
> > > > > > > lineno: 2, function:
> > > > > > >
> > > > > > > > > >> > > > <module>
> > > > > > >
> > > > > > > > > >> > > >      0001:
> > > > > > >
> > > > > > > > > >> > > >  *** 0002:waf_preconfigure(d)
> > > > > > >
> > > > > > > > > >> > > >      0003:
> > > > > > >
> > > > > > > > > >> > > > File: '/OE/master/sources/oe-
> > > > > > > core/meta/classes/waf.bbclass',
> > > > > > >
> > > > > > > > > >> > > > lineno: 34,
> > > > > > >
> > > > > > > > > >> > > > function: waf_preconfigure
> > > > > > >
> > > > > > > > > >> > > >      0030:    from distutils.version import
> > > > > > > StrictVersion
> > > > > > >
> > > > > > > > > >> > > >      0031:    subsrcdir = d.getVar('S')
> > > > > > >
> > > > > > > > > >> > > >      0032:    wafbin = os.path.join(subsrcdir,
> > > > > > > 'waf')
> > > > > > >
> > > > > > > > > >> > > >      0033:    try:
> > > > > > >
> > > > > > > > > >> > > >  *** 0034:        result =
> > > > > > > subprocess.check_output([wafbin, '
> > > > > > >
> > > > > > > > > >> > > > --version'],
> > > > > > >
> > > > > > > > > >> > > > cwd=subsrcdir, stderr=subprocess.STDOUT)
> > > > > > >
> > > > > > > > > >> > > >      0035:        version = result.decode('utf-
> > > > > > > 8').split()[1]
> > > > > > >
> > > > > > > > > >> > > >      0036:        if StrictVersion(version) >=
> > > > > > >
> > > > > > > > > >> > > > StrictVersion("1.8.7"):
> > > > > > >
> > > > > > > > > >> > > >      0037:            d.setVar("WAF_EXTRA_CONF",
> > > > > > > "
> > > > > > >
> > > > > > > > > >> > > > --bindir=${bindir}
> > > > > > >
> > > > > > > > > >> > > > --libdir=${libdir}")
> > > > > > >
> > > > > > > > > >> > > >      0038:    except
> > > > > > > subprocess.CalledProcessError as e:
> > > > > > >
> > > > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > > > lineno: 626, function:
> > > > > > >
> > > > > > > > > >> > > > check_output
> > > > > > >
> > > > > > > > > >> > > >      0622:        # empty string. That is
> > > > > > > maintained here for
> > > > > > >
> > > > > > > > > >> > > > backwards
> > > > > > >
> > > > > > > > > >> > > > compatibility.
> > > > > > >
> > > > > > > > > >> > > >      0623:        kwargs['input'] = '' if
> > > > > > >
> > > > > > > > > >> > > > kwargs.get('universal_newlines',
> > > > > > >
> > > > > > > > > >> > > > False) else b''
> > > > > > >
> > > > > > > > > >> > > >      0624:
> > > > > > >
> > > > > > > > > >> > > >      0625:    return run(*popenargs,
> > > > > > > stdout=PIPE,
> > > > > > >
> > > > > > > > timeout=timeout,
> > > > > > >
> > > > > > > > > >> > > > check=True,
> > > > > > >
> > > > > > > > > >> > > >  *** 0626:               **kwargs).stdout
> > > > > > >
> > > > > > > > > >> > > >      0627:
> > > > > > >
> > > > > > > > > >> > > >      0628:
> > > > > > >
> > > > > > > > > >> > > >      0629:class CompletedProcess(object):
> > > > > > >
> > > > > > > > > >> > > >      0630:    """A process that has finished
> > > > > > > running.
> > > > > > >
> > > > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > > > lineno: 693, function:
> > > > > > >
> > > > > > > > > >> > > > run
> > > > > > >
> > > > > > > > > >> > > >      0689:        if 'stdin' in kwargs:
> > > > > > >
> > > > > > > > > >> > > >      0690:            raise ValueError('stdin
> > > > > > > and input arguments
> > > > > > >
> > > > > > > > > >> > > > may not
> > > > > > >
> > > > > > > > > >> > > > both be used.')
> > > > > > >
> > > > > > > > > >> > > >      0691:        kwargs['stdin'] = PIPE
> > > > > > >
> > > > > > > > > >> > > >      0692:
> > > > > > >
> > > > > > > > > >> > > >  *** 0693:    with Popen(*popenargs, **kwargs)
> > > > > > > as process:
> > > > > > >
> > > > > > > > > >> > > >      0694:        try:
> > > > > > >
> > > > > > > > > >> > > >      0695:            stdout, stderr =
> > > > > > > process.communicate(input,
> > > > > > >
> > > > > > > > > >> > > > timeout=timeout)
> > > > > > >
> > > > > > > > > >> > > >      0696:        except TimeoutExpired:
> > > > > > >
> > > > > > > > > >> > > >      0697:            process.kill()
> > > > > > >
> > > > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > > > lineno: 947, function:
> > > > > > >
> > > > > > > > > >> > > > __init__
> > > > > > >
> > > > > > > > > >> > > >      0943:
> > > > > > > startupinfo,
> > > > > > >
> > > > > > > > > >> > > > creationflags,
> > > > > > >
> > > > > > > > > >> > > > shell,
> > > > > > >
> > > > > > > > > >> > > >      0944:
> > > > > > > p2cread, p2cwrite,
> > > > > > >
> > > > > > > > > >> > > >      0945:
> > > > > > > c2pread, c2pwrite,
> > > > > > >
> > > > > > > > > >> > > >      0946:
> > > > > > > errread, errwrite,
> > > > > > >
> > > > > > > > > >> > > >  *** 0947:
> > > > > > > restore_signals,
> > > > > > >
> > > > > > > > > >> > > > start_new_session)
> > > > > > >
> > > > > > > > > >> > > >      0948:        except:
> > > > > > >
> > > > > > > > > >> > > >      0949:            # Cleanup if the child
> > > > > > > failed starting.
> > > > > > >
> > > > > > > > > >> > > >      0950:            for f in filter(None,
> > > > > > > (self.stdin,
> > > > > > >
> > > > > > > > > >> > > > self.stdout,
> > > > > > >
> > > > > > > > > >> > > > self.stderr)):
> > > > > > >
> > > > > > > > > >> > > >      0951:                try:
> > > > > > >
> > > > > > > > > >> > > > File: '/usr/lib/python3.5/subprocess.py',
> > > > > > > lineno: 1551, function:
> > > > > > >
> > > > > > > > > >> > > > _execute_child
> > > > > > >
> > > > > > > > > >> > > >      1547:                                # The
> > > > > > > error must be
> > > > > > >
> > > > > > > > from
> > > > > > >
> > > > > > > > > >> > > > chdir(cwd).
> > > > > > >
> > > > > > > > > >> > > >      1548:
> > > > > > > err_msg += ': ' +
> > > > > > >
> > > > > > > > > >> > > > repr(cwd)
> > > > > > >
> > > > > > > > > >> > > >      1549:                            else:
> > > > > > >
> > > > > > > > > >> > > >      1550:
> > > > > > > err_msg += ': ' +
> > > > > > >
> > > > > > > > > >> > > > repr(orig_executable)
> > > > > > >
> > > > > > > > > >> > > >  *** 1551:                    raise
> > > > > > > child_exception_type(errno_
> > > > > > >
> > > > > > > > num,
> > > > > > >
> > > > > > > > > >> > > > err_msg)
> > > > > > >
> > > > > > > > > >> > > >      1552:                raise
> > > > > > > child_exception_type(err_msg)
> > > > > > >
> > > > > > > > > >> > > >      1553:
> > > > > > >
> > > > > > > > > >> > > >      1554:
> > > > > > >
> > > > > > > > > >> > > >      1555:        def _handle_exitstatus(self,
> > > > > > > sts,
> > > > > > >
> > > > > > > > > >> > > > _WIFSIGNALED=os.WIFSIGNALED,
> > > > > > >
> > > > > > > > > >> > > > Exception: FileNotFoundError: [Errno 2] No such
> > > > > > > file or
> > > > > > >
> > > > > > > > directory:
> > > > > > >
> > > > > > > > > >> > > > '/OE/master/build/tmp-glibc/work/armv7ahf-neon-
> > > > > > > oe-linux-
> > > > > > >
> > > > > > > > > >> > > > gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> > > > > > >
> > > > > > > > > >> > > >
> > > > > > >
> > > > > > > > > >> > > > ERROR: libtalloc-2.1.10-r0 do_configure:
> > > > > > > Function failed:
> > > > > > >
> > > > > > > > > >> > > > waf_preconfigure
> > > > > > >
> > > > > > > > > >> > > > ERROR: Logfile of failure stored in:
> > > > > > >
> > > > > > > > > >> > > > /OE/master/build/tmp-glibc/work/armv7ahf-neon-
> > > > > > > oe-linux-
> > > > > > >
> > > > > > > > > >> > > > gnueabi/libtalloc/2.1.10-
> > > > > > > r0/temp/log.do_configure.52699
> > > > > > >
> > > > > > > > > >> > > > ERROR: Task
> > > > > > >
> > > > > > > > > >> > > > (/OE/master/sources/meta-openembedded/meta-
> > > > > > > networking/recipes-
> > > > > > >
> > > > > > > > > >> > > >
> > > > > > > support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> > > > > > >
> > > > > > > > > >> > > > failed with exit code '1'
> > > > > > >
> > > > > > > > > >> > > > --
> > > > > > >
> > > > > > > > > >> > > > _______________________________________________
> > > > > > >
> > > > > > > > > >> > > > Openembedded-devel mailing list
> > > > > > >
> > > > > > > > > >> > > > Openembedded-devel@lists.openembedded.org
> > > > > > >
> > > > > > > > > >> > > > http://lists.openembedded.org/mailman/listinfo/o
> > > > > > > penembedded-devel
> > > > > > >
> > > > > > > > > >> > > >
> > > > > > >
> > > > > > > > > >> >
> > > > > > >
> > > > > > > > > > --
> > > > > > >
> > > > > > > > > > _______________________________________________
> > > > > > >
> > > > > > > > > > Openembedded-devel mailing list
> > > > > > >
> > > > > > > > > > Openembedded-devel@lists.openembedded.org
> > > > > > >
> > > > > > > > > > http://lists.openembedded.org/mailman/listinfo/openembe
> > > > > > > dded-devel
> > > > > > >
> > > > > > > > >
> > > > > > >
> > > > > > > > --
> > > > > > >
> > > > > > > > _______________________________________________
> > > > > > >
> > > > > > > > Openembedded-devel mailing list
> > > > > > >
> > > > > > > > Openembedded-devel@lists.openembedded.org
> > > > > > >
> > > > > > > > http://lists.openembedded.org/mailman/listinfo/openembedded
> > > > > > > -devel
> > > > > > >
> > > > > > > --
> > > > > > >
> > > > > > > _______________________________________________
> > > > > > >
> > > > > > > Openembedded-devel mailing list
> > > > > > >
> > > > > > > Openembedded-devel@lists.openembedded.org
> > > > > > >
> > > > > > > http://lists.openembedded.org/mailman/listinfo/openembedded-d
> > > > > > > evel
> > > > > > >
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-22  1:36                             ` Denys Dmytriyenko
@ 2018-02-22  2:48                               ` Tim Orling
  2018-02-22  3:10                                 ` Joshua Watt
  2018-02-22  8:30                                 ` Martin Jansa
  0 siblings, 2 replies; 28+ messages in thread
From: Tim Orling @ 2018-02-22  2:48 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: openembedded-devel

Still failing for me, which is a show stopper. :(

> On Feb 21, 2018, at 5:36 PM, Denys Dmytriyenko <denis@denix.org> wrote:
> 
> Any updates on this one yet? Thanks.
> 
> On Fri, Feb 16, 2018 at 02:18:32PM -0800, Tim Orling wrote:
>> Expediting the fix is greatly appreciated.
>> 
>> Thank you!
>> 
>> --Tim
>> 
>> On Fri, Feb 16, 2018 at 1:00 PM, Joshua Watt <jpewhacker@gmail.com> wrote:
>> 
>>> On Fri, 2018-02-16 at 21:55 +0100, Martin Jansa wrote:
>>>> Don't you want to update that one to use the new function from utils
>>>> instead of re-introducing get_waf_parallel_make?
>>> 
>>> .... yes. I guess I can do that now. It didn't exist when I wrote the
>>> first version of this patch
>>>> On Fri, Feb 16, 2018 at 9:18 PM, Joshua Watt <jpewhacker@gmail.com>
>>>> wrote:
>>>>> On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
>>>>>> And now it will fail to parse as well:
>>>>>> http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d
>>>>>> 22b31ed85d8823b1bc9e11ccfd72b61f
>>>>>> 
>>>>>> removed get_waf_parallel_make from waf.bbclass, so now all waf-
>>>>>> samba.bbclass users will fail to parse with:
>>>>> 
>>>>> http://lists.openembedded.org/pipermail/openembedded-devel/2018-Feb
>>>>> ruary/116701.html will fix that as well.... We probably need to
>>>>> speed along that getting merged.
>>>>> Armin can you help with that?
>>>>> 
>>>>> This patch should resolve all of the waf issues that have been
>>>>> discussed here, with exception of the one improvement proposed by
>>>>> Denys. While it should probably be improved, I don't beleive it
>>>>> actually affects any recipes (some please give me an example if I
>>>>> am wrong).
>>>>> 
>>>>> Sorry for the churn. Hopefull this will be better in the future
>>>>> since waf and samba-waf are no longer tied together.
>>>>> 
>>>>> Joshua Watt
>>>>>> bb.data_smart.ExpansionError: Failure expanding variable
>>>>>> do_compile, expression was
>>>>>>    python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
>>>>>> which triggered exception NameError: name
>>>>>> 'get_waf_parallel_make' is not defined
>>>>>> On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail
>>>>>> .com> wrote:
>>>>>>> Check this thread:
>>>>>>> http://lists.openembedded.org/pipermail/openembedded-commits/20
>>>>>>> 18-January/218460.html
>>>>>>> 
>>>>>>> but my patch wasn't merged:
>>>>>>> http://lists.openembedded.org/pipermail/openembedded-core/2018-
>>>>>>> January/146974.html
>>>>>>> only the one from Joshua.
>>>>>>> 
>>>>>>> 
>>>>>>> The original issue is still in rocko as well, the backported
>>>>>>> waf change doesn't work and causes useless warning.
>>>>>>> 
>>>>>>> Either the "waf.bbclass: explicitly pass bindir and libdir if
>>>>>>> supported" should be reverted in rocko or all fixes for this
>>>>>>> should be backported to rocko once they are all in oe-core and
>>>>>>> meta-oe master.
>>>>>>> 
>>>>>>> Regards,
>>>>>>> 
>>>>>>> On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix
>>>>>>> .org> wrote:
>>>>>>>> On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
>>>>>>>> 
>>>>>>>>> On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org
>>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>>>>> On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
>>>>>>>> 
>>>>>>>>>> On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis
>>>>>>>> @denix.org>
>>>>>>>> 
>>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>>>>> On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling
>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>>>>>> Then why did ‘sudo dnf install waf’ get me past the
>>>>>>>> error above? And
>>>>>>>> 
>>>>>>>>> why
>>>>>>>> 
>>>>>>>>>>>> does Fedora have a package for it?
>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>> https://src.fedoraproject.org/rpms/waf
>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>> Regardless, something broke.
>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>> I thought so too. As waf.bbclass from oe-core looks for
>>>>>>>> waf binary in
>>>>>>>> 
>>>>>>>>> the root
>>>>>>>> 
>>>>>>>>>>> of the source package, I looked inside libtalloc 2.1.9
>>>>>>>> and 2.1.10 and
>>>>>>>> 
>>>>>>>>> neither
>>>>>>>> 
>>>>>>>>>>> of them have any "waf" files at the root. How was it
>>>>>>>> working before?
>>>>>>>> 
>>>>>>>>> What
>>>>>>>> 
>>>>>>>>>>> broke?
>>>>>>>> 
>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>> its using waf-samba.bbclass, there is a patch floating
>>>>>>>> for that
>>>>>>>> 
>>>>>>>>>> https://patchwork.openembedded.org/patch/148046/
>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>>>>> So, it will fix libtalloc, but some other packages that
>>>>>>>> still use
>>>>>>>> 
>>>>>>>>> waf.bbclass
>>>>>>>> 
>>>>>>>>> will keep on failing with an exception?
>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>>>>> They shouldn't. I tested all the ones I could find. The way
>>>>>>>> waf-samba uses
>>>>>>>> 
>>>>>>>>> waf is more of the exception than the rule.... Most
>>>>>>>> projects will follow
>>>>>>>> 
>>>>>>>>> the waf.bbclass pattern of a wscript and waf in $S, but we
>>>>>>>> can probably
>>>>>>>> 
>>>>>>>>> parameterize it if necessary.
>>>>>>>> 
>>>>>>>>> 
>>>>>>>> 
>>>>>>>>> Do you know of a specific recipe that fails?
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> No, but as Andre said here earlier, it should be more
>>>>>>>> forgiving when ${S}/waf
>>>>>>>> 
>>>>>>>> is not available or at least give a proper error message
>>>>>>>> instead of dumping a
>>>>>>>> 
>>>>>>>> cryptic exception stack...
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> In other words, before this waf.bbclass change in oe-core it
>>>>>>>> was handling such
>>>>>>>> 
>>>>>>>> situation just fine and there was a warning "Unable to
>>>>>>>> execute waf --version,
>>>>>>>> 
>>>>>>>> exit code 127". Now it never reaches that code and just
>>>>>>>> throws an exception.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacke
>>>>>>>> r@gmail.com>
>>>>>>>> 
>>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>> On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
>>>>>>>> 
>>>>>>>>>>>>>> Seeing the same and trying to figure it out. Also,
>>>>>>>> seems there is
>>>>>>>> 
>>>>>>>>> no
>>>>>>>> 
>>>>>>>>>>>>>> recipe
>>>>>>>> 
>>>>>>>>>>>>>> for waf-native, so it becomes a new required host
>>>>>>>> tool.
>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>> There is no "waf" tool, so a "waf-native" tool
>>>>>>>> doesn't make sense...
>>>>>>>> 
>>>>>>>>>>>>> it's not how waf works. Each project has their own
>>>>>>>> copy of the waf
>>>>>>>> 
>>>>>>>>>>>>> program, it's not something the host has to provide.
>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>> On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko
>>>>>>>> <denis@denix.org>
>>>>>>>> 
>>>>>>>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>> Hi,
>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>> I'm getting below stack dump building libtalloc
>>>>>>>> 2.1.10 in master.
>>>>>>>> 
>>>>>>>>>>>>>>> Works
>>>>>>>> 
>>>>>>>>>>>>>>> fine in
>>>>>>>> 
>>>>>>>>>>>>>>> rocko with libtalloc 2.1.9. I need it for cifs-
>>>>>>>> utils. I'm not
>>>>>>>> 
>>>>>>>>>>>>>>> familiar with
>>>>>>>> 
>>>>>>>>>>>>>>> waf, any help? Thanks.
>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure: Error
>>>>>>>> executing a python
>>>>>>>> 
>>>>>>>>>>>>>>> function
>>>>>>>> 
>>>>>>>>>>>>>>> in exec_python_func() autogenerated:
>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>> The stack trace of python calls that resulted in
>>>>>>>> this
>>>>>>>> 
>>>>>>>>>>>>>>> exception/failure
>>>>>>>> 
>>>>>>>>>>>>>>> was:
>>>>>>>> 
>>>>>>>>>>>>>>> File: 'exec_python_func() autogenerated',
>>>>>>>> lineno: 2, function:
>>>>>>>> 
>>>>>>>>>>>>>>> <module>
>>>>>>>> 
>>>>>>>>>>>>>>>     0001:
>>>>>>>> 
>>>>>>>>>>>>>>> *** 0002:waf_preconfigure(d)
>>>>>>>> 
>>>>>>>>>>>>>>>     0003:
>>>>>>>> 
>>>>>>>>>>>>>>> File: '/OE/master/sources/oe-
>>>>>>>> core/meta/classes/waf.bbclass',
>>>>>>>> 
>>>>>>>>>>>>>>> lineno: 34,
>>>>>>>> 
>>>>>>>>>>>>>>> function: waf_preconfigure
>>>>>>>> 
>>>>>>>>>>>>>>>     0030:    from distutils.version import
>>>>>>>> StrictVersion
>>>>>>>> 
>>>>>>>>>>>>>>>     0031:    subsrcdir = d.getVar('S')
>>>>>>>> 
>>>>>>>>>>>>>>>     0032:    wafbin = os.path.join(subsrcdir,
>>>>>>>> 'waf')
>>>>>>>> 
>>>>>>>>>>>>>>>     0033:    try:
>>>>>>>> 
>>>>>>>>>>>>>>> *** 0034:        result =
>>>>>>>> subprocess.check_output([wafbin, '
>>>>>>>> 
>>>>>>>>>>>>>>> --version'],
>>>>>>>> 
>>>>>>>>>>>>>>> cwd=subsrcdir, stderr=subprocess.STDOUT)
>>>>>>>> 
>>>>>>>>>>>>>>>     0035:        version = result.decode('utf-
>>>>>>>> 8').split()[1]
>>>>>>>> 
>>>>>>>>>>>>>>>     0036:        if StrictVersion(version) >=
>>>>>>>> 
>>>>>>>>>>>>>>> StrictVersion("1.8.7"):
>>>>>>>> 
>>>>>>>>>>>>>>>     0037:            d.setVar("WAF_EXTRA_CONF",
>>>>>>>> "
>>>>>>>> 
>>>>>>>>>>>>>>> --bindir=${bindir}
>>>>>>>> 
>>>>>>>>>>>>>>> --libdir=${libdir}")
>>>>>>>> 
>>>>>>>>>>>>>>>     0038:    except
>>>>>>>> subprocess.CalledProcessError as e:
>>>>>>>> 
>>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>>>>>>>> lineno: 626, function:
>>>>>>>> 
>>>>>>>>>>>>>>> check_output
>>>>>>>> 
>>>>>>>>>>>>>>>     0622:        # empty string. That is
>>>>>>>> maintained here for
>>>>>>>> 
>>>>>>>>>>>>>>> backwards
>>>>>>>> 
>>>>>>>>>>>>>>> compatibility.
>>>>>>>> 
>>>>>>>>>>>>>>>     0623:        kwargs['input'] = '' if
>>>>>>>> 
>>>>>>>>>>>>>>> kwargs.get('universal_newlines',
>>>>>>>> 
>>>>>>>>>>>>>>> False) else b''
>>>>>>>> 
>>>>>>>>>>>>>>>     0624:
>>>>>>>> 
>>>>>>>>>>>>>>>     0625:    return run(*popenargs,
>>>>>>>> stdout=PIPE,
>>>>>>>> 
>>>>>>>>> timeout=timeout,
>>>>>>>> 
>>>>>>>>>>>>>>> check=True,
>>>>>>>> 
>>>>>>>>>>>>>>> *** 0626:               **kwargs).stdout
>>>>>>>> 
>>>>>>>>>>>>>>>     0627:
>>>>>>>> 
>>>>>>>>>>>>>>>     0628:
>>>>>>>> 
>>>>>>>>>>>>>>>     0629:class CompletedProcess(object):
>>>>>>>> 
>>>>>>>>>>>>>>>     0630:    """A process that has finished
>>>>>>>> running.
>>>>>>>> 
>>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>>>>>>>> lineno: 693, function:
>>>>>>>> 
>>>>>>>>>>>>>>> run
>>>>>>>> 
>>>>>>>>>>>>>>>     0689:        if 'stdin' in kwargs:
>>>>>>>> 
>>>>>>>>>>>>>>>     0690:            raise ValueError('stdin
>>>>>>>> and input arguments
>>>>>>>> 
>>>>>>>>>>>>>>> may not
>>>>>>>> 
>>>>>>>>>>>>>>> both be used.')
>>>>>>>> 
>>>>>>>>>>>>>>>     0691:        kwargs['stdin'] = PIPE
>>>>>>>> 
>>>>>>>>>>>>>>>     0692:
>>>>>>>> 
>>>>>>>>>>>>>>> *** 0693:    with Popen(*popenargs, **kwargs)
>>>>>>>> as process:
>>>>>>>> 
>>>>>>>>>>>>>>>     0694:        try:
>>>>>>>> 
>>>>>>>>>>>>>>>     0695:            stdout, stderr =
>>>>>>>> process.communicate(input,
>>>>>>>> 
>>>>>>>>>>>>>>> timeout=timeout)
>>>>>>>> 
>>>>>>>>>>>>>>>     0696:        except TimeoutExpired:
>>>>>>>> 
>>>>>>>>>>>>>>>     0697:            process.kill()
>>>>>>>> 
>>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>>>>>>>> lineno: 947, function:
>>>>>>>> 
>>>>>>>>>>>>>>> __init__
>>>>>>>> 
>>>>>>>>>>>>>>>     0943:
>>>>>>>> startupinfo,
>>>>>>>> 
>>>>>>>>>>>>>>> creationflags,
>>>>>>>> 
>>>>>>>>>>>>>>> shell,
>>>>>>>> 
>>>>>>>>>>>>>>>     0944:
>>>>>>>> p2cread, p2cwrite,
>>>>>>>> 
>>>>>>>>>>>>>>>     0945:
>>>>>>>> c2pread, c2pwrite,
>>>>>>>> 
>>>>>>>>>>>>>>>     0946:
>>>>>>>> errread, errwrite,
>>>>>>>> 
>>>>>>>>>>>>>>> *** 0947:
>>>>>>>> restore_signals,
>>>>>>>> 
>>>>>>>>>>>>>>> start_new_session)
>>>>>>>> 
>>>>>>>>>>>>>>>     0948:        except:
>>>>>>>> 
>>>>>>>>>>>>>>>     0949:            # Cleanup if the child
>>>>>>>> failed starting.
>>>>>>>> 
>>>>>>>>>>>>>>>     0950:            for f in filter(None,
>>>>>>>> (self.stdin,
>>>>>>>> 
>>>>>>>>>>>>>>> self.stdout,
>>>>>>>> 
>>>>>>>>>>>>>>> self.stderr)):
>>>>>>>> 
>>>>>>>>>>>>>>>     0951:                try:
>>>>>>>> 
>>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>>>>>>>> lineno: 1551, function:
>>>>>>>> 
>>>>>>>>>>>>>>> _execute_child
>>>>>>>> 
>>>>>>>>>>>>>>>     1547:                                # The
>>>>>>>> error must be
>>>>>>>> 
>>>>>>>>> from
>>>>>>>> 
>>>>>>>>>>>>>>> chdir(cwd).
>>>>>>>> 
>>>>>>>>>>>>>>>     1548:
>>>>>>>> err_msg += ': ' +
>>>>>>>> 
>>>>>>>>>>>>>>> repr(cwd)
>>>>>>>> 
>>>>>>>>>>>>>>>     1549:                            else:
>>>>>>>> 
>>>>>>>>>>>>>>>     1550:
>>>>>>>> err_msg += ': ' +
>>>>>>>> 
>>>>>>>>>>>>>>> repr(orig_executable)
>>>>>>>> 
>>>>>>>>>>>>>>> *** 1551:                    raise
>>>>>>>> child_exception_type(errno_
>>>>>>>> 
>>>>>>>>> num,
>>>>>>>> 
>>>>>>>>>>>>>>> err_msg)
>>>>>>>> 
>>>>>>>>>>>>>>>     1552:                raise
>>>>>>>> child_exception_type(err_msg)
>>>>>>>> 
>>>>>>>>>>>>>>>     1553:
>>>>>>>> 
>>>>>>>>>>>>>>>     1554:
>>>>>>>> 
>>>>>>>>>>>>>>>     1555:        def _handle_exitstatus(self,
>>>>>>>> sts,
>>>>>>>> 
>>>>>>>>>>>>>>> _WIFSIGNALED=os.WIFSIGNALED,
>>>>>>>> 
>>>>>>>>>>>>>>> Exception: FileNotFoundError: [Errno 2] No such
>>>>>>>> file or
>>>>>>>> 
>>>>>>>>> directory:
>>>>>>>> 
>>>>>>>>>>>>>>> '/OE/master/build/tmp-glibc/work/armv7ahf-neon-
>>>>>>>> oe-linux-
>>>>>>>> 
>>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure:
>>>>>>>> Function failed:
>>>>>>>> 
>>>>>>>>>>>>>>> waf_preconfigure
>>>>>>>> 
>>>>>>>>>>>>>>> ERROR: Logfile of failure stored in:
>>>>>>>> 
>>>>>>>>>>>>>>> /OE/master/build/tmp-glibc/work/armv7ahf-neon-
>>>>>>>> oe-linux-
>>>>>>>> 
>>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-
>>>>>>>> r0/temp/log.do_configure.52699
>>>>>>>> 
>>>>>>>>>>>>>>> ERROR: Task
>>>>>>>> 
>>>>>>>>>>>>>>> (/OE/master/sources/meta-openembedded/meta-
>>>>>>>> networking/recipes-
>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>> support/libtalloc/libtalloc_2.1.10.bb:do_configure)
>>>>>>>> 
>>>>>>>>>>>>>>> failed with exit code '1'
>>>>>>>> 
>>>>>>>>>>>>>>> --
>>>>>>>> 
>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>> 
>>>>>>>>>>>>>>> Openembedded-devel mailing list
>>>>>>>> 
>>>>>>>>>>>>>>> Openembedded-devel@lists.openembedded.org
>>>>>>>> 
>>>>>>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/o
>>>>>>>> penembedded-devel
>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>>>> --
>>>>>>>> 
>>>>>>>>>>> _______________________________________________
>>>>>>>> 
>>>>>>>>>>> Openembedded-devel mailing list
>>>>>>>> 
>>>>>>>>>>> Openembedded-devel@lists.openembedded.org
>>>>>>>> 
>>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembe
>>>>>>>> dded-devel
>>>>>>>> 
>>>>>>>>>> 
>>>>>>>> 
>>>>>>>>> --
>>>>>>>> 
>>>>>>>>> _______________________________________________
>>>>>>>> 
>>>>>>>>> Openembedded-devel mailing list
>>>>>>>> 
>>>>>>>>> Openembedded-devel@lists.openembedded.org
>>>>>>>> 
>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded
>>>>>>>> -devel
>>>>>>>> 
>>>>>>>> --
>>>>>>>> 
>>>>>>>> _______________________________________________
>>>>>>>> 
>>>>>>>> Openembedded-devel mailing list
>>>>>>>> 
>>>>>>>> Openembedded-devel@lists.openembedded.org
>>>>>>>> 
>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-d
>>>>>>>> evel
>>>>>>>> 
>>> --
>>> _______________________________________________
>>> Openembedded-devel mailing list
>>> Openembedded-devel@lists.openembedded.org
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>> 
>> -- 
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel



^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-22  2:48                               ` Tim Orling
@ 2018-02-22  3:10                                 ` Joshua Watt
  2018-02-22  8:30                                 ` Martin Jansa
  1 sibling, 0 replies; 28+ messages in thread
From: Joshua Watt @ 2018-02-22  3:10 UTC (permalink / raw)
  To: Tim Orling; +Cc: openembedded-devel

On Wed, Feb 21, 2018 at 8:48 PM, Tim Orling
<timothy.t.orling@linux.intel.com> wrote:
> Still failing for me, which is a show stopper. :(

Armin has it in his testing branch for the next master update, so
hopefully it will pulled in soon.

>
>> On Feb 21, 2018, at 5:36 PM, Denys Dmytriyenko <denis@denix.org> wrote:
>>
>> Any updates on this one yet? Thanks.
>>
>> On Fri, Feb 16, 2018 at 02:18:32PM -0800, Tim Orling wrote:
>>> Expediting the fix is greatly appreciated.
>>>
>>> Thank you!
>>>
>>> --Tim
>>>
>>> On Fri, Feb 16, 2018 at 1:00 PM, Joshua Watt <jpewhacker@gmail.com> wrote:
>>>
>>>> On Fri, 2018-02-16 at 21:55 +0100, Martin Jansa wrote:
>>>>> Don't you want to update that one to use the new function from utils
>>>>> instead of re-introducing get_waf_parallel_make?
>>>>
>>>> .... yes. I guess I can do that now. It didn't exist when I wrote the
>>>> first version of this patch
>>>>> On Fri, Feb 16, 2018 at 9:18 PM, Joshua Watt <jpewhacker@gmail.com>
>>>>> wrote:
>>>>>> On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
>>>>>>> And now it will fail to parse as well:
>>>>>>> http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d
>>>>>>> 22b31ed85d8823b1bc9e11ccfd72b61f
>>>>>>>
>>>>>>> removed get_waf_parallel_make from waf.bbclass, so now all waf-
>>>>>>> samba.bbclass users will fail to parse with:
>>>>>>
>>>>>> http://lists.openembedded.org/pipermail/openembedded-devel/2018-Feb
>>>>>> ruary/116701.html will fix that as well.... We probably need to
>>>>>> speed along that getting merged.
>>>>>> Armin can you help with that?
>>>>>>
>>>>>> This patch should resolve all of the waf issues that have been
>>>>>> discussed here, with exception of the one improvement proposed by
>>>>>> Denys. While it should probably be improved, I don't beleive it
>>>>>> actually affects any recipes (some please give me an example if I
>>>>>> am wrong).
>>>>>>
>>>>>> Sorry for the churn. Hopefull this will be better in the future
>>>>>> since waf and samba-waf are no longer tied together.
>>>>>>
>>>>>> Joshua Watt
>>>>>>> bb.data_smart.ExpansionError: Failure expanding variable
>>>>>>> do_compile, expression was
>>>>>>>    python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
>>>>>>> which triggered exception NameError: name
>>>>>>> 'get_waf_parallel_make' is not defined
>>>>>>> On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail
>>>>>>> .com> wrote:
>>>>>>>> Check this thread:
>>>>>>>> http://lists.openembedded.org/pipermail/openembedded-commits/20
>>>>>>>> 18-January/218460.html
>>>>>>>>
>>>>>>>> but my patch wasn't merged:
>>>>>>>> http://lists.openembedded.org/pipermail/openembedded-core/2018-
>>>>>>>> January/146974.html
>>>>>>>> only the one from Joshua.
>>>>>>>>
>>>>>>>>
>>>>>>>> The original issue is still in rocko as well, the backported
>>>>>>>> waf change doesn't work and causes useless warning.
>>>>>>>>
>>>>>>>> Either the "waf.bbclass: explicitly pass bindir and libdir if
>>>>>>>> supported" should be reverted in rocko or all fixes for this
>>>>>>>> should be backported to rocko once they are all in oe-core and
>>>>>>>> meta-oe master.
>>>>>>>>
>>>>>>>> Regards,
>>>>>>>>
>>>>>>>> On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix
>>>>>>>> .org> wrote:
>>>>>>>>> On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
>>>>>>>>>
>>>>>>>>>> On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org
>>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
>>>>>>>>>
>>>>>>>>>>> On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis
>>>>>>>>> @denix.org>
>>>>>>>>>
>>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>>> On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>>>> Then why did ‘sudo dnf install waf’ get me past the
>>>>>>>>> error above? And
>>>>>>>>>
>>>>>>>>>> why
>>>>>>>>>
>>>>>>>>>>>>> does Fedora have a package for it?
>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>> https://src.fedoraproject.org/rpms/waf
>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>> Regardless, something broke.
>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>> I thought so too. As waf.bbclass from oe-core looks for
>>>>>>>>> waf binary in
>>>>>>>>>
>>>>>>>>>> the root
>>>>>>>>>
>>>>>>>>>>>> of the source package, I looked inside libtalloc 2.1.9
>>>>>>>>> and 2.1.10 and
>>>>>>>>>
>>>>>>>>>> neither
>>>>>>>>>
>>>>>>>>>>>> of them have any "waf" files at the root. How was it
>>>>>>>>> working before?
>>>>>>>>>
>>>>>>>>>> What
>>>>>>>>>
>>>>>>>>>>>> broke?
>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>> its using waf-samba.bbclass, there is a patch floating
>>>>>>>>> for that
>>>>>>>>>
>>>>>>>>>>> https://patchwork.openembedded.org/patch/148046/
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> So, it will fix libtalloc, but some other packages that
>>>>>>>>> still use
>>>>>>>>>
>>>>>>>>>> waf.bbclass
>>>>>>>>>
>>>>>>>>>> will keep on failing with an exception?
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> They shouldn't. I tested all the ones I could find. The way
>>>>>>>>> waf-samba uses
>>>>>>>>>
>>>>>>>>>> waf is more of the exception than the rule.... Most
>>>>>>>>> projects will follow
>>>>>>>>>
>>>>>>>>>> the waf.bbclass pattern of a wscript and waf in $S, but we
>>>>>>>>> can probably
>>>>>>>>>
>>>>>>>>>> parameterize it if necessary.
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> Do you know of a specific recipe that fails?
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> No, but as Andre said here earlier, it should be more
>>>>>>>>> forgiving when ${S}/waf
>>>>>>>>>
>>>>>>>>> is not available or at least give a proper error message
>>>>>>>>> instead of dumping a
>>>>>>>>>
>>>>>>>>> cryptic exception stack...
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> In other words, before this waf.bbclass change in oe-core it
>>>>>>>>> was handling such
>>>>>>>>>
>>>>>>>>> situation just fine and there was a warning "Unable to
>>>>>>>>> execute waf --version,
>>>>>>>>>
>>>>>>>>> exit code 127". Now it never reaches that code and just
>>>>>>>>> throws an exception.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacke
>>>>>>>>> r@gmail.com>
>>>>>>>>>
>>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>> On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
>>>>>>>>>
>>>>>>>>>>>>>>> Seeing the same and trying to figure it out. Also,
>>>>>>>>> seems there is
>>>>>>>>>
>>>>>>>>>> no
>>>>>>>>>
>>>>>>>>>>>>>>> recipe
>>>>>>>>>
>>>>>>>>>>>>>>> for waf-native, so it becomes a new required host
>>>>>>>>> tool.
>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>> There is no "waf" tool, so a "waf-native" tool
>>>>>>>>> doesn't make sense...
>>>>>>>>>
>>>>>>>>>>>>>> it's not how waf works. Each project has their own
>>>>>>>>> copy of the waf
>>>>>>>>>
>>>>>>>>>>>>>> program, it's not something the host has to provide.
>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>> On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko
>>>>>>>>> <denis@denix.org>
>>>>>>>>>
>>>>>>>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>> I'm getting below stack dump building libtalloc
>>>>>>>>> 2.1.10 in master.
>>>>>>>>>
>>>>>>>>>>>>>>>> Works
>>>>>>>>>
>>>>>>>>>>>>>>>> fine in
>>>>>>>>>
>>>>>>>>>>>>>>>> rocko with libtalloc 2.1.9. I need it for cifs-
>>>>>>>>> utils. I'm not
>>>>>>>>>
>>>>>>>>>>>>>>>> familiar with
>>>>>>>>>
>>>>>>>>>>>>>>>> waf, any help? Thanks.
>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure: Error
>>>>>>>>> executing a python
>>>>>>>>>
>>>>>>>>>>>>>>>> function
>>>>>>>>>
>>>>>>>>>>>>>>>> in exec_python_func() autogenerated:
>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>> The stack trace of python calls that resulted in
>>>>>>>>> this
>>>>>>>>>
>>>>>>>>>>>>>>>> exception/failure
>>>>>>>>>
>>>>>>>>>>>>>>>> was:
>>>>>>>>>
>>>>>>>>>>>>>>>> File: 'exec_python_func() autogenerated',
>>>>>>>>> lineno: 2, function:
>>>>>>>>>
>>>>>>>>>>>>>>>> <module>
>>>>>>>>>
>>>>>>>>>>>>>>>>     0001:
>>>>>>>>>
>>>>>>>>>>>>>>>> *** 0002:waf_preconfigure(d)
>>>>>>>>>
>>>>>>>>>>>>>>>>     0003:
>>>>>>>>>
>>>>>>>>>>>>>>>> File: '/OE/master/sources/oe-
>>>>>>>>> core/meta/classes/waf.bbclass',
>>>>>>>>>
>>>>>>>>>>>>>>>> lineno: 34,
>>>>>>>>>
>>>>>>>>>>>>>>>> function: waf_preconfigure
>>>>>>>>>
>>>>>>>>>>>>>>>>     0030:    from distutils.version import
>>>>>>>>> StrictVersion
>>>>>>>>>
>>>>>>>>>>>>>>>>     0031:    subsrcdir = d.getVar('S')
>>>>>>>>>
>>>>>>>>>>>>>>>>     0032:    wafbin = os.path.join(subsrcdir,
>>>>>>>>> 'waf')
>>>>>>>>>
>>>>>>>>>>>>>>>>     0033:    try:
>>>>>>>>>
>>>>>>>>>>>>>>>> *** 0034:        result =
>>>>>>>>> subprocess.check_output([wafbin, '
>>>>>>>>>
>>>>>>>>>>>>>>>> --version'],
>>>>>>>>>
>>>>>>>>>>>>>>>> cwd=subsrcdir, stderr=subprocess.STDOUT)
>>>>>>>>>
>>>>>>>>>>>>>>>>     0035:        version = result.decode('utf-
>>>>>>>>> 8').split()[1]
>>>>>>>>>
>>>>>>>>>>>>>>>>     0036:        if StrictVersion(version) >=
>>>>>>>>>
>>>>>>>>>>>>>>>> StrictVersion("1.8.7"):
>>>>>>>>>
>>>>>>>>>>>>>>>>     0037:            d.setVar("WAF_EXTRA_CONF",
>>>>>>>>> "
>>>>>>>>>
>>>>>>>>>>>>>>>> --bindir=${bindir}
>>>>>>>>>
>>>>>>>>>>>>>>>> --libdir=${libdir}")
>>>>>>>>>
>>>>>>>>>>>>>>>>     0038:    except
>>>>>>>>> subprocess.CalledProcessError as e:
>>>>>>>>>
>>>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>>>>>>>>> lineno: 626, function:
>>>>>>>>>
>>>>>>>>>>>>>>>> check_output
>>>>>>>>>
>>>>>>>>>>>>>>>>     0622:        # empty string. That is
>>>>>>>>> maintained here for
>>>>>>>>>
>>>>>>>>>>>>>>>> backwards
>>>>>>>>>
>>>>>>>>>>>>>>>> compatibility.
>>>>>>>>>
>>>>>>>>>>>>>>>>     0623:        kwargs['input'] = '' if
>>>>>>>>>
>>>>>>>>>>>>>>>> kwargs.get('universal_newlines',
>>>>>>>>>
>>>>>>>>>>>>>>>> False) else b''
>>>>>>>>>
>>>>>>>>>>>>>>>>     0624:
>>>>>>>>>
>>>>>>>>>>>>>>>>     0625:    return run(*popenargs,
>>>>>>>>> stdout=PIPE,
>>>>>>>>>
>>>>>>>>>> timeout=timeout,
>>>>>>>>>
>>>>>>>>>>>>>>>> check=True,
>>>>>>>>>
>>>>>>>>>>>>>>>> *** 0626:               **kwargs).stdout
>>>>>>>>>
>>>>>>>>>>>>>>>>     0627:
>>>>>>>>>
>>>>>>>>>>>>>>>>     0628:
>>>>>>>>>
>>>>>>>>>>>>>>>>     0629:class CompletedProcess(object):
>>>>>>>>>
>>>>>>>>>>>>>>>>     0630:    """A process that has finished
>>>>>>>>> running.
>>>>>>>>>
>>>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>>>>>>>>> lineno: 693, function:
>>>>>>>>>
>>>>>>>>>>>>>>>> run
>>>>>>>>>
>>>>>>>>>>>>>>>>     0689:        if 'stdin' in kwargs:
>>>>>>>>>
>>>>>>>>>>>>>>>>     0690:            raise ValueError('stdin
>>>>>>>>> and input arguments
>>>>>>>>>
>>>>>>>>>>>>>>>> may not
>>>>>>>>>
>>>>>>>>>>>>>>>> both be used.')
>>>>>>>>>
>>>>>>>>>>>>>>>>     0691:        kwargs['stdin'] = PIPE
>>>>>>>>>
>>>>>>>>>>>>>>>>     0692:
>>>>>>>>>
>>>>>>>>>>>>>>>> *** 0693:    with Popen(*popenargs, **kwargs)
>>>>>>>>> as process:
>>>>>>>>>
>>>>>>>>>>>>>>>>     0694:        try:
>>>>>>>>>
>>>>>>>>>>>>>>>>     0695:            stdout, stderr =
>>>>>>>>> process.communicate(input,
>>>>>>>>>
>>>>>>>>>>>>>>>> timeout=timeout)
>>>>>>>>>
>>>>>>>>>>>>>>>>     0696:        except TimeoutExpired:
>>>>>>>>>
>>>>>>>>>>>>>>>>     0697:            process.kill()
>>>>>>>>>
>>>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>>>>>>>>> lineno: 947, function:
>>>>>>>>>
>>>>>>>>>>>>>>>> __init__
>>>>>>>>>
>>>>>>>>>>>>>>>>     0943:
>>>>>>>>> startupinfo,
>>>>>>>>>
>>>>>>>>>>>>>>>> creationflags,
>>>>>>>>>
>>>>>>>>>>>>>>>> shell,
>>>>>>>>>
>>>>>>>>>>>>>>>>     0944:
>>>>>>>>> p2cread, p2cwrite,
>>>>>>>>>
>>>>>>>>>>>>>>>>     0945:
>>>>>>>>> c2pread, c2pwrite,
>>>>>>>>>
>>>>>>>>>>>>>>>>     0946:
>>>>>>>>> errread, errwrite,
>>>>>>>>>
>>>>>>>>>>>>>>>> *** 0947:
>>>>>>>>> restore_signals,
>>>>>>>>>
>>>>>>>>>>>>>>>> start_new_session)
>>>>>>>>>
>>>>>>>>>>>>>>>>     0948:        except:
>>>>>>>>>
>>>>>>>>>>>>>>>>     0949:            # Cleanup if the child
>>>>>>>>> failed starting.
>>>>>>>>>
>>>>>>>>>>>>>>>>     0950:            for f in filter(None,
>>>>>>>>> (self.stdin,
>>>>>>>>>
>>>>>>>>>>>>>>>> self.stdout,
>>>>>>>>>
>>>>>>>>>>>>>>>> self.stderr)):
>>>>>>>>>
>>>>>>>>>>>>>>>>     0951:                try:
>>>>>>>>>
>>>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>>>>>>>>> lineno: 1551, function:
>>>>>>>>>
>>>>>>>>>>>>>>>> _execute_child
>>>>>>>>>
>>>>>>>>>>>>>>>>     1547:                                # The
>>>>>>>>> error must be
>>>>>>>>>
>>>>>>>>>> from
>>>>>>>>>
>>>>>>>>>>>>>>>> chdir(cwd).
>>>>>>>>>
>>>>>>>>>>>>>>>>     1548:
>>>>>>>>> err_msg += ': ' +
>>>>>>>>>
>>>>>>>>>>>>>>>> repr(cwd)
>>>>>>>>>
>>>>>>>>>>>>>>>>     1549:                            else:
>>>>>>>>>
>>>>>>>>>>>>>>>>     1550:
>>>>>>>>> err_msg += ': ' +
>>>>>>>>>
>>>>>>>>>>>>>>>> repr(orig_executable)
>>>>>>>>>
>>>>>>>>>>>>>>>> *** 1551:                    raise
>>>>>>>>> child_exception_type(errno_
>>>>>>>>>
>>>>>>>>>> num,
>>>>>>>>>
>>>>>>>>>>>>>>>> err_msg)
>>>>>>>>>
>>>>>>>>>>>>>>>>     1552:                raise
>>>>>>>>> child_exception_type(err_msg)
>>>>>>>>>
>>>>>>>>>>>>>>>>     1553:
>>>>>>>>>
>>>>>>>>>>>>>>>>     1554:
>>>>>>>>>
>>>>>>>>>>>>>>>>     1555:        def _handle_exitstatus(self,
>>>>>>>>> sts,
>>>>>>>>>
>>>>>>>>>>>>>>>> _WIFSIGNALED=os.WIFSIGNALED,
>>>>>>>>>
>>>>>>>>>>>>>>>> Exception: FileNotFoundError: [Errno 2] No such
>>>>>>>>> file or
>>>>>>>>>
>>>>>>>>>> directory:
>>>>>>>>>
>>>>>>>>>>>>>>>> '/OE/master/build/tmp-glibc/work/armv7ahf-neon-
>>>>>>>>> oe-linux-
>>>>>>>>>
>>>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure:
>>>>>>>>> Function failed:
>>>>>>>>>
>>>>>>>>>>>>>>>> waf_preconfigure
>>>>>>>>>
>>>>>>>>>>>>>>>> ERROR: Logfile of failure stored in:
>>>>>>>>>
>>>>>>>>>>>>>>>> /OE/master/build/tmp-glibc/work/armv7ahf-neon-
>>>>>>>>> oe-linux-
>>>>>>>>>
>>>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-
>>>>>>>>> r0/temp/log.do_configure.52699
>>>>>>>>>
>>>>>>>>>>>>>>>> ERROR: Task
>>>>>>>>>
>>>>>>>>>>>>>>>> (/OE/master/sources/meta-openembedded/meta-
>>>>>>>>> networking/recipes-
>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>> support/libtalloc/libtalloc_2.1.10.bb:do_configure)
>>>>>>>>>
>>>>>>>>>>>>>>>> failed with exit code '1'
>>>>>>>>>
>>>>>>>>>>>>>>>> --
>>>>>>>>>
>>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>
>>>>>>>>>>>>>>>> Openembedded-devel mailing list
>>>>>>>>>
>>>>>>>>>>>>>>>> Openembedded-devel@lists.openembedded.org
>>>>>>>>>
>>>>>>>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/o
>>>>>>>>> penembedded-devel
>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>
>>>>>>>>>>>> Openembedded-devel mailing list
>>>>>>>>>
>>>>>>>>>>>> Openembedded-devel@lists.openembedded.org
>>>>>>>>>
>>>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembe
>>>>>>>>> dded-devel
>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>
>>>>>>>>>> Openembedded-devel mailing list
>>>>>>>>>
>>>>>>>>>> Openembedded-devel@lists.openembedded.org
>>>>>>>>>
>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded
>>>>>>>>> -devel
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>>
>>>>>>>>> Openembedded-devel mailing list
>>>>>>>>>
>>>>>>>>> Openembedded-devel@lists.openembedded.org
>>>>>>>>>
>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-d
>>>>>>>>> evel
>>>>>>>>>
>>>> --
>>>> _______________________________________________
>>>> Openembedded-devel mailing list
>>>> Openembedded-devel@lists.openembedded.org
>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>>>
>>> --
>>> _______________________________________________
>>> Openembedded-devel mailing list
>>> Openembedded-devel@lists.openembedded.org
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>> --
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-22  2:48                               ` Tim Orling
  2018-02-22  3:10                                 ` Joshua Watt
@ 2018-02-22  8:30                                 ` Martin Jansa
  2018-02-22  8:48                                   ` Martin Jansa
  1 sibling, 1 reply; 28+ messages in thread
From: Martin Jansa @ 2018-02-22  8:30 UTC (permalink / raw)
  To: Tim Orling; +Cc: openembedded-devel

I've merged the fix for parsing issues immediately after sending it (6 days
ago):
http://git.openembedded.org/meta-openembedded/commit/?id=2f7de931885c1b9e63c4e4238f0f7ad1388e8b6d

So it shouldn't fail to parse for you if you use new enough oe-core (it
doesn't fail for me).

waf.bbclass is still broken in rocko and master, but that's different issue
and not as fatal as missing get_waf_parallel_make function.

On Thu, Feb 22, 2018 at 3:48 AM, Tim Orling <
timothy.t.orling@linux.intel.com> wrote:

> Still failing for me, which is a show stopper. :(
>
> > On Feb 21, 2018, at 5:36 PM, Denys Dmytriyenko <denis@denix.org> wrote:
> >
> > Any updates on this one yet? Thanks.
> >
> > On Fri, Feb 16, 2018 at 02:18:32PM -0800, Tim Orling wrote:
> >> Expediting the fix is greatly appreciated.
> >>
> >> Thank you!
> >>
> >> --Tim
> >>
> >> On Fri, Feb 16, 2018 at 1:00 PM, Joshua Watt <jpewhacker@gmail.com>
> wrote:
> >>
> >>> On Fri, 2018-02-16 at 21:55 +0100, Martin Jansa wrote:
> >>>> Don't you want to update that one to use the new function from utils
> >>>> instead of re-introducing get_waf_parallel_make?
> >>>
> >>> .... yes. I guess I can do that now. It didn't exist when I wrote the
> >>> first version of this patch
> >>>> On Fri, Feb 16, 2018 at 9:18 PM, Joshua Watt <jpewhacker@gmail.com>
> >>>> wrote:
> >>>>> On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
> >>>>>> And now it will fail to parse as well:
> >>>>>> http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d
> >>>>>> 22b31ed85d8823b1bc9e11ccfd72b61f
> >>>>>>
> >>>>>> removed get_waf_parallel_make from waf.bbclass, so now all waf-
> >>>>>> samba.bbclass users will fail to parse with:
> >>>>>
> >>>>> http://lists.openembedded.org/pipermail/openembedded-devel/2018-Feb
> >>>>> ruary/116701.html will fix that as well.... We probably need to
> >>>>> speed along that getting merged.
> >>>>> Armin can you help with that?
> >>>>>
> >>>>> This patch should resolve all of the waf issues that have been
> >>>>> discussed here, with exception of the one improvement proposed by
> >>>>> Denys. While it should probably be improved, I don't beleive it
> >>>>> actually affects any recipes (some please give me an example if I
> >>>>> am wrong).
> >>>>>
> >>>>> Sorry for the churn. Hopefull this will be better in the future
> >>>>> since waf and samba-waf are no longer tied together.
> >>>>>
> >>>>> Joshua Watt
> >>>>>> bb.data_smart.ExpansionError: Failure expanding variable
> >>>>>> do_compile, expression was
> >>>>>>    python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
> >>>>>> which triggered exception NameError: name
> >>>>>> 'get_waf_parallel_make' is not defined
> >>>>>> On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail
> >>>>>> .com> wrote:
> >>>>>>> Check this thread:
> >>>>>>> http://lists.openembedded.org/pipermail/openembedded-commits/20
> >>>>>>> 18-January/218460.html
> >>>>>>>
> >>>>>>> but my patch wasn't merged:
> >>>>>>> http://lists.openembedded.org/pipermail/openembedded-core/2018-
> >>>>>>> January/146974.html
> >>>>>>> only the one from Joshua.
> >>>>>>>
> >>>>>>>
> >>>>>>> The original issue is still in rocko as well, the backported
> >>>>>>> waf change doesn't work and causes useless warning.
> >>>>>>>
> >>>>>>> Either the "waf.bbclass: explicitly pass bindir and libdir if
> >>>>>>> supported" should be reverted in rocko or all fixes for this
> >>>>>>> should be backported to rocko once they are all in oe-core and
> >>>>>>> meta-oe master.
> >>>>>>>
> >>>>>>> Regards,
> >>>>>>>
> >>>>>>> On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix
> >>>>>>> .org> wrote:
> >>>>>>>> On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
> >>>>>>>>
> >>>>>>>>> On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org
> >>>>>>>>> wrote:
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>> On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> >>>>>>>>
> >>>>>>>>>> On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis
> >>>>>>>> @denix.org>
> >>>>>>>>
> >>>>>>>>> wrote:
> >>>>>>>>
> >>>>>>>>>>> On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling
> >>>>>>>> wrote:
> >>>>>>>>
> >>>>>>>>>>>> Then why did ‘sudo dnf install waf’ get me past the
> >>>>>>>> error above? And
> >>>>>>>>
> >>>>>>>>> why
> >>>>>>>>
> >>>>>>>>>>>> does Fedora have a package for it?
> >>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>> https://src.fedoraproject.org/rpms/waf
> >>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>> Regardless, something broke.
> >>>>>>>>
> >>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>> I thought so too. As waf.bbclass from oe-core looks for
> >>>>>>>> waf binary in
> >>>>>>>>
> >>>>>>>>> the root
> >>>>>>>>
> >>>>>>>>>>> of the source package, I looked inside libtalloc 2.1.9
> >>>>>>>> and 2.1.10 and
> >>>>>>>>
> >>>>>>>>> neither
> >>>>>>>>
> >>>>>>>>>>> of them have any "waf" files at the root. How was it
> >>>>>>>> working before?
> >>>>>>>>
> >>>>>>>>> What
> >>>>>>>>
> >>>>>>>>>>> broke?
> >>>>>>>>
> >>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>> its using waf-samba.bbclass, there is a patch floating
> >>>>>>>> for that
> >>>>>>>>
> >>>>>>>>>> https://patchwork.openembedded.org/patch/148046/
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>> So, it will fix libtalloc, but some other packages that
> >>>>>>>> still use
> >>>>>>>>
> >>>>>>>>> waf.bbclass
> >>>>>>>>
> >>>>>>>>> will keep on failing with an exception?
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>> They shouldn't. I tested all the ones I could find. The way
> >>>>>>>> waf-samba uses
> >>>>>>>>
> >>>>>>>>> waf is more of the exception than the rule.... Most
> >>>>>>>> projects will follow
> >>>>>>>>
> >>>>>>>>> the waf.bbclass pattern of a wscript and waf in $S, but we
> >>>>>>>> can probably
> >>>>>>>>
> >>>>>>>>> parameterize it if necessary.
> >>>>>>>>
> >>>>>>>>>
> >>>>>>>>
> >>>>>>>>> Do you know of a specific recipe that fails?
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> No, but as Andre said here earlier, it should be more
> >>>>>>>> forgiving when ${S}/waf
> >>>>>>>>
> >>>>>>>> is not available or at least give a proper error message
> >>>>>>>> instead of dumping a
> >>>>>>>>
> >>>>>>>> cryptic exception stack...
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> In other words, before this waf.bbclass change in oe-core it
> >>>>>>>> was handling such
> >>>>>>>>
> >>>>>>>> situation just fine and there was a warning "Unable to
> >>>>>>>> execute waf --version,
> >>>>>>>>
> >>>>>>>> exit code 127". Now it never reaches that code and just
> >>>>>>>> throws an exception.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacke
> >>>>>>>> r@gmail.com>
> >>>>>>>>
> >>>>>>>>> wrote:
> >>>>>>>>
> >>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>> On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> >>>>>>>>
> >>>>>>>>>>>>>> Seeing the same and trying to figure it out. Also,
> >>>>>>>> seems there is
> >>>>>>>>
> >>>>>>>>> no
> >>>>>>>>
> >>>>>>>>>>>>>> recipe
> >>>>>>>>
> >>>>>>>>>>>>>> for waf-native, so it becomes a new required host
> >>>>>>>> tool.
> >>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>> There is no "waf" tool, so a "waf-native" tool
> >>>>>>>> doesn't make sense...
> >>>>>>>>
> >>>>>>>>>>>>> it's not how waf works. Each project has their own
> >>>>>>>> copy of the waf
> >>>>>>>>
> >>>>>>>>>>>>> program, it's not something the host has to provide.
> >>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>>> On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko
> >>>>>>>> <denis@denix.org>
> >>>>>>>>
> >>>>>>>>>>>>>> wrote:
> >>>>>>>>
> >>>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>>>> Hi,
> >>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>>>> I'm getting below stack dump building libtalloc
> >>>>>>>> 2.1.10 in master.
> >>>>>>>>
> >>>>>>>>>>>>>>> Works
> >>>>>>>>
> >>>>>>>>>>>>>>> fine in
> >>>>>>>>
> >>>>>>>>>>>>>>> rocko with libtalloc 2.1.9. I need it for cifs-
> >>>>>>>> utils. I'm not
> >>>>>>>>
> >>>>>>>>>>>>>>> familiar with
> >>>>>>>>
> >>>>>>>>>>>>>>> waf, any help? Thanks.
> >>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure: Error
> >>>>>>>> executing a python
> >>>>>>>>
> >>>>>>>>>>>>>>> function
> >>>>>>>>
> >>>>>>>>>>>>>>> in exec_python_func() autogenerated:
> >>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>>>> The stack trace of python calls that resulted in
> >>>>>>>> this
> >>>>>>>>
> >>>>>>>>>>>>>>> exception/failure
> >>>>>>>>
> >>>>>>>>>>>>>>> was:
> >>>>>>>>
> >>>>>>>>>>>>>>> File: 'exec_python_func() autogenerated',
> >>>>>>>> lineno: 2, function:
> >>>>>>>>
> >>>>>>>>>>>>>>> <module>
> >>>>>>>>
> >>>>>>>>>>>>>>>     0001:
> >>>>>>>>
> >>>>>>>>>>>>>>> *** 0002:waf_preconfigure(d)
> >>>>>>>>
> >>>>>>>>>>>>>>>     0003:
> >>>>>>>>
> >>>>>>>>>>>>>>> File: '/OE/master/sources/oe-
> >>>>>>>> core/meta/classes/waf.bbclass',
> >>>>>>>>
> >>>>>>>>>>>>>>> lineno: 34,
> >>>>>>>>
> >>>>>>>>>>>>>>> function: waf_preconfigure
> >>>>>>>>
> >>>>>>>>>>>>>>>     0030:    from distutils.version import
> >>>>>>>> StrictVersion
> >>>>>>>>
> >>>>>>>>>>>>>>>     0031:    subsrcdir = d.getVar('S')
> >>>>>>>>
> >>>>>>>>>>>>>>>     0032:    wafbin = os.path.join(subsrcdir,
> >>>>>>>> 'waf')
> >>>>>>>>
> >>>>>>>>>>>>>>>     0033:    try:
> >>>>>>>>
> >>>>>>>>>>>>>>> *** 0034:        result =
> >>>>>>>> subprocess.check_output([wafbin, '
> >>>>>>>>
> >>>>>>>>>>>>>>> --version'],
> >>>>>>>>
> >>>>>>>>>>>>>>> cwd=subsrcdir, stderr=subprocess.STDOUT)
> >>>>>>>>
> >>>>>>>>>>>>>>>     0035:        version = result.decode('utf-
> >>>>>>>> 8').split()[1]
> >>>>>>>>
> >>>>>>>>>>>>>>>     0036:        if StrictVersion(version) >=
> >>>>>>>>
> >>>>>>>>>>>>>>> StrictVersion("1.8.7"):
> >>>>>>>>
> >>>>>>>>>>>>>>>     0037:            d.setVar("WAF_EXTRA_CONF",
> >>>>>>>> "
> >>>>>>>>
> >>>>>>>>>>>>>>> --bindir=${bindir}
> >>>>>>>>
> >>>>>>>>>>>>>>> --libdir=${libdir}")
> >>>>>>>>
> >>>>>>>>>>>>>>>     0038:    except
> >>>>>>>> subprocess.CalledProcessError as e:
> >>>>>>>>
> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
> >>>>>>>> lineno: 626, function:
> >>>>>>>>
> >>>>>>>>>>>>>>> check_output
> >>>>>>>>
> >>>>>>>>>>>>>>>     0622:        # empty string. That is
> >>>>>>>> maintained here for
> >>>>>>>>
> >>>>>>>>>>>>>>> backwards
> >>>>>>>>
> >>>>>>>>>>>>>>> compatibility.
> >>>>>>>>
> >>>>>>>>>>>>>>>     0623:        kwargs['input'] = '' if
> >>>>>>>>
> >>>>>>>>>>>>>>> kwargs.get('universal_newlines',
> >>>>>>>>
> >>>>>>>>>>>>>>> False) else b''
> >>>>>>>>
> >>>>>>>>>>>>>>>     0624:
> >>>>>>>>
> >>>>>>>>>>>>>>>     0625:    return run(*popenargs,
> >>>>>>>> stdout=PIPE,
> >>>>>>>>
> >>>>>>>>> timeout=timeout,
> >>>>>>>>
> >>>>>>>>>>>>>>> check=True,
> >>>>>>>>
> >>>>>>>>>>>>>>> *** 0626:               **kwargs).stdout
> >>>>>>>>
> >>>>>>>>>>>>>>>     0627:
> >>>>>>>>
> >>>>>>>>>>>>>>>     0628:
> >>>>>>>>
> >>>>>>>>>>>>>>>     0629:class CompletedProcess(object):
> >>>>>>>>
> >>>>>>>>>>>>>>>     0630:    """A process that has finished
> >>>>>>>> running.
> >>>>>>>>
> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
> >>>>>>>> lineno: 693, function:
> >>>>>>>>
> >>>>>>>>>>>>>>> run
> >>>>>>>>
> >>>>>>>>>>>>>>>     0689:        if 'stdin' in kwargs:
> >>>>>>>>
> >>>>>>>>>>>>>>>     0690:            raise ValueError('stdin
> >>>>>>>> and input arguments
> >>>>>>>>
> >>>>>>>>>>>>>>> may not
> >>>>>>>>
> >>>>>>>>>>>>>>> both be used.')
> >>>>>>>>
> >>>>>>>>>>>>>>>     0691:        kwargs['stdin'] = PIPE
> >>>>>>>>
> >>>>>>>>>>>>>>>     0692:
> >>>>>>>>
> >>>>>>>>>>>>>>> *** 0693:    with Popen(*popenargs, **kwargs)
> >>>>>>>> as process:
> >>>>>>>>
> >>>>>>>>>>>>>>>     0694:        try:
> >>>>>>>>
> >>>>>>>>>>>>>>>     0695:            stdout, stderr =
> >>>>>>>> process.communicate(input,
> >>>>>>>>
> >>>>>>>>>>>>>>> timeout=timeout)
> >>>>>>>>
> >>>>>>>>>>>>>>>     0696:        except TimeoutExpired:
> >>>>>>>>
> >>>>>>>>>>>>>>>     0697:            process.kill()
> >>>>>>>>
> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
> >>>>>>>> lineno: 947, function:
> >>>>>>>>
> >>>>>>>>>>>>>>> __init__
> >>>>>>>>
> >>>>>>>>>>>>>>>     0943:
> >>>>>>>> startupinfo,
> >>>>>>>>
> >>>>>>>>>>>>>>> creationflags,
> >>>>>>>>
> >>>>>>>>>>>>>>> shell,
> >>>>>>>>
> >>>>>>>>>>>>>>>     0944:
> >>>>>>>> p2cread, p2cwrite,
> >>>>>>>>
> >>>>>>>>>>>>>>>     0945:
> >>>>>>>> c2pread, c2pwrite,
> >>>>>>>>
> >>>>>>>>>>>>>>>     0946:
> >>>>>>>> errread, errwrite,
> >>>>>>>>
> >>>>>>>>>>>>>>> *** 0947:
> >>>>>>>> restore_signals,
> >>>>>>>>
> >>>>>>>>>>>>>>> start_new_session)
> >>>>>>>>
> >>>>>>>>>>>>>>>     0948:        except:
> >>>>>>>>
> >>>>>>>>>>>>>>>     0949:            # Cleanup if the child
> >>>>>>>> failed starting.
> >>>>>>>>
> >>>>>>>>>>>>>>>     0950:            for f in filter(None,
> >>>>>>>> (self.stdin,
> >>>>>>>>
> >>>>>>>>>>>>>>> self.stdout,
> >>>>>>>>
> >>>>>>>>>>>>>>> self.stderr)):
> >>>>>>>>
> >>>>>>>>>>>>>>>     0951:                try:
> >>>>>>>>
> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
> >>>>>>>> lineno: 1551, function:
> >>>>>>>>
> >>>>>>>>>>>>>>> _execute_child
> >>>>>>>>
> >>>>>>>>>>>>>>>     1547:                                # The
> >>>>>>>> error must be
> >>>>>>>>
> >>>>>>>>> from
> >>>>>>>>
> >>>>>>>>>>>>>>> chdir(cwd).
> >>>>>>>>
> >>>>>>>>>>>>>>>     1548:
> >>>>>>>> err_msg += ': ' +
> >>>>>>>>
> >>>>>>>>>>>>>>> repr(cwd)
> >>>>>>>>
> >>>>>>>>>>>>>>>     1549:                            else:
> >>>>>>>>
> >>>>>>>>>>>>>>>     1550:
> >>>>>>>> err_msg += ': ' +
> >>>>>>>>
> >>>>>>>>>>>>>>> repr(orig_executable)
> >>>>>>>>
> >>>>>>>>>>>>>>> *** 1551:                    raise
> >>>>>>>> child_exception_type(errno_
> >>>>>>>>
> >>>>>>>>> num,
> >>>>>>>>
> >>>>>>>>>>>>>>> err_msg)
> >>>>>>>>
> >>>>>>>>>>>>>>>     1552:                raise
> >>>>>>>> child_exception_type(err_msg)
> >>>>>>>>
> >>>>>>>>>>>>>>>     1553:
> >>>>>>>>
> >>>>>>>>>>>>>>>     1554:
> >>>>>>>>
> >>>>>>>>>>>>>>>     1555:        def _handle_exitstatus(self,
> >>>>>>>> sts,
> >>>>>>>>
> >>>>>>>>>>>>>>> _WIFSIGNALED=os.WIFSIGNALED,
> >>>>>>>>
> >>>>>>>>>>>>>>> Exception: FileNotFoundError: [Errno 2] No such
> >>>>>>>> file or
> >>>>>>>>
> >>>>>>>>> directory:
> >>>>>>>>
> >>>>>>>>>>>>>>> '/OE/master/build/tmp-glibc/work/armv7ahf-neon-
> >>>>>>>> oe-linux-
> >>>>>>>>
> >>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> >>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure:
> >>>>>>>> Function failed:
> >>>>>>>>
> >>>>>>>>>>>>>>> waf_preconfigure
> >>>>>>>>
> >>>>>>>>>>>>>>> ERROR: Logfile of failure stored in:
> >>>>>>>>
> >>>>>>>>>>>>>>> /OE/master/build/tmp-glibc/work/armv7ahf-neon-
> >>>>>>>> oe-linux-
> >>>>>>>>
> >>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-
> >>>>>>>> r0/temp/log.do_configure.52699
> >>>>>>>>
> >>>>>>>>>>>>>>> ERROR: Task
> >>>>>>>>
> >>>>>>>>>>>>>>> (/OE/master/sources/meta-openembedded/meta-
> >>>>>>>> networking/recipes-
> >>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>> support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> >>>>>>>>
> >>>>>>>>>>>>>>> failed with exit code '1'
> >>>>>>>>
> >>>>>>>>>>>>>>> --
> >>>>>>>>
> >>>>>>>>>>>>>>> _______________________________________________
> >>>>>>>>
> >>>>>>>>>>>>>>> Openembedded-devel mailing list
> >>>>>>>>
> >>>>>>>>>>>>>>> Openembedded-devel@lists.openembedded.org
> >>>>>>>>
> >>>>>>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/o
> >>>>>>>> penembedded-devel
> >>>>>>>>
> >>>>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>>>>
> >>>>>>>>
> >>>>>>>>>>> --
> >>>>>>>>
> >>>>>>>>>>> _______________________________________________
> >>>>>>>>
> >>>>>>>>>>> Openembedded-devel mailing list
> >>>>>>>>
> >>>>>>>>>>> Openembedded-devel@lists.openembedded.org
> >>>>>>>>
> >>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembe
> >>>>>>>> dded-devel
> >>>>>>>>
> >>>>>>>>>>
> >>>>>>>>
> >>>>>>>>> --
> >>>>>>>>
> >>>>>>>>> _______________________________________________
> >>>>>>>>
> >>>>>>>>> Openembedded-devel mailing list
> >>>>>>>>
> >>>>>>>>> Openembedded-devel@lists.openembedded.org
> >>>>>>>>
> >>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded
> >>>>>>>> -devel
> >>>>>>>>
> >>>>>>>> --
> >>>>>>>>
> >>>>>>>> _______________________________________________
> >>>>>>>>
> >>>>>>>> Openembedded-devel mailing list
> >>>>>>>>
> >>>>>>>> Openembedded-devel@lists.openembedded.org
> >>>>>>>>
> >>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-d
> >>>>>>>> evel
> >>>>>>>>
> >>> --
> >>> _______________________________________________
> >>> Openembedded-devel mailing list
> >>> Openembedded-devel@lists.openembedded.org
> >>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >>>
> >> --
> >> _______________________________________________
> >> Openembedded-devel mailing list
> >> Openembedded-devel@lists.openembedded.org
> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-22  8:30                                 ` Martin Jansa
@ 2018-02-22  8:48                                   ` Martin Jansa
  2018-02-22  9:15                                     ` Tim Orling
  0 siblings, 1 reply; 28+ messages in thread
From: Martin Jansa @ 2018-02-22  8:48 UTC (permalink / raw)
  To: Tim Orling, Joe MacDonald; +Cc: openembedded-devel

+Joe who will merge it to meta-networking

maybe you meant show stopper as libtalloc failure not the whole OE world
failing to parse because of waf-samba.bbclass (even if you don't build any
recipes using it).

FWIW: I've also sent simple fix for that to oe-core a while ago:
http://git.openembedded.org/openembedded-core-contrib/commit/?h=jansa/master&id=71debaa06cb6f0d8996527e6d3bd6634508bd4a5
that's why it isn't failing for me, but it wasn't merged to oe-core and not
sure if it ever will be.

Regards,


On Thu, Feb 22, 2018 at 9:30 AM, Martin Jansa <martin.jansa@gmail.com>
wrote:

> I've merged the fix for parsing issues immediately after sending it (6
> days ago):
> http://git.openembedded.org/meta-openembedded/commit/?id=2f7
> de931885c1b9e63c4e4238f0f7ad1388e8b6d
>
> So it shouldn't fail to parse for you if you use new enough oe-core (it
> doesn't fail for me).
>
> waf.bbclass is still broken in rocko and master, but that's different
> issue and not as fatal as missing get_waf_parallel_make function.
>
> On Thu, Feb 22, 2018 at 3:48 AM, Tim Orling <timothy.t.orling@linux.intel.
> com> wrote:
>
>> Still failing for me, which is a show stopper. :(
>>
>> > On Feb 21, 2018, at 5:36 PM, Denys Dmytriyenko <denis@denix.org> wrote:
>> >
>> > Any updates on this one yet? Thanks.
>> >
>> > On Fri, Feb 16, 2018 at 02:18:32PM -0800, Tim Orling wrote:
>> >> Expediting the fix is greatly appreciated.
>> >>
>> >> Thank you!
>> >>
>> >> --Tim
>> >>
>> >> On Fri, Feb 16, 2018 at 1:00 PM, Joshua Watt <jpewhacker@gmail.com>
>> wrote:
>> >>
>> >>> On Fri, 2018-02-16 at 21:55 +0100, Martin Jansa wrote:
>> >>>> Don't you want to update that one to use the new function from utils
>> >>>> instead of re-introducing get_waf_parallel_make?
>> >>>
>> >>> .... yes. I guess I can do that now. It didn't exist when I wrote the
>> >>> first version of this patch
>> >>>> On Fri, Feb 16, 2018 at 9:18 PM, Joshua Watt <jpewhacker@gmail.com>
>> >>>> wrote:
>> >>>>> On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
>> >>>>>> And now it will fail to parse as well:
>> >>>>>> http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d
>> >>>>>> 22b31ed85d8823b1bc9e11ccfd72b61f
>> >>>>>>
>> >>>>>> removed get_waf_parallel_make from waf.bbclass, so now all waf-
>> >>>>>> samba.bbclass users will fail to parse with:
>> >>>>>
>> >>>>> http://lists.openembedded.org/pipermail/openembedded-devel/2018-Feb
>> >>>>> ruary/116701.html will fix that as well.... We probably need to
>> >>>>> speed along that getting merged.
>> >>>>> Armin can you help with that?
>> >>>>>
>> >>>>> This patch should resolve all of the waf issues that have been
>> >>>>> discussed here, with exception of the one improvement proposed by
>> >>>>> Denys. While it should probably be improved, I don't beleive it
>> >>>>> actually affects any recipes (some please give me an example if I
>> >>>>> am wrong).
>> >>>>>
>> >>>>> Sorry for the churn. Hopefull this will be better in the future
>> >>>>> since waf and samba-waf are no longer tied together.
>> >>>>>
>> >>>>> Joshua Watt
>> >>>>>> bb.data_smart.ExpansionError: Failure expanding variable
>> >>>>>> do_compile, expression was
>> >>>>>>    python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
>> >>>>>> which triggered exception NameError: name
>> >>>>>> 'get_waf_parallel_make' is not defined
>> >>>>>> On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail
>> >>>>>> .com> wrote:
>> >>>>>>> Check this thread:
>> >>>>>>> http://lists.openembedded.org/pipermail/openembedded-commits/20
>> >>>>>>> 18-January/218460.html
>> >>>>>>>
>> >>>>>>> but my patch wasn't merged:
>> >>>>>>> http://lists.openembedded.org/pipermail/openembedded-core/2018-
>> >>>>>>> January/146974.html
>> >>>>>>> only the one from Joshua.
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> The original issue is still in rocko as well, the backported
>> >>>>>>> waf change doesn't work and causes useless warning.
>> >>>>>>>
>> >>>>>>> Either the "waf.bbclass: explicitly pass bindir and libdir if
>> >>>>>>> supported" should be reverted in rocko or all fixes for this
>> >>>>>>> should be backported to rocko once they are all in oe-core and
>> >>>>>>> meta-oe master.
>> >>>>>>>
>> >>>>>>> Regards,
>> >>>>>>>
>> >>>>>>> On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix
>> >>>>>>> .org> wrote:
>> >>>>>>>> On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
>> >>>>>>>>
>> >>>>>>>>> On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org
>> >>>>>>>>> wrote:
>> >>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>> On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
>> >>>>>>>>
>> >>>>>>>>>> On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis
>> >>>>>>>> @denix.org>
>> >>>>>>>>
>> >>>>>>>>> wrote:
>> >>>>>>>>
>> >>>>>>>>>>> On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling
>> >>>>>>>> wrote:
>> >>>>>>>>
>> >>>>>>>>>>>> Then why did ‘sudo dnf install waf’ get me past the
>> >>>>>>>> error above? And
>> >>>>>>>>
>> >>>>>>>>> why
>> >>>>>>>>
>> >>>>>>>>>>>> does Fedora have a package for it?
>> >>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>> https://src.fedoraproject.org/rpms/waf
>> >>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>> Regardless, something broke.
>> >>>>>>>>
>> >>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>> I thought so too. As waf.bbclass from oe-core looks for
>> >>>>>>>> waf binary in
>> >>>>>>>>
>> >>>>>>>>> the root
>> >>>>>>>>
>> >>>>>>>>>>> of the source package, I looked inside libtalloc 2.1.9
>> >>>>>>>> and 2.1.10 and
>> >>>>>>>>
>> >>>>>>>>> neither
>> >>>>>>>>
>> >>>>>>>>>>> of them have any "waf" files at the root. How was it
>> >>>>>>>> working before?
>> >>>>>>>>
>> >>>>>>>>> What
>> >>>>>>>>
>> >>>>>>>>>>> broke?
>> >>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>> its using waf-samba.bbclass, there is a patch floating
>> >>>>>>>> for that
>> >>>>>>>>
>> >>>>>>>>>> https://patchwork.openembedded.org/patch/148046/
>> >>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>> So, it will fix libtalloc, but some other packages that
>> >>>>>>>> still use
>> >>>>>>>>
>> >>>>>>>>> waf.bbclass
>> >>>>>>>>
>> >>>>>>>>> will keep on failing with an exception?
>> >>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>> They shouldn't. I tested all the ones I could find. The way
>> >>>>>>>> waf-samba uses
>> >>>>>>>>
>> >>>>>>>>> waf is more of the exception than the rule.... Most
>> >>>>>>>> projects will follow
>> >>>>>>>>
>> >>>>>>>>> the waf.bbclass pattern of a wscript and waf in $S, but we
>> >>>>>>>> can probably
>> >>>>>>>>
>> >>>>>>>>> parameterize it if necessary.
>> >>>>>>>>
>> >>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>> Do you know of a specific recipe that fails?
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> No, but as Andre said here earlier, it should be more
>> >>>>>>>> forgiving when ${S}/waf
>> >>>>>>>>
>> >>>>>>>> is not available or at least give a proper error message
>> >>>>>>>> instead of dumping a
>> >>>>>>>>
>> >>>>>>>> cryptic exception stack...
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> In other words, before this waf.bbclass change in oe-core it
>> >>>>>>>> was handling such
>> >>>>>>>>
>> >>>>>>>> situation just fine and there was a warning "Unable to
>> >>>>>>>> execute waf --version,
>> >>>>>>>>
>> >>>>>>>> exit code 127". Now it never reaches that code and just
>> >>>>>>>> throws an exception.
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacke
>> >>>>>>>> r@gmail.com>
>> >>>>>>>>
>> >>>>>>>>> wrote:
>> >>>>>>>>
>> >>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>> On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
>> >>>>>>>>
>> >>>>>>>>>>>>>> Seeing the same and trying to figure it out. Also,
>> >>>>>>>> seems there is
>> >>>>>>>>
>> >>>>>>>>> no
>> >>>>>>>>
>> >>>>>>>>>>>>>> recipe
>> >>>>>>>>
>> >>>>>>>>>>>>>> for waf-native, so it becomes a new required host
>> >>>>>>>> tool.
>> >>>>>>>>
>> >>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>> There is no "waf" tool, so a "waf-native" tool
>> >>>>>>>> doesn't make sense...
>> >>>>>>>>
>> >>>>>>>>>>>>> it's not how waf works. Each project has their own
>> >>>>>>>> copy of the waf
>> >>>>>>>>
>> >>>>>>>>>>>>> program, it's not something the host has to provide.
>> >>>>>>>>
>> >>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>>> On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko
>> >>>>>>>> <denis@denix.org>
>> >>>>>>>>
>> >>>>>>>>>>>>>> wrote:
>> >>>>>>>>
>> >>>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>>>> Hi,
>> >>>>>>>>
>> >>>>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>>>> I'm getting below stack dump building libtalloc
>> >>>>>>>> 2.1.10 in master.
>> >>>>>>>>
>> >>>>>>>>>>>>>>> Works
>> >>>>>>>>
>> >>>>>>>>>>>>>>> fine in
>> >>>>>>>>
>> >>>>>>>>>>>>>>> rocko with libtalloc 2.1.9. I need it for cifs-
>> >>>>>>>> utils. I'm not
>> >>>>>>>>
>> >>>>>>>>>>>>>>> familiar with
>> >>>>>>>>
>> >>>>>>>>>>>>>>> waf, any help? Thanks.
>> >>>>>>>>
>> >>>>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure: Error
>> >>>>>>>> executing a python
>> >>>>>>>>
>> >>>>>>>>>>>>>>> function
>> >>>>>>>>
>> >>>>>>>>>>>>>>> in exec_python_func() autogenerated:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>>>> The stack trace of python calls that resulted in
>> >>>>>>>> this
>> >>>>>>>>
>> >>>>>>>>>>>>>>> exception/failure
>> >>>>>>>>
>> >>>>>>>>>>>>>>> was:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> File: 'exec_python_func() autogenerated',
>> >>>>>>>> lineno: 2, function:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> <module>
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0001:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> *** 0002:waf_preconfigure(d)
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0003:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> File: '/OE/master/sources/oe-
>> >>>>>>>> core/meta/classes/waf.bbclass',
>> >>>>>>>>
>> >>>>>>>>>>>>>>> lineno: 34,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> function: waf_preconfigure
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0030:    from distutils.version import
>> >>>>>>>> StrictVersion
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0031:    subsrcdir = d.getVar('S')
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0032:    wafbin = os.path.join(subsrcdir,
>> >>>>>>>> 'waf')
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0033:    try:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> *** 0034:        result =
>> >>>>>>>> subprocess.check_output([wafbin, '
>> >>>>>>>>
>> >>>>>>>>>>>>>>> --version'],
>> >>>>>>>>
>> >>>>>>>>>>>>>>> cwd=subsrcdir, stderr=subprocess.STDOUT)
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0035:        version = result.decode('utf-
>> >>>>>>>> 8').split()[1]
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0036:        if StrictVersion(version) >=
>> >>>>>>>>
>> >>>>>>>>>>>>>>> StrictVersion("1.8.7"):
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0037:            d.setVar("WAF_EXTRA_CONF",
>> >>>>>>>> "
>> >>>>>>>>
>> >>>>>>>>>>>>>>> --bindir=${bindir}
>> >>>>>>>>
>> >>>>>>>>>>>>>>> --libdir=${libdir}")
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0038:    except
>> >>>>>>>> subprocess.CalledProcessError as e:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>> >>>>>>>> lineno: 626, function:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> check_output
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0622:        # empty string. That is
>> >>>>>>>> maintained here for
>> >>>>>>>>
>> >>>>>>>>>>>>>>> backwards
>> >>>>>>>>
>> >>>>>>>>>>>>>>> compatibility.
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0623:        kwargs['input'] = '' if
>> >>>>>>>>
>> >>>>>>>>>>>>>>> kwargs.get('universal_newlines',
>> >>>>>>>>
>> >>>>>>>>>>>>>>> False) else b''
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0624:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0625:    return run(*popenargs,
>> >>>>>>>> stdout=PIPE,
>> >>>>>>>>
>> >>>>>>>>> timeout=timeout,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> check=True,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> *** 0626:               **kwargs).stdout
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0627:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0628:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0629:class CompletedProcess(object):
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0630:    """A process that has finished
>> >>>>>>>> running.
>> >>>>>>>>
>> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>> >>>>>>>> lineno: 693, function:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> run
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0689:        if 'stdin' in kwargs:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0690:            raise ValueError('stdin
>> >>>>>>>> and input arguments
>> >>>>>>>>
>> >>>>>>>>>>>>>>> may not
>> >>>>>>>>
>> >>>>>>>>>>>>>>> both be used.')
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0691:        kwargs['stdin'] = PIPE
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0692:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> *** 0693:    with Popen(*popenargs, **kwargs)
>> >>>>>>>> as process:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0694:        try:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0695:            stdout, stderr =
>> >>>>>>>> process.communicate(input,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> timeout=timeout)
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0696:        except TimeoutExpired:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0697:            process.kill()
>> >>>>>>>>
>> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>> >>>>>>>> lineno: 947, function:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> __init__
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0943:
>> >>>>>>>> startupinfo,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> creationflags,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> shell,
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0944:
>> >>>>>>>> p2cread, p2cwrite,
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0945:
>> >>>>>>>> c2pread, c2pwrite,
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0946:
>> >>>>>>>> errread, errwrite,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> *** 0947:
>> >>>>>>>> restore_signals,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> start_new_session)
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0948:        except:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0949:            # Cleanup if the child
>> >>>>>>>> failed starting.
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0950:            for f in filter(None,
>> >>>>>>>> (self.stdin,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> self.stdout,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> self.stderr)):
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     0951:                try:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
>> >>>>>>>> lineno: 1551, function:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> _execute_child
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     1547:                                # The
>> >>>>>>>> error must be
>> >>>>>>>>
>> >>>>>>>>> from
>> >>>>>>>>
>> >>>>>>>>>>>>>>> chdir(cwd).
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     1548:
>> >>>>>>>> err_msg += ': ' +
>> >>>>>>>>
>> >>>>>>>>>>>>>>> repr(cwd)
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     1549:                            else:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     1550:
>> >>>>>>>> err_msg += ': ' +
>> >>>>>>>>
>> >>>>>>>>>>>>>>> repr(orig_executable)
>> >>>>>>>>
>> >>>>>>>>>>>>>>> *** 1551:                    raise
>> >>>>>>>> child_exception_type(errno_
>> >>>>>>>>
>> >>>>>>>>> num,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> err_msg)
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     1552:                raise
>> >>>>>>>> child_exception_type(err_msg)
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     1553:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     1554:
>> >>>>>>>>
>> >>>>>>>>>>>>>>>     1555:        def _handle_exitstatus(self,
>> >>>>>>>> sts,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> _WIFSIGNALED=os.WIFSIGNALED,
>> >>>>>>>>
>> >>>>>>>>>>>>>>> Exception: FileNotFoundError: [Errno 2] No such
>> >>>>>>>> file or
>> >>>>>>>>
>> >>>>>>>>> directory:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> '/OE/master/build/tmp-glibc/work/armv7ahf-neon-
>> >>>>>>>> oe-linux-
>> >>>>>>>>
>> >>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
>> >>>>>>>>
>> >>>>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure:
>> >>>>>>>> Function failed:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> waf_preconfigure
>> >>>>>>>>
>> >>>>>>>>>>>>>>> ERROR: Logfile of failure stored in:
>> >>>>>>>>
>> >>>>>>>>>>>>>>> /OE/master/build/tmp-glibc/work/armv7ahf-neon-
>> >>>>>>>> oe-linux-
>> >>>>>>>>
>> >>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-
>> >>>>>>>> r0/temp/log.do_configure.52699
>> >>>>>>>>
>> >>>>>>>>>>>>>>> ERROR: Task
>> >>>>>>>>
>> >>>>>>>>>>>>>>> (/OE/master/sources/meta-openembedded/meta-
>> >>>>>>>> networking/recipes-
>> >>>>>>>>
>> >>>>>>>>>>>>>>>
>> >>>>>>>> support/libtalloc/libtalloc_2.1.10.bb:do_configure)
>> >>>>>>>>
>> >>>>>>>>>>>>>>> failed with exit code '1'
>> >>>>>>>>
>> >>>>>>>>>>>>>>> --
>> >>>>>>>>
>> >>>>>>>>>>>>>>> _______________________________________________
>> >>>>>>>>
>> >>>>>>>>>>>>>>> Openembedded-devel mailing list
>> >>>>>>>>
>> >>>>>>>>>>>>>>> Openembedded-devel@lists.openembedded.org
>> >>>>>>>>
>> >>>>>>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/o
>> >>>>>>>> penembedded-devel
>> >>>>>>>>
>> >>>>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>>>> --
>> >>>>>>>>
>> >>>>>>>>>>> _______________________________________________
>> >>>>>>>>
>> >>>>>>>>>>> Openembedded-devel mailing list
>> >>>>>>>>
>> >>>>>>>>>>> Openembedded-devel@lists.openembedded.org
>> >>>>>>>>
>> >>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembe
>> >>>>>>>> dded-devel
>> >>>>>>>>
>> >>>>>>>>>>
>> >>>>>>>>
>> >>>>>>>>> --
>> >>>>>>>>
>> >>>>>>>>> _______________________________________________
>> >>>>>>>>
>> >>>>>>>>> Openembedded-devel mailing list
>> >>>>>>>>
>> >>>>>>>>> Openembedded-devel@lists.openembedded.org
>> >>>>>>>>
>> >>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded
>> >>>>>>>> -devel
>> >>>>>>>>
>> >>>>>>>> --
>> >>>>>>>>
>> >>>>>>>> _______________________________________________
>> >>>>>>>>
>> >>>>>>>> Openembedded-devel mailing list
>> >>>>>>>>
>> >>>>>>>> Openembedded-devel@lists.openembedded.org
>> >>>>>>>>
>> >>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-d
>> >>>>>>>> evel
>> >>>>>>>>
>> >>> --
>> >>> _______________________________________________
>> >>> Openembedded-devel mailing list
>> >>> Openembedded-devel@lists.openembedded.org
>> >>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>> >>>
>> >> --
>> >> _______________________________________________
>> >> Openembedded-devel mailing list
>> >> Openembedded-devel@lists.openembedded.org
>> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>> > --
>> > _______________________________________________
>> > Openembedded-devel mailing list
>> > Openembedded-devel@lists.openembedded.org
>> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>
>> --
>> _______________________________________________
>> Openembedded-devel mailing list
>> Openembedded-devel@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>>
>
>


^ permalink raw reply	[flat|nested] 28+ messages in thread

* Re: libtalloc failure due to waf
  2018-02-22  8:48                                   ` Martin Jansa
@ 2018-02-22  9:15                                     ` Tim Orling
  0 siblings, 0 replies; 28+ messages in thread
From: Tim Orling @ 2018-02-22  9:15 UTC (permalink / raw)
  To: Martin Jansa; +Cc: openembedded-devel

I automatically sync about 12 layers every day. This is a show stopper
because it breaks that workflow and forces a deviation from just building
on “master”. I am now about two months behind “master” for various reasons,
but this is the one remaining blocker. I have zero interest in carrying
local patches for this. Just frustrated. I wish I had a suggestion for a
better way.

In particular, this points out the frailty of bbclasses not having a
mechanism like bbapends. It is invasive to fix this locally. Or I am just
being dumb. And frustrated. And should be sleeping now.
On Thu, Feb 22, 2018 at 12:48 AM Martin Jansa <martin.jansa@gmail.com>
wrote:

> +Joe who will merge it to meta-networking
>
> maybe you meant show stopper as libtalloc failure not the whole OE world
> failing to parse because of waf-samba.bbclass (even if you don't build any
> recipes using it).
>
> FWIW: I've also sent simple fix for that to oe-core a while ago:
>
> http://git.openembedded.org/openembedded-core-contrib/commit/?h=jansa/master&id=71debaa06cb6f0d8996527e6d3bd6634508bd4a5
> that's why it isn't failing for me, but it wasn't merged to oe-core and not
> sure if it ever will be.
>
> Regards,
>
>
> On Thu, Feb 22, 2018 at 9:30 AM, Martin Jansa <martin.jansa@gmail.com>
> wrote:
>
> > I've merged the fix for parsing issues immediately after sending it (6
> > days ago):
> > http://git.openembedded.org/meta-openembedded/commit/?id=2f7
> > de931885c1b9e63c4e4238f0f7ad1388e8b6d
> >
> > So it shouldn't fail to parse for you if you use new enough oe-core (it
> > doesn't fail for me).
> >
> > waf.bbclass is still broken in rocko and master, but that's different
> > issue and not as fatal as missing get_waf_parallel_make function.
> >
> > On Thu, Feb 22, 2018 at 3:48 AM, Tim Orling
> <timothy.t.orling@linux.intel.
> > com> wrote:
> >
> >> Still failing for me, which is a show stopper. :(
> >>
> >> > On Feb 21, 2018, at 5:36 PM, Denys Dmytriyenko <denis@denix.org>
> wrote:
> >> >
> >> > Any updates on this one yet? Thanks.
> >> >
> >> > On Fri, Feb 16, 2018 at 02:18:32PM -0800, Tim Orling wrote:
> >> >> Expediting the fix is greatly appreciated.
> >> >>
> >> >> Thank you!
> >> >>
> >> >> --Tim
> >> >>
> >> >> On Fri, Feb 16, 2018 at 1:00 PM, Joshua Watt <jpewhacker@gmail.com>
> >> wrote:
> >> >>
> >> >>> On Fri, 2018-02-16 at 21:55 +0100, Martin Jansa wrote:
> >> >>>> Don't you want to update that one to use the new function from
> utils
> >> >>>> instead of re-introducing get_waf_parallel_make?
> >> >>>
> >> >>> .... yes. I guess I can do that now. It didn't exist when I wrote
> the
> >> >>> first version of this patch
> >> >>>> On Fri, Feb 16, 2018 at 9:18 PM, Joshua Watt <jpewhacker@gmail.com
> >
> >> >>>> wrote:
> >> >>>>> On Fri, 2018-02-16 at 21:08 +0100, Martin Jansa wrote:
> >> >>>>>> And now it will fail to parse as well:
> >> >>>>>>
> http://git.openembedded.org/openembedded-core/commit/?id=ccd1142d
> >> >>>>>> 22b31ed85d8823b1bc9e11ccfd72b61f
> >> >>>>>>
> >> >>>>>> removed get_waf_parallel_make from waf.bbclass, so now all waf-
> >> >>>>>> samba.bbclass users will fail to parse with:
> >> >>>>>
> >> >>>>>
> http://lists.openembedded.org/pipermail/openembedded-devel/2018-Feb
> >> >>>>> ruary/116701.html will fix that as well.... We probably need to
> >> >>>>> speed along that getting merged.
> >> >>>>> Armin can you help with that?
> >> >>>>>
> >> >>>>> This patch should resolve all of the waf issues that have been
> >> >>>>> discussed here, with exception of the one improvement proposed by
> >> >>>>> Denys. While it should probably be improved, I don't beleive it
> >> >>>>> actually affects any recipes (some please give me an example if I
> >> >>>>> am wrong).
> >> >>>>>
> >> >>>>> Sorry for the churn. Hopefull this will be better in the future
> >> >>>>> since waf and samba-waf are no longer tied together.
> >> >>>>>
> >> >>>>> Joshua Watt
> >> >>>>>> bb.data_smart.ExpansionError: Failure expanding variable
> >> >>>>>> do_compile, expression was
> >> >>>>>>    python ./buildtools/bin/waf ${@get_waf_parallel_make(d)}
> >> >>>>>> which triggered exception NameError: name
> >> >>>>>> 'get_waf_parallel_make' is not defined
> >> >>>>>> On Fri, Feb 16, 2018 at 9:45 AM, Martin Jansa <martin.jansa@gmail
> >> >>>>>> .com> wrote:
> >> >>>>>>> Check this thread:
> >> >>>>>>> http://lists.openembedded.org/pipermail/openembedded-commits/20
> >> >>>>>>> 18-January/218460.html
> >> >>>>>>>
> >> >>>>>>> but my patch wasn't merged:
> >> >>>>>>> http://lists.openembedded.org/pipermail/openembedded-core/2018-
> >> >>>>>>> January/146974.html
> >> >>>>>>> only the one from Joshua.
> >> >>>>>>>
> >> >>>>>>>
> >> >>>>>>> The original issue is still in rocko as well, the backported
> >> >>>>>>> waf change doesn't work and causes useless warning.
> >> >>>>>>>
> >> >>>>>>> Either the "waf.bbclass: explicitly pass bindir and libdir if
> >> >>>>>>> supported" should be reverted in rocko or all fixes for this
> >> >>>>>>> should be backported to rocko once they are all in oe-core and
> >> >>>>>>> meta-oe master.
> >> >>>>>>>
> >> >>>>>>> Regards,
> >> >>>>>>>
> >> >>>>>>> On Fri, Feb 16, 2018 at 2:03 AM, Denys Dmytriyenko <denis@denix
> >> >>>>>>> .org> wrote:
> >> >>>>>>>> On Thu, Feb 15, 2018 at 06:37:11PM -0600, Joshua Watt wrote:
> >> >>>>>>>>
> >> >>>>>>>>> On Feb 15, 2018 17:42, "Denys Dmytriyenko" <denis@denix.org
> >> >>>>>>>>> wrote:
> >> >>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>> On Thu, Feb 15, 2018 at 03:30:06PM -0800, Khem Raj wrote:
> >> >>>>>>>>
> >> >>>>>>>>>> On Thu, Feb 15, 2018 at 3:24 PM, Denys Dmytriyenko <denis
> >> >>>>>>>> @denix.org>
> >> >>>>>>>>
> >> >>>>>>>>> wrote:
> >> >>>>>>>>
> >> >>>>>>>>>>> On Thu, Feb 15, 2018 at 11:20:49PM +0000, Tim Orling
> >> >>>>>>>> wrote:
> >> >>>>>>>>
> >> >>>>>>>>>>>> Then why did ‘sudo dnf install waf’ get me past the
> >> >>>>>>>> error above? And
> >> >>>>>>>>
> >> >>>>>>>>> why
> >> >>>>>>>>
> >> >>>>>>>>>>>> does Fedora have a package for it?
> >> >>>>>>>>
> >> >>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>> https://src.fedoraproject.org/rpms/waf
> >> >>>>>>>>
> >> >>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>> Regardless, something broke.
> >> >>>>>>>>
> >> >>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>> I thought so too. As waf.bbclass from oe-core looks for
> >> >>>>>>>> waf binary in
> >> >>>>>>>>
> >> >>>>>>>>> the root
> >> >>>>>>>>
> >> >>>>>>>>>>> of the source package, I looked inside libtalloc 2.1.9
> >> >>>>>>>> and 2.1.10 and
> >> >>>>>>>>
> >> >>>>>>>>> neither
> >> >>>>>>>>
> >> >>>>>>>>>>> of them have any "waf" files at the root. How was it
> >> >>>>>>>> working before?
> >> >>>>>>>>
> >> >>>>>>>>> What
> >> >>>>>>>>
> >> >>>>>>>>>>> broke?
> >> >>>>>>>>
> >> >>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>> its using waf-samba.bbclass, there is a patch floating
> >> >>>>>>>> for that
> >> >>>>>>>>
> >> >>>>>>>>>> https://patchwork.openembedded.org/patch/148046/
> >> >>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>> So, it will fix libtalloc, but some other packages that
> >> >>>>>>>> still use
> >> >>>>>>>>
> >> >>>>>>>>> waf.bbclass
> >> >>>>>>>>
> >> >>>>>>>>> will keep on failing with an exception?
> >> >>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>> They shouldn't. I tested all the ones I could find. The way
> >> >>>>>>>> waf-samba uses
> >> >>>>>>>>
> >> >>>>>>>>> waf is more of the exception than the rule.... Most
> >> >>>>>>>> projects will follow
> >> >>>>>>>>
> >> >>>>>>>>> the waf.bbclass pattern of a wscript and waf in $S, but we
> >> >>>>>>>> can probably
> >> >>>>>>>>
> >> >>>>>>>>> parameterize it if necessary.
> >> >>>>>>>>
> >> >>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>> Do you know of a specific recipe that fails?
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>> No, but as Andre said here earlier, it should be more
> >> >>>>>>>> forgiving when ${S}/waf
> >> >>>>>>>>
> >> >>>>>>>> is not available or at least give a proper error message
> >> >>>>>>>> instead of dumping a
> >> >>>>>>>>
> >> >>>>>>>> cryptic exception stack...
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>> In other words, before this waf.bbclass change in oe-core it
> >> >>>>>>>> was handling such
> >> >>>>>>>>
> >> >>>>>>>> situation just fine and there was a warning "Unable to
> >> >>>>>>>> execute waf --version,
> >> >>>>>>>>
> >> >>>>>>>> exit code 127". Now it never reaches that code and just
> >> >>>>>>>> throws an exception.
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>> On Thu, Feb 15, 2018 at 3:16 PM Joshua Watt <jpewhacke
> >> >>>>>>>> r@gmail.com>
> >> >>>>>>>>
> >> >>>>>>>>> wrote:
> >> >>>>>>>>
> >> >>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>> On Thu, 2018-02-15 at 23:10 +0000, Tim Orling wrote:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>> Seeing the same and trying to figure it out. Also,
> >> >>>>>>>> seems there is
> >> >>>>>>>>
> >> >>>>>>>>> no
> >> >>>>>>>>
> >> >>>>>>>>>>>>>> recipe
> >> >>>>>>>>
> >> >>>>>>>>>>>>>> for waf-native, so it becomes a new required host
> >> >>>>>>>> tool.
> >> >>>>>>>>
> >> >>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>> There is no "waf" tool, so a "waf-native" tool
> >> >>>>>>>> doesn't make sense...
> >> >>>>>>>>
> >> >>>>>>>>>>>>> it's not how waf works. Each project has their own
> >> >>>>>>>> copy of the waf
> >> >>>>>>>>
> >> >>>>>>>>>>>>> program, it's not something the host has to provide.
> >> >>>>>>>>
> >> >>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>> On Thu, Feb 15, 2018 at 2:57 PM Denys Dmytriyenko
> >> >>>>>>>> <denis@denix.org>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>> wrote:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> Hi,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> I'm getting below stack dump building libtalloc
> >> >>>>>>>> 2.1.10 in master.
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> Works
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> fine in
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> rocko with libtalloc 2.1.9. I need it for cifs-
> >> >>>>>>>> utils. I'm not
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> familiar with
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> waf, any help? Thanks.
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure: Error
> >> >>>>>>>> executing a python
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> function
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> in exec_python_func() autogenerated:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> The stack trace of python calls that resulted in
> >> >>>>>>>> this
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> exception/failure
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> was:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> File: 'exec_python_func() autogenerated',
> >> >>>>>>>> lineno: 2, function:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> <module>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0001:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> *** 0002:waf_preconfigure(d)
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0003:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> File: '/OE/master/sources/oe-
> >> >>>>>>>> core/meta/classes/waf.bbclass',
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> lineno: 34,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> function: waf_preconfigure
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0030:    from distutils.version import
> >> >>>>>>>> StrictVersion
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0031:    subsrcdir = d.getVar('S')
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0032:    wafbin = os.path.join(subsrcdir,
> >> >>>>>>>> 'waf')
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0033:    try:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> *** 0034:        result =
> >> >>>>>>>> subprocess.check_output([wafbin, '
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> --version'],
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> cwd=subsrcdir, stderr=subprocess.STDOUT)
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0035:        version = result.decode('utf-
> >> >>>>>>>> 8').split()[1]
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0036:        if StrictVersion(version) >=
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> StrictVersion("1.8.7"):
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0037:            d.setVar("WAF_EXTRA_CONF",
> >> >>>>>>>> "
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> --bindir=${bindir}
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> --libdir=${libdir}")
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0038:    except
> >> >>>>>>>> subprocess.CalledProcessError as e:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
> >> >>>>>>>> lineno: 626, function:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> check_output
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0622:        # empty string. That is
> >> >>>>>>>> maintained here for
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> backwards
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> compatibility.
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0623:        kwargs['input'] = '' if
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> kwargs.get('universal_newlines',
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> False) else b''
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0624:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0625:    return run(*popenargs,
> >> >>>>>>>> stdout=PIPE,
> >> >>>>>>>>
> >> >>>>>>>>> timeout=timeout,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> check=True,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> *** 0626:               **kwargs).stdout
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0627:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0628:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0629:class CompletedProcess(object):
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0630:    """A process that has finished
> >> >>>>>>>> running.
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
> >> >>>>>>>> lineno: 693, function:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> run
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0689:        if 'stdin' in kwargs:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0690:            raise ValueError('stdin
> >> >>>>>>>> and input arguments
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> may not
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> both be used.')
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0691:        kwargs['stdin'] = PIPE
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0692:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> *** 0693:    with Popen(*popenargs, **kwargs)
> >> >>>>>>>> as process:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0694:        try:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0695:            stdout, stderr =
> >> >>>>>>>> process.communicate(input,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> timeout=timeout)
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0696:        except TimeoutExpired:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0697:            process.kill()
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
> >> >>>>>>>> lineno: 947, function:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> __init__
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0943:
> >> >>>>>>>> startupinfo,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> creationflags,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> shell,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0944:
> >> >>>>>>>> p2cread, p2cwrite,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0945:
> >> >>>>>>>> c2pread, c2pwrite,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0946:
> >> >>>>>>>> errread, errwrite,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> *** 0947:
> >> >>>>>>>> restore_signals,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> start_new_session)
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0948:        except:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0949:            # Cleanup if the child
> >> >>>>>>>> failed starting.
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0950:            for f in filter(None,
> >> >>>>>>>> (self.stdin,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> self.stdout,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> self.stderr)):
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     0951:                try:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> File: '/usr/lib/python3.5/subprocess.py',
> >> >>>>>>>> lineno: 1551, function:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> _execute_child
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     1547:                                # The
> >> >>>>>>>> error must be
> >> >>>>>>>>
> >> >>>>>>>>> from
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> chdir(cwd).
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     1548:
> >> >>>>>>>> err_msg += ': ' +
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> repr(cwd)
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     1549:                            else:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     1550:
> >> >>>>>>>> err_msg += ': ' +
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> repr(orig_executable)
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> *** 1551:                    raise
> >> >>>>>>>> child_exception_type(errno_
> >> >>>>>>>>
> >> >>>>>>>>> num,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> err_msg)
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     1552:                raise
> >> >>>>>>>> child_exception_type(err_msg)
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     1553:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     1554:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>     1555:        def _handle_exitstatus(self,
> >> >>>>>>>> sts,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> _WIFSIGNALED=os.WIFSIGNALED,
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> Exception: FileNotFoundError: [Errno 2] No such
> >> >>>>>>>> file or
> >> >>>>>>>>
> >> >>>>>>>>> directory:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> '/OE/master/build/tmp-glibc/work/armv7ahf-neon-
> >> >>>>>>>> oe-linux-
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-r0/talloc-2.1.10/waf'
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> ERROR: libtalloc-2.1.10-r0 do_configure:
> >> >>>>>>>> Function failed:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> waf_preconfigure
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> ERROR: Logfile of failure stored in:
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> /OE/master/build/tmp-glibc/work/armv7ahf-neon-
> >> >>>>>>>> oe-linux-
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> gnueabi/libtalloc/2.1.10-
> >> >>>>>>>> r0/temp/log.do_configure.52699
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> ERROR: Task
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> (/OE/master/sources/meta-openembedded/meta-
> >> >>>>>>>> networking/recipes-
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>> support/libtalloc/libtalloc_2.1.10.bb:do_configure)
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> failed with exit code '1'
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> --
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> _______________________________________________
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> Openembedded-devel mailing list
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> Openembedded-devel@lists.openembedded.org
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/o
> >> >>>>>>>> penembedded-devel
> >> >>>>>>>>
> >> >>>>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>>>> --
> >> >>>>>>>>
> >> >>>>>>>>>>> _______________________________________________
> >> >>>>>>>>
> >> >>>>>>>>>>> Openembedded-devel mailing list
> >> >>>>>>>>
> >> >>>>>>>>>>> Openembedded-devel@lists.openembedded.org
> >> >>>>>>>>
> >> >>>>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembe
> >> >>>>>>>> dded-devel
> >> >>>>>>>>
> >> >>>>>>>>>>
> >> >>>>>>>>
> >> >>>>>>>>> --
> >> >>>>>>>>
> >> >>>>>>>>> _______________________________________________
> >> >>>>>>>>
> >> >>>>>>>>> Openembedded-devel mailing list
> >> >>>>>>>>
> >> >>>>>>>>> Openembedded-devel@lists.openembedded.org
> >> >>>>>>>>
> >> >>>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded
> >> >>>>>>>> -devel
> >> >>>>>>>>
> >> >>>>>>>> --
> >> >>>>>>>>
> >> >>>>>>>> _______________________________________________
> >> >>>>>>>>
> >> >>>>>>>> Openembedded-devel mailing list
> >> >>>>>>>>
> >> >>>>>>>> Openembedded-devel@lists.openembedded.org
> >> >>>>>>>>
> >> >>>>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-d
> >> >>>>>>>> evel
> >> >>>>>>>>
> >> >>> --
> >> >>> _______________________________________________
> >> >>> Openembedded-devel mailing list
> >> >>> Openembedded-devel@lists.openembedded.org
> >> >>> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >> >>>
> >> >> --
> >> >> _______________________________________________
> >> >> Openembedded-devel mailing list
> >> >> Openembedded-devel@lists.openembedded.org
> >> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >> > --
> >> > _______________________________________________
> >> > Openembedded-devel mailing list
> >> > Openembedded-devel@lists.openembedded.org
> >> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >>
> >> --
> >> _______________________________________________
> >> Openembedded-devel mailing list
> >> Openembedded-devel@lists.openembedded.org
> >> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >>
> >
> >
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2018-02-22  9:15 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-15 22:53 libtalloc failure due to waf Denys Dmytriyenko
2018-02-15 23:10 ` Tim Orling
2018-02-15 23:16   ` Joshua Watt
2018-02-15 23:20     ` Tim Orling
2018-02-15 23:24       ` Denys Dmytriyenko
2018-02-15 23:30         ` Khem Raj
2018-02-15 23:33           ` Denys Dmytriyenko
2018-02-16  0:37             ` Joshua Watt
2018-02-16  1:03               ` Denys Dmytriyenko
2018-02-16  8:45                 ` Martin Jansa
2018-02-16 20:08                   ` Martin Jansa
2018-02-16 20:18                     ` Joshua Watt
2018-02-16 20:55                       ` Martin Jansa
2018-02-16 21:00                         ` Joshua Watt
2018-02-16 22:18                           ` Tim Orling
2018-02-22  1:36                             ` Denys Dmytriyenko
2018-02-22  2:48                               ` Tim Orling
2018-02-22  3:10                                 ` Joshua Watt
2018-02-22  8:30                                 ` Martin Jansa
2018-02-22  8:48                                   ` Martin Jansa
2018-02-22  9:15                                     ` Tim Orling
2018-02-15 23:31         ` Denys Dmytriyenko
2018-02-15 23:35         ` Joshua Watt
2018-02-15 23:32       ` Joshua Watt
2018-02-15 23:20   ` Christopher Larson
2018-02-15 23:24   ` Andre McCurdy
2018-02-15 23:14 ` Joshua Watt
2018-02-15 23:27 ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.