1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
#!/bin/bash
# install_zeromq
#
# Installs the specified version of ØMQ.
#
# Parameters:
#
# 1 - The version of ØMQ to install, in the form "vx.y.z"
install_zeromq() {
local zeromq_version=$1
case $zeromq_version in
v2.2.0)
wget http://download.zeromq.org/zeromq-2.2.0.tar.gz
tar -xf zeromq-2.2.0.tar.gz
cd ./zeromq-2.2.0
;;
v3*)
git clone https://github.com/zeromq/zeromq3-x
cd ./zeromq3-x
git checkout tags/$zeromq_version
;;
v4*)
git clone https://github.com/zeromq/zeromq4-x
cd ./zeromq4-x
git checkout tags/$zeromq_version
;;
esac
./autogen.sh
./configure --prefix="${HOME}/zeromq-${zeromq_version}"
make -j 8
sudo make install
cd ..
}
# install_zeromq_php_extension
#
# Installs the ØMQ PHP extension.
#
# Parameters: ~
build_zeromq_php_extension() {
local zeromq_version=$1
phpize
./configure --with-zmq="${HOME}/zeromq-${zeromq_version}"
make
}
# run_zeromq_extension_tests
#
# Runs the ØMQ PHP extension tests and /returns the exit code/.
#
# Parameters: ~
run_zeromq_extension_tests() {
export NO_INTERACTION=1
export REPORT_EXIT_STATUS=1
export TEST_PHP_EXECUTABLE=`which php`
php run-tests.php -d extension=zmq.so -d extension_dir=modules -n ./tests/*.phpt
exit_code=$?
for i in `ls tests/*.out 2>/dev/null`; do echo "-- START ${i}"; cat $i; echo "-- END"; done
return $exit_code
}
ZEROMQ_VERSION=$1
install_zeromq $ZEROMQ_VERSION
build_zeromq_php_extension $ZEROMQ_VERSION
run_zeromq_extension_tests
|