7779274ac9
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1094207 13f79535-47bb-0310-9956-ffa450edef68
351 lines
12 KiB
Text
Executable file
351 lines
12 KiB
Text
Executable file
# 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.
|
|
|
|
# Install a complete distribution, the required system tools and libraries, the
|
|
# runtime dependencies and the Tuscany SCA runtime on a fresh Ubuntu Server
|
|
# 10.10 64-bit system.
|
|
|
|
# Display commands as they are executed
|
|
set -x
|
|
|
|
# Build and install in the current directory
|
|
build=`pwd`
|
|
|
|
# Install core dev tools
|
|
sudo apt-get -y install wget git-core subversion autoconf automake libtool g++
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
|
|
# Build Libexpat
|
|
wget 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
|
|
tar xzf expat-2.0.1.tar.gz
|
|
cd expat-2.0.1
|
|
./configure --prefix=$build/expat-2.0.1-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Apache APR and HTTP server
|
|
sudo apt-get -y install libssl-dev libpcre3-dev
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
svn co -r 1051230 http://svn.apache.org/repos/asf/apr/apr/trunk apr-1.4.x
|
|
cd apr-1.4.x
|
|
./buildconf
|
|
./configure -with-openssl --with-crypto --with-expat=$build/expat-2.0.1-bin --prefix=$build/apr-1.4.x-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
wget http://archive.apache.org/dist/httpd/httpd-2.3.10-alpha.tar.gz
|
|
tar xzf httpd-2.3.10-alpha.tar.gz
|
|
cd httpd-2.3.10
|
|
./configure --enable-ssl --enable-proxy --enable-usertrack --enable-cgi --enable-session-crypto --enable-mods-shared=most --enable-mpms-shared="prefork worker event" --with-mpm=prefork --with-apr=$build/apr-1.4.x-bin --with-expat=$build/expat-2.0.1-bin --prefix=$build/httpd-2.3.10-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Memcached
|
|
sudo apt-get -y install libevent-dev
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
wget http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz
|
|
tar xzf memcached-1.4.5.tar.gz
|
|
cd memcached-1.4.5
|
|
./configure --prefix=$build/memcached-1.4.5-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
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 all shared
|
|
make prefix=$build/tinycdb-0.77-bin install-all install-sharedlib
|
|
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 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
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Install Google AppEngine SDK
|
|
wget http://googleappengine.googlecode.com/files/google_appengine_1.4.0.zip
|
|
unzip google_appengine_1.4.0.zip
|
|
|
|
# Build Apache Axis2/C
|
|
sudo apt-get -y install pkg-config
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
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 LIBXML2_CFLAGS="-I$build/libxml2-2.7.7-bin/include/libxml2" LIBXML2_LIBS="-L$build/libxml2-2.7.7-bin/lib -lxml2" --enable-openssl --with-apache2=$build/httpd-2.3.10-bin/include --with-apr=$build/apr-1.4.x-bin/include/apr-2 --prefix=$build/axis2c-1.6.0-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
export AXIS2C_HOME=$build/axis2c-1.6.0-bin
|
|
cd samples
|
|
./configure --prefix=$build/axis2c-1.6.0-bin --with-axis2=$build/axis2c-1.6.0-bin/include/axis2-1.6.0
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Apache Qpid/C++
|
|
sudo apt-get -y install libboost-dev libboost-program-options-dev libboost-filesystem-dev uuid-dev
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
wget http://archive.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
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Libstrophe
|
|
git clone git://github.com/jsdelfino/libstrophe.git
|
|
cd libstrophe
|
|
./bootstrap.sh
|
|
./configure --prefix=$build/libstrophe-bin --with-expat=$build/expat-2.0.1-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Install Apache Vysper
|
|
sudo apt-get -y install openjdk-6-jdk
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
wget http://archive.apache.org/dist/mina/vysper/0.6/vysper-0.6-bin.tar.gz
|
|
tar xzf vysper-0.6-bin.tar.gz
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
|
|
# Build HTML Tidy
|
|
sudo apt-get -y install cvs
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cvs -z3 -d:pserver:anonymous@tidy.cvs.sourceforge.net:/cvsroot/tidy co -P tidy
|
|
cd tidy
|
|
sh build/gnuauto/setup.sh
|
|
./configure --prefix=$build/htmltidy-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Libopkele
|
|
git clone git://github.com/jsdelfino/libopkele.git
|
|
cd libopkele
|
|
./autogen.bash
|
|
./configure --prefix=$build/libopkele-bin --with-curl=$build/curl-7.19.5-bin --with-expat=$build/expat-2.0.1-bin --with-htmltidy=$build/htmltidy-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Mod_auth_openid
|
|
git clone git://github.com/jsdelfino/mod_auth_openid.git
|
|
cd mod_auth_openid
|
|
./autogen.sh
|
|
./configure --prefix=$build/mod-auth-openid-bin --with-apr=$build/apr-1.4.x-bin --with-httpd=$build/httpd-2.3.10-bin --with-curl=$build/curl-7.19.5-bin --with-libopkele=$build/libopkele-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Liboauth
|
|
wget http://liboauth.sourceforge.net/pool/liboauth-0.9.1.tar.gz
|
|
tar xzf liboauth-0.9.1.tar.gz
|
|
cd liboauth-0.9.1
|
|
./configure --prefix=$build/liboauth-0.9.1-bin CURL_CFLAGS="-I$build/curl-7.19.5-bin/include" CURL_LIBS="-L$build/curl-7.19.5-bin/lib -R$build/curl-7.19.5-bin/lib -lcurl"
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build PostgreSQL
|
|
sudo apt-get -y install libreadline-dev
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
wget ftp://ftp9.us.postgresql.org/pub/mirrors/postgresql/source/v9.0.3/postgresql-9.0.3.tar.gz
|
|
tar xzf postgresql-9.0.3.tar.gz
|
|
cd postgresql-9.0.3
|
|
./configure --prefix=$build/postgresql-9.0.3-bin
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Apache Thrift
|
|
sudo apt-get -y install bison flex python-dev
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
wget http://www.apache.org/dist/incubator/thrift/0.2.0-incubating/thrift-0.2.0-incubating.tar.gz
|
|
tar xzf thrift-0.2.0-incubating.tar.gz
|
|
cd thrift-0.2.0
|
|
./bootstrap.sh
|
|
./configure --prefix=$build/thrift-0.2.0-bin PY_PREFIX=$build/thrift-0.2.0-bin --with-java=no --with-erlang=no --with-perl=no --with-ruby=no --with-csharp=no --disable-static
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Facebook fb303
|
|
cd thrift-0.2.0/contrib/fb303
|
|
./bootstrap.sh
|
|
./configure --prefix=$build/thrift-0.2.0-bin/contrib/fb303 PY_PREFIX=$build/thrift-0.2.0-bin/contrib/fb303 --with-thriftpath=$build/thrift-0.2.0-bin --disable-static
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cp cpp/lib/libfb303.so $build/thrift-0.2.0-bin/contrib/fb303/lib
|
|
cd $build
|
|
|
|
# Build Facebook Scribe
|
|
sudo apt-get -y install gawk
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
wget --no-check-certificate http://github.com/downloads/facebook/scribe/scribe-2.2.tar.gz
|
|
tar xzf scribe-2.2.tar.gz
|
|
cd scribe
|
|
./bootstrap.sh --prefix=$build/scribe-2.2-bin PY_PREFIX=$build/scribe-2.2-bin --with-thriftpath=$build/thrift-0.2.0-bin --with-fb303path=$build/thrift-0.2.0-bin/contrib/fb303 --disable-static
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cp src/lib/libscribe.so $build/scribe-2.2-bin/lib
|
|
cd $build
|
|
|
|
# Build Apache Libcloud
|
|
wget http://www.apache.org/dist/incubator/libcloud/apache-libcloud-incubating-0.3.1.tar.bz2
|
|
tar xjf apache-libcloud-incubating-0.3.1.tar.bz2
|
|
cd apache-libcloud-0.3.1
|
|
python setup.py build
|
|
python setup.py install --home $build/libcloud-0.3.1-bin
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Build Tuscany SCA
|
|
git clone git://git.apache.org/tuscany-sca-cpp.git
|
|
cd tuscany-sca-cpp
|
|
cp etc/git-exclude .git/info/exclude
|
|
./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.3.1-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
|
|
make
|
|
make install
|
|
if [ "$?" != "0" ]; then
|
|
exit $?
|
|
fi
|
|
cd $build
|
|
|
|
# Create src archive
|
|
tar czf tuscany-sca-cpp-all-1.0-src.tar.gz apache-libcloud-0.3.1 apache-libcloud-incubating-0.3.1.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.3.1-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 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
|
|
|
|
# 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.3.1-bin liboauth-0.9.1-bin libopkele-bin libstrophe-bin libxml2-2.7.7-bin memcached-1.4.5-bin mod-auth-openid-bin 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
|
|
|