Skip to contentSkip to conversation

nodejs: updated recipe to v0.2.6

PATCH Superseded AJ ONeal 3 participants 4 messages Jan 25, 2011 – Jan 28, 2011

v1 of 5 Superseded Latest is v5 →

lore
Share & tools
lore

AJ ONeal

author
#0 lore raw

PATCH 1/1 nodejs: updated recipe to v0.2.6

* libev-cross-cc.patch - turns off execution so that cross-compile succeeds
* node-cross-cc.patch - enables cross-compiling of v8 for x86, x86_64, arm, and mips

---
 recipes/nodejs/files/libev-cross-cc.patch |   17 +++++---------
 recipes/nodejs/files/node-cross-cc.patch  |   19 ++++++++++------
 recipes/nodejs/nodejs_0.2.6.bb            |   34 +++++++++++++++++++++++++++++
 3 files changed, 52 insertions(+), 18 deletions(-)
 create mode 100644 recipes/nodejs/nodejs_0.2.6.bb
recipes/nodejs/files/libev-cross-cc.patch +6 -11
index 4dd34f4..13ce4d8 100644
@@ -1,18 +1,13 @@
-diff --git node-v0.2.1/deps/libev/wscript.orig node-v0.2.1/deps/libev/wscript
-index 19e7bb2..f0a3d3b 100644
---- node-v0.2.1/deps/libev/wscript.orig
-+++ node-v0.2.1/deps/libev/wscript
-@@ -52,7 +52,12 @@ def configure(conf):
+diff --git node-v0.2.6/deps/libev/wscript.orig node-v0.2.6/deps/libev/wscript
+index 19e7bb2..5ec9143 100644
+--- node-v0.2.6/deps/libev/wscript.orig
++++ node-v0.2.6/deps/libev/wscript
+@@ -52,7 +52,7 @@ def configure(conf):
            return 0;
        }
    """
 -  conf.check_cc(fragment=code, define_name="HAVE_CLOCK_SYSCALL", execute=True,
-+  # TODO determine this dynamically
-+  CROSS = True
-+  execute = True
-+  if CROSS:
-+    execute = False
-+  conf.check_cc(fragment=code, define_name="HAVE_CLOCK_SYSCALL", execute=execute,
++  conf.check_cc(fragment=code, define_name="HAVE_CLOCK_SYSCALL", execute=False,
                  msg="Checking for SYS_clock_gettime")
  
    have_librt = conf.check(lib='rt', uselib_store='RT')
recipes/nodejs/files/node-cross-cc.patch +12 -7
index 0d15afc..1087ce2 100644
@@ -1,14 +1,19 @@
-diff --git node-v0.2.1/wscript.orig node-v0.2.1/wscript
-index 9c4243c..3cf6689 100644
---- node-v0.2.1/wscript.orig
-+++ node-v0.2.1/wscript
-@@ -326,6 +326,9 @@ def v8_cmd(bld, variant):
+diff --git node-v0.2.6/wscript.orig node-v0.2.6/wscript
+index a6bade2..566bf5e 100644
+--- node-v0.2.6/wscript.orig
++++ node-v0.2.6/wscript
+@@ -338,6 +338,14 @@ def v8_cmd(bld, variant):
    arch = ""
    if bld.env['DEST_CPU'] == 'x86_64':
      arch = "arch=x64"
-+  # XXX Better support cross-compilation
++  elif bld.env['DEST_CPU'] == 'x86':
++    arch = "arch=x86"
++  elif bld.env['DEST_CPU'] == 'arm':
++    arch = "arch=arm"
++  elif bld.env['DEST_CPU'] == 'mips':
++    arch = "arch=mips"
 +  else:
-+    arch = "arch=" + bld.env['DEST_CPU']
++    raise Exception(bld.env['DEST_CPU'], "is not one of these supported architectures: x86, x86_64, arm, mips")
  
    if variant == "default":
      mode = "release"
recipes/nodejs/nodejs_0.2.6.bb new file +34 -0
new file mode 100644
index 0000000..e2d8b19
@@ -0,0 +1,34 @@
+DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript"
+HOMEPAGE = "http://nodejs.org"
+LICENSE = "MIT"
+
+PR = "r4"
+
+DEPENDS = "openssl"
+
+SRC_URI = " \
+  http://nodejs.org/dist/node-v${PV}.tar.gz \
+  file://libev-cross-cc.patch \
+  file://node-cross-cc.patch \
+"
+SRC_URI[md5sum] = "b1c50ceb43bee1b221be210b7bc7a216"
+SRC_URI[sha256sum] = "e97fe9c81ff4b569ae9a0d46e64a0572a1f171293573a5b5290bcc3996a19701"
+
+S = "${WORKDIR}/node-v${PV}"
+
+# v8 errors out if you have set CCACHE
+CCACHE = ""
+
+do_configure () {
+  ./configure --prefix=${prefix} --without-snapshot
+}
+
+do_compile () {
+  make
+}
+
+do_install () {
+  DESTDIR=${D} oe_runmake install
+}
+
+BBCLASSEXTEND = "native"
Signature · 1 line
1.7.0.4
#1 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Quoted 6 lines · AJ ONeal

* libev-cross-cc.patch - turns off execution so that cross-compile succeeds
* node-cross-cc.patch - enables cross-compiling of v8 for x86, x86_64, arm, and mips

---
 recipes/nodejs/files/libev-cross-cc.patch |   17 +++++---------
 recipes/nodejs/files/node-cross-cc.patch  |   19 ++++++++++------
 recipes/nodejs/nodejs_0.2.6.bb            |   34 +++++++++++++++++++++++++++++

You're changing the patches, but don't remove the old version, do they still work?

Quoted 1 line

+PR = "r4"

New recipes start at r0

recipes/nodejs/nodejs_0.2.6.bb line 27

Quoted 3 lines
recipes/nodejs/nodejs_0.2.6.bb new file +2 -0
+do_compile () {
+  make

oe_runmake
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)

iD8DBQFNPyaqMkyGM64RGpERAnOkAJ95KjEsJ7wv3Pp7TSbKoCeUGU4lCACeN/c7 cvS+zggRWmNGmrYA+bDBt7g=
=vFFV
-----END PGP SIGNATURE-----

author
#2 lore raw
Quoted 8 lines
Quoted 4 lines
 recipes/nodejs/files/libev-cross-cc.patch |   17 +++++---------
 recipes/nodejs/files/node-cross-cc.patch  |   19 ++++++++++------
 recipes/nodejs/nodejs_0.2.6.bb            |   34

+++++++++++++++++++++++++++++

You're changing the patches, but don't remove the old version, do they still work?

I copied the new patches over the old patches.
Should I have done git rm this.patch; edit this.patch; git add this.patch instead?

Quoted 6 lines

+PR = "r4"

New recipes start at r0

But it wasn't until the 4th time that I bumped the PR to re-bitbake and test it that I got it right. :D

Would you like me to resubmit the patch without the +PR = "r4"?

#3 lore raw
Quoted 19 lines · AJ ONeal
Quoted 8 lines
Quoted 4 lines

 recipes/nodejs/files/libev-cross-cc.patch |   17 +++++--------- recipes/nodejs/files/node-cross-cc.patch  |   19 ++++++++++------ recipes/nodejs/nodejs_0.2.6.bb            |   34

+++++++++++++++++++++++++++++

You're changing the patches, but don't remove the old version, do they still work?

I copied the new patches over the old patches.
Should I have done git rm this.patch; edit this.patch; git add this.patch instead?

Quoted 4 lines

+PR = "r4"

Quoted 7 lines
Quoted 2 lines

New recipes start at r0

But it wasn't until the 4th time that I bumped the PR to re-bitbake and test it that I got it right. :D

Would you like me to resubmit the patch without the +PR = "r4"?

whenever there are changes requested to patches revised patch with changes should be submitted and versioned as v2,v3.. as appropriate so patchwork catches it

Quoted 5 lines

_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel