Patchwork js: Update to v1.8.5

login
register
mail settings
Submitter Andrei Gherzan
Date Feb. 3, 2012, 3:24 p.m.
Message ID <1328282644-4459-1-git-send-email-andrei@gherzan.ro>
Download mbox | patch
Permalink /patch/20659/
State New
Headers show

Comments

Andrei Gherzan - Feb. 3, 2012, 3:24 p.m.
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
---
 meta/recipes-support/js/files/buildcc.patch       |   22 ------
 meta/recipes-support/js/files/configure.ac        |   28 --------
 meta/recipes-support/js/files/jsautocfg.h         |   74 ---------------------
 meta/recipes-support/js/files/link_with_gcc.patch |   15 ----
 meta/recipes-support/js/files/usepic.patch        |   26 -------
 meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb      |   50 --------------
 meta/recipes-support/js/js_1.8.5-1.0.0.bb         |   45 +++++++++++++
 7 files changed, 45 insertions(+), 215 deletions(-)
 delete mode 100644 meta/recipes-support/js/files/buildcc.patch
 delete mode 100644 meta/recipes-support/js/files/configure.ac
 delete mode 100644 meta/recipes-support/js/files/jsautocfg.h
 delete mode 100644 meta/recipes-support/js/files/link_with_gcc.patch
 delete mode 100644 meta/recipes-support/js/files/usepic.patch
 delete mode 100644 meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb
 create mode 100644 meta/recipes-support/js/js_1.8.5-1.0.0.bb
Saul Wold - Feb. 4, 2012, 1:12 a.m.
On 02/03/2012 07:24 AM, Andrei Gherzan wrote:
> Signed-off-by: Andrei Gherzan<andrei@gherzan.ro>
> ---
>   meta/recipes-support/js/files/buildcc.patch       |   22 ------
>   meta/recipes-support/js/files/configure.ac        |   28 --------
>   meta/recipes-support/js/files/jsautocfg.h         |   74 ---------------------
>   meta/recipes-support/js/files/link_with_gcc.patch |   15 ----
>   meta/recipes-support/js/files/usepic.patch        |   26 -------
>   meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb      |   50 --------------
>   meta/recipes-support/js/js_1.8.5-1.0.0.bb         |   45 +++++++++++++
>   7 files changed, 45 insertions(+), 215 deletions(-)
>   delete mode 100644 meta/recipes-support/js/files/buildcc.patch
>   delete mode 100644 meta/recipes-support/js/files/configure.ac
>   delete mode 100644 meta/recipes-support/js/files/jsautocfg.h
>   delete mode 100644 meta/recipes-support/js/files/link_with_gcc.patch
>   delete mode 100644 meta/recipes-support/js/files/usepic.patch
>   delete mode 100644 meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb
>   create mode 100644 meta/recipes-support/js/js_1.8.5-1.0.0.bb
>

There seems to be a number of issues with this recipe, the 
LIC_FILE_CHKSUMs do not match, I did not see any DEPENDS, so I am not 
sure if you have all the dependencies correct.

It did not compile, maybe I got a different version than you did, I am 
trying to build it on an x86-64 machine.

Could you look into this please.

Thanks
	Sau!



> diff --git a/meta/recipes-support/js/files/buildcc.patch b/meta/recipes-support/js/files/buildcc.patch
> deleted file mode 100644
> index 19daf72..0000000
> --- a/meta/recipes-support/js/files/buildcc.patch
> +++ /dev/null
> @@ -1,22 +0,0 @@
> -Upstream-Status: Pending
> -
> -jskwgen should be built by BUILD_CC in cross environment
> -
> -7/23/2010 - created by Qing He<qing.he@intel.com>
> -
> -diff -uNr js.orig//src/Makefile.ref js/src/Makefile.ref
> ---- js.orig//src/Makefile.ref	2009-02-25 21:24:29.000000000 +0800
> -+++ js/src/Makefile.ref	2010-07-23 13:26:51.000000000 +0800
> -@@ -303,10 +303,10 @@
> -
> - $(OBJDIR)/jskwgen.o: jskwgen.c jskeyword.tbl
> - 	@$(MAKE_OBJDIR)
> --	$(CC) -o $@ -c $(CFLAGS) $<
> -+	$(BUILD_CC) -o $@ -c $(BUILD_CFLAGS) $<
> -
> - $(OBJDIR)/jskwgen$(HOST_BIN_SUFFIX): $(OBJDIR)/jskwgen.$(OBJ_SUFFIX)
> --	$(CC) -o $@ $(CFLAGS) $(LDFLAGS) $^
> -+	$(BUILD_CC) -o $@ $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $^
> -
> - endif
> -
> diff --git a/meta/recipes-support/js/files/configure.ac b/meta/recipes-support/js/files/configure.ac
> deleted file mode 100644
> index 41af298..0000000
> --- a/meta/recipes-support/js/files/configure.ac
> +++ /dev/null
> @@ -1,28 +0,0 @@
> -AC_INIT
> -
> -AC_CHECK_SIZEOF([char])
> -AC_CHECK_SIZEOF([short])
> -AC_CHECK_SIZEOF([int])
> -AC_CHECK_SIZEOF([int64_t])
> -AC_CHECK_SIZEOF([long])
> -AC_CHECK_SIZEOF([long long])
> -AC_CHECK_SIZEOF([int *])
> -AC_CHECK_SIZEOF([float])
> -AC_CHECK_SIZEOF([double])
> -
> -AC_CHECK_ALIGNOF([char])
> -AC_CHECK_ALIGNOF([short])
> -AC_CHECK_ALIGNOF([int])
> -AC_CHECK_ALIGNOF([int64_t])
> -AC_CHECK_ALIGNOF([long])
> -AC_CHECK_ALIGNOF([long long])
> -AC_CHECK_ALIGNOF([int *])
> -AC_CHECK_ALIGNOF([float])
> -AC_CHECK_ALIGNOF([double])
> -
> -AC_C_BIGENDIAN
> -
> -AC_TYPE_LONG_LONG_INT
> -
> -AC_CONFIG_HEADER([conf.h])
> -AC_OUTPUT
> diff --git a/meta/recipes-support/js/files/jsautocfg.h b/meta/recipes-support/js/files/jsautocfg.h
> deleted file mode 100644
> index 295e491..0000000
> --- a/meta/recipes-support/js/files/jsautocfg.h
> +++ /dev/null
> @@ -1,74 +0,0 @@
> -#ifndef js_cpucfg___
> -#define js_cpucfg___
> -
> -/* AUTOMATICALLY GENERATED - DO NOT EDIT */
> -
> -#include "conf.h"
> -
> -#ifdef WORDS_BIGENDIAN
> -# undef  IS_LITTLE_ENDIAN
> -# define IS_BIG_ENDIAN 1
> -#else
> -# define IS_LITTLE_ENDIAN 1
> -# undef  IS_BIG_ENDIAN
> -#endif
> -
> -#define __I_LOG2(n) (    \
> -        ((n) == 1)?   0: \
> -        ((n) == 2)?   1: \
> -        ((n) == 4)?   2: \
> -        ((n) == 8)?   3: \
> -        ((n) == 16)?  4: \
> -        ((n) == 32)?  5: \
> -        ((n) == 64)?  6: \
> -        ((n) == 128)? 7: \
> -            -1)
> -
> -#define JS_BYTES_PER_BYTE   SIZEOF_CHAR
> -#define JS_BYTES_PER_SHORT  SIZEOF_SHORT
> -#define JS_BYTES_PER_INT    SIZEOF_INT
> -#define JS_BYTES_PER_INT64  SIZEOF_INT64_T
> -#define JS_BYTES_PER_LONG   SIZEOF_LONG
> -#define JS_BYTES_PER_FLOAT  SIZEOF_FLOAT
> -#define JS_BYTES_PER_DOUBLE SIZEOF_DOUBLE
> -#define JS_BYTES_PER_WORD   SIZEOF_LONG
> -#define JS_BYTES_PER_DWORD  SIZEOF_LONG_LONG
> -
> -#define JS_BITS_PER_BYTE    8L
> -#define JS_BITS_PER_SHORT   (JS_BITS_PER_BYTE * JS_BYTES_PER_SHORT)
> -#define JS_BITS_PER_INT     (JS_BITS_PER_BYTE * JS_BYTES_PER_INT)
> -#define JS_BITS_PER_INT64   (JS_BITS_PER_BYTE * JS_BYTES_PER_INT64)
> -#define JS_BITS_PER_LONG    (JS_BITS_PER_BYTE * JS_BYTES_PER_LONG)
> -#define JS_BITS_PER_FLOAT   (JS_BITS_PER_BYTE * JS_BYTES_PER_GLOAT)
> -#define JS_BITS_PER_DOUBLE  (JS_BITS_PER_BYTE * JS_BYTES_PER_DOUBLE)
> -#define JS_BITS_PER_WORD    (JS_BITS_PER_BYTE * JS_BYTES_PER_WORD)
> -
> -#define JS_BITS_PER_BYTE_LOG2   __I_LOG2(JS_BITS_PER_BYTE)
> -#define JS_BITS_PER_SHORT_LOG2  __I_LOG2(JS_BITS_PER_BYTE)
> -#define JS_BITS_PER_INT_LOG2    __I_LOG2(JS_BITS_PER_BYTE)
> -#define JS_BITS_PER_INT64_LOG2  __I_LOG2(JS_BITS_PER_BYTE)
> -#define JS_BITS_PER_LONG_LOG2   __I_LOG2(JS_BITS_PER_BYTE)
> -#define JS_BITS_PER_FLOAT_LOG2  __I_LOG2(JS_BITS_PER_BYTE)
> -#define JS_BITS_PER_DOUBLE_LOG2 __I_LOG2(JS_BITS_PER_BYTE)
> -#define JS_BITS_PER_WORD_LOG2   __I_LOG2(JS_BITS_PER_BYTE)
> -
> -#define JS_ALIGN_OF_SHORT   ALIGNOF_SHORT
> -#define JS_ALIGN_OF_INT     ALIGNOF_INT
> -#define JS_ALIGN_OF_LONG    ALIGNOF_LONG
> -#define JS_ALIGN_OF_INT64   ALIGNOF_INT64_T
> -#define JS_ALIGN_OF_FLOAT   ALIGNOF_FLOAT
> -#define JS_ALIGN_OF_DOUBLE  ALIGNOF_DOUBLE
> -#define JS_ALIGN_OF_POINTER ALIGNOF_INT_P
> -#define JS_ALIGN_OF_WORD    ALIGNOF_LONG
> -
> -#define JS_BYTES_PER_WORD_LOG2   __I_LOG2(JS_BYTES_PER_WORD)
> -#define JS_BYTES_PER_DWORD_LOG2  __I_LOG2(JS_BYTES_PER_DWORDS)
> -#define JS_WORDS_PER_DWORD_LOG2  __I_LOG2(JS_BYTES_PER_DWORDS / JS_BYTES_PER_WORD)
> -
> -#define JS_STACK_GROWTH_DIRECTION (-1)
> -
> -#ifdef HAVE_LONG_LONG_INT
> -# define JS_HAVE_LONG_LONG
> -#endif
> -
> -#endif /* js_cpucfg___ */
> diff --git a/meta/recipes-support/js/files/link_with_gcc.patch b/meta/recipes-support/js/files/link_with_gcc.patch
> deleted file mode 100644
> index 988df61..0000000
> --- a/meta/recipes-support/js/files/link_with_gcc.patch
> +++ /dev/null
> @@ -1,15 +0,0 @@
> -Upstream-Status: Pending
> -
> -Index: src/config/Linux_All.mk
> -===================================================================
> ---- src.orig/config/Linux_All.mk	2005-05-10 19:53:44.000000000 +0000
> -+++ src/config/Linux_All.mk	2007-06-18 17:20:05.000000000 +0000
> -@@ -47,7 +47,7 @@
> - OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R
> -
> - RANLIB = echo
> --MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS)
> -+MKSHLIB = $(CC) -shared $(XMKSHLIBOPTS)
> -
> - #.c.o:
> - #      $(CC) -c -MD $*.d $(CFLAGS) $<
> diff --git a/meta/recipes-support/js/files/usepic.patch b/meta/recipes-support/js/files/usepic.patch
> deleted file mode 100644
> index 91b0923..0000000
> --- a/meta/recipes-support/js/files/usepic.patch
> +++ /dev/null
> @@ -1,26 +0,0 @@
> -Upstream-Status: Inappropriate [embedded specific]
> -
> -Mips needs -fPIC to compile properly. These tests are broken anyway as they test
> -the build system architecture, not the target. This is a hack.
> -
> -RP 10/6/2010
> -
> -Index: src/config/Linux_All.mk
> -===================================================================
> ---- src.orig/config/Linux_All.mk	2010-06-10 22:09:43.000000000 +0100
> -+++ src/config/Linux_All.mk	2010-06-10 22:09:55.000000000 +0100
> -@@ -90,14 +90,10 @@
> - # Use the editline library to provide line-editing support.
> - JS_EDITLINE = 1
> -
> --ifeq ($(CPU_ARCH),x86_64)
> - # Use VA_COPY() standard macro on x86-64
> - # FIXME: better use it everywhere
> - OS_CFLAGS += -DHAVE_VA_COPY -DVA_COPY=va_copy
> --endif
> -
> --ifeq ($(CPU_ARCH),x86_64)
> - # We need PIC code for shared libraries
> - # FIXME: better patch rules.mk&  fdlibm/Makefile*
> - OS_CFLAGS += -DPIC -fPIC
> --endif
> diff --git a/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb b/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb
> deleted file mode 100644
> index adca44e..0000000
> --- a/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb
> +++ /dev/null
> @@ -1,50 +0,0 @@
> -DESCRIPTION = "Spidermonkey: a javascript engine written in C"
> -HOMEPAGE = "http://www.mozilla.org/js/spidermonkey/"
> -SECTION = "libs"
> -
> -# the package is licensed under either of the following
> -LICENSE = "MPL-1 | GPLv2+ | LGPLv2.1+"
> -LIC_FILES_CHKSUM = "file://jsapi.c;beginline=4;endline=39;md5=347c6bbf4fb4547de1fa5ad830030063"
> -PR = "r3"
> -
> -SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/js-1.8.0-rc1.tar.gz \
> -           file://link_with_gcc.patch \
> -           file://usepic.patch \
> -           file://buildcc.patch;striplevel=2 \
> -           file://jsautocfg.h \
> -           file://configure.ac"
> -
> -SRC_URI[md5sum] = "eaad8815dcc66a717ddb87e9724d964e"
> -SRC_URI[sha256sum] = "374398699ac3fd802d98d642486cf6b0edc082a119c9c9c499945a0bc73e3413"
> -
> -S = "${WORKDIR}/js/src"
> -
> -# use local autoconf script to generate a usable jsautocfg.h
> -# don't bother with automake
> -inherit autotools
> -
> -do_configure_prepend() {
> -	cp -f ${WORKDIR}/configure.ac ${S}
> -	cp -f ${WORKDIR}/jsautocfg.h ${S}
> -}
> -
> -EXTRA_OEMAKE = "'CC=${CC}' 'LD=${LD}' 'XCFLAGS=${CFLAGS}' 'XLDFLAGS=${LDFLAGS} -Wl,-soname=libjs' \
> -                'BUILD_CC=${BUILD_CC}' 'BUILD_CFLAGS=${BUILD_CFLAGS}' 'BUILD_LDFLAGS=${BUILD_LDFLAGS}'"
> -
> -PARALLEL_MAKE = ""
> -
> -do_compile() {
> -	oe_runmake -f Makefile.ref JS_EDITLINE=1 PREBUILT_CPUCFG=1 BUILD_OPT=1
> -}
> -
> -do_install() {
> -	install -d ${D}${libdir}
> -	install -d ${D}${includedir}
> -	install -d ${D}${includedir}/js
> -	oe_libinstall -so -C Linux_All_OPT.OBJ libjs ${D}${libdir}
> -	install -m 0644 ${S}/*.h ${D}${includedir}/js
> -	install -m 0644 ${S}/jsproto.tbl ${D}${includedir}/js
> -}
> -
> -FILES_${PN} = "${libdir}/lib*.so"
> -
> diff --git a/meta/recipes-support/js/js_1.8.5-1.0.0.bb b/meta/recipes-support/js/js_1.8.5-1.0.0.bb
> new file mode 100644
> index 0000000..033a79e
> --- /dev/null
> +++ b/meta/recipes-support/js/js_1.8.5-1.0.0.bb
> @@ -0,0 +1,45 @@
> +DESCRIPTION = "Spidermonkey: a javascript engine written in C"
> +HOMEPAGE = "http://www.mozilla.org/js/spidermonkey/"
> +SECTION = "libs"
> +
> +# the package is licensed under either of the following
> +LICENSE = "MPL-1 | GPLv2+ | LGPLv2.1+"
> +LIC_FILES_CHKSUM = "file://jsapi.cpp;beginline=4;endline=35;md5=d26d5cdc168368b8af90a541dd6ffd8b"
> +PR = "r0"
> +
> +SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz   \
> +	    "
> +
> +SRC_URI[md5sum] = "a4574365938222adca0a6bd33329cb32"
> +SRC_URI[sha256sum] = "5d12f7e1f5b4a99436685d97b9b7b75f094d33580227aa998c406bbae6f2a687"
> +
> +S = "${WORKDIR}/js-1.8.5/js/src"
> +
> +inherit autotools
> +
> +EXTRA_OEMAKE = "'CC=${CC}' 'LD=${LD}' 'XCFLAGS=${CFLAGS}' 'XLDFLAGS=${LDFLAGS} -Wl,-soname=libjs' \
> +                'BUILD_CC=${BUILD_CC}' 'BUILD_CFLAGS=${BUILD_CFLAGS}' 'BUILD_LDFLAGS=${BUILD_LDFLAGS}' "
> +
> +PARALLEL_MAKE = ""
> +
> +do_configure() {
> +    ./configure --prefix=/usr
> +}
> +
> +do_install() {
> +	autotools_do_install
> +	# We create a symlink in order to avoid failures of older packages that use -ljs
> +	ln -sf ${D}${libdir}/libmozjs185.so.1.0.0 ${D}${libdir}/libjs.so
> +}
> +
> +FILES_${PN} = "${libdir}/libmozjs185.so.1.0.0 \
> +		${bindir}/*"
> +
> +FILES_${PN}-dev = "${includedir}/* \
> +		    /usr/lib/pkgconfig/* \
> +		    /usr/lib/libmozjs185.so \
> +		    /usr/lib/libmozjs185.so.1.0 \
> +		    /usr/lib/libjs.so \
> +		    "
> +
> +FILES_${PN}-staticdev = "${libdir}/*.a"
Andrei Gherzan - Feb. 5, 2012, 4:41 p.m.
On Sat, Feb 4, 2012 at 03:12, Saul Wold <sgw@linux.intel.com> wrote:

>
> There seems to be a number of issues with this recipe, the
> LIC_FILE_CHKSUMs do not match, I did not see any DEPENDS, so I am not sure
> if you have all the dependencies correct.
>
> It did not compile, maybe I got a different version than you did, I am
> trying to build it on an x86-64 machine.
>
> Could you look into this please.
>
> Thanks
>        Sau!
>

I used the md5sum of the whole cpp file and not only for the LICENSE part
of it. Anyway, i replaced that with the correct one but as i see, this
change wasn't in this patch.

About DEPENDS, I couldn't find any dependencies. In order to check this i
baked js in a new build without having anything in DEPENDS and the
package succeeded. (bitbake js)

This should be ok: http://git.gherzan.ro/yocto-dev/changeset/b21940194b78
Sergey 'Jin' Bostandzhyan - Feb. 5, 2012, 5:50 p.m.
Hi,

On Sun, Feb 05, 2012 at 06:41:54PM +0200, Andrei Gherzan wrote:
> About DEPENDS, I couldn't find any dependencies. In order to check this i baked
> js in a new build without having anything in DEPENDS and the package succeeded

just as a hint: if you compile js with the threadsafe option you might need
nspr too. It ships some sort of nspr with it, but I could never get it to
compile, in the end I rolled my own nspr package and told JS configure to use
it.

I know, i know, I'm guilty of not submitting a patch :( Still too swamped to
dig through all my changes and prepare patches...

Here is the nspr stuff if you think that you need it:
https://gitorious.digitalstrom.org/dss-oe/dss-oe/trees/master/dS/meta-dss11-devel/recipes-support/nspr

Kind regards,
Jin
Andrei Gherzan - Feb. 5, 2012, 9:22 p.m.
On Sun, Feb 5, 2012 at 19:50, Sergey 'Jin' Bostandzhyan <jin@mediatomb.cc>wrote:

> Hi,
>
> On Sun, Feb 05, 2012 at 06:41:54PM +0200, Andrei Gherzan wrote:
> > About DEPENDS, I couldn't find any dependencies. In order to check this
> i baked
> > js in a new build without having anything in DEPENDS and the package
> succeeded
>
> just as a hint: if you compile js with the threadsafe option you might need
> nspr too. It ships some sort of nspr with it, but I could never get it to
> compile, in the end I rolled my own nspr package and told JS configure to
> use
> it.
>
> I know, i know, I'm guilty of not submitting a patch :( Still too swamped
> to
> dig through all my changes and prepare patches...
>
> Here is the nspr stuff if you think that you need it:
>
> https://gitorious.digitalstrom.org/dss-oe/dss-oe/trees/master/dS/meta-dss11-devel/recipes-support/nspr
>
> Kind regards,
> Jin
>
>
Based on Jin's ideas i modified js and integrated nsfr as well:
JS: http://git.gherzan.ro/yocto-dev/changeset/a55b97f5e67f
NSPR: http://git.gherzan.ro/yocto-dev/changeset/40d96147ebc3

@g

Patch

diff --git a/meta/recipes-support/js/files/buildcc.patch b/meta/recipes-support/js/files/buildcc.patch
deleted file mode 100644
index 19daf72..0000000
--- a/meta/recipes-support/js/files/buildcc.patch
+++ /dev/null
@@ -1,22 +0,0 @@ 
-Upstream-Status: Pending
-
-jskwgen should be built by BUILD_CC in cross environment
-
-7/23/2010 - created by Qing He <qing.he@intel.com>
-
-diff -uNr js.orig//src/Makefile.ref js/src/Makefile.ref
---- js.orig//src/Makefile.ref	2009-02-25 21:24:29.000000000 +0800
-+++ js/src/Makefile.ref	2010-07-23 13:26:51.000000000 +0800
-@@ -303,10 +303,10 @@
- 
- $(OBJDIR)/jskwgen.o: jskwgen.c jskeyword.tbl
- 	@$(MAKE_OBJDIR)
--	$(CC) -o $@ -c $(CFLAGS) $<
-+	$(BUILD_CC) -o $@ -c $(BUILD_CFLAGS) $<
- 
- $(OBJDIR)/jskwgen$(HOST_BIN_SUFFIX): $(OBJDIR)/jskwgen.$(OBJ_SUFFIX)
--	$(CC) -o $@ $(CFLAGS) $(LDFLAGS) $^
-+	$(BUILD_CC) -o $@ $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $^
- 
- endif
- 
diff --git a/meta/recipes-support/js/files/configure.ac b/meta/recipes-support/js/files/configure.ac
deleted file mode 100644
index 41af298..0000000
--- a/meta/recipes-support/js/files/configure.ac
+++ /dev/null
@@ -1,28 +0,0 @@ 
-AC_INIT
-
-AC_CHECK_SIZEOF([char])
-AC_CHECK_SIZEOF([short])
-AC_CHECK_SIZEOF([int])
-AC_CHECK_SIZEOF([int64_t])
-AC_CHECK_SIZEOF([long])
-AC_CHECK_SIZEOF([long long])
-AC_CHECK_SIZEOF([int *])
-AC_CHECK_SIZEOF([float])
-AC_CHECK_SIZEOF([double])
-
-AC_CHECK_ALIGNOF([char])
-AC_CHECK_ALIGNOF([short])
-AC_CHECK_ALIGNOF([int])
-AC_CHECK_ALIGNOF([int64_t])
-AC_CHECK_ALIGNOF([long])
-AC_CHECK_ALIGNOF([long long])
-AC_CHECK_ALIGNOF([int *])
-AC_CHECK_ALIGNOF([float])
-AC_CHECK_ALIGNOF([double])
-
-AC_C_BIGENDIAN
-
-AC_TYPE_LONG_LONG_INT
-
-AC_CONFIG_HEADER([conf.h])
-AC_OUTPUT
diff --git a/meta/recipes-support/js/files/jsautocfg.h b/meta/recipes-support/js/files/jsautocfg.h
deleted file mode 100644
index 295e491..0000000
--- a/meta/recipes-support/js/files/jsautocfg.h
+++ /dev/null
@@ -1,74 +0,0 @@ 
-#ifndef js_cpucfg___
-#define js_cpucfg___
-
-/* AUTOMATICALLY GENERATED - DO NOT EDIT */
-
-#include "conf.h"
-
-#ifdef WORDS_BIGENDIAN
-# undef  IS_LITTLE_ENDIAN
-# define IS_BIG_ENDIAN 1
-#else
-# define IS_LITTLE_ENDIAN 1
-# undef  IS_BIG_ENDIAN
-#endif
-
-#define __I_LOG2(n) (    \
-        ((n) == 1)?   0: \
-        ((n) == 2)?   1: \
-        ((n) == 4)?   2: \
-        ((n) == 8)?   3: \
-        ((n) == 16)?  4: \
-        ((n) == 32)?  5: \
-        ((n) == 64)?  6: \
-        ((n) == 128)? 7: \
-            -1)
-
-#define JS_BYTES_PER_BYTE   SIZEOF_CHAR
-#define JS_BYTES_PER_SHORT  SIZEOF_SHORT
-#define JS_BYTES_PER_INT    SIZEOF_INT
-#define JS_BYTES_PER_INT64  SIZEOF_INT64_T
-#define JS_BYTES_PER_LONG   SIZEOF_LONG
-#define JS_BYTES_PER_FLOAT  SIZEOF_FLOAT
-#define JS_BYTES_PER_DOUBLE SIZEOF_DOUBLE
-#define JS_BYTES_PER_WORD   SIZEOF_LONG
-#define JS_BYTES_PER_DWORD  SIZEOF_LONG_LONG
-
-#define JS_BITS_PER_BYTE    8L
-#define JS_BITS_PER_SHORT   (JS_BITS_PER_BYTE * JS_BYTES_PER_SHORT)
-#define JS_BITS_PER_INT     (JS_BITS_PER_BYTE * JS_BYTES_PER_INT)
-#define JS_BITS_PER_INT64   (JS_BITS_PER_BYTE * JS_BYTES_PER_INT64)
-#define JS_BITS_PER_LONG    (JS_BITS_PER_BYTE * JS_BYTES_PER_LONG)
-#define JS_BITS_PER_FLOAT   (JS_BITS_PER_BYTE * JS_BYTES_PER_GLOAT)
-#define JS_BITS_PER_DOUBLE  (JS_BITS_PER_BYTE * JS_BYTES_PER_DOUBLE)
-#define JS_BITS_PER_WORD    (JS_BITS_PER_BYTE * JS_BYTES_PER_WORD)
-
-#define JS_BITS_PER_BYTE_LOG2   __I_LOG2(JS_BITS_PER_BYTE)
-#define JS_BITS_PER_SHORT_LOG2  __I_LOG2(JS_BITS_PER_BYTE)
-#define JS_BITS_PER_INT_LOG2    __I_LOG2(JS_BITS_PER_BYTE)
-#define JS_BITS_PER_INT64_LOG2  __I_LOG2(JS_BITS_PER_BYTE)
-#define JS_BITS_PER_LONG_LOG2   __I_LOG2(JS_BITS_PER_BYTE)
-#define JS_BITS_PER_FLOAT_LOG2  __I_LOG2(JS_BITS_PER_BYTE)
-#define JS_BITS_PER_DOUBLE_LOG2 __I_LOG2(JS_BITS_PER_BYTE)
-#define JS_BITS_PER_WORD_LOG2   __I_LOG2(JS_BITS_PER_BYTE)
-
-#define JS_ALIGN_OF_SHORT   ALIGNOF_SHORT
-#define JS_ALIGN_OF_INT     ALIGNOF_INT
-#define JS_ALIGN_OF_LONG    ALIGNOF_LONG
-#define JS_ALIGN_OF_INT64   ALIGNOF_INT64_T
-#define JS_ALIGN_OF_FLOAT   ALIGNOF_FLOAT
-#define JS_ALIGN_OF_DOUBLE  ALIGNOF_DOUBLE
-#define JS_ALIGN_OF_POINTER ALIGNOF_INT_P
-#define JS_ALIGN_OF_WORD    ALIGNOF_LONG
-
-#define JS_BYTES_PER_WORD_LOG2   __I_LOG2(JS_BYTES_PER_WORD)
-#define JS_BYTES_PER_DWORD_LOG2  __I_LOG2(JS_BYTES_PER_DWORDS)
-#define JS_WORDS_PER_DWORD_LOG2  __I_LOG2(JS_BYTES_PER_DWORDS / JS_BYTES_PER_WORD)
-
-#define JS_STACK_GROWTH_DIRECTION (-1)
-
-#ifdef HAVE_LONG_LONG_INT
-# define JS_HAVE_LONG_LONG
-#endif
-
-#endif /* js_cpucfg___ */
diff --git a/meta/recipes-support/js/files/link_with_gcc.patch b/meta/recipes-support/js/files/link_with_gcc.patch
deleted file mode 100644
index 988df61..0000000
--- a/meta/recipes-support/js/files/link_with_gcc.patch
+++ /dev/null
@@ -1,15 +0,0 @@ 
-Upstream-Status: Pending
-
-Index: src/config/Linux_All.mk
-===================================================================
---- src.orig/config/Linux_All.mk	2005-05-10 19:53:44.000000000 +0000
-+++ src/config/Linux_All.mk	2007-06-18 17:20:05.000000000 +0000
-@@ -47,7 +47,7 @@
- OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R
- 
- RANLIB = echo
--MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS)
-+MKSHLIB = $(CC) -shared $(XMKSHLIBOPTS)
- 
- #.c.o:
- #      $(CC) -c -MD $*.d $(CFLAGS) $<
diff --git a/meta/recipes-support/js/files/usepic.patch b/meta/recipes-support/js/files/usepic.patch
deleted file mode 100644
index 91b0923..0000000
--- a/meta/recipes-support/js/files/usepic.patch
+++ /dev/null
@@ -1,26 +0,0 @@ 
-Upstream-Status: Inappropriate [embedded specific]
-
-Mips needs -fPIC to compile properly. These tests are broken anyway as they test 
-the build system architecture, not the target. This is a hack.
-
-RP 10/6/2010
-
-Index: src/config/Linux_All.mk
-===================================================================
---- src.orig/config/Linux_All.mk	2010-06-10 22:09:43.000000000 +0100
-+++ src/config/Linux_All.mk	2010-06-10 22:09:55.000000000 +0100
-@@ -90,14 +90,10 @@
- # Use the editline library to provide line-editing support.
- JS_EDITLINE = 1
- 
--ifeq ($(CPU_ARCH),x86_64)
- # Use VA_COPY() standard macro on x86-64
- # FIXME: better use it everywhere
- OS_CFLAGS += -DHAVE_VA_COPY -DVA_COPY=va_copy
--endif
- 
--ifeq ($(CPU_ARCH),x86_64)
- # We need PIC code for shared libraries
- # FIXME: better patch rules.mk & fdlibm/Makefile*
- OS_CFLAGS += -DPIC -fPIC
--endif
diff --git a/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb b/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb
deleted file mode 100644
index adca44e..0000000
--- a/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb
+++ /dev/null
@@ -1,50 +0,0 @@ 
-DESCRIPTION = "Spidermonkey: a javascript engine written in C"
-HOMEPAGE = "http://www.mozilla.org/js/spidermonkey/"
-SECTION = "libs"
-
-# the package is licensed under either of the following
-LICENSE = "MPL-1 | GPLv2+ | LGPLv2.1+"
-LIC_FILES_CHKSUM = "file://jsapi.c;beginline=4;endline=39;md5=347c6bbf4fb4547de1fa5ad830030063"
-PR = "r3"
-
-SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/js-1.8.0-rc1.tar.gz \
-           file://link_with_gcc.patch \
-           file://usepic.patch \
-           file://buildcc.patch;striplevel=2 \
-           file://jsautocfg.h \
-           file://configure.ac"
-
-SRC_URI[md5sum] = "eaad8815dcc66a717ddb87e9724d964e"
-SRC_URI[sha256sum] = "374398699ac3fd802d98d642486cf6b0edc082a119c9c9c499945a0bc73e3413"
-
-S = "${WORKDIR}/js/src"
-
-# use local autoconf script to generate a usable jsautocfg.h
-# don't bother with automake
-inherit autotools
-
-do_configure_prepend() {
-	cp -f ${WORKDIR}/configure.ac ${S}
-	cp -f ${WORKDIR}/jsautocfg.h ${S}
-}
-
-EXTRA_OEMAKE = "'CC=${CC}' 'LD=${LD}' 'XCFLAGS=${CFLAGS}' 'XLDFLAGS=${LDFLAGS} -Wl,-soname=libjs' \
-                'BUILD_CC=${BUILD_CC}' 'BUILD_CFLAGS=${BUILD_CFLAGS}' 'BUILD_LDFLAGS=${BUILD_LDFLAGS}'"
-
-PARALLEL_MAKE = ""
-
-do_compile() {
-	oe_runmake -f Makefile.ref JS_EDITLINE=1 PREBUILT_CPUCFG=1 BUILD_OPT=1
-}
-
-do_install() {
-	install -d ${D}${libdir}
-	install -d ${D}${includedir}
-	install -d ${D}${includedir}/js
-	oe_libinstall -so -C Linux_All_OPT.OBJ libjs ${D}${libdir}
-	install -m 0644 ${S}/*.h ${D}${includedir}/js
-	install -m 0644 ${S}/jsproto.tbl ${D}${includedir}/js
-}
-
-FILES_${PN} = "${libdir}/lib*.so"
-
diff --git a/meta/recipes-support/js/js_1.8.5-1.0.0.bb b/meta/recipes-support/js/js_1.8.5-1.0.0.bb
new file mode 100644
index 0000000..033a79e
--- /dev/null
+++ b/meta/recipes-support/js/js_1.8.5-1.0.0.bb
@@ -0,0 +1,45 @@ 
+DESCRIPTION = "Spidermonkey: a javascript engine written in C"
+HOMEPAGE = "http://www.mozilla.org/js/spidermonkey/"
+SECTION = "libs"
+
+# the package is licensed under either of the following
+LICENSE = "MPL-1 | GPLv2+ | LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://jsapi.cpp;beginline=4;endline=35;md5=d26d5cdc168368b8af90a541dd6ffd8b"
+PR = "r0"
+
+SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz   \
+	    "
+
+SRC_URI[md5sum] = "a4574365938222adca0a6bd33329cb32"
+SRC_URI[sha256sum] = "5d12f7e1f5b4a99436685d97b9b7b75f094d33580227aa998c406bbae6f2a687"
+
+S = "${WORKDIR}/js-1.8.5/js/src"
+
+inherit autotools
+
+EXTRA_OEMAKE = "'CC=${CC}' 'LD=${LD}' 'XCFLAGS=${CFLAGS}' 'XLDFLAGS=${LDFLAGS} -Wl,-soname=libjs' \
+                'BUILD_CC=${BUILD_CC}' 'BUILD_CFLAGS=${BUILD_CFLAGS}' 'BUILD_LDFLAGS=${BUILD_LDFLAGS}' "
+
+PARALLEL_MAKE = ""
+
+do_configure() {
+    ./configure --prefix=/usr
+}
+
+do_install() {
+	autotools_do_install
+	# We create a symlink in order to avoid failures of older packages that use -ljs
+	ln -sf ${D}${libdir}/libmozjs185.so.1.0.0 ${D}${libdir}/libjs.so 
+}
+
+FILES_${PN} = "${libdir}/libmozjs185.so.1.0.0 \
+		${bindir}/*"
+
+FILES_${PN}-dev = "${includedir}/* \
+		    /usr/lib/pkgconfig/* \
+		    /usr/lib/libmozjs185.so \
+		    /usr/lib/libmozjs185.so.1.0 \
+		    /usr/lib/libjs.so \
+		    "
+
+FILES_${PN}-staticdev = "${libdir}/*.a"