[oe] [PATCH v3] nodejs: updated recipe to v0.2.6

AJ ONeal coolaj86 at gmail.com
Sat Jan 29 20:21:41 UTC 2011


I wasn't sure which format would be most preferred so I did it both ways.

AJ ONeal

On Sat, Jan 29, 2011 at 1:23 PM, AJ ONeal <coolaj86 at gmail.com> wrote:

> * left nodejs-v0.2.1 intact, patches renamed with -v0.2.1 suffix
> * libev-cross-cc-v0.2.6.patch - turns off execution so that cross-compile
> succeeds
> * node-cross-cc-v0.2.6.patch - enables cross-compiling of v8 for x86,
> x86_64, arm, and mips
> ---
>  recipes/nodejs/files/libev-cross-cc-v0.2.1.patch |   18 ++++++++++++
>  recipes/nodejs/files/libev-cross-cc-v0.2.6.patch |   13 +++++++++
>  recipes/nodejs/files/libev-cross-cc.patch        |   18 ------------
>  recipes/nodejs/files/node-cross-cc-v0.2.1.patch  |   14 +++++++++
>  recipes/nodejs/files/node-cross-cc-v0.2.6.patch  |   19 +++++++++++++
>  recipes/nodejs/files/node-cross-cc.patch         |   14 ---------
>  recipes/nodejs/nodejs_0.2.1.bb                   |    6 ++--
>  recipes/nodejs/nodejs_0.2.6.bb                   |   32
> ++++++++++++++++++++++
>  8 files changed, 99 insertions(+), 35 deletions(-)
>  create mode 100644 recipes/nodejs/files/libev-cross-cc-v0.2.1.patch
>  create mode 100644 recipes/nodejs/files/libev-cross-cc-v0.2.6.patch
>  delete mode 100644 recipes/nodejs/files/libev-cross-cc.patch
>  create mode 100644 recipes/nodejs/files/node-cross-cc-v0.2.1.patch
>  create mode 100644 recipes/nodejs/files/node-cross-cc-v0.2.6.patch
>  delete mode 100644 recipes/nodejs/files/node-cross-cc.patch
>  create mode 100644 recipes/nodejs/nodejs_0.2.6.bb
>
> diff --git a/recipes/nodejs/files/libev-cross-cc-v0.2.1.patch
> b/recipes/nodejs/files/libev-cross-cc-v0.2.1.patch
> new file mode 100644
> index 0000000..4dd34f4
> --- /dev/null
> +++ b/recipes/nodejs/files/libev-cross-cc-v0.2.1.patch
> @@ -0,0 +1,18 @@
> +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):
> +           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,
> +                 msg="Checking for SYS_clock_gettime")
> +
> +   have_librt = conf.check(lib='rt', uselib_store='RT')
> diff --git a/recipes/nodejs/files/libev-cross-cc-v0.2.6.patch
> b/recipes/nodejs/files/libev-cross-cc-v0.2.6.patch
> new file mode 100644
> index 0000000..13ce4d8
> --- /dev/null
> +++ b/recipes/nodejs/files/libev-cross-cc-v0.2.6.patch
> @@ -0,0 +1,13 @@
> +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,
> ++  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')
> diff --git a/recipes/nodejs/files/libev-cross-cc.patch
> b/recipes/nodejs/files/libev-cross-cc.patch
> deleted file mode 100644
> index 4dd34f4..0000000
> --- a/recipes/nodejs/files/libev-cross-cc.patch
> +++ /dev/null
> @@ -1,18 +0,0 @@
> -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):
> -           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,
> -                 msg="Checking for SYS_clock_gettime")
> -
> -   have_librt = conf.check(lib='rt', uselib_store='RT')
> diff --git a/recipes/nodejs/files/node-cross-cc-v0.2.1.patch
> b/recipes/nodejs/files/node-cross-cc-v0.2.1.patch
> new file mode 100644
> index 0000000..0d15afc
> --- /dev/null
> +++ b/recipes/nodejs/files/node-cross-cc-v0.2.1.patch
> @@ -0,0 +1,14 @@
> +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):
> +   arch = ""
> +   if bld.env['DEST_CPU'] == 'x86_64':
> +     arch = "arch=x64"
> ++  # XXX Better support cross-compilation
> ++  else:
> ++    arch = "arch=" + bld.env['DEST_CPU']
> +
> +   if variant == "default":
> +     mode = "release"
> diff --git a/recipes/nodejs/files/node-cross-cc-v0.2.6.patch
> b/recipes/nodejs/files/node-cross-cc-v0.2.6.patch
> new file mode 100644
> index 0000000..1087ce2
> --- /dev/null
> +++ b/recipes/nodejs/files/node-cross-cc-v0.2.6.patch
> @@ -0,0 +1,19 @@
> +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"
> ++  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:
> ++    raise Exception(bld.env['DEST_CPU'], "is not one of these supported
> architectures: x86, x86_64, arm, mips")
> +
> +   if variant == "default":
> +     mode = "release"
> diff --git a/recipes/nodejs/files/node-cross-cc.patch
> b/recipes/nodejs/files/node-cross-cc.patch
> deleted file mode 100644
> index 0d15afc..0000000
> --- a/recipes/nodejs/files/node-cross-cc.patch
> +++ /dev/null
> @@ -1,14 +0,0 @@
> -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):
> -   arch = ""
> -   if bld.env['DEST_CPU'] == 'x86_64':
> -     arch = "arch=x64"
> -+  # XXX Better support cross-compilation
> -+  else:
> -+    arch = "arch=" + bld.env['DEST_CPU']
> -
> -   if variant == "default":
> -     mode = "release"
> diff --git a/recipes/nodejs/nodejs_0.2.1.bb b/recipes/nodejs/
> nodejs_0.2.1.bb
> index c2e9c41..1970766 100644
> --- a/recipes/nodejs/nodejs_0.2.1.bb
> +++ b/recipes/nodejs/nodejs_0.2.1.bb
> @@ -2,14 +2,14 @@ DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript"
>  HOMEPAGE = "http://nodejs.org"
>  LICENSE = "MIT"
>
> -PR = "r1"
> +PR = "r2"
>
>  DEPENDS = "openssl"
>
>  SRC_URI = " \
>   http://nodejs.org/dist/node-v${PV}.tar.gz \
> -  file://libev-cross-cc.patch \
> -  file://node-cross-cc.patch \
> +  file://libev-cross-cc-v${PV}.patch \
> +  file://node-cross-cc-v${PV}.patch \
>  "
>  SRC_URI[md5sum] = "c6051dd216817bf0f95bea80c42cf262"
>  SRC_URI[sha256sum] =
> "5bb7d084b2138ce43fcb34739ed894379c450a1dd569a1c710405bc39d2861c2"
> diff --git a/recipes/nodejs/nodejs_0.2.6.bb b/recipes/nodejs/
> nodejs_0.2.6.bb
> new file mode 100644
> index 0000000..560adc6
> --- /dev/null
> +++ b/recipes/nodejs/nodejs_0.2.6.bb
> @@ -0,0 +1,32 @@
> +DESCRIPTION = "nodeJS Evented I/O for V8 JavaScript"
> +HOMEPAGE = "http://nodejs.org"
> +LICENSE = "MIT"
> +
> +DEPENDS = "openssl"
> +
> +SRC_URI = " \
> +  http://nodejs.org/dist/node-v${PV}.tar.gz \
> +  file://libev-cross-cc-v${PV}.patch \
> +  file://node-cross-cc-v${PV}.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"
> --
> 1.7.0.4
>
>



More information about the Openembedded-devel mailing list