From 7726a4cab1fb7de0edb155f2397b81c3aea18e73 Mon Sep 17 00:00:00 2001 From: Chris Larson Date: Thu, 9 Dec 2004 12:32:18 +0000 Subject: Add the location of the .bb file to BBPATH in the parser's handle() function rather than load_oefile, since we need it done for 'include'd files as well as those directly loaded by the 'bitbake' commandline tool. --- lib/bb/fetch.py | 9 +++++++-- lib/bb/make.py | 8 -------- lib/bb/parse/BBHandler.py | 3 +++ 3 files changed, 10 insertions(+), 10 deletions(-) (limited to 'lib') diff --git a/lib/bb/fetch.py b/lib/bb/fetch.py index 2697e1e67..dfb2ab2ef 100644 --- a/lib/bb/fetch.py +++ b/lib/bb/fetch.py @@ -549,6 +549,11 @@ class Svn(Fetch): else: method = "pserver" + if "proto" in parm: + proto = parm["proto"] + else: + proto = "svn" + svn_rsh = None if method == "ext": if "rsh" in parm: @@ -587,10 +592,10 @@ class Svn(Fetch): bb.data.setVar('SVNCOOPTS', " ".join(options), localdata) bb.data.setVar('SVNMODULE', module, localdata) svncmd = bb.data.getVar('FETCHCOMMAND', localdata, 1) - svncmd = "svn co http://%s/%s" % (svnroot, module) + svncmd = "svn co %s://%s/%s" % (proto, svnroot, module) if revision: - svncmd = "svn co -r %s http://%s/%s" % (revision, svnroot, module) + svncmd = "svn co -r %s %s://%s/%s" % (proto, revision, svnroot, module) if svn_rsh: svncmd = "svn_RSH=\"%s\" %s" % (svn_rsh, svncmd) diff --git a/lib/bb/make.py b/lib/bb/make.py index 62437be36..df59bf0bb 100644 --- a/lib/bb/make.py +++ b/lib/bb/make.py @@ -93,8 +93,6 @@ def load_bbfile( bbfile ): if deps_clean(cache_data): return cache_data, True - bbpath = data.getVar('BBPATH', cfg) - safebbpath = data.getVar('BBPATH', cfg) topdir = data.getVar('TOPDIR', cfg) if not topdir: topdir = os.path.abspath(os.getcwd()) @@ -104,17 +102,12 @@ def load_bbfile( bbfile ): bbfile_loc = os.path.abspath(os.path.dirname(bbfile)) # expand tmpdir to include this topdir data.setVar('TMPDIR', data.getVar('TMPDIR', cfg, 1) or "", cfg) - # add topdir to bbpath - # bbpath = "%s:%s" % (topdir, bbpath) # set topdir to location of .bb file topdir = bbfile_loc #data.setVar('TOPDIR', topdir, cfg) - # add that topdir to bbpath - bbpath = "%s:%s" % (topdir, bbpath) # go there oldpath = os.path.abspath(os.getcwd()) os.chdir(topdir) - data.setVar('BBPATH', bbpath, cfg) bb = copy.deepcopy(cfg) try: parse.handle(bbfile, bb) # read .bb data @@ -123,7 +116,6 @@ def load_bbfile( bbfile ): return bb, False finally: os.chdir(oldpath) - data.setVar('BBPATH', safebbpath, cfg) def pickle_bb( bbfile, bb ): p = pickle.Pickler( file( "%s/%s" % ( cache, bbfile ), "wb" ), -1 ) diff --git a/lib/bb/parse/BBHandler.py b/lib/bb/parse/BBHandler.py index 32f4ce873..619b45d94 100644 --- a/lib/bb/parse/BBHandler.py +++ b/lib/bb/parse/BBHandler.py @@ -119,6 +119,9 @@ def handle(fn, d = {}, include = 0): i[0:0] = ["base"] inherit(i, d) + bbpath.insert(0, os.path.dirname(fn)) + data.setVar('BBPATH', ":".join(bbpath), d) + lineno = 0 while 1: lineno = lineno + 1 -- cgit 1.2.3-korg