summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2016-09-06 10:57:29 +1200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-09-08 00:33:46 +0100
commiteb53750ab705bf340a588f91e3da3a1c81234e9b (patch)
treecfe1aee16eec61053fd5e95d17a1177a9b85cb9f
parent1937b17f675d25b358d4110d836ad748a11cbfb7 (diff)
downloadpoky-eb53750ab705bf340a588f91e3da3a1c81234e9b.tar.gz
bitbake: fetch2/npm: fix broken fetches if more than one npm URL fetched
You cannot set a URL-specific value in an object-level variable on the FetchMethod in urldata_init() or the result is the value specific to the last URL will be the one that gets set. This prevented fetching more than one npm:// URL correctly - the other tarballs would not download to the correct location and do_unpack failed to find them as a result. Fix required in order to support [YOCTO #9537]. (Bitbake rev: 1435b49ea7d0f9d4cc4a665fb2aa83d1eea7900f) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--bitbake/lib/bb/fetch2/npm.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/bitbake/lib/bb/fetch2/npm.py b/bitbake/lib/bb/fetch2/npm.py
index 65ccb0dd2e..9b2d9e1621 100644
--- a/bitbake/lib/bb/fetch2/npm.py
+++ b/bitbake/lib/bb/fetch2/npm.py
@@ -88,7 +88,7 @@ class Npm(FetchMethod):
88 ud.localpath = d.expand("${DL_DIR}/npm/%s" % ud.bbnpmmanifest) 88 ud.localpath = d.expand("${DL_DIR}/npm/%s" % ud.bbnpmmanifest)
89 89
90 self.basecmd = d.getVar("FETCHCMD_wget", True) or "/usr/bin/env wget -O -t 2 -T 30 -nv --passive-ftp --no-check-certificate " 90 self.basecmd = d.getVar("FETCHCMD_wget", True) or "/usr/bin/env wget -O -t 2 -T 30 -nv --passive-ftp --no-check-certificate "
91 self.basecmd += " --directory-prefix=%s " % prefixdir 91 ud.prefixdir = prefixdir
92 92
93 ud.write_tarballs = ((data.getVar("BB_GENERATE_MIRROR_TARBALLS", d, True) or "0") != "0") 93 ud.write_tarballs = ((data.getVar("BB_GENERATE_MIRROR_TARBALLS", d, True) or "0") != "0")
94 ud.mirrortarball = 'npm_%s-%s.tar.xz' % (ud.pkgname, ud.version) 94 ud.mirrortarball = 'npm_%s-%s.tar.xz' % (ud.pkgname, ud.version)
@@ -182,7 +182,7 @@ class Npm(FetchMethod):
182 outputurl = pdata['dist']['tarball'] 182 outputurl = pdata['dist']['tarball']
183 data[pkg] = {} 183 data[pkg] = {}
184 data[pkg]['tgz'] = os.path.basename(outputurl) 184 data[pkg]['tgz'] = os.path.basename(outputurl)
185 self._runwget(ud, d, "%s %s" % (self.basecmd, outputurl), False) 185 self._runwget(ud, d, "%s --directory-prefix=%s %s" % (self.basecmd, ud.prefixdir, outputurl), False)
186 186
187 dependencies = pdata.get('dependencies', {}) 187 dependencies = pdata.get('dependencies', {})
188 optionalDependencies = pdata.get('optionalDependencies', {}) 188 optionalDependencies = pdata.get('optionalDependencies', {})
@@ -209,7 +209,7 @@ class Npm(FetchMethod):
209 outputurl = runfetchcmd(fetchcmd, d, True) 209 outputurl = runfetchcmd(fetchcmd, d, True)
210 else: 210 else:
211 outputurl = data['resolved'] 211 outputurl = data['resolved']
212 self._runwget(ud, d, "%s %s" % (self.basecmd, outputurl), False) 212 self._runwget(ud, d, "%s --directory-prefix=%s %s" % (self.basecmd, ud.prefixdir, outputurl), False)
213 manifest[pkg] = {} 213 manifest[pkg] = {}
214 manifest[pkg]['tgz'] = os.path.basename(outputurl).rstrip() 214 manifest[pkg]['tgz'] = os.path.basename(outputurl).rstrip()
215 manifest[pkg]['deps'] = {} 215 manifest[pkg]['deps'] = {}