Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH] npm.bbclass: Add npm class to match fetcher
@ 2016-02-25 15:06 brendan.le.foll
  2016-02-28  0:53 ` Trevor Woerner
  0 siblings, 1 reply; 7+ messages in thread
From: brendan.le.foll @ 2016-02-25 15:06 UTC (permalink / raw)
  To: openembedded-core

From: Brendan Le Foll <brendan.le.foll@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@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



^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-02-29  3:23 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-25 15:06 [PATCH] npm.bbclass: Add npm class to match fetcher brendan.le.foll
2016-02-28  0:53 ` Trevor Woerner
2016-02-28  8:32   ` Richard Purdie
2016-02-28 17:09     ` Trevor Woerner
2016-02-28 17:36       ` Trevor Woerner
2016-02-28 23:13         ` Richard Purdie
2016-02-29  3:23           ` Trevor Woerner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox