summaryrefslogtreecommitdiff
path: root/openembedded/packages/js
diff options
context:
space:
mode:
Diffstat (limited to 'openembedded/packages/js')
-rw-r--r--openembedded/packages/js/files/host-cc.patch16
-rw-r--r--openembedded/packages/js/files/jsautocfg.h52
-rw-r--r--openembedded/packages/js/js_1.5.bb37
3 files changed, 105 insertions, 0 deletions
diff --git a/openembedded/packages/js/files/host-cc.patch b/openembedded/packages/js/files/host-cc.patch
new file mode 100644
index 000000000..78a1e1b5a
--- /dev/null
+++ b/openembedded/packages/js/files/host-cc.patch
@@ -0,0 +1,16 @@
+diff -urNd smjs-1.5-r0/js/src/Makefile.ref smjs-1.5-r0.new/js/src/Makefile.ref
+--- smjs-1.5-r0/js/src/Makefile.ref 2003-11-15 00:10:55.000000000 +0000
++++ smjs-1.5-r0.new/js/src/Makefile.ref 2006-01-31 23:43:16.000000000 +0000
+@@ -317,8 +317,11 @@
+ rm -f $@
+ $(OBJDIR)/jscpucfg > $@
+
++$(OBJDIR)/jscpucfg.o: jscpucfg.c jscpucfg.h
++ $(HOST_CC) -o $@ $(CFLAGS) $(LDFLAGS) jscpucfg.c
++
+ $(OBJDIR)/jscpucfg: $(OBJDIR)/jscpucfg.o
+- $(CC) -o $@ $(OBJDIR)/jscpucfg.o
++ $(HOST_CC) -o $@ $(OBJDIR)/jscpucfg.o
+
+ # Look in OBJDIR to find jsautocfg.h
+ INCLUDES += -I$(OBJDIR)
diff --git a/openembedded/packages/js/files/jsautocfg.h b/openembedded/packages/js/files/jsautocfg.h
new file mode 100644
index 000000000..ac786dcda
--- /dev/null
+++ b/openembedded/packages/js/files/jsautocfg.h
@@ -0,0 +1,52 @@
+#ifndef js_cpucfg___
+#define js_cpucfg___
+
+/* AUTOMATICALLY GENERATED - DO NOT EDIT */
+
+#define IS_LITTLE_ENDIAN 1
+#undef IS_BIG_ENDIAN
+
+#define JS_BYTES_PER_BYTE 1L
+#define JS_BYTES_PER_SHORT 2L
+#define JS_BYTES_PER_INT 4L
+#define JS_BYTES_PER_INT64 8L
+#define JS_BYTES_PER_LONG 8L
+#define JS_BYTES_PER_FLOAT 4L
+#define JS_BYTES_PER_DOUBLE 8L
+#define JS_BYTES_PER_WORD 4L
+#define JS_BYTES_PER_DWORD 8L
+
+#define JS_BITS_PER_BYTE 8L
+#define JS_BITS_PER_SHORT 16L
+#define JS_BITS_PER_INT 32L
+#define JS_BITS_PER_INT64 64L
+#define JS_BITS_PER_LONG 64L
+#define JS_BITS_PER_FLOAT 32L
+#define JS_BITS_PER_DOUBLE 64L
+#define JS_BITS_PER_WORD 32L
+
+#define JS_BITS_PER_BYTE_LOG2 3L
+#define JS_BITS_PER_SHORT_LOG2 4L
+#define JS_BITS_PER_INT_LOG2 5L
+#define JS_BITS_PER_INT64_LOG2 6L
+#define JS_BITS_PER_LONG_LOG2 6L
+#define JS_BITS_PER_FLOAT_LOG2 5L
+#define JS_BITS_PER_DOUBLE_LOG2 6L
+#define JS_BITS_PER_WORD_LOG2 3L
+
+#define JS_ALIGN_OF_SHORT 2L
+#define JS_ALIGN_OF_INT 4L
+#define JS_ALIGN_OF_LONG 8L
+#define JS_ALIGN_OF_INT64 8L
+#define JS_ALIGN_OF_FLOAT 4L
+#define JS_ALIGN_OF_DOUBLE 8L
+#define JS_ALIGN_OF_POINTER 8L
+#define JS_ALIGN_OF_WORD 4L
+
+#define JS_BYTES_PER_WORD_LOG2 2L
+#define JS_BYTES_PER_DWORD_LOG2 3L
+#define JS_WORDS_PER_DWORD_LOG2 0L
+
+#define JS_STACK_GROWTH_DIRECTION (-1)
+
+#endif /* js_cpucfg___ */
diff --git a/openembedded/packages/js/js_1.5.bb b/openembedded/packages/js/js_1.5.bb
new file mode 100644
index 000000000..5af1441e3
--- /dev/null
+++ b/openembedded/packages/js/js_1.5.bb
@@ -0,0 +1,37 @@
+LICENSE = "GPL"
+DESCRIPTION = "A JavaScript engine"
+SECTION = "libs"
+DEPENDS = "readline"
+SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/js-1.5.tar.gz \
+ file://jsautocfg.h"
+MAINTAINER = "Chris Lord <chris@openedhand.com>"
+
+S = "${WORKDIR}/js/src"
+
+FILES_${PN} = "${libdir}/lib*.so"
+FILES_${PN}-dev = "${includedir} ${libdir}/lib*.a"
+
+EXTRA_OEMAKE = "'CC=${CC}' 'LD=${LD}' 'XCFLAGS=${CFLAGS}' 'XLDFLAGS=-L${STAGING_LIBDIR}'"
+
+do_compile_prepend() {
+ cp ${WORKDIR}/jsautocfg.h ${S}/
+}
+
+do_compile() {
+ oe_runmake -f Makefile.ref JS_READLINE=1 JS_EDITLINE=1 PREBUILT_CPUCFG=1
+}
+
+do_install() {
+ install -d ${D}${libdir}
+ install -d ${D}${includedir}
+ install -d ${D}${includedir}/js
+ install -m 0644 ${S}/Linux_All_DBG.OBJ/lib*.so ${D}${libdir}
+ install -m 0644 ${S}/Linux_All_DBG.OBJ/lib*.a ${D}${libdir}
+ install -m 0644 ${S}/*.h ${D}${includedir}/js
+}
+
+do_stage() {
+ install -d ${STAGING_INCDIR}/js
+ install -m 0644 ${S}/*.h ${STAGING_INCDIR}/js/
+ oe_libinstall -so -C Linux_All_DBG.OBJ libjs ${STAGING_LIBDIR}
+}