diff options
author | Richard Purdie <richard@openedhand.com> | 2007-04-01 15:04:49 +0000 |
---|---|---|
committer | Richard Purdie <richard@openedhand.com> | 2007-04-01 15:04:49 +0000 |
commit | 7371e6323c3fb6b0545712e3cf84606644073e77 (patch) | |
tree | e08f25669ec0f0e9d11334909f3b68c0ab6aca19 /bitbake/lib/bb/shell.py | |
parent | 8b36dc217443aeeec8493d39561d2bb010336774 (diff) | |
download | poky-7371e6323c3fb6b0545712e3cf84606644073e77.tar.gz |
bitbake: Update to 1.8.1 (inc. various bug fixes, epoch support)
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1419 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'bitbake/lib/bb/shell.py')
-rw-r--r-- | bitbake/lib/bb/shell.py | 25 |
1 files changed, 9 insertions, 16 deletions
diff --git a/bitbake/lib/bb/shell.py b/bitbake/lib/bb/shell.py index 32a773064b..fc213c3f4a 100644 --- a/bitbake/lib/bb/shell.py +++ b/bitbake/lib/bb/shell.py | |||
@@ -104,10 +104,11 @@ class BitBakeShellCommands: | |||
104 | 104 | ||
105 | def _findProvider( self, item ): | 105 | def _findProvider( self, item ): |
106 | self._checkParsed() | 106 | self._checkParsed() |
107 | # Need to use taskData for this information | ||
107 | preferred = data.getVar( "PREFERRED_PROVIDER_%s" % item, cooker.configuration.data, 1 ) | 108 | preferred = data.getVar( "PREFERRED_PROVIDER_%s" % item, cooker.configuration.data, 1 ) |
108 | if not preferred: preferred = item | 109 | if not preferred: preferred = item |
109 | try: | 110 | try: |
110 | lv, lf, pv, pf = Providers.findBestProvider(preferred, cooker.configuration.data, cooker.status, cooker.build_cache_fail) | 111 | lv, lf, pv, pf = Providers.findBestProvider(preferred, cooker.configuration.data, cooker.status) |
111 | except KeyError: | 112 | except KeyError: |
112 | if item in cooker.status.providers: | 113 | if item in cooker.status.providers: |
113 | pf = cooker.status.providers[item][0] | 114 | pf = cooker.status.providers[item][0] |
@@ -144,6 +145,7 @@ class BitBakeShellCommands: | |||
144 | 145 | ||
145 | def build( self, params, cmd = "build" ): | 146 | def build( self, params, cmd = "build" ): |
146 | """Build a providee""" | 147 | """Build a providee""" |
148 | global last_exception | ||
147 | globexpr = params[0] | 149 | globexpr = params[0] |
148 | self._checkParsed() | 150 | self._checkParsed() |
149 | names = globfilter( cooker.status.pkg_pn.keys(), globexpr ) | 151 | names = globfilter( cooker.status.pkg_pn.keys(), globexpr ) |
@@ -152,8 +154,6 @@ class BitBakeShellCommands: | |||
152 | 154 | ||
153 | oldcmd = cooker.configuration.cmd | 155 | oldcmd = cooker.configuration.cmd |
154 | cooker.configuration.cmd = cmd | 156 | cooker.configuration.cmd = cmd |
155 | cooker.build_cache = [] | ||
156 | cooker.build_cache_fail = [] | ||
157 | 157 | ||
158 | td = taskdata.TaskData(cooker.configuration.abort) | 158 | td = taskdata.TaskData(cooker.configuration.abort) |
159 | 159 | ||
@@ -170,24 +170,21 @@ class BitBakeShellCommands: | |||
170 | 170 | ||
171 | td.add_unresolved(cooker.configuration.data, cooker.status) | 171 | td.add_unresolved(cooker.configuration.data, cooker.status) |
172 | 172 | ||
173 | rq = runqueue.RunQueue() | 173 | rq = runqueue.RunQueue(cooker, cooker.configuration.data, cooker.status, td, tasks) |
174 | rq.prepare_runqueue(cooker, cooker.configuration.data, cooker.status, td, tasks) | 174 | rq.prepare_runqueue() |
175 | rq.execute_runqueue(cooker, cooker.configuration.data, cooker.status, td, tasks) | 175 | rq.execute_runqueue() |
176 | 176 | ||
177 | except Providers.NoProvider: | 177 | except Providers.NoProvider: |
178 | print "ERROR: No Provider" | 178 | print "ERROR: No Provider" |
179 | global last_exception | ||
180 | last_exception = Providers.NoProvider | 179 | last_exception = Providers.NoProvider |
181 | 180 | ||
182 | except runqueue.TaskFailure, fnids: | 181 | except runqueue.TaskFailure, fnids: |
183 | for fnid in fnids: | 182 | for fnid in fnids: |
184 | print "ERROR: '%s' failed" % td.fn_index[fnid] | 183 | print "ERROR: '%s' failed" % td.fn_index[fnid] |
185 | global last_exception | ||
186 | last_exception = runqueue.TaskFailure | 184 | last_exception = runqueue.TaskFailure |
187 | 185 | ||
188 | except build.EventException, e: | 186 | except build.EventException, e: |
189 | print "ERROR: Couldn't build '%s'" % names | 187 | print "ERROR: Couldn't build '%s'" % names |
190 | global last_exception | ||
191 | last_exception = e | 188 | last_exception = e |
192 | 189 | ||
193 | cooker.configuration.cmd = oldcmd | 190 | cooker.configuration.cmd = oldcmd |
@@ -236,14 +233,13 @@ class BitBakeShellCommands: | |||
236 | 233 | ||
237 | def fileBuild( self, params, cmd = "build" ): | 234 | def fileBuild( self, params, cmd = "build" ): |
238 | """Parse and build a .bb file""" | 235 | """Parse and build a .bb file""" |
236 | global last_exception | ||
239 | name = params[0] | 237 | name = params[0] |
240 | bf = completeFilePath( name ) | 238 | bf = completeFilePath( name ) |
241 | print "SHELL: Calling '%s' on '%s'" % ( cmd, bf ) | 239 | print "SHELL: Calling '%s' on '%s'" % ( cmd, bf ) |
242 | 240 | ||
243 | oldcmd = cooker.configuration.cmd | 241 | oldcmd = cooker.configuration.cmd |
244 | cooker.configuration.cmd = cmd | 242 | cooker.configuration.cmd = cmd |
245 | cooker.build_cache = [] | ||
246 | cooker.build_cache_fail = [] | ||
247 | 243 | ||
248 | thisdata = copy.deepcopy( initdata ) | 244 | thisdata = copy.deepcopy( initdata ) |
249 | # Caution: parse.handle modifies thisdata, hence it would | 245 | # Caution: parse.handle modifies thisdata, hence it would |
@@ -266,7 +262,6 @@ class BitBakeShellCommands: | |||
266 | cooker.tryBuildPackage( os.path.abspath( bf ), item, cmd, bbfile_data, True ) | 262 | cooker.tryBuildPackage( os.path.abspath( bf ), item, cmd, bbfile_data, True ) |
267 | except build.EventException, e: | 263 | except build.EventException, e: |
268 | print "ERROR: Couldn't build '%s'" % name | 264 | print "ERROR: Couldn't build '%s'" % name |
269 | global last_exception | ||
270 | last_exception = e | 265 | last_exception = e |
271 | 266 | ||
272 | cooker.configuration.cmd = oldcmd | 267 | cooker.configuration.cmd = oldcmd |
@@ -537,8 +532,6 @@ SRC_URI = "" | |||
537 | def status( self, params ): | 532 | def status( self, params ): |
538 | """<just for testing>""" | 533 | """<just for testing>""" |
539 | print "-" * 78 | 534 | print "-" * 78 |
540 | print "build cache = '%s'" % cooker.build_cache | ||
541 | print "build cache fail = '%s'" % cooker.build_cache_fail | ||
542 | print "building list = '%s'" % cooker.building_list | 535 | print "building list = '%s'" % cooker.building_list |
543 | print "build path = '%s'" % cooker.build_path | 536 | print "build path = '%s'" % cooker.build_path |
544 | print "consider_msgs_cache = '%s'" % cooker.consider_msgs_cache | 537 | print "consider_msgs_cache = '%s'" % cooker.consider_msgs_cache |
@@ -557,6 +550,7 @@ SRC_URI = "" | |||
557 | 550 | ||
558 | def which( self, params ): | 551 | def which( self, params ): |
559 | """Computes the providers for a given providee""" | 552 | """Computes the providers for a given providee""" |
553 | # Need to use taskData for this information | ||
560 | item = params[0] | 554 | item = params[0] |
561 | 555 | ||
562 | self._checkParsed() | 556 | self._checkParsed() |
@@ -565,8 +559,7 @@ SRC_URI = "" | |||
565 | if not preferred: preferred = item | 559 | if not preferred: preferred = item |
566 | 560 | ||
567 | try: | 561 | try: |
568 | lv, lf, pv, pf = Providers.findBestProvider(preferred, cooker.configuration.data, cooker.status, | 562 | lv, lf, pv, pf = Providers.findBestProvider(preferred, cooker.configuration.data, cooker.status) |
569 | cooker.build_cache_fail) | ||
570 | except KeyError: | 563 | except KeyError: |
571 | lv, lf, pv, pf = (None,)*4 | 564 | lv, lf, pv, pf = (None,)*4 |
572 | 565 | ||