Openembedded Bitbake Development
 help / color / mirror / Atom feed
From: Robert Yang <liezhi.yang@windriver.com>
To: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: bitbake-devel@lists.openembedded.org
Subject: Re: [PATCH 1/1] cooker.py: change working dir before use pyinotify
Date: Mon, 6 Jul 2015 18:10:44 +0800	[thread overview]
Message-ID: <559A5424.5020207@windriver.com> (raw)
In-Reply-To: <55406F17.5030505@windriver.com>



On 04/29/2015 01:41 PM, Robert Yang wrote:
>
>
> On 04/24/2015 06:25 PM, Richard Purdie wrote:
>> On Tue, 2015-04-21 at 02:07 -0700, Robert Yang wrote:
>>> Fixed:
>>> $ cd tmp/work/core2-64-poky-linux/bash/4.3-r1
>>> $ bitbake bash -cclean
>>>
>>> ERROR: Running idle function
>>> Traceback (most recent call last):
>>>    File "/buildarea/lyang1/poky/bitbake/lib/pyinotify.py", line 1317, in
>>> Notifier.process_events():
>>>                       continue
>>>      >            revent = self._sys_proc_fun(raw_event)  # system processings
>>>                   if watch_ and watch_.proc_fun:
>>>    File "/buildarea/lyang1/poky/bitbake/lib/pyinotify.py", line 686, in
>>> _SysProcessEvent.__call__(event=<_RawEvent cookie=0 mask=0x40000200
>>> name=build wd=5 >):
>>>               # 3- default call method process_default
>>>      >        return self.process_default(event)
>>>
>>>    File "/buildarea/lyang1/poky/bitbake/lib/pyinotify.py", line 897, in
>>> _SysProcessEvent.process_default(raw_event=<_RawEvent cookie=0
>>> mask=0x40000200 name=build wd=5 >, to_append=None):
>>>                   dict_.update(to_append)
>>>      >        return Event(dict_)
>>>
>>>    File "/buildarea/lyang1/poky/bitbake/lib/pyinotify.py", line 628, in
>>> Event.__init__(raw={'path': '.', 'wd': 5, 'mask': 1073742336, 'name':
>>> 'build', 'dir': True}):
>>>                       self.pathname = os.path.abspath(os.path.join(self.path,
>>>      >                                                             self.name))
>>>                   else:
>>>    File "/usr/lib/python2.7/posixpath.py", line 347, in abspath(path='./build'):
>>>               else:
>>>      >            cwd = os.getcwd()
>>>               path = join(cwd, path)
>>> OSError: [Errno 2] No such file or directory
>>>
>>> And we can't run bitbake again:
>>> ERROR: Only one copy of bitbake should be run against a build directory
>>>
>>> Chaneg working dir to TOPDIR rather than the dir which runs the command
>>> will fix the problem. Move self.initConfigurationData ahead, otherwise,
>>> there is no self.data.
>>>
>>> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
>>> ---
>>>   bitbake/lib/bb/cooker.py |    6 +++---
>>>   1 file changed, 3 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
>>> index 9c101f2..678a2f7 100644
>>> --- a/bitbake/lib/bb/cooker.py
>>> +++ b/bitbake/lib/bb/cooker.py
>>> @@ -121,6 +121,9 @@ class BBCooker:
>>>
>>>           self.configuration = configuration
>>>
>>> +        self.initConfigurationData()
>>> +        os.chdir(self.data.expand('${TOPDIR}'))
>>
>> data.getVar("TOPDIR", True) please ;-)
>
> Thanks, I updated it in the repo:
>
>    git://git.pokylinux.org/poky-contrib rbt/cwd

ping.

// Robert

>
> diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py
> index 6762239..fbfce6a 100644
> --- a/bitbake/lib/bb/cooker.py
> +++ b/bitbake/lib/bb/cooker.py
> @@ -121,6 +121,9 @@ class BBCooker:
>
>           self.configuration = configuration
>
> +        self.initConfigurationData()
> +        os.chdir(self.data.getVar("TOPDIR", True))
> +
>           self.configwatcher = pyinotify.WatchManager()
>           self.configwatcher.bbseen = []
>           self.confignotifier = pyinotify.Notifier(self.configwatcher,
> self.config_notifications)
> @@ -131,9 +134,6 @@ class BBCooker:
>           self.watcher.bbseen = []
>           self.notifier = pyinotify.Notifier(self.watcher, self.notifications)
>
> -
> -        self.initConfigurationData()
> -
>           self.inotify_modified_files = []
>
>           def _process_inotify_updates(server, notifier_list, abort):
>
>
> // Robert
>
>>
>> Cheers,
>>
>> Richard
>>
>>
>>


      reply	other threads:[~2015-07-06 10:10 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-21  9:07 [PATCH 0/1] cooker.py: change working dir before use pyinotify Robert Yang
2015-04-21  9:07 ` [PATCH 1/1] " Robert Yang
2015-04-24 10:25   ` Richard Purdie
2015-04-29  5:41     ` Robert Yang
2015-07-06 10:10       ` Robert Yang [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=559A5424.5020207@windriver.com \
    --to=liezhi.yang@windriver.com \
    --cc=bitbake-devel@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox