From 90cb980a1c49de99a0aec00c0cd5fc1e165490a7 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 31 Oct 2016 17:02:23 +1300 Subject: classes/npm: use npm install to do installation Using "npm install" instead of "cp -a" is the more correct thing to be doing here, and ensures that symlinks for executable scripts are put into ${prefix}/bin. (I'd prefer ${bindir}, but npm does not allow specifying paths at that level - only a prefix.) Fixes [YOCTO #10460]. Signed-off-by: Paul Eggleton Signed-off-by: Ross Burton --- meta/classes/npm.bbclass | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'meta/classes/npm.bbclass') diff --git a/meta/classes/npm.bbclass b/meta/classes/npm.bbclass index fce4c1146f..43228c57d3 100644 --- a/meta/classes/npm.bbclass +++ b/meta/classes/npm.bbclass @@ -33,7 +33,11 @@ npm_do_compile() { npm_do_install() { mkdir -p ${NPM_INSTALLDIR}/ - cp -a ${S}/* ${NPM_INSTALLDIR}/ --no-preserve=ownership + npm install --prefix ${D}${prefix} -g --arch=${NPM_ARCH} --target_arch=${NPM_ARCH} --production --no-registry + if [ -d ${D}${prefix}/etc ] ; then + # This will be empty + rmdir ${D}${prefix}/etc + fi } python populate_packages_prepend () { -- cgit 1.2.3-korg