diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2010-09-01 19:09:11 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2010-09-01 19:09:57 +0100 |
commit | d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612 (patch) | |
tree | f36fe3008f36ff75cbdd31b630f8f13f1f205ebb /meta/recipes-support/js | |
parent | caab7fc509bf27706ff3248689f6afd04225cfda (diff) | |
download | poky-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.tar.gz |
packages: Separate out most of the remaining packages into recipes
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/recipes-support/js')
-rw-r--r-- | meta/recipes-support/js/files/buildcc.patch | 20 | ||||
-rw-r--r-- | meta/recipes-support/js/files/configure.ac | 28 | ||||
-rw-r--r-- | meta/recipes-support/js/files/jsautocfg.h | 74 | ||||
-rw-r--r-- | meta/recipes-support/js/files/link_with_gcc.patch | 13 | ||||
-rw-r--r-- | meta/recipes-support/js/files/usepic.patch | 24 | ||||
-rw-r--r-- | meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb | 47 |
6 files changed, 206 insertions, 0 deletions
diff --git a/meta/recipes-support/js/files/buildcc.patch b/meta/recipes-support/js/files/buildcc.patch new file mode 100644 index 0000000000..26eef218d6 --- /dev/null +++ b/meta/recipes-support/js/files/buildcc.patch | |||
@@ -0,0 +1,20 @@ | |||
1 | jskwgen should be built by BUILD_CC in cross environment | ||
2 | |||
3 | 7/23/2010 - created by Qing He <qing.he@intel.com> | ||
4 | |||
5 | diff -uNr js.orig//src/Makefile.ref js/src/Makefile.ref | ||
6 | --- js.orig//src/Makefile.ref 2009-02-25 21:24:29.000000000 +0800 | ||
7 | +++ js/src/Makefile.ref 2010-07-23 13:26:51.000000000 +0800 | ||
8 | @@ -303,10 +303,10 @@ | ||
9 | |||
10 | $(OBJDIR)/jskwgen.o: jskwgen.c jskeyword.tbl | ||
11 | @$(MAKE_OBJDIR) | ||
12 | - $(CC) -o $@ -c $(CFLAGS) $< | ||
13 | + $(BUILD_CC) -o $@ -c $(BUILD_CFLAGS) $< | ||
14 | |||
15 | $(OBJDIR)/jskwgen$(HOST_BIN_SUFFIX): $(OBJDIR)/jskwgen.$(OBJ_SUFFIX) | ||
16 | - $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $^ | ||
17 | + $(BUILD_CC) -o $@ $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $^ | ||
18 | |||
19 | endif | ||
20 | |||
diff --git a/meta/recipes-support/js/files/configure.ac b/meta/recipes-support/js/files/configure.ac new file mode 100644 index 0000000000..41af298455 --- /dev/null +++ b/meta/recipes-support/js/files/configure.ac | |||
@@ -0,0 +1,28 @@ | |||
1 | AC_INIT | ||
2 | |||
3 | AC_CHECK_SIZEOF([char]) | ||
4 | AC_CHECK_SIZEOF([short]) | ||
5 | AC_CHECK_SIZEOF([int]) | ||
6 | AC_CHECK_SIZEOF([int64_t]) | ||
7 | AC_CHECK_SIZEOF([long]) | ||
8 | AC_CHECK_SIZEOF([long long]) | ||
9 | AC_CHECK_SIZEOF([int *]) | ||
10 | AC_CHECK_SIZEOF([float]) | ||
11 | AC_CHECK_SIZEOF([double]) | ||
12 | |||
13 | AC_CHECK_ALIGNOF([char]) | ||
14 | AC_CHECK_ALIGNOF([short]) | ||
15 | AC_CHECK_ALIGNOF([int]) | ||
16 | AC_CHECK_ALIGNOF([int64_t]) | ||
17 | AC_CHECK_ALIGNOF([long]) | ||
18 | AC_CHECK_ALIGNOF([long long]) | ||
19 | AC_CHECK_ALIGNOF([int *]) | ||
20 | AC_CHECK_ALIGNOF([float]) | ||
21 | AC_CHECK_ALIGNOF([double]) | ||
22 | |||
23 | AC_C_BIGENDIAN | ||
24 | |||
25 | AC_TYPE_LONG_LONG_INT | ||
26 | |||
27 | AC_CONFIG_HEADER([conf.h]) | ||
28 | AC_OUTPUT | ||
diff --git a/meta/recipes-support/js/files/jsautocfg.h b/meta/recipes-support/js/files/jsautocfg.h new file mode 100644 index 0000000000..16e38bf8d6 --- /dev/null +++ b/meta/recipes-support/js/files/jsautocfg.h | |||
@@ -0,0 +1,74 @@ | |||
1 | #ifndef js_cpucfg___ | ||
2 | #define js_cpucfg___ | ||
3 | |||
4 | /* AUTOMATICALLY GENERATED - DO NOT EDIT */ | ||
5 | |||
6 | #include "../conf.h" | ||
7 | |||
8 | #ifdef WORDS_BIGENDIAN | ||
9 | # undef IS_LITTLE_ENDIAN | ||
10 | # define IS_BIG_ENDIAN 1 | ||
11 | #else | ||
12 | # define IS_LITTLE_ENDIAN 1 | ||
13 | # undef IS_BIG_ENDIAN | ||
14 | #endif | ||
15 | |||
16 | #define __I_LOG2(n) ( \ | ||
17 | ((n) == 1)? 0: \ | ||
18 | ((n) == 2)? 1: \ | ||
19 | ((n) == 4)? 2: \ | ||
20 | ((n) == 8)? 3: \ | ||
21 | ((n) == 16)? 4: \ | ||
22 | ((n) == 32)? 5: \ | ||
23 | ((n) == 64)? 6: \ | ||
24 | ((n) == 128)? 7: \ | ||
25 | -1) | ||
26 | |||
27 | #define JS_BYTES_PER_BYTE SIZEOF_CHAR | ||
28 | #define JS_BYTES_PER_SHORT SIZEOF_SHORT | ||
29 | #define JS_BYTES_PER_INT SIZEOF_INT | ||
30 | #define JS_BYTES_PER_INT64 SIZEOF_INT64_T | ||
31 | #define JS_BYTES_PER_LONG SIZEOF_LONG | ||
32 | #define JS_BYTES_PER_FLOAT SIZEOF_FLOAT | ||
33 | #define JS_BYTES_PER_DOUBLE SIZEOF_DOUBLE | ||
34 | #define JS_BYTES_PER_WORD SIZEOF_LONG | ||
35 | #define JS_BYTES_PER_DWORD SIZEOF_LONG_LONG | ||
36 | |||
37 | #define JS_BITS_PER_BYTE 8L | ||
38 | #define JS_BITS_PER_SHORT (JS_BITS_PER_BYTE * JS_BYTES_PER_SHORT) | ||
39 | #define JS_BITS_PER_INT (JS_BITS_PER_BYTE * JS_BYTES_PER_INT) | ||
40 | #define JS_BITS_PER_INT64 (JS_BITS_PER_BYTE * JS_BYTES_PER_INT64) | ||
41 | #define JS_BITS_PER_LONG (JS_BITS_PER_BYTE * JS_BYTES_PER_LONG) | ||
42 | #define JS_BITS_PER_FLOAT (JS_BITS_PER_BYTE * JS_BYTES_PER_GLOAT) | ||
43 | #define JS_BITS_PER_DOUBLE (JS_BITS_PER_BYTE * JS_BYTES_PER_DOUBLE) | ||
44 | #define JS_BITS_PER_WORD (JS_BITS_PER_BYTE * JS_BYTES_PER_WORD) | ||
45 | |||
46 | #define JS_BITS_PER_BYTE_LOG2 __I_LOG2(JS_BITS_PER_BYTE) | ||
47 | #define JS_BITS_PER_SHORT_LOG2 __I_LOG2(JS_BITS_PER_BYTE) | ||
48 | #define JS_BITS_PER_INT_LOG2 __I_LOG2(JS_BITS_PER_BYTE) | ||
49 | #define JS_BITS_PER_INT64_LOG2 __I_LOG2(JS_BITS_PER_BYTE) | ||
50 | #define JS_BITS_PER_LONG_LOG2 __I_LOG2(JS_BITS_PER_BYTE) | ||
51 | #define JS_BITS_PER_FLOAT_LOG2 __I_LOG2(JS_BITS_PER_BYTE) | ||
52 | #define JS_BITS_PER_DOUBLE_LOG2 __I_LOG2(JS_BITS_PER_BYTE) | ||
53 | #define JS_BITS_PER_WORD_LOG2 __I_LOG2(JS_BITS_PER_BYTE) | ||
54 | |||
55 | #define JS_ALIGN_OF_SHORT ALIGNOF_SHORT | ||
56 | #define JS_ALIGN_OF_INT ALIGNOF_INT | ||
57 | #define JS_ALIGN_OF_LONG ALIGNOF_LONG | ||
58 | #define JS_ALIGN_OF_INT64 ALIGNOF_INT64_T | ||
59 | #define JS_ALIGN_OF_FLOAT ALIGNOF_FLOAT | ||
60 | #define JS_ALIGN_OF_DOUBLE ALIGNOF_DOUBLE | ||
61 | #define JS_ALIGN_OF_POINTER ALIGNOF_INT_P | ||
62 | #define JS_ALIGN_OF_WORD ALIGNOF_LONG | ||
63 | |||
64 | #define JS_BYTES_PER_WORD_LOG2 __I_LOG2(JS_BYTES_PER_WORD) | ||
65 | #define JS_BYTES_PER_DWORD_LOG2 __I_LOG2(JS_BYTES_PER_DWORDS) | ||
66 | #define JS_WORDS_PER_DWORD_LOG2 __I_LOG2(JS_BYTES_PER_DWORDS / JS_BYTES_PER_WORD) | ||
67 | |||
68 | #define JS_STACK_GROWTH_DIRECTION (-1) | ||
69 | |||
70 | #ifdef HAVE_LONG_LONG_INT | ||
71 | # define JS_HAVE_LONG_LONG | ||
72 | #endif | ||
73 | |||
74 | #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 new file mode 100644 index 0000000000..d74b94f378 --- /dev/null +++ b/meta/recipes-support/js/files/link_with_gcc.patch | |||
@@ -0,0 +1,13 @@ | |||
1 | Index: src/config/Linux_All.mk | ||
2 | =================================================================== | ||
3 | --- src.orig/config/Linux_All.mk 2005-05-10 19:53:44.000000000 +0000 | ||
4 | +++ src/config/Linux_All.mk 2007-06-18 17:20:05.000000000 +0000 | ||
5 | @@ -47,7 +47,7 @@ | ||
6 | OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R | ||
7 | |||
8 | RANLIB = echo | ||
9 | -MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS) | ||
10 | +MKSHLIB = $(CC) -shared $(XMKSHLIBOPTS) | ||
11 | |||
12 | #.c.o: | ||
13 | # $(CC) -c -MD $*.d $(CFLAGS) $< | ||
diff --git a/meta/recipes-support/js/files/usepic.patch b/meta/recipes-support/js/files/usepic.patch new file mode 100644 index 0000000000..ddd31be9cb --- /dev/null +++ b/meta/recipes-support/js/files/usepic.patch | |||
@@ -0,0 +1,24 @@ | |||
1 | Mips needs -fPIC to compile properly. These tests are broken anyway as they test | ||
2 | the build system architecture, not the target. This is a hack. | ||
3 | |||
4 | RP 10/6/2010 | ||
5 | |||
6 | Index: src/config/Linux_All.mk | ||
7 | =================================================================== | ||
8 | --- src.orig/config/Linux_All.mk 2010-06-10 22:09:43.000000000 +0100 | ||
9 | +++ src/config/Linux_All.mk 2010-06-10 22:09:55.000000000 +0100 | ||
10 | @@ -90,14 +90,10 @@ | ||
11 | # Use the editline library to provide line-editing support. | ||
12 | JS_EDITLINE = 1 | ||
13 | |||
14 | -ifeq ($(CPU_ARCH),x86_64) | ||
15 | # Use VA_COPY() standard macro on x86-64 | ||
16 | # FIXME: better use it everywhere | ||
17 | OS_CFLAGS += -DHAVE_VA_COPY -DVA_COPY=va_copy | ||
18 | -endif | ||
19 | |||
20 | -ifeq ($(CPU_ARCH),x86_64) | ||
21 | # We need PIC code for shared libraries | ||
22 | # FIXME: better patch rules.mk & fdlibm/Makefile* | ||
23 | OS_CFLAGS += -DPIC -fPIC | ||
24 | -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 new file mode 100644 index 0000000000..97cba90d03 --- /dev/null +++ b/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb | |||
@@ -0,0 +1,47 @@ | |||
1 | DESCRIPTION = "Spidermonkey: a javascript engine written in C" | ||
2 | HOMEPAGE = "http://www.mozilla.org/js/spidermonkey/" | ||
3 | SECTION = "libs" | ||
4 | |||
5 | # the package is licensed under either of the following | ||
6 | LICENSE = "MPL1.1 | GPLv2+ | LGPLv2.1+" | ||
7 | LIC_FILES_CHKSUM = "file://jsapi.c;beginline=4;endline=39;md5=347c6bbf4fb4547de1fa5ad830030063" | ||
8 | PR = "r1" | ||
9 | |||
10 | SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/js-1.8.0-rc1.tar.gz \ | ||
11 | file://link_with_gcc.patch \ | ||
12 | file://usepic.patch \ | ||
13 | file://buildcc.patch;striplevel=2 \ | ||
14 | file://jsautocfg.h \ | ||
15 | file://configure.ac" | ||
16 | |||
17 | S = "${WORKDIR}/js/src" | ||
18 | |||
19 | # use local autoconf script to generate a usable jsautocfg.h | ||
20 | # don't bother with automake | ||
21 | inherit autotools | ||
22 | |||
23 | do_configure_prepend() { | ||
24 | cp -f ${WORKDIR}/configure.ac ${S} | ||
25 | cp -f ${WORKDIR}/jsautocfg.h ${S} | ||
26 | } | ||
27 | |||
28 | EXTRA_OEMAKE = "'CC=${CC}' 'LD=${LD}' 'XCFLAGS=${CFLAGS}' 'XLDFLAGS=${LDFLAGS} -Wl,-soname=libjs' \ | ||
29 | 'BUILD_CC=${BUILD_CC}' 'BUILD_CFLAGS=${BUILD_CFLAGS}' 'BUILD_LDFLAGS=${BUILD_LDFLAGS}'" | ||
30 | |||
31 | PARALLEL_MAKE = "" | ||
32 | |||
33 | do_compile() { | ||
34 | oe_runmake -f Makefile.ref JS_EDITLINE=1 PREBUILT_CPUCFG=1 BUILD_OPT=1 | ||
35 | } | ||
36 | |||
37 | do_install() { | ||
38 | install -d ${D}${libdir} | ||
39 | install -d ${D}${includedir} | ||
40 | install -d ${D}${includedir}/js | ||
41 | oe_libinstall -so -C Linux_All_OPT.OBJ libjs ${D}${libdir} | ||
42 | install -m 0644 ${S}/*.h ${D}${includedir}/js | ||
43 | } | ||
44 | |||
45 | FILES_${PN} = "${libdir}/lib*.so" | ||
46 | FILES_${PN}-dev = "${includedir} ${libdir}/lib*.a" | ||
47 | |||