diff options
author | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2010-04-04 07:31:28 +0000 |
---|---|---|
committer | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2010-04-04 07:31:28 +0000 |
commit | 8d0acee3d667560f70a0a32b36cb9da4bc48ef9c (patch) | |
tree | 23fe74936970e8cdf2408b6c8986422d12c57af9 | |
parent | 74684a07395ea564197d630bd26298050bcda252 (diff) |
Create build structure for an SQL database component. Add dependencies to postgresql and tinycdb to build scripts.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@930635 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rw-r--r-- | sca-cpp/trunk/INSTALL | 85 | ||||
-rw-r--r-- | sca-cpp/trunk/README | 5 | ||||
-rw-r--r-- | sca-cpp/trunk/components/Makefile.am | 2 | ||||
-rw-r--r-- | sca-cpp/trunk/components/queue/qpid.hpp | 4 | ||||
-rw-r--r-- | sca-cpp/trunk/components/sqldb/Makefile.am | 43 | ||||
-rw-r--r-- | sca-cpp/trunk/components/sqldb/pgsql.hpp | 34 | ||||
-rw-r--r-- | sca-cpp/trunk/components/sqldb/sqldb.composite | 32 | ||||
-rw-r--r-- | sca-cpp/trunk/configure.ac | 66 | ||||
-rwxr-xr-x | sca-cpp/trunk/ubuntu/ubuntu-bin-image | 12 | ||||
-rwxr-xr-x | sca-cpp/trunk/ubuntu/ubuntu-install | 96 | ||||
-rwxr-xr-x | sca-cpp/trunk/ubuntu/ubuntu-source-image | 1 |
11 files changed, 330 insertions, 50 deletions
diff --git a/sca-cpp/trunk/INSTALL b/sca-cpp/trunk/INSTALL index ba9d898c66..3a23d770b9 100644 --- a/sca-cpp/trunk/INSTALL +++ b/sca-cpp/trunk/INSTALL @@ -42,7 +42,7 @@ libtool-2.2.6 doxygen-1.6.1 Install the following binaries: -curl-7.19.5 (http://curl.haxx.se) +curl-7-19-5 privbind-1.1 (http://manpages.ubuntu.com/manpages/karmic/man1/privbind.1.html) @@ -58,14 +58,17 @@ memcached-1.4.4 (http://memcached.org/) built with libevent-1.4.11 XML: -libxml2-2.7.5 (http://xmlsoft.org/) +libxml2-2.7.7 (http://xmlsoft.org/) CURL: libcurl4-openssl-7.19.5 JSON: -Mozilla SpiderMonkey libmozjs (http://www.mozilla.org/js/spidermonkey/) -included in xulrunner-1.9.1.8 +Mozilla TraceMonkey libmozjs (https://wiki.mozilla.org/JavaScript:TraceMonkey) +also included in xulrunner-1.9.1.8 + +Key/value store: +tinycdb-0.77 (http://www.corpit.ru/mjt/tinycdb.html) Optional dependencies: @@ -90,6 +93,9 @@ Libstrophe (http://code.stanziq.com/cgit/strophe/libstrophe/) build it from source at git://code.stanziq.com//libstrophe requires libcheck-0.9.6 +SQL Database: +postgresql-9.0 (http://www.postgresql.org/) + To configure the Tuscany SCA build do this: ./bootstrap @@ -121,6 +127,9 @@ To build the Chat utility component (requires Libstrophe and optionally Apache Vysper if you want to run the tests with a local Vysper XMPP server): --enable-chat +To build the SQL Database utility component (requires PostgreSQL): +--enable-sqldb + To generate doxygen documentation, add: --enable-doxygen @@ -136,16 +145,19 @@ dependencies installed under $HOME: ./configure --prefix=$HOME/tuscany-sca-cpp-bin \ --with-apr=$HOME/httpd-2.2.13-bin --with-httpd=$HOME/httpd-2.2.13-bin \ --with-memcached=$HOME/memcached-1.4.4-bin \ ---with-libcurl=$HOME/curl-7.19.5-bin --with-libxml2=/usr \ +--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.1.8/unstable \ --with-js-lib=/usr/lib/xulrunner-1.9.1.8 \ --enable-threads \ --enable-python --with-python=/usr \ --enable-java --with-java=/usr/lib/jvm/default-java \ --enable-webservice --with-axis2c=$HOME/axis2c-1.6.0-bin \ +--with-libxml2=$HOME/libxml2-2.7.7-bin \ --enable-queue --with-qpidc=$HOME/qpidc-0.6-bin \ --enable-chat --with-libstrophe=$HOME/libstrophe \ --with-vysper=$HOME/vysper-0.5 \ +--enable-sqldb --with-pgsql=$HOME/postgresql-9.0-bin \ --enable-maintainer-mode @@ -178,34 +190,73 @@ Building dependencies from source Here are example build and install steps for some of the dependencies. Apache HTTPD, including APR, using the HTTP prefork MPM (recommended): +wget http://www.apache.org/dist/httpd/httpd-2.2.15.tar.gz +tar xzf httpd-2.2.15.tar.gz +cd httpd-2.2.15 ./configure --enable-ssl --enable-proxy --enable-rewrite --with-included-apr \ ---with-mpm=prefork --prefix=$HOME/httpd-2.2.13-bin +--with-mpm=prefork --prefix=$HOME/httpd-2.2.15-bin make make install -export PATH=$HOME/httpd-2-2.13-bin/bin:$PATH +export PATH=$HOME/httpd-2-2.15-bin/bin:$PATH Memcached: +wget http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz +tar xzf memcached-1.4.4.tar.gz +cd memcached-1.4.4 ./configure --prefix=$HOME/memcached-1.4.4-bin make make install +CURL: +wget http://curl.haxx.se/download/curl-7.19.5.tar.gz +tar xzf curl-7.19.5.tar.gz +cd curl-7.19.5 +./configure --prefix=$HOME/curl-7.19.5-bin +make +make install + +Libxml2: +wget ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz +tar xzf libxml2-sources-2.7.7.tar.gz +cd libxml2-2.7.7 +./configure --prefix=$HOME/libxml2-2.7.7-bin +make +make install + +TraceMonkey: +wget http://hg.mozilla.org/tracemonkey/archive/e4364736e170.tar.gz +tar xzf tracemonkey-e4364736e170.tar.gz +cd tracemonkey-e4364736e170/js/src +autoconf2.13 +./configure --prefix=$HOME/tracemonkey-bin +make +make install + +TinyCDB: +wget http://www.corpit.ru/mjt/tinycdb/tinycdb_0.77.tar.gz +tar xzf tinycdb_0.77.tar.gz +cd tinycdb-0.77 +make +make prefix=$HOME/tinycdb-0.77-bin install + Apache Axis2/C: +wget http://www.apache.org/dist/ws/axis2-c/1_6_0/axis2c-src-1.6.0.tar.gz +tar xzf axis2c-src-1.6.0.tar.gz +cd axis2c-src-1.6.0 ./configure --enable-libxml2 --enable-openssl \ ---with-apache2=$HOME/httpd-2.2.13-bin/include --prefix=$HOME/axis2c-1.6.0-bin +--with-apache2=$HOME/httpd-2.2.15-bin/include --prefix=$HOME/axis2c-1.6.0-bin make make install export AXIS2C_HOME=$HOME/axis2c-1.6.0-bin Apache Qpid/C++: +wget http://www.apache.org/dist/qpid/0.6/qpid-cpp-0.6.tar.gz +tar xzf qpid-cpp-0.6.tar.gz +cd qpidc-0.6 ./configure --prefix=$HOME/qpidc-0.6-bin make make install -CURL -./configure --prefix=$HOME/qpid-7.19.5-bin -make -make install - Libstrophe: git clone git://code.stanziq.com/libstrophe cd libstrophe @@ -218,3 +269,11 @@ autoconf make make install +PostgreSQL: +wget http://wwwmaster.postgresql.org/download/mirrors-ftp/source/9.0alpha5/postgresql-9.0alpha5.tar.gz +tar xzf postgresql-9.0alpha5.tar.gz +cd postgresql-9.0alpha5 +./configure --prefix=$HOME/postgresql-9.0-bin +make +make install + diff --git a/sca-cpp/trunk/README b/sca-cpp/trunk/README index 23536ec47a..720b785e47 100644 --- a/sca-cpp/trunk/README +++ b/sca-cpp/trunk/README @@ -40,11 +40,12 @@ Here's a rough guide to the Tuscany SCA source tree: | | |-- wsgi Python WSGI server integration | | | |-- components Useful SCA components - | | |-- cache Key/value cache + | | |-- cache Key/value memory cache | | |-- chat XMPP chat | | |-- log Logger | | |-- queue AMQP message queue - | | |-- store Persistent store + | | |-- sqldb SQL database + | | |-- store Key/value persistent store | | |-- webservice Web service gateway | | | |-- test Integration tests diff --git a/sca-cpp/trunk/components/Makefile.am b/sca-cpp/trunk/components/Makefile.am index ad006ee798..c07ebb1468 100644 --- a/sca-cpp/trunk/components/Makefile.am +++ b/sca-cpp/trunk/components/Makefile.am @@ -15,7 +15,7 @@ # specific language governing permissions and limitations # under the License. -SUBDIRS = cache chat log queue store webservice +SUBDIRS = cache chat log queue sqldb store webservice includedir = $(prefix)/include/components nobase_include_HEADERS = */*.hpp diff --git a/sca-cpp/trunk/components/queue/qpid.hpp b/sca-cpp/trunk/components/queue/qpid.hpp index 8b466cedcc..2651e3a433 100644 --- a/sca-cpp/trunk/components/queue/qpid.hpp +++ b/sca-cpp/trunk/components/queue/qpid.hpp @@ -19,8 +19,8 @@ /* $Rev$ $Date$ */ -#ifndef tuscany_queue_hpp -#define tuscany_queue_hpp +#ifndef tuscany_qpid_hpp +#define tuscany_qpid_hpp /** * AMQP queue access functions. diff --git a/sca-cpp/trunk/components/sqldb/Makefile.am b/sca-cpp/trunk/components/sqldb/Makefile.am new file mode 100644 index 0000000000..0bea7b5eb1 --- /dev/null +++ b/sca-cpp/trunk/components/sqldb/Makefile.am @@ -0,0 +1,43 @@ +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. + +if WANT_SQLDB + +INCLUDES = -I${PGSQL_INCLUDE} + +#comp_SCRIPTS = pgsql-start pgsql-stop +compdir=$(prefix)/components/sqldb + +comp_DATA = pgsql.prefix +pgsql.prefix: $(top_builddir)/config.status + echo ${PGSQL_PREFIX} >pgsql.prefix + +#comp_LTLIBRARIES = libsqldb.la libqueue-listener.la + +#libsqldb_la_SOURCES = sqldb.cpp +#libsqldb_la_LDFLAGS = -L${PGSQL_LIB} -R${PGSQL_LIB} -lpgsql + +#pgsql_test_SOURCES = pgsql-test.cpp +#pgsql_test_LDFLAGS = -L${PGSQL_LIB} -R${PGSQL_LIB} -lpgsql + +#client_test_SOURCES = client-test.cpp +#client_test_LDFLAGS = -lxml2 -lcurl -lmozjs + +#noinst_PROGRAMS = pgsql-test client-test +#TESTS = sql-test server-test + +endif diff --git a/sca-cpp/trunk/components/sqldb/pgsql.hpp b/sca-cpp/trunk/components/sqldb/pgsql.hpp new file mode 100644 index 0000000000..6743a4a3f5 --- /dev/null +++ b/sca-cpp/trunk/components/sqldb/pgsql.hpp @@ -0,0 +1,34 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +/* $Rev$ $Date$ */ + +#ifndef tuscany_pgsql_hpp +#define tuscany_pgsql_hpp + +#include "string.hpp" +#include "list.hpp" +#include "value.hpp" +#include "monad.hpp" + +namespace tuscany { +namespace sqldb { + + +#endif /* tuscany_pgsql_hpp */ diff --git a/sca-cpp/trunk/components/sqldb/sqldb.composite b/sca-cpp/trunk/components/sqldb/sqldb.composite new file mode 100644 index 0000000000..39b1e54b7e --- /dev/null +++ b/sca-cpp/trunk/components/sqldb/sqldb.composite @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +--> +<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912" + xmlns:t="http://tuscany.apache.org/xmlns/sca/1.1" + targetNamespace="http://tuscany.apache.org/xmlns/sca/components" + name="sqldb"> + + <component name="sqldb"> + <implementation.cpp path=".libs" library="libsqldb"/> + <service name="sqldb"> + <t:binding.http uri="sqldb"/> + </service> + </component> + +</composite> diff --git a/sca-cpp/trunk/configure.ac b/sca-cpp/trunk/configure.ac index 2c71c557eb..233cacf589 100644 --- a/sca-cpp/trunk/configure.ac +++ b/sca-cpp/trunk/configure.ac @@ -50,17 +50,20 @@ else AM_CONDITIONAL([DARWIN], false) fi -# Configure path to libcurl includes and lib. -AC_MSG_CHECKING([for libcurl]) -AC_ARG_WITH([libcurl], [AC_HELP_STRING([--with-libcurl=PATH], [path to installed libcurl [default=/usr]])], [ +# Configure path to CURL. +AC_MSG_CHECKING([for curl]) +AC_ARG_WITH([curl], [AC_HELP_STRING([--with-curl=PATH], [path to installed curl [default=/usr]])], [ + CURL_PREFIX="${withval}" LIBCURL_INCLUDE="${withval}/include" LIBCURL_LIB="${withval}/lib" AC_MSG_RESULT("${withval}") ], [ + CURL_PREFIX="/usr" LIBCURL_INCLUDE="/usr/include" LIBCURL_LIB="/usr/lib" AC_MSG_RESULT(/usr) ]) +AC_SUBST(CURL_PREFIX) AC_SUBST(LIBCURL_INCLUDE) AC_SUBST(LIBCURL_LIB) @@ -141,6 +144,23 @@ AC_ARG_WITH([memcached], [AC_HELP_STRING([--with-memcached=PATH], [path to insta ]) AC_SUBST(MEMCACHED_PREFIX) +# Configure path to tinycdb. +AC_MSG_CHECKING([for tinycdb]) +AC_ARG_WITH([tinycdb], [AC_HELP_STRING([--with-tinycdb=PATH], [path to installed tinycdb [default=/usr]])], [ + TINYCDB_PREFIX="${withval}" + TINYCDB_INCLUDE="${withval}/include" + TINYCDB_LIB="${withval}/lib" + AC_MSG_RESULT("${withval}") +], [ + TINYCDB_PREFIX="/usr" + TINYCDB_INCLUDE="/usr/include" + TINYCDB_LIB="/usr/lib" + AC_MSG_RESULT(/usr) +]) +AC_SUBST(TINYCDB_PREFIX) +AC_SUBST(TINYCDB_INCLUDE) +AC_SUBST(TINYCDB_LIB) + # Configure TUSCANY_SCACPP path variable. TUSCANY_SCACPP=`echo "${TUSCANY_SCACPP}"` if test "${TUSCANY_SCACPP}" = ""; then @@ -475,7 +495,44 @@ else AM_CONDITIONAL([WANT_STORE], false) fi -# Configure path to Apache Qpid/C++ includes and lib. +# Configure path to PostgreSQL. +AC_MSG_CHECKING([for pgsql]) +AC_ARG_WITH([pgsql], [AC_HELP_STRING([--with-pgsql=PATH], [path to installed PostgreSQL [default=/usr/local/pgsql]])], [ + PGSQL_PREFIX="${withval}" + PGSQL_INCLUDE="${withval}/include" + PGSQL_LIB="${withval}/lib" + AC_MSG_RESULT("${withval}") +], [ + PGSQL_PREFIX="/usr/local/pgsql" + PGSQL_INCLUDE="/usr/local/pgsql/include" + PGSQL_LIB="/usr/local/pgsql/lib" + AC_MSG_RESULT(/usr/local) +]) +AC_SUBST(PGSQL_PREFIX) +AC_SUBST(PGSQL_INCLUDE) +AC_SUBST(PGSQL_LIB) + +# Enable SQL Database component. +AC_MSG_CHECKING([whether to enable the SQL Database component]) +AC_ARG_ENABLE(sqldb, [AS_HELP_STRING([--enable-sqldb], [enable SQL Database component [default=no]])], +[ case "${enableval}" in + no) + AC_MSG_RESULT(no) + ;; + *) + AC_MSG_RESULT(yes) + want_sqldb=true + ;; + esac ], +[ AC_MSG_RESULT(no)]) +if test "${want_sqldb}" = "true"; then + AM_CONDITIONAL([WANT_SQLDB], true) + AC_DEFINE([WANT_SQLDB], 1, [enable SQL Database component]) +else + AM_CONDITIONAL([WANT_SQLDB], false) +fi + +# Configure path to Apache Qpid/C++. AC_MSG_CHECKING([for qpidc]) AC_ARG_WITH([qpidc], [AC_HELP_STRING([--with-qpidc=PATH], [path to installed Apache Qpid/C++ [default=/usr/local]])], [ QPIDC_PREFIX="${withval}" @@ -598,6 +655,7 @@ AC_CONFIG_FILES([Makefile components/log/Makefile components/chat/Makefile components/queue/Makefile + components/sqldb/Makefile components/store/Makefile components/webservice/Makefile samples/Makefile diff --git a/sca-cpp/trunk/ubuntu/ubuntu-bin-image b/sca-cpp/trunk/ubuntu/ubuntu-bin-image index 54ebd42c03..5c8a89d2a4 100755 --- a/sca-cpp/trunk/ubuntu/ubuntu-bin-image +++ b/sca-cpp/trunk/ubuntu/ubuntu-bin-image @@ -31,11 +31,11 @@ sudo chgrp ubuntu /mnt/tuscany cd /mnt/tuscany # Install system tools and libraries -sudo apt-get -y install git-core autoconf automake g++ libtool +sudo apt-get -y install wget git-core autoconf automake g++ libtool if [ "$?" != "0" ]; then exit $? fi -sudo apt-get -y install curl privbind +sudo apt-get -y install privbind if [ "$?" != "0" ]; then exit $? fi @@ -43,7 +43,7 @@ sudo apt-get -y install libssl-dev if [ "$?" != "0" ]; then exit $? fi -sudo apt-get -y install pkg-config libxml2-dev +sudo apt-get -y install pkg-config if [ "$?" != "0" ]; then exit $? fi @@ -59,12 +59,8 @@ sudo apt-get -y install openjdk-6-jdk if [ "$?" != "0" ]; then exit $? fi -sudo apt-get -y install xulrunner-dev -if [ "$?" != "0" ]; then - exit $? -fi # Download and install the runtime -curl -o tuscany-sca-cpp-1.0.0-SNAPSHOT.tar.gz http://people.apache.org/~jsdelfino/tuscany/test/tuscany-sca-cpp-1.0.0-SNAPSHOT.tar.gz +wget http://people.apache.org/~jsdelfino/tuscany/test/tuscany-sca-cpp-1.0.0-SNAPSHOT.tar.gz tar xzf tuscany-sca-cpp-1.0.0-SNAPSHOT.tar.gz diff --git a/sca-cpp/trunk/ubuntu/ubuntu-install b/sca-cpp/trunk/ubuntu/ubuntu-install index 5ce7976108..ac5017e255 100755 --- a/sca-cpp/trunk/ubuntu/ubuntu-install +++ b/sca-cpp/trunk/ubuntu/ubuntu-install @@ -24,14 +24,14 @@ set -x # Build and install in the current directory build=`pwd` -# Install GIT and core dev tools -sudo apt-get -y install git-core autoconf automake g++ libtool +# Install core dev tools +sudo apt-get -y install wget git-core autoconf automake g++ libtool if [ "$?" != "0" ]; then exit $? fi # Install the required binaries -sudo apt-get -y install curl privbind +sudo apt-get -y install privbind if [ "$?" != "0" ]; then exit $? fi @@ -41,7 +41,7 @@ sudo apt-get -y install libssl-dev if [ "$?" != "0" ]; then exit $? fi -curl -o httpd-2.2.15.tar.gz http://www.apache.org/dist/httpd/httpd-2.2.15.tar.gz +wget http://www.apache.org/dist/httpd/httpd-2.2.15.tar.gz tar xzf httpd-2.2.15.tar.gz cd httpd-2.2.15 ./configure --enable-ssl --enable-proxy --enable-rewrite --with-included-apr --with-mpm=prefork --prefix=$build/httpd-2.2.15-bin @@ -57,7 +57,7 @@ sudo apt-get install libevent-dev if [ "$?" != "0" ]; then exit $? fi -curl -o memcached-1.4.4.tar.gz http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz +wget http://memcached.googlecode.com/files/memcached-1.4.4.tar.gz tar xzf memcached-1.4.4.tar.gz cd memcached-1.4.4 ./configure --prefix=$build/memcached-1.4.4-bin @@ -68,12 +68,64 @@ if [ "$?" != "0" ]; then fi cd $build +# Build tinycdb +wget http://www.corpit.ru/mjt/tinycdb/tinycdb_0.77.tar.gz +tar xzf tinycdb_0.77.tar.gz +cd tinycdb-0.77 +make +make prefix=$build/tinycdb-0.77-bin install +if [ "$?" != "0" ]; then + exit $? +fi +cd $build + +# Build Libcurl +wget http://curl.haxx.se/download/curl-7.19.5.tar.gz +tar xzf curl-7.19.5.tar.gz +cd curl-7.19.5 +./configure --prefix=$build/curl-7.19.5-bin +make +make install +if [ "$?" != "0" ]; then + exit $? +fi +cd $build + +# Build Libxml2 +wget ftp://xmlsoft.org/libxml2/libxml2-sources-2.7.7.tar.gz +tar xzf libxml2-sources-2.7.7.tar.gz +cd libxml2-2.7.7 +./configure --prefix=$build/libxml2-2.7.7-bin +make +make install +if [ "$?" != "0" ]; then + exit $? +fi +cd $build + +# Build TraceMonkey +sudo apt-get -y install autoconf2.13 +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 +make +make install +if [ "$?" != "0" ]; then + exit $? +fi +cd $build + # Build Apache Axis2/C -sudo apt-get -y install pkg-config libxml2-dev +sudo apt-get -y install pkg-config if [ "$?" != "0" ]; then exit $? fi -curl -o axis2c-src-1.6.0.tar.gz http://www.apache.org/dist/ws/axis2-c/1_6_0/axis2c-src-1.6.0.tar.gz +wget http://www.apache.org/dist/ws/axis2-c/1_6_0/axis2c-src-1.6.0.tar.gz tar xzf axis2c-src-1.6.0.tar.gz cd axis2c-src-1.6.0 ./configure --enable-libxml2 --enable-openssl --with-apache2=$build/httpd-2.2.15-bin/include --prefix=$build/axis2c-1.6.0-bin @@ -99,7 +151,7 @@ if [ "$?" != "0" ]; then fi sudo -s ln -s /usr/lib/libboost_program_options-mt.so /usr/lib/libboost_program_options.so sudo -s ln -s /usr/lib/libboost_filesystem-mt.so /usr/lib/libboost_filesystem.so -curl -o qpid-cpp-0.6.tar.gz http://www.apache.org/dist/qpid/0.6/qpid-cpp-0.6.tar.gz +wget http://www.apache.org/dist/qpid/0.6/qpid-cpp-0.6.tar.gz tar xzf qpid-cpp-0.6.tar.gz cd qpidc-0.6 ./configure --prefix=$build/qpidc-0.6-bin @@ -135,17 +187,21 @@ sudo apt-get -y install openjdk-6-jdk if [ "$?" != "0" ]; then exit $? fi -curl -o vysper-0.5-bin.tar.gz https://repository.apache.org/content/repositories/orgapachemina-019/org/apache/vysper/vysper/0.5/vysper-0.5-bin.tar.gz +wget http://www.apache.org/dist/mina/vysper/0.5/vysper-0.5-bin.tar.gz tar xzf vysper-0.5-bin.tar.gz if [ "$?" != "0" ]; then exit $? fi -# Build Libcurl -curl -o curl-7.19.5.tar.gz http://curl.haxx.se/download/curl-7.19.5.tar.gz -tar xzf curl-7.19.5.tar.gz -cd curl-7.19.5 -./configure --prefix=$build/curl-7.19.5-bin +# Build PostgreSQL +sudo apt-get -y install libreadline-dev +if [ "$?" != "0" ]; then + exit $? +fi +wget http://wwwmaster.postgresql.org/redir/198/f/source/9.0alpha4/postgresql-9.0alpha4.tar.gz +tar xzf postgresql-9.0alpha4.tar.gz +cd postgresql-9.0alpha4 +./configure --prefix=$build/postgresql-9.0-bin make make install if [ "$?" != "0" ]; then @@ -154,15 +210,12 @@ fi cd $build # Build Tuscany SCA -sudo apt-get -y install xulrunner-dev -if [ "$?" != "0" ]; then - exit $? -fi -git clone git://git.apache.org/tuscany-sca-cpp +#git clone git://git.apache.org/tuscany-sca-cpp +git clone ssh://delfinoj@10.1.1.58/home/delfinoj/SCAZone/Source/tuscany-sca-cpp/.git cd tuscany-sca-cpp cp etc/git-exclude .git/info/exclude ./bootstrap -./configure --prefix=$build/tuscany-sca-cpp-bin --with-libcurl=$build/curl-7.19.5-bin --with-apr=$build/httpd-2.2.15-bin --with-httpd=$build/httpd-2.2.15-bin --with-memcached=$build/memcached-1.4.4-bin --enable-threads --enable-python --enable-java --with-java=/usr/lib/jvm/java-6-openjdk --enable-webservice --with-axis2c=$build/axis2c-1.6.0-bin --enable-queue --with-qpidc=$build/qpidc-0.6-bin --enable-chat --with-libstrophe=$build/libstrophe --with-vysper=$build/vysper-0.5 +./configure --prefix=$build/tuscany-sca-cpp-bin --with-curl=$build/curl-7.19.5-bin --with-apr=$build/httpd-2.2.15-bin --with-httpd=$build/httpd-2.2.15-bin --with-memcached=$build/memcached-1.4.4-bin --with-tinycdb=$build/tinycdb-0.77-bin --with-js-include=$build/tracemonkey-bin/include/js --with-js-lib=$build/tracemonkey-bin/lib --enable-threads --enable-python --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 --with-vysper=$build/vysper-0.5 --enable-sqldb --with-pgsql=$build/postgresql-9.0-bin make make install if [ "$?" != "0" ]; then @@ -170,3 +223,6 @@ if [ "$?" != "0" ]; then fi cd $build +# Create bin archive +tar czf tuscany-sca-cpp-1.0.0-SNAPSHOT.tar.gz tuscany-sca-cpp tuscany-sca-cpp-bin axis2c-1.6.0-bin libxml2-2.7.7-bin curl-7.19.5-bin httpd-2.2.15-bin tracemonkey-bin libstrophe-bin memcached-1.4.4-bin tinycdb-0.77-bin qpidc-0.6-bin vysper-0.5 postgresql-9.0-bin + diff --git a/sca-cpp/trunk/ubuntu/ubuntu-source-image b/sca-cpp/trunk/ubuntu/ubuntu-source-image index 2d24d9ad30..a2b45ece3b 100755 --- a/sca-cpp/trunk/ubuntu/ubuntu-source-image +++ b/sca-cpp/trunk/ubuntu/ubuntu-source-image @@ -31,6 +31,7 @@ sudo chgrp ubuntu /mnt/tuscany cd /mnt/tuscany # Download and run install script +sudo apt-get -y install wget wget http://svn.apache.org/repos/asf/tuscany/sca-cpp/trunk/ubuntu/ubuntu-install chmod +x ./ubuntu-install ./ubuntu-install |