From: Brendan Le Foll <brendan.le.f...@intel.com> 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.f...@intel.com> --- meta/classes/npm.bbclass | 6 ++++-- meta/lib/oe/package.py | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/meta/classes/npm.bbclass b/meta/classes/npm.bbclass index 33ff5e3..9843e87 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 dea443d..2887689 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): -- 2.8.0 -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core