Upgrade to SpiderMonkey 1.8.5.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1156555 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
ab81b661aa
commit
cce27a3d75
15 changed files with 183 additions and 165 deletions
|
|
@ -106,8 +106,8 @@ curl-7-19-5
|
|||
libcurl4-openssl-7.19.5
|
||||
|
||||
JSON:
|
||||
Mozilla TraceMonkey libmozjs (https://wiki.mozilla.org/JavaScript:TraceMonkey)
|
||||
also included in xulrunner-1.9.2
|
||||
Mozilla SpiderMonkey libmozjs 1.8.5
|
||||
(https://developer.mozilla.org/en/SpiderMonkey)
|
||||
|
||||
Key/value store:
|
||||
tinycdb-0.77 (http://www.corpit.ru/mjt/tinycdb.html)
|
||||
|
|
@ -222,8 +222,8 @@ dependencies installed under $HOME:
|
|||
--with-memcached=$HOME/memcached-1.4.5-bin \
|
||||
--with-tinycdb=$HOME/tinycdb-0.77-bin \
|
||||
--with-curl=$HOME/curl-7.19.5-bin --with-libxml2=/usr \
|
||||
--with-js-include=/usr/include/xulrunner-1.9.2 \
|
||||
--with-js-lib=/usr/lib/xulrunner-1.9.2 \
|
||||
--with-js-include=$HOME/js-1.8.5-bin/include \
|
||||
--with-js-lib=$HOME/js-1.8.5-bin/lib \
|
||||
--enable-libcloud \
|
||||
--with-libcloud=$HOME/libcloud-0.3.1-bin \
|
||||
--enable-threads \
|
||||
|
|
|
|||
|
|
@ -43,18 +43,6 @@ if [ "$?" != "0" ]; then
|
|||
fi
|
||||
cd $build
|
||||
|
||||
# Install autoconf-2.13
|
||||
curl -OL http://ftp.gnu.org/gnu/autoconf/autoconf-2.13.tar.gz
|
||||
tar xzf autoconf-2.13.tar.gz
|
||||
cd autoconf-2.13
|
||||
./configure --prefix=$build/autoconf-2.13-bin
|
||||
make
|
||||
make install
|
||||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
cd $build
|
||||
|
||||
# Build Libexpat
|
||||
curl -OL http://sourceforge.net/projects/expat/files/expat/2.0.1/expat-2.0.1.tar.gz/download
|
||||
mv download expat-2.0.1.tar.gz
|
||||
|
|
@ -161,16 +149,14 @@ if [ "$?" != "0" ]; then
|
|||
fi
|
||||
cd $build
|
||||
|
||||
# Build TraceMonkey
|
||||
curl -OL http://hg.mozilla.org/tracemonkey/archive/e4364736e170.tar.gz
|
||||
mv e4364736e170.tar.gz tracemonkey-e4364736e170.tar.gz
|
||||
tar xzf tracemonkey-e4364736e170.tar.gz
|
||||
cd tracemonkey-e4364736e170/js/src
|
||||
$build/autoconf-2.13-bin/bin/autoconf
|
||||
./configure --prefix=$build/tracemonkey-bin
|
||||
# Build SpiderMonkey
|
||||
curl -OL http://ftp.mozilla.org/pub/mozilla.org/js/js-1.8.5.tar.gz
|
||||
tar xzf js185-1.0.0.tar.gz
|
||||
cd js-1.8.5/js/src
|
||||
./configure --prefix=$build/js-1.8.5-bin
|
||||
make
|
||||
make install
|
||||
install_name_tool -id $build/tracemonkey-bin/lib/libmozjs.dylib $build/tracemonkey-bin/lib/libmozjs.dylib
|
||||
ln -s $build/js-1.8.5-bin/lib/libmozjs185.dylib $build/js-1.8.5-bin/lib/libmozjs.dylib
|
||||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -27,7 +27,17 @@
|
|||
*/
|
||||
|
||||
#define XP_UNIX
|
||||
#ifdef WANT_MAINTAINER_MODE
|
||||
#pragma GCC diagnostic ignored "-Wunused-parameter"
|
||||
#pragma GCC diagnostic ignored "-Wsign-compare"
|
||||
#pragma GCC diagnostic ignored "-Wredundant-decls"
|
||||
#endif
|
||||
#include <jsapi.h>
|
||||
#ifdef WANT_MAINTAINER_MODE
|
||||
#pragma GCC diagnostic warning "-Wunused-parameter"
|
||||
#pragma GCC diagnostic warning "-Wsign-compare"
|
||||
#pragma GCC diagnostic ignored "-Wredundant-decls"
|
||||
#endif
|
||||
#include "string.hpp"
|
||||
#include "list.hpp"
|
||||
#include "value.hpp"
|
||||
|
|
@ -85,8 +95,12 @@ private:
|
|||
::JSRuntime* rt;
|
||||
} jsRuntime;
|
||||
|
||||
JSClass jsGlobalClass = { "global", JSCLASS_GLOBAL_FLAGS, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub,
|
||||
JS_PropertyStub, JS_EnumerateStub, JS_ResolveStub, JS_ConvertStub, JS_FinalizeStub, JSCLASS_NO_OPTIONAL_MEMBERS};
|
||||
JSClass jsGlobalClass = { "global", JSCLASS_GLOBAL_FLAGS,
|
||||
JS_PropertyStub, JS_PropertyStub,
|
||||
JS_PropertyStub, JS_StrictPropertyStub,
|
||||
JS_EnumerateStub, JS_ResolveStub,
|
||||
JS_ConvertStub, JS_FinalizeStub,
|
||||
JSCLASS_NO_OPTIONAL_MEMBERS };
|
||||
|
||||
/**
|
||||
* Represents a JavaScript context. Create one per thread.
|
||||
|
|
@ -99,12 +113,12 @@ public:
|
|||
cx = JS_NewContext(jsRuntime, 8192);
|
||||
if(cx == NULL)
|
||||
return;
|
||||
JS_SetOptions(cx, JSOPTION_VAROBJFIX);
|
||||
JS_SetVersion(cx, JSVERSION_DEFAULT);
|
||||
JS_SetOptions(cx, JSOPTION_VAROBJFIX | JSOPTION_JIT | JSOPTION_METHODJIT);
|
||||
JS_SetVersion(cx, JSVERSION_LATEST);
|
||||
JS_SetErrorReporter(cx, reportError);
|
||||
|
||||
// Create global JS object
|
||||
global = JS_NewObject(cx, &jsGlobalClass, NULL, NULL);
|
||||
global = JS_NewCompartmentAndGlobalObject(cx, &jsGlobalClass, NULL);
|
||||
if(global == NULL) {
|
||||
cleanup();
|
||||
return;
|
||||
|
|
@ -167,17 +181,22 @@ const list<value> jsPropertiesToValues(const list<value>& propertiesSoFar, JSObj
|
|||
const value jsValToValue(const jsval& jsv, const js::JSContext& cx);
|
||||
|
||||
jsid id;
|
||||
if(!JS_NextProperty(cx, i, &id) || id == JSVAL_VOID)
|
||||
if(!JS_NextProperty(cx, i, &id))
|
||||
return propertiesSoFar;
|
||||
jsval idv;
|
||||
JS_IdToValue(cx, id, &idv);
|
||||
if (idv == JSVAL_VOID)
|
||||
return propertiesSoFar;
|
||||
|
||||
jsval jsv;
|
||||
if(!JS_GetPropertyById(cx, o, id, &jsv))
|
||||
return propertiesSoFar;
|
||||
const value val = jsValToValue(jsv, cx);
|
||||
|
||||
jsval idv;
|
||||
JS_IdToValue(cx, id, &idv);
|
||||
if(JSVAL_IS_STRING(idv)) {
|
||||
const string name = JS_GetStringBytes(JSVAL_TO_STRING(idv));
|
||||
char* cname = JS_EncodeString(cx, JSVAL_TO_STRING(idv));
|
||||
const string name = cname;
|
||||
JS_free(cx, cname);
|
||||
if (isNil(val) && !isList(val))
|
||||
return jsPropertiesToValues(cons<value> (mklist<value> (element, c_str(name), val), propertiesSoFar), o, i, cx);
|
||||
//return jsPropertiesToValues(propertiesSoFar, o, i, cx);
|
||||
|
|
@ -196,7 +215,10 @@ const list<value> jsPropertiesToValues(const list<value>& propertiesSoFar, JSObj
|
|||
const value jsValToValue(const jsval& jsv, const js::JSContext& cx) {
|
||||
switch(JS_TypeOfValue(cx, jsv)) {
|
||||
case JSTYPE_STRING: {
|
||||
return value(string(JS_GetStringBytes(JSVAL_TO_STRING(jsv))));
|
||||
char* cvalue = JS_EncodeString(cx, JSVAL_TO_STRING(jsv));
|
||||
const string svalue = string(cvalue);
|
||||
JS_free(cx, cvalue);
|
||||
return value(svalue);
|
||||
}
|
||||
case JSTYPE_BOOLEAN: {
|
||||
return value((bool)JSVAL_TO_BOOLEAN(jsv));
|
||||
|
|
@ -251,7 +273,10 @@ const jsval valueToJSVal(const value& val, const js::JSContext& cx) {
|
|||
return BOOLEAN_TO_JSVAL((bool)val);
|
||||
}
|
||||
case value::Number: {
|
||||
return DOUBLE_TO_JSVAL(JS_NewDouble(cx, (double)val));
|
||||
jsval jsv;
|
||||
if (!JS_NewNumberValue(cx, (jsdouble)val, &jsv))
|
||||
return DOUBLE_TO_JSVAL(0);
|
||||
return jsv;
|
||||
}
|
||||
case value::List: {
|
||||
if (isJSArray(val))
|
||||
|
|
|
|||
|
|
@ -37,31 +37,32 @@ ostream* jsonWriter(const string& s, ostream* os) {
|
|||
}
|
||||
|
||||
const string jscustomer("{\n"
|
||||
" \"customer\":{\n"
|
||||
" \"@name\":\"jdoe\",\n"
|
||||
" \"address\":{\n"
|
||||
" \"@city\":\"san francisco\",\n"
|
||||
" \"@state\":\"ca\"\n"
|
||||
" \"customer\": {\n"
|
||||
" \"@name\": \"jdoe\",\n"
|
||||
" \"address\": {\n"
|
||||
" \"@city\": \"san francisco\",\n"
|
||||
" \"@state\": \"ca\"\n"
|
||||
" },\n"
|
||||
" \"account\":{\n"
|
||||
" \"id\":\"1234\",\n"
|
||||
" \"@balance\":1000\n"
|
||||
" \"account\": {\n"
|
||||
" \"id\": \"1234\",\n"
|
||||
" \"@balance\": 1000\n"
|
||||
" }\n"
|
||||
" }\n"
|
||||
"}");
|
||||
|
||||
const string jsphones("{\n"
|
||||
" \"phones\":[\"408-1234\",\n"
|
||||
" \"phones\": [\n"
|
||||
" \"408-1234\",\n"
|
||||
" \"650-1234\"\n"
|
||||
" ],\n"
|
||||
" \"lastName\":\"test\\u0009tab\",\n"
|
||||
" \"@firstName\":\"test1\"\n"
|
||||
" \"lastName\": \"test\\u0009tab\",\n"
|
||||
" \"@firstName\": \"test1\"\n"
|
||||
"}");
|
||||
|
||||
const string jsecho("{\n"
|
||||
" \"ns1:echoString\":{\n"
|
||||
" \"@xmlns:ns1\":\"http://ws.apache.org/axis2/services/echo\",\n"
|
||||
" \"text\":\"Hello World!\"\n"
|
||||
" \"ns1:echoString\": {\n"
|
||||
" \"@xmlns:ns1\": \"http://ws.apache.org/axis2/services/echo\",\n"
|
||||
" \"text\": \"Hello World!\"\n"
|
||||
" }\n"
|
||||
"}");
|
||||
|
||||
|
|
@ -110,81 +111,88 @@ bool testJSON() {
|
|||
}
|
||||
|
||||
const string jsitem("{\n"
|
||||
" \"id\":3,\n"
|
||||
" \"result\":[{\n"
|
||||
" \"price\":\"$2.99\",\n"
|
||||
" \"name\":\"Apple\"\n"
|
||||
" \"id\": 3,\n"
|
||||
" \"result\": [\n"
|
||||
" {\n"
|
||||
" \"price\": \"$2.99\",\n"
|
||||
" \"name\": \"Apple\"\n"
|
||||
" },\n"
|
||||
" {\n"
|
||||
" \"price\":\"$3.55\",\n"
|
||||
" \"name\":\"Orange\"\n"
|
||||
" \"price\": \"$3.55\",\n"
|
||||
" \"name\": \"Orange\"\n"
|
||||
" },\n"
|
||||
" {\n"
|
||||
" \"price\":\"$1.55\",\n"
|
||||
" \"name\":\"Pear\"\n"
|
||||
" \"price\": \"$1.55\",\n"
|
||||
" \"name\": \"Pear\"\n"
|
||||
" }\n"
|
||||
" ]\n"
|
||||
"}");
|
||||
|
||||
const string jsresult("{\n"
|
||||
" \"id\":1,\n"
|
||||
" \"result\":[\"Service.get\",\n"
|
||||
" \"id\": 1,\n"
|
||||
" \"result\": [\n"
|
||||
" \"Service.get\",\n"
|
||||
" \"Service.getTotal\"\n"
|
||||
" ]\n"
|
||||
"}");
|
||||
|
||||
const string jsfeed("{\n"
|
||||
" \"id\":1,\n"
|
||||
" \"result\":[\"Sample Feed\",\n"
|
||||
" \"id\": 1,\n"
|
||||
" \"result\": [\n"
|
||||
" \"Sample Feed\",\n"
|
||||
" \"123456789\",\n"
|
||||
" [\"Item\",\n"
|
||||
" [\n"
|
||||
" \"Item\",\n"
|
||||
" \"111\",\n"
|
||||
" {\n"
|
||||
" \"name\":\"Apple\",\n"
|
||||
" \"currencyCode\":\"USD\",\n"
|
||||
" \"currencySymbol\":\"$\",\n"
|
||||
" \"price\":2.99\n"
|
||||
" \"name\": \"Apple\",\n"
|
||||
" \"currencyCode\": \"USD\",\n"
|
||||
" \"currencySymbol\": \"$\",\n"
|
||||
" \"price\": 2.99\n"
|
||||
" }\n"
|
||||
" ],\n"
|
||||
" [\"Item\",\n"
|
||||
" [\n"
|
||||
" \"Item\",\n"
|
||||
" \"222\",\n"
|
||||
" {\n"
|
||||
" \"name\":\"Orange\",\n"
|
||||
" \"currencyCode\":\"USD\",\n"
|
||||
" \"currencySymbol\":\"$\",\n"
|
||||
" \"price\":3.55\n"
|
||||
" \"name\": \"Orange\",\n"
|
||||
" \"currencyCode\": \"USD\",\n"
|
||||
" \"currencySymbol\": \"$\",\n"
|
||||
" \"price\": 3.55\n"
|
||||
" }\n"
|
||||
" ],\n"
|
||||
" [\"Item\",\n"
|
||||
" [\n"
|
||||
" \"Item\",\n"
|
||||
" \"333\",\n"
|
||||
" {\n"
|
||||
" \"name\":\"Pear\",\n"
|
||||
" \"currencyCode\":\"USD\",\n"
|
||||
" \"currencySymbol\":\"$\",\n"
|
||||
" \"price\":1.55\n"
|
||||
" \"name\": \"Pear\",\n"
|
||||
" \"currencyCode\": \"USD\",\n"
|
||||
" \"currencySymbol\": \"$\",\n"
|
||||
" \"price\": 1.55\n"
|
||||
" }\n"
|
||||
" ]\n"
|
||||
" ]\n"
|
||||
"}");
|
||||
|
||||
const string jsechoreq("{\n"
|
||||
" \"id\":1,\n"
|
||||
" \"method\":\"echo\",\n"
|
||||
" \"params\":[{\n"
|
||||
" \"ns1:echoString\":{\n"
|
||||
" \"@xmlns:ns1\":\"http://ws.apache.org/axis2/services/echo\",\n"
|
||||
" \"text\":\"Hello World!\"\n"
|
||||
" \"id\": 1,\n"
|
||||
" \"method\": \"echo\",\n"
|
||||
" \"params\": [\n"
|
||||
" {\n"
|
||||
" \"ns1:echoString\": {\n"
|
||||
" \"@xmlns:ns1\": \"http://ws.apache.org/axis2/services/echo\",\n"
|
||||
" \"text\": \"Hello World!\"\n"
|
||||
" }\n"
|
||||
" }\n"
|
||||
" ]\n"
|
||||
"}");
|
||||
|
||||
const string jsechores("{\n"
|
||||
" \"id\":1,\n"
|
||||
" \"result\":{\n"
|
||||
" \"ns1:echoString\":{\n"
|
||||
" \"@xmlns:ns1\":\"http://ws.apache.org/axis2/c/samples\",\n"
|
||||
" \"text\":\"Hello World!\"\n"
|
||||
" \"id\": 1,\n"
|
||||
" \"result\": {\n"
|
||||
" \"ns1:echoString\": {\n"
|
||||
" \"@xmlns:ns1\": \"http://ws.apache.org/axis2/c/samples\",\n"
|
||||
" \"text\": \"Hello World!\"\n"
|
||||
" }\n"
|
||||
" }\n"
|
||||
"}");
|
||||
|
|
@ -200,7 +208,7 @@ bool testJSONRPC() {
|
|||
assert(assoc<value>("params", v) == mklist<value>("params", list<value>()));
|
||||
}
|
||||
{
|
||||
const string i2 = "{\"id\":3,\"result\":{\"0\":{\"price\":\"$2.99\",\"name\":\"Apple\"},\"1\":{\"price\":\"$3.55\",\"name\":\"Orange\"},\"2\":{\"price\":\"$1.55\",\"name\":\"Pear\"}}}";
|
||||
const string i2 = "{\"id\": 3,\"result\": {\"0\": {\"price\": \"$2.99\",\"name\": \"Apple\"},\"1\": {\"price\": \"$3.55\",\"name\": \"Orange\"},\"2\": {\"price\": \"$1.55\",\"name\": \"Pear\"}}}";
|
||||
const list<value> e = content(readJSON(mklist(jsitem), cx));
|
||||
const list<value> e2 = content(readJSON(mklist(i2), cx));
|
||||
assert(e == e2);
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ failable<bool> consume(JSONParser* parser, const list<string>& ilist, const js::
|
|||
if (isNil(ilist))
|
||||
return true;
|
||||
JSString* jstr = JS_NewStringCopyZ(cx, c_str(car(ilist)));
|
||||
if(!JS_ConsumeJSONText(cx, parser, JS_GetStringChars(jstr), (uint32)JS_GetStringLength(jstr)))
|
||||
if(!JS_ConsumeJSONText(cx, parser, JS_GetStringCharsZ(cx, jstr), (uint32)JS_GetStringLength(jstr)))
|
||||
return mkfailure<bool>("JS_ConsumeJSONText failed");
|
||||
return consume(parser, cdr(ilist), cx);
|
||||
}
|
||||
|
|
@ -95,7 +95,10 @@ public:
|
|||
template<typename R> JSBool writeCallback(const jschar *buf, uint32 len, void *data) {
|
||||
WriteContext<R>& wcx = *(static_cast<WriteContext<R>*> (data));
|
||||
JSString* jstr = JS_NewUCStringCopyN(wcx.cx, buf, len);
|
||||
wcx.accum = wcx.reduce(string(JS_GetStringBytes(jstr), JS_GetStringLength(jstr)), wcx.accum);
|
||||
char* cstr = JS_EncodeString(wcx.cx, jstr);
|
||||
const string str(cstr, JS_GetStringLength(jstr));
|
||||
JS_free(wcx.cx, cstr);
|
||||
wcx.accum = wcx.reduce(str, wcx.accum);
|
||||
return JS_TRUE;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,13 +1,14 @@
|
|||
{
|
||||
"id":"1",
|
||||
"result":{
|
||||
"host":"localhost",
|
||||
"path":["components",
|
||||
"id": "1",
|
||||
"result": {
|
||||
"host": "localhost",
|
||||
"path": [
|
||||
"components",
|
||||
"property-test"
|
||||
],
|
||||
"query":{
|
||||
"id":"1",
|
||||
"method":"print"
|
||||
"query": {
|
||||
"id": "1",
|
||||
"method": "print"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1 +1,7 @@
|
|||
{"id":1,"method":"echo","params":["Hello"]}
|
||||
{
|
||||
"id": 1,
|
||||
"method": "echo",
|
||||
"params": [
|
||||
"Hello"
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{
|
||||
"id":1,
|
||||
"result":"Hello"
|
||||
"id": 1,
|
||||
"result": "Hello"
|
||||
}
|
||||
|
|
@ -1 +1,6 @@
|
|||
{"id": 1, "method": "items", "params": []}
|
||||
{
|
||||
"id": 1,
|
||||
"method": "items",
|
||||
"params": [
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,22 +1,23 @@
|
|||
{
|
||||
"id":1,
|
||||
"result":[{
|
||||
"name":"Apple",
|
||||
"currencyCode":"USD",
|
||||
"currencySymbol":"$",
|
||||
"price":2.99
|
||||
"id": 1,
|
||||
"result": [
|
||||
{
|
||||
"name": "Apple",
|
||||
"currencyCode": "USD",
|
||||
"currencySymbol": "$",
|
||||
"price": 2.99
|
||||
},
|
||||
{
|
||||
"name":"Orange",
|
||||
"currencyCode":"USD",
|
||||
"currencySymbol":"$",
|
||||
"price":3.55
|
||||
"name": "Orange",
|
||||
"currencyCode": "USD",
|
||||
"currencySymbol": "$",
|
||||
"price": 3.55
|
||||
},
|
||||
{
|
||||
"name":"Pear",
|
||||
"currencyCode":"USD",
|
||||
"currencySymbol":"$",
|
||||
"price":1.55
|
||||
"name": "Pear",
|
||||
"currencyCode": "USD",
|
||||
"currencySymbol": "$",
|
||||
"price": 1.55
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -1,22 +1,23 @@
|
|||
{
|
||||
"id":1,
|
||||
"result":[{
|
||||
"name":"Mango",
|
||||
"currencyCode":"USD",
|
||||
"currencySymbol":"$",
|
||||
"price":2.99
|
||||
"id": 1,
|
||||
"result": [
|
||||
{
|
||||
"name": "Mango",
|
||||
"currencyCode": "USD",
|
||||
"currencySymbol": "$",
|
||||
"price": 2.99
|
||||
},
|
||||
{
|
||||
"name":"Passion",
|
||||
"currencyCode":"USD",
|
||||
"currencySymbol":"$",
|
||||
"price":3.55
|
||||
"name": "Passion",
|
||||
"currencyCode": "USD",
|
||||
"currencySymbol": "$",
|
||||
"price": 3.55
|
||||
},
|
||||
{
|
||||
"name":"Kiwi",
|
||||
"currencyCode":"USD",
|
||||
"currencySymbol":"$",
|
||||
"price":1.55
|
||||
"name": "Kiwi",
|
||||
"currencyCode": "USD",
|
||||
"currencySymbol": "$",
|
||||
"price": 1.55
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -48,11 +48,6 @@ sudo apt-get -y install libevent-dev
|
|||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
# Required by TraceMonkey
|
||||
sudo apt-get -y install autoconf2.13 zip
|
||||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
# Required by Apache Qpid/C++
|
||||
sudo apt-get -y install libboost-dev libboost-program-options-dev libboost-filesystem-dev uuid-dev
|
||||
if [ "$?" != "0" ]; then
|
||||
|
|
|
|||
|
|
@ -48,11 +48,6 @@ sudo apt-get -y install libevent-dev
|
|||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
# Required by TraceMonkey
|
||||
sudo apt-get -y install autoconf2.13 zip
|
||||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
# Required by HTML Tidy
|
||||
sudo apt-get -y install cvs
|
||||
if [ "$?" != "0" ]; then
|
||||
|
|
|
|||
|
|
@ -121,18 +121,14 @@ if [ "$?" != "0" ]; then
|
|||
fi
|
||||
cd $build
|
||||
|
||||
# Build TraceMonkey
|
||||
sudo apt-get -y install autoconf2.13 zip
|
||||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
wget -O tracemonkey-e4364736e170.tar.gz http://hg.mozilla.org/tracemonkey/archive/e4364736e170.tar.gz
|
||||
tar xzf tracemonkey-e4364736e170.tar.gz
|
||||
cd tracemonkey-e4364736e170/js/src
|
||||
autoconf2.13
|
||||
./configure --prefix=$build/tracemonkey-bin
|
||||
# Build SpiderMonkey
|
||||
wget http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz
|
||||
tar xzf js185-1.0.0.tar.gz
|
||||
cd js-1.8.5/js/src
|
||||
./configure --prefix=$build/js-1.8.5-bin
|
||||
make
|
||||
make install
|
||||
ln -s $build/js-1.8.5-bin/lib/libmozjs185.so $build/js-1.8.5-bin/lib/libmozjs.so
|
||||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
|
|
@ -289,7 +285,7 @@ cd $build
|
|||
git clone git://git.apache.org/tuscany-sca-cpp.git
|
||||
cd tuscany-sca-cpp
|
||||
./bootstrap
|
||||
./configure --prefix=$build/tuscany-sca-cpp-bin --with-curl=$build/curl-7.19.5-bin --with-apr=$build/apr-1.4.x-bin --with-httpd=$build/httpd-2.3.10-bin --with-memcached=$build/memcached-1.4.5-bin --with-tinycdb=$build/tinycdb-0.77-bin --with-js-include=$build/tracemonkey-bin/include/js --with-js-lib=$build/tracemonkey-bin/lib --with-libcloud=$build/libcloud-0.4.2-bin --enable-threads --enable-python --with-libxml2=$build/libxml2-2.7.7-bin --enable-chat --with-libstrophe=$build/libstrophe-bin --enable-log --with-thrift=$build/thrift-0.2.0-bin --with-scribe=$build/scribe-2.2-bin --enable-openid --with-mod-auth-openid=$build/mod-auth-openid-bin --enable-oauth --with-liboauth=$build/liboauth-0.9.1-bin --enable-mod-security --with-mod-security=$build/modsecurity-apache-2.6.0-bin
|
||||
./configure --prefix=$build/tuscany-sca-cpp-bin --with-curl=$build/curl-7.19.5-bin --with-apr=$build/apr-1.4.x-bin --with-httpd=$build/httpd-2.3.10-bin --with-memcached=$build/memcached-1.4.5-bin --with-tinycdb=$build/tinycdb-0.77-bin --with-js-include=$build/js-1.8.5-bin/include/js --with-js-lib=$build/js-1.8.5-bin/lib --with-libcloud=$build/libcloud-0.4.2-bin --enable-threads --enable-python --with-libxml2=$build/libxml2-2.7.7-bin --enable-chat --with-libstrophe=$build/libstrophe-bin --enable-log --with-thrift=$build/thrift-0.2.0-bin --with-scribe=$build/scribe-2.2-bin --enable-openid --with-mod-auth-openid=$build/mod-auth-openid-bin --enable-oauth --with-liboauth=$build/liboauth-0.9.1-bin --enable-mod-security --with-mod-security=$build/modsecurity-apache-2.6.0-bin
|
||||
make
|
||||
make install
|
||||
if [ "$?" != "0" ]; then
|
||||
|
|
@ -298,8 +294,8 @@ fi
|
|||
cd $build
|
||||
|
||||
# Create src archive
|
||||
tar czf tuscany-sca-cpp-1.0-src.tar.gz apache-libcloud-incubating-0.4.2 apache-libcloud-incubating-0.4.2.tar.bz2 apr-1.4.x apr-1.4.x-bin curl-7.19.5 curl-7.19.5-bin curl-7.19.5.tar.gz expat-2.0.1 expat-2.0.1-bin expat-2.0.1.tar.gz htmltidy-bin httpd-2.3.10 httpd-2.3.10-alpha.tar.gz httpd-2.3.10-bin libcloud-0.4.2-bin liboauth-0.9.1 liboauth-0.9.1-bin liboauth-0.9.1.tar.gz libopkele libopkele-bin libstrophe libstrophe-bin libxml2-2.7.7 libxml2-2.7.7-bin libxml2-sources-2.7.7.tar.gz memcached-1.4.5 memcached-1.4.5-bin memcached-1.4.5.tar.gz mod_auth_openid mod-auth-openid-bin modsecurity-apache_2.6.0 modsecurity-apache-2.6.0-bin modsecurity-apache_2.6.0.tar.gz modsecurity-crs_2.2.0 modsecurity-crs_2.2.0.tar.gz nuvem scribe scribe-2.2-bin scribe-2.2.tar.gz thrift-0.2.0 thrift-0.2.0-bin thrift-0.2.0-incubating.tar.gz tidy tinycdb-0.77 tinycdb-0.77-bin tinycdb_0.77.tar.gz tracemonkey-bin tracemonkey-e4364736e170 tracemonkey-e4364736e170.tar.gz tuscany-sca-cpp tuscany-sca-cpp-bin
|
||||
tar czf tuscany-sca-cpp-1.0-src.tar.gz apache-libcloud-incubating-0.4.2 apache-libcloud-incubating-0.4.2.tar.bz2 apr-1.4.x apr-1.4.x-bin curl-7.19.5 curl-7.19.5-bin curl-7.19.5.tar.gz expat-2.0.1 expat-2.0.1-bin expat-2.0.1.tar.gz htmltidy-bin httpd-2.3.10 httpd-2.3.10-alpha.tar.gz httpd-2.3.10-bin libcloud-0.4.2-bin liboauth-0.9.1 liboauth-0.9.1-bin liboauth-0.9.1.tar.gz libopkele libopkele-bin libstrophe libstrophe-bin libxml2-2.7.7 libxml2-2.7.7-bin libxml2-sources-2.7.7.tar.gz memcached-1.4.5 memcached-1.4.5-bin memcached-1.4.5.tar.gz mod_auth_openid mod-auth-openid-bin modsecurity-apache_2.6.0 modsecurity-apache-2.6.0-bin modsecurity-apache_2.6.0.tar.gz modsecurity-crs_2.2.0 modsecurity-crs_2.2.0.tar.gz nuvem scribe scribe-2.2-bin scribe-2.2.tar.gz thrift-0.2.0 thrift-0.2.0-bin thrift-0.2.0-incubating.tar.gz tidy tinycdb-0.77 tinycdb-0.77-bin tinycdb_0.77.tar.gz js-1.8.5-bin js-1.8.5 js185-1.0.0.tar.gz tuscany-sca-cpp tuscany-sca-cpp-bin
|
||||
|
||||
# Create bin archive
|
||||
tar czf tuscany-sca-cpp-1.0.tar.gz apr-1.4.x-bin curl-7.19.5-bin expat-2.0.1-bin htmltidy-bin httpd-2.3.10-bin libcloud-0.4.2-bin liboauth-0.9.1-bin libopkele-bin libstrophe-bin libxml2-2.7.7-bin memcached-1.4.5-bin mod-auth-openid-bin modsecurity-apache-2.6.0-bin nuvem/nuvem-parallel scribe-2.2-bin thrift-0.2.0-bin tinycdb-0.77-bin tracemonkey-bin tuscany-sca-cpp tuscany-sca-cpp-bin
|
||||
tar czf tuscany-sca-cpp-1.0.tar.gz apr-1.4.x-bin curl-7.19.5-bin expat-2.0.1-bin htmltidy-bin httpd-2.3.10-bin libcloud-0.4.2-bin liboauth-0.9.1-bin libopkele-bin libstrophe-bin libxml2-2.7.7-bin memcached-1.4.5-bin mod-auth-openid-bin modsecurity-apache-2.6.0-bin nuvem/nuvem-parallel scribe-2.2-bin thrift-0.2.0-bin tinycdb-0.77-bin js-1.8.5-bin tuscany-sca-cpp tuscany-sca-cpp-bin
|
||||
|
||||
|
|
|
|||
|
|
@ -121,18 +121,14 @@ if [ "$?" != "0" ]; then
|
|||
fi
|
||||
cd $build
|
||||
|
||||
# Build TraceMonkey
|
||||
sudo apt-get -y install autoconf2.13 zip
|
||||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
wget -O tracemonkey-e4364736e170.tar.gz http://hg.mozilla.org/tracemonkey/archive/e4364736e170.tar.gz
|
||||
tar xzf tracemonkey-e4364736e170.tar.gz
|
||||
cd tracemonkey-e4364736e170/js/src
|
||||
autoconf2.13
|
||||
./configure --prefix=$build/tracemonkey-bin
|
||||
# Build SpiderMonkey
|
||||
wget http://ftp.mozilla.org/pub/mozilla.org/js/js185-1.0.0.tar.gz
|
||||
tar xzf js185-1.0.0.tar.gz
|
||||
cd js-1.8.5/js/src
|
||||
./configure --prefix=$build/js-1.8.5-bin
|
||||
make
|
||||
make install
|
||||
ln -s $build/js-1.8.5-bin/lib/libmozjs185.so $build/js-1.8.5-bin/lib/libmozjs.so
|
||||
if [ "$?" != "0" ]; then
|
||||
exit $?
|
||||
fi
|
||||
|
|
@ -359,7 +355,7 @@ cd $build
|
|||
git clone git://git.apache.org/tuscany-sca-cpp.git
|
||||
cd tuscany-sca-cpp
|
||||
./bootstrap
|
||||
./configure --prefix=$build/tuscany-sca-cpp-bin --with-curl=$build/curl-7.19.5-bin --with-apr=$build/apr-1.4.x-bin --with-httpd=$build/httpd-2.3.10-bin --with-memcached=$build/memcached-1.4.5-bin --with-tinycdb=$build/tinycdb-0.77-bin --with-js-include=$build/tracemonkey-bin/include/js --with-js-lib=$build/tracemonkey-bin/lib --with-libcloud=$build/libcloud-0.4.2-bin --enable-threads --enable-python --enable-gae --with-gae=$build/google_appengine --enable-java --with-java=/usr/lib/jvm/java-6-openjdk --enable-webservice --with-libxml2=$build/libxml2-2.7.7-bin --with-axis2c=$build/axis2c-1.6.0-bin --enable-queue --with-qpidc=$build/qpidc-0.6-bin --enable-chat --with-libstrophe=$build/libstrophe-bin --with-vysper=$build/vysper-0.6 --enable-sqldb --with-pgsql=$build/postgresql-9.0.3-bin --enable-log --with-thrift=$build/thrift-0.2.0-bin --with-scribe=$build/scribe-2.2-bin --enable-openid --with-mod-auth-openid=$build/mod-auth-openid-bin --enable-oauth --with-liboauth=$build/liboauth-0.9.1-bin --enable-mod-security --with-mod-security=$build/modsecurity-apache-2.6.0-bin
|
||||
./configure --prefix=$build/tuscany-sca-cpp-bin --with-curl=$build/curl-7.19.5-bin --with-apr=$build/apr-1.4.x-bin --with-httpd=$build/httpd-2.3.10-bin --with-memcached=$build/memcached-1.4.5-bin --with-tinycdb=$build/tinycdb-0.77-bin --with-js-include=$build/js-1.8.5-bin/include/js --with-js-lib=$build/js-1.8.5-bin/lib --with-libcloud=$build/libcloud-0.4.2-bin --enable-threads --enable-python --enable-gae --with-gae=$build/google_appengine --enable-java --with-java=/usr/lib/jvm/java-6-openjdk --enable-webservice --with-libxml2=$build/libxml2-2.7.7-bin --with-axis2c=$build/axis2c-1.6.0-bin --enable-queue --with-qpidc=$build/qpidc-0.6-bin --enable-chat --with-libstrophe=$build/libstrophe-bin --with-vysper=$build/vysper-0.6 --enable-sqldb --with-pgsql=$build/postgresql-9.0.3-bin --enable-log --with-thrift=$build/thrift-0.2.0-bin --with-scribe=$build/scribe-2.2-bin --enable-openid --with-mod-auth-openid=$build/mod-auth-openid-bin --enable-oauth --with-liboauth=$build/liboauth-0.9.1-bin --enable-mod-security --with-mod-security=$build/modsecurity-apache-2.6.0-bin
|
||||
make
|
||||
make install
|
||||
if [ "$?" != "0" ]; then
|
||||
|
|
@ -368,8 +364,8 @@ fi
|
|||
cd $build
|
||||
|
||||
# Create src archive
|
||||
tar czf tuscany-sca-cpp-all-1.0-src.tar.gz apache-libcloud-incubating-0.4.2 apache-libcloud-incubating-0.4.2.tar.bz2 apr-1.4.x apr-1.4.x-bin axis2c-1.6.0-bin axis2c-src-1.6.0 axis2c-src-1.6.0.tar.gz curl-7.19.5 curl-7.19.5-bin curl-7.19.5.tar.gz expat-2.0.1 expat-2.0.1-bin expat-2.0.1.tar.gz google_appengine google_appengine_1.4.0.zip htmltidy-bin httpd-2.3.10 httpd-2.3.10-alpha.tar.gz httpd-2.3.10-bin libcloud-0.4.2-bin liboauth-0.9.1 liboauth-0.9.1-bin liboauth-0.9.1.tar.gz libopkele libopkele-bin libstrophe libstrophe-bin libxml2-2.7.7 libxml2-2.7.7-bin libxml2-sources-2.7.7.tar.gz memcached-1.4.5 memcached-1.4.5-bin memcached-1.4.5.tar.gz mod_auth_openid mod-auth-openid-bin modsecurity-apache_2.6.0 modsecurity-apache-2.6.0-bin modsecurity-apache_2.6.0.tar.gz modsecurity-crs_2.2.0 modsecurity-crs_2.2.0.tar.gz nuvem postgresql-9.0.3 postgresql-9.0.3-bin postgresql-9.0.3.tar.gz qpidc-0.6 qpidc-0.6-bin qpid-cpp-0.6.tar.gz scribe scribe-2.2-bin scribe-2.2.tar.gz thrift-0.2.0 thrift-0.2.0-bin thrift-0.2.0-incubating.tar.gz tidy tinycdb-0.77 tinycdb-0.77-bin tinycdb_0.77.tar.gz tracemonkey-bin tracemonkey-e4364736e170 tracemonkey-e4364736e170.tar.gz tuscany-sca-cpp tuscany-sca-cpp-bin vysper-0.6 vysper-0.6-bin.tar.gz
|
||||
tar czf tuscany-sca-cpp-all-1.0-src.tar.gz apache-libcloud-incubating-0.4.2 apache-libcloud-incubating-0.4.2.tar.bz2 apr-1.4.x apr-1.4.x-bin axis2c-1.6.0-bin axis2c-src-1.6.0 axis2c-src-1.6.0.tar.gz curl-7.19.5 curl-7.19.5-bin curl-7.19.5.tar.gz expat-2.0.1 expat-2.0.1-bin expat-2.0.1.tar.gz google_appengine google_appengine_1.4.0.zip htmltidy-bin httpd-2.3.10 httpd-2.3.10-alpha.tar.gz httpd-2.3.10-bin libcloud-0.4.2-bin liboauth-0.9.1 liboauth-0.9.1-bin liboauth-0.9.1.tar.gz libopkele libopkele-bin libstrophe libstrophe-bin libxml2-2.7.7 libxml2-2.7.7-bin libxml2-sources-2.7.7.tar.gz memcached-1.4.5 memcached-1.4.5-bin memcached-1.4.5.tar.gz mod_auth_openid mod-auth-openid-bin modsecurity-apache_2.6.0 modsecurity-apache-2.6.0-bin modsecurity-apache_2.6.0.tar.gz modsecurity-crs_2.2.0 modsecurity-crs_2.2.0.tar.gz nuvem postgresql-9.0.3 postgresql-9.0.3-bin postgresql-9.0.3.tar.gz qpidc-0.6 qpidc-0.6-bin qpid-cpp-0.6.tar.gz scribe scribe-2.2-bin scribe-2.2.tar.gz thrift-0.2.0 thrift-0.2.0-bin thrift-0.2.0-incubating.tar.gz tidy tinycdb-0.77 tinycdb-0.77-bin tinycdb_0.77.tar.gz js-1.8.5-bin js-1.8.5 js185-1.0.0.tar.gz tuscany-sca-cpp tuscany-sca-cpp-bin vysper-0.6 vysper-0.6-bin.tar.gz
|
||||
|
||||
# Create bin archive
|
||||
tar czf tuscany-sca-cpp-all-1.0.tar.gz apr-1.4.x-bin axis2c-1.6.0-bin curl-7.19.5-bin expat-2.0.1-bin google_appengine htmltidy-bin httpd-2.3.10-bin libcloud-0.4.2-bin liboauth-0.9.1-bin libopkele-bin libstrophe-bin libxml2-2.7.7-bin memcached-1.4.5-bin mod-auth-openid-bin modsecurity-apache-2.6.0-bin nuvem/nuvem-parallel postgresql-9.0.3-bin qpidc-0.6-bin scribe-2.2-bin thrift-0.2.0-bin tinycdb-0.77-bin tracemonkey-bin tuscany-sca-cpp tuscany-sca-cpp-bin vysper-0.6
|
||||
tar czf tuscany-sca-cpp-all-1.0.tar.gz apr-1.4.x-bin axis2c-1.6.0-bin curl-7.19.5-bin expat-2.0.1-bin google_appengine htmltidy-bin httpd-2.3.10-bin libcloud-0.4.2-bin liboauth-0.9.1-bin libopkele-bin libstrophe-bin libxml2-2.7.7-bin memcached-1.4.5-bin mod-auth-openid-bin modsecurity-apache-2.6.0-bin nuvem/nuvem-parallel postgresql-9.0.3-bin qpidc-0.6-bin scribe-2.2-bin thrift-0.2.0-bin tinycdb-0.77-bin js-1.8.5-bin tuscany-sca-cpp tuscany-sca-cpp-bin vysper-0.6
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue