# The oneliner is a tad convoluted - basicaly what we do is
# slurp the entire file and get the index off the last
# `processor : XX` line
-export NUMTHREADS="$(( $(perl -0777 -n -e 'print (/ (?: .+ ^ processor \s+ : \s+ (\d+) ) (?! ^ processor ) /smx)' < /proc/cpuinfo) + 1 ))"
+export NUMTHREADS="$(( ( $(perl -0777 -n -e 'print (/ (?: .+ ^ processor \s+ : \s+ (\d+) ) (?! ^ processor ) /smx)' < /proc/cpuinfo) + 1 ) / 2 ))"
export CACHE_DIR="/tmp/poormanscache"
run_or_err "Priming up the APT cache with $(echo $(ls -d $CACHE_DIR/apt_cache/*.deb))" "sudo cp $CACHE_DIR/apt_cache/*.deb /var/cache/apt/archives"
- apt_install memcached firebird2.5-super firebird2.5-dev expect oracle-xe
+ apt_install libmysqlclient-dev memcached firebird2.5-super firebird2.5-dev unixodbc-dev expect oracle-xe
### config memcached
run_or_err "Starting memcached" "sudo /etc/init.d/memcached start"
export DBICTEST_MEMCACHED=127.0.0.1:11211
### config mysql
+ run_or_err "Restarting MySQL" "sudo /etc/init.d/mysql restart"
run_or_err "Creating MySQL TestDB" "mysql -e 'create database dbic_test;'"
export DBICTEST_MYSQL_DSN='dbi:mysql:database=dbic_test;host=127.0.0.1'
export DBICTEST_MYSQL_USER=root
### config pg
+ run_or_err "Restarting PostgreSQL" "sudo /etc/init.d/postgresql restart"
run_or_err "Creating PostgreSQL TestDB" "psql -c 'create database dbic_test;' -U postgres"
export DBICTEST_PG_DSN='dbi:Pg:database=dbic_test;host=127.0.0.1'
export DBICTEST_PG_USER=postgres
if run_or_err "Creating Firebird TestDB" \
"echo \"CREATE DATABASE '/var/lib/firebird/2.5/data/dbic_test.fdb';\" | sudo isql-fb -u sysdba -p 123"
then
+
+ run_or_err "Fetching and building Firebird ODBC driver" '
+ cd "$(mktemp -d)"
+ wget -qO- http://sourceforge.net/projects/firebird/files/firebird-ODBC-driver/2.0.2-Release/OdbcFb-Source-2.0.2.153.gz/download | tar -zx
+ cd Builds/Gcc.lin
+ perl -p -i -e "s|/usr/lib64|/usr/lib/x86_64-linux-gnu|g" ../makefile.environ
+ make -f makefile.linux
+ sudo make -f makefile.linux install
+ '
+
+ sudo bash -c 'cat >> /etc/odbcinst.ini' <<< "
+[Firebird]
+Description = InterBase/Firebird ODBC Driver
+Driver = /usr/lib/x86_64-linux-gnu/libOdbcFb.so
+Setup = /usr/lib/x86_64-linux-gnu/libOdbcFb.so
+Threading = 1
+FileUsage = 1
+"
+
export DBICTEST_FIREBIRD_DSN=dbi:Firebird:dbname=/var/lib/firebird/2.5/data/dbic_test.fdb
export DBICTEST_FIREBIRD_USER=SYSDBA
export DBICTEST_FIREBIRD_PASS=123
export DBICTEST_FIREBIRD_INTERBASE_USER=SYSDBA
export DBICTEST_FIREBIRD_INTERBASE_PASS=123
+ export DBICTEST_FIREBIRD_ODBC_DSN="dbi:ODBC:Driver=Firebird;Dbname=/var/lib/firebird/2.5/data/dbic_test.fdb"
+ export DBICTEST_FIREBIRD_ODBC_USER=SYSDBA
+ export DBICTEST_FIREBIRD_ODBC_PASS=123
+
break
fi