aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Eggleton <paul.eggleton@linux.intel.com>2016-10-31 17:02:23 +1300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-11-06 23:35:15 +0000
commit90cb980a1c49de99a0aec00c0cd5fc1e165490a7 (patch)
treeadab52be11501787d29c6f6a4abc40a43d98c164
parentc4d3b1e9c37b920444e53d3231552da18d101882 (diff)
downloadopenembedded-core-contrib-90cb980a1c49de99a0aec00c0cd5fc1e165490a7.tar.gz
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 <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r--meta/classes/npm.bbclass6
1 files changed, 5 insertions, 1 deletions
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 () {