aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrendan Le Foll <brendan.le.foll@intel.com>2016-04-12 10:58:39 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-04-14 10:58:27 +0100
commitfea932c79c8201e3e7649f4443874ea540e33461 (patch)
treed77c13cf365d5baf6eb86c66c3bc936a86e0eae2
parent080d1a313e4982dd05846b375ebf936c46934d80 (diff)
downloadopenembedded-core-contrib-fea932c79c8201e3e7649f4443874ea540e33461.tar.gz
npm.bbclass: Stop packagenames containing underscores from being generated
Package names cannot contain underscores yet some npm modules use them as part of the name, replace them with hyphens in the package name. Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r--meta/classes/npm.bbclass6
-rw-r--r--meta/lib/oe/package.py2
2 files changed, 5 insertions, 3 deletions
diff --git a/meta/classes/npm.bbclass b/meta/classes/npm.bbclass
index 33ff5e3f45..9843e87350 100644
--- a/meta/classes/npm.bbclass
+++ b/meta/classes/npm.bbclass
@@ -28,7 +28,9 @@ python populate_packages_prepend () {
for pkgname in pkgnames:
pkgrelpath, pdata = extrapackages[pkgname]
pkgpath = '${libdir}/node_modules/${PN}/' + pkgrelpath
- expanded_pkgname = d.expand(pkgname)
+ # package names can't have underscores but npm packages sometimes use them
+ oe_pkg_name = pkgname.replace('_', '-')
+ expanded_pkgname = d.expand(oe_pkg_name)
d.setVar('FILES_%s' % expanded_pkgname, pkgpath)
if pdata:
version = pdata.get('version', None)
@@ -37,7 +39,7 @@ python populate_packages_prepend () {
description = pdata.get('description', None)
if description:
d.setVar('SUMMARY_%s' % expanded_pkgname, description.replace(u"\u2018", "'").replace(u"\u2019", "'").encode("utf8"))
- d.appendVar('RDEPENDS_%s' % d.getVar('PN', True), ' %s' % ' '.join(pkgnames))
+ d.appendVar('RDEPENDS_%s' % d.getVar('PN', True), ' %s' % ' '.join(pkgnames).replace('_', '-'))
}
FILES_${PN} += " \
diff --git a/meta/lib/oe/package.py b/meta/lib/oe/package.py
index dea443d658..2887689541 100644
--- a/meta/lib/oe/package.py
+++ b/meta/lib/oe/package.py
@@ -143,7 +143,7 @@ def npm_split_package_dirs(pkgdir):
if pathitem == 'node_modules':
continue
pkgitems.append(pathitem)
- pkgname = '-'.join(pkgitems)
+ pkgname = '-'.join(pkgitems).replace('_', '-')
pkgfile = os.path.join(root, dn, 'package.json')
data = None
if os.path.exists(pkgfile):