[OE-core] [PATCH] npm.bbclass: Add npm class to match fetcher

brendan.le.foll at intel.com brendan.le.foll at intel.com
Thu Feb 25 15:06:57 UTC 2016


From: Brendan Le Foll <brendan.le.foll at intel.com>

npm class supports the npm fetcher, helping doing the basic compile/install
stages of an npm package

Signed-off-by: Brendan Le Foll <brendan.le.foll at intel.com>
---
 meta/classes/npm.bbclass | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)
 create mode 100644 meta/classes/npm.bbclass

diff --git a/meta/classes/npm.bbclass b/meta/classes/npm.bbclass
new file mode 100644
index 0000000..be76056
--- /dev/null
+++ b/meta/classes/npm.bbclass
@@ -0,0 +1,25 @@
+DEPENDS_prepend = "nodejs-native "
+S = "${WORKDIR}/npmpkg"
+
+npm_do_compile() {
+	# changing the home directory to the working directory, the .npmrc will
+	# be created in this directory
+	export HOME=${WORKDIR}
+	npm config set dev false
+	npm set cache ${WORKDIR}/npm_cache
+	# clear cache before every build
+	npm cache clear
+	# Install pkg into ${S} without going to the registry
+	npm --arch=${TARGET_ARCH} --production --no-registry install
+}
+
+npm_do_install() {
+	mkdir -p ${D}${libdir}/node_modules/${PN}/
+	cp -a ${S}/* ${D}${libdir}/node_modules/${PN}/ --no-preserve=ownership
+}
+
+FILES_${PN} += " \
+    ${libdir}/node_modules/${PN} \
+"
+
+EXPORT_FUNCTIONS do_compile do_install
-- 
2.7.1




More information about the Openembedded-core mailing list