summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r--bitbake/lib/bb/cache.py6
-rw-r--r--bitbake/lib/bb/fetch/hg.py2
-rw-r--r--bitbake/lib/bb/fetch/perforce.py24
-rw-r--r--bitbake/lib/bb/fetch/svn.py4
-rw-r--r--bitbake/lib/bb/taskdata.py15
-rw-r--r--bitbake/lib/bb/utils.py1
6 files changed, 34 insertions, 18 deletions
diff --git a/bitbake/lib/bb/cache.py b/bitbake/lib/bb/cache.py
index 1c87bfa12d..a4a4f47cef 100644
--- a/bitbake/lib/bb/cache.py
+++ b/bitbake/lib/bb/cache.py
@@ -95,7 +95,11 @@ class Cache:
95 bb.msg.note(1, bb.msg.domain.Cache, "Invalid cache found, rebuilding...") 95 bb.msg.note(1, bb.msg.domain.Cache, "Invalid cache found, rebuilding...")
96 self.depends_cache = {} 96 self.depends_cache = {}
97 else: 97 else:
98 bb.msg.note(1, bb.msg.domain.Cache, "Out of date cache found, rebuilding...") 98 try:
99 os.stat( self.cachefile )
100 bb.msg.note(1, bb.msg.domain.Cache, "Out of date cache found, rebuilding...")
101 except OSError:
102 pass
99 103
100 def getVar(self, var, fn, exp = 0): 104 def getVar(self, var, fn, exp = 0):
101 """ 105 """
diff --git a/bitbake/lib/bb/fetch/hg.py b/bitbake/lib/bb/fetch/hg.py
index 1cd5a8aa5c..b87fd0fbe5 100644
--- a/bitbake/lib/bb/fetch/hg.py
+++ b/bitbake/lib/bb/fetch/hg.py
@@ -79,7 +79,7 @@ class Hg(Fetch):
79 host = "/" 79 host = "/"
80 ud.host = "localhost" 80 ud.host = "localhost"
81 81
82 if ud.user == None: 82 if not ud.user:
83 hgroot = host + ud.path 83 hgroot = host + ud.path
84 else: 84 else:
85 hgroot = ud.user + "@" + host + ud.path 85 hgroot = ud.user + "@" + host + ud.path
diff --git a/bitbake/lib/bb/fetch/perforce.py b/bitbake/lib/bb/fetch/perforce.py
index b594d2bde2..2fb38b4190 100644
--- a/bitbake/lib/bb/fetch/perforce.py
+++ b/bitbake/lib/bb/fetch/perforce.py
@@ -67,14 +67,15 @@ class Perforce(Fetch):
67 doparse = staticmethod(doparse) 67 doparse = staticmethod(doparse)
68 68
69 def getcset(d, depot,host,user,pswd,parm): 69 def getcset(d, depot,host,user,pswd,parm):
70 p4opt = ""
70 if "cset" in parm: 71 if "cset" in parm:
71 return parm["cset"]; 72 return parm["cset"];
72 if user: 73 if user:
73 data.setVar('P4USER', user, d) 74 p4opt += " -u %s" % (user)
74 if pswd: 75 if pswd:
75 data.setVar('P4PASSWD', pswd, d) 76 p4opt += " -P %s" % (pswd)
76 if host: 77 if host:
77 data.setVar('P4PORT', host, d) 78 p4opt += " -p %s" % (host)
78 79
79 p4date = data.getVar("P4DATE", d, 1) 80 p4date = data.getVar("P4DATE", d, 1)
80 if "revision" in parm: 81 if "revision" in parm:
@@ -85,8 +86,8 @@ class Perforce(Fetch):
85 depot += "@%s" % (p4date) 86 depot += "@%s" % (p4date)
86 87
87 p4cmd = data.getVar('FETCHCOMMAND_p4', d, 1) 88 p4cmd = data.getVar('FETCHCOMMAND_p4', d, 1)
88 bb.msg.debug(1, bb.msg.domain.Fetcher, "Running %s changes -m 1 %s" % (p4cmd, depot)) 89 bb.msg.debug(1, bb.msg.domain.Fetcher, "Running %s%s changes -m 1 %s" % (p4cmd, p4opt, depot))
89 p4file = os.popen("%s changes -m 1 %s" % (p4cmd,depot)) 90 p4file = os.popen("%s%s changes -m 1 %s" % (p4cmd, p4opt, depot))
90 cset = p4file.readline().strip() 91 cset = p4file.readline().strip()
91 bb.msg.debug(1, bb.msg.domain.Fetcher, "READ %s" % (cset)) 92 bb.msg.debug(1, bb.msg.domain.Fetcher, "READ %s" % (cset))
92 if not cset: 93 if not cset:
@@ -146,14 +147,15 @@ class Perforce(Fetch):
146 data.update_data(localdata) 147 data.update_data(localdata)
147 148
148 # Get the p4 command 149 # Get the p4 command
150 p4opt = ""
149 if user: 151 if user:
150 data.setVar('P4USER', user, localdata) 152 p4opt += " -u %s" % (user)
151 153
152 if pswd: 154 if pswd:
153 data.setVar('P4PASSWD', pswd, localdata) 155 p4opt += " -P %s" % (pswd)
154 156
155 if host: 157 if host:
156 data.setVar('P4PORT', host, localdata) 158 p4opt += " -p %s" % (host)
157 159
158 p4cmd = data.getVar('FETCHCOMMAND', localdata, 1) 160 p4cmd = data.getVar('FETCHCOMMAND', localdata, 1)
159 161
@@ -175,8 +177,8 @@ class Perforce(Fetch):
175 177
176 os.chdir(tmpfile) 178 os.chdir(tmpfile)
177 bb.msg.note(1, bb.msg.domain.Fetcher, "Fetch " + loc) 179 bb.msg.note(1, bb.msg.domain.Fetcher, "Fetch " + loc)
178 bb.msg.note(1, bb.msg.domain.Fetcher, "%s files %s" % (p4cmd, depot)) 180 bb.msg.note(1, bb.msg.domain.Fetcher, "%s%s files %s" % (p4cmd, p4opt, depot))
179 p4file = os.popen("%s files %s" % (p4cmd, depot)) 181 p4file = os.popen("%s%s files %s" % (p4cmd, p4opt, depot))
180 182
181 if not p4file: 183 if not p4file:
182 bb.error("Fetch: unable to get the P4 files from %s" % (depot)) 184 bb.error("Fetch: unable to get the P4 files from %s" % (depot))
@@ -193,7 +195,7 @@ class Perforce(Fetch):
193 dest = list[0][len(path)+1:] 195 dest = list[0][len(path)+1:]
194 where = dest.find("#") 196 where = dest.find("#")
195 197
196 os.system("%s print -o %s/%s %s" % (p4cmd, module,dest[:where],list[0])) 198 os.system("%s%s print -o %s/%s %s" % (p4cmd, p4opt, module,dest[:where],list[0]))
197 count = count + 1 199 count = count + 1
198 200
199 if count == 0: 201 if count == 0:
diff --git a/bitbake/lib/bb/fetch/svn.py b/bitbake/lib/bb/fetch/svn.py
index 5e5b31b3ad..aead1629b3 100644
--- a/bitbake/lib/bb/fetch/svn.py
+++ b/bitbake/lib/bb/fetch/svn.py
@@ -114,13 +114,15 @@ class Svn(Fetch):
114 if command is "info": 114 if command is "info":
115 svncmd = "%s info %s %s://%s/%s/" % (basecmd, " ".join(options), proto, svnroot, ud.module) 115 svncmd = "%s info %s %s://%s/%s/" % (basecmd, " ".join(options), proto, svnroot, ud.module)
116 else: 116 else:
117 suffix = ""
117 if ud.revision: 118 if ud.revision:
118 options.append("-r %s" % ud.revision) 119 options.append("-r %s" % ud.revision)
120 suffix = "@%s" % (ud.revision)
119 elif ud.date: 121 elif ud.date:
120 options.append("-r {%s}" % ud.date) 122 options.append("-r {%s}" % ud.date)
121 123
122 if command is "fetch": 124 if command is "fetch":
123 svncmd = "%s co %s %s://%s/%s %s" % (basecmd, " ".join(options), proto, svnroot, ud.module, ud.module) 125 svncmd = "%s co %s %s://%s/%s%s %s" % (basecmd, " ".join(options), proto, svnroot, ud.module, suffix, ud.module)
124 elif command is "update": 126 elif command is "update":
125 svncmd = "%s update %s" % (basecmd, " ".join(options)) 127 svncmd = "%s update %s" % (basecmd, " ".join(options))
126 else: 128 else:
diff --git a/bitbake/lib/bb/taskdata.py b/bitbake/lib/bb/taskdata.py
index 782dfb0b78..64ab032c3c 100644
--- a/bitbake/lib/bb/taskdata.py
+++ b/bitbake/lib/bb/taskdata.py
@@ -340,7 +340,10 @@ class TaskData:
340 self.add_provider_internal(cfgData, dataCache, item) 340 self.add_provider_internal(cfgData, dataCache, item)
341 except bb.providers.NoProvider: 341 except bb.providers.NoProvider:
342 if self.abort: 342 if self.abort:
343 bb.msg.error(bb.msg.domain.Provider, "Nothing PROVIDES '%s' (but '%s' DEPENDS on or otherwise requires it)" % (item, self.get_dependees_str(item))) 343 if self.get_rdependees_str(item):
344 bb.msg.error(bb.msg.domain.Provider, "Nothing PROVIDES '%s' (but '%s' DEPENDS on or otherwise requires it)" % (item, self.get_dependees_str(item)))
345 else:
346 bb.msg.error(bb.msg.domain.Provider, "Nothing PROVIDES '%s'" % (item))
344 raise 347 raise
345 targetid = self.getbuild_id(item) 348 targetid = self.getbuild_id(item)
346 self.remove_buildtarget(targetid) 349 self.remove_buildtarget(targetid)
@@ -358,7 +361,10 @@ class TaskData:
358 return 361 return
359 362
360 if not item in dataCache.providers: 363 if not item in dataCache.providers:
361 bb.msg.note(2, bb.msg.domain.Provider, "Nothing PROVIDES '%s' (but '%s' DEPENDS on or otherwise requires it)" % (item, self.get_dependees_str(item))) 364 if self.get_rdependees_str(item):
365 bb.msg.note(2, bb.msg.domain.Provider, "Nothing PROVIDES '%s' (but '%s' DEPENDS on or otherwise requires it)" % (item, self.get_dependees_str(item)))
366 else:
367 bb.msg.note(2, bb.msg.domain.Provider, "Nothing PROVIDES '%s'" % (item))
362 bb.event.fire(bb.event.NoProvider(item, cfgData)) 368 bb.event.fire(bb.event.NoProvider(item, cfgData))
363 raise bb.providers.NoProvider(item) 369 raise bb.providers.NoProvider(item)
364 370
@@ -536,7 +542,10 @@ class TaskData:
536 except bb.providers.NoProvider: 542 except bb.providers.NoProvider:
537 targetid = self.getbuild_id(target) 543 targetid = self.getbuild_id(target)
538 if self.abort and targetid in self.external_targets: 544 if self.abort and targetid in self.external_targets:
539 bb.msg.error(bb.msg.domain.Provider, "Nothing PROVIDES '%s' (but '%s' DEPENDS on or otherwise requires it)" % (target, self.get_dependees_str(target))) 545 if self.get_rdependees_str(target):
546 bb.msg.error(bb.msg.domain.Provider, "Nothing PROVIDES '%s' (but '%s' DEPENDS on or otherwise requires it)" % (target, self.get_dependees_str(target)))
547 else:
548 bb.msg.error(bb.msg.domain.Provider, "Nothing PROVIDES '%s'" % (target))
540 raise 549 raise
541 self.remove_buildtarget(targetid) 550 self.remove_buildtarget(targetid)
542 for target in self.get_unresolved_run_targets(dataCache): 551 for target in self.get_unresolved_run_targets(dataCache):
diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py
index cc3d03f609..5015779f8d 100644
--- a/bitbake/lib/bb/utils.py
+++ b/bitbake/lib/bb/utils.py
@@ -323,7 +323,6 @@ def preserved_envvars_list():
323 'HOME', 323 'HOME',
324 'LANG', 324 'LANG',
325 'LOGNAME', 325 'LOGNAME',
326 'OEROOT',
327 'PATH', 326 'PATH',
328 'PWD', 327 'PWD',
329 'SESSION_MANAGER', 328 'SESSION_MANAGER',