diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2010-08-16 16:37:29 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-08-19 22:36:25 +0100 |
commit | b6bfe1420517aa5aa190e17dca40ea70f09effd9 (patch) | |
tree | 2591a26f18290e8d929517df71f24645394c57fb /bitbake/lib/bb/event.py | |
parent | a45e1d54e19d4cd728e90df929b212e41ef70d4b (diff) | |
download | poky-b6bfe1420517aa5aa190e17dca40ea70f09effd9.tar.gz |
bitbake: Switch to use subprocess for forking tasks and FAKEROOTENV to run shell and python under a fakeroot environment
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'bitbake/lib/bb/event.py')
-rw-r--r-- | bitbake/lib/bb/event.py | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/bitbake/lib/bb/event.py b/bitbake/lib/bb/event.py index 7731649eff..f5ba6eab3c 100644 --- a/bitbake/lib/bb/event.py +++ b/bitbake/lib/bb/event.py | |||
@@ -31,6 +31,7 @@ import pickle | |||
31 | # the runqueue forks off. | 31 | # the runqueue forks off. |
32 | worker_pid = 0 | 32 | worker_pid = 0 |
33 | worker_pipe = None | 33 | worker_pipe = None |
34 | useStdout = True | ||
34 | 35 | ||
35 | class Event: | 36 | class Event: |
36 | """Base class for events""" | 37 | """Base class for events""" |
@@ -102,15 +103,12 @@ def fire(event, d): | |||
102 | 103 | ||
103 | def worker_fire(event, d): | 104 | def worker_fire(event, d): |
104 | data = "<event>" + pickle.dumps(event) + "</event>" | 105 | data = "<event>" + pickle.dumps(event) + "</event>" |
105 | try: | 106 | worker_pipe.write(data) |
106 | if os.write(worker_pipe, data) != len (data): | 107 | worker_pipe.flush() |
107 | print("Error sending event to server (short write)") | ||
108 | except OSError: | ||
109 | sys.exit(1) | ||
110 | 108 | ||
111 | def fire_from_worker(event, d): | 109 | def fire_from_worker(event, d): |
112 | if not event.startswith("<event>") or not event.endswith("</event>"): | 110 | if not event.startswith("<event>") or not event.endswith("</event>"): |
113 | print("Error, not an event") | 111 | print("Error, not an event %s" % event) |
114 | return | 112 | return |
115 | event = pickle.loads(event[7:-8]) | 113 | event = pickle.loads(event[7:-8]) |
116 | fire_ui_handlers(event, d) | 114 | fire_ui_handlers(event, d) |
@@ -140,6 +138,7 @@ def remove(name, handler): | |||
140 | def register_UIHhandler(handler): | 138 | def register_UIHhandler(handler): |
141 | bb.event._ui_handler_seq = bb.event._ui_handler_seq + 1 | 139 | bb.event._ui_handler_seq = bb.event._ui_handler_seq + 1 |
142 | _ui_handlers[_ui_handler_seq] = handler | 140 | _ui_handlers[_ui_handler_seq] = handler |
141 | bb.event.useStdout = False | ||
143 | return _ui_handler_seq | 142 | return _ui_handler_seq |
144 | 143 | ||
145 | def unregister_UIHhandler(handlerNum): | 144 | def unregister_UIHhandler(handlerNum): |