-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathinstall
77 lines (66 loc) · 3.61 KB
/
install
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
68
69
70
71
72
73
74
75
76
#!/usr/bin/env bash
validate_version ${PHP_VERSION}
if [ ! -d $DIR_SRC ] ; then
mkdir -p $DIR_SRC || exit 1
fi
cd $DIR_SRC || exit 2
if [ ! -f $DIR_SRC/$PHP_ARCHIVE_NAME ] ; then
curl -sL $DOWNLOAD_URL > $PHP_ARCHIVE_NAME || exit 3
fi
if [ ! -d $PHP_DIR ] ; then
tar -xvf $PHP_ARCHIVE_NAME || exit 4
fi
cd $PHP_DIR || exit 5
# --enable-xml required by pear
CONFIGURE_OPTIONS="--prefix=$PREFIX --exec-prefix=$EPREFIX --with-config-file-scan-dir=$EXTENSION_INI_DIR --disable-all --with-layout=GNU --with-zend-vm=CALL --with-pear --enable-xml --enable-libxml"
for cli_option in $@;
do
case "$cli_option" in
intl) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-intl" ;;
ctype) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-ctype" ;;
fileinfo) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-fileinfo" ;;
filter) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-filter" ;;
json) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-json" ;;
phar) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-phar" ;;
posix) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-posix" ;;
session) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-session" ;;
sockets) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-sockets" ;;
tokenizer) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-tokenizer" ;;
libxml) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-libxml" ;;
simplexml) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-libxml --enable-simplexml" ;;
xmlreader) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-libxml --enable-xmlreader" ;;
xmlwriter) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-libxml --enable-xmlwriter" ;;
exif) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-exif" ;;
soap) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-soap" ;;
shmop) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-shmop" ;;
calendar) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-calendar" ;;
mbstring) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-mbstring" ;;
zts) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-maintainer-zts" ;;
fpm) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-fpm" ;;
ftp) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-ftp" ;;
zip) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-zip" ;;
xsl) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-dom --with-xsl" ;;
curl) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-curl" ;;
iconv) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-iconv" ;;
zlib) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-zlib" ;;
regex) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-regex=php" ;;
mhash) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-mhash" ;;
openssl) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-openssl" ;;
mysql) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-mysql=mysqlnd" ;;
mysqli) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-mysqli=mysqlnd" ;;
pdo-mysql) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-pdo --with-pdo-mysql=mysqlnd" ;;
gd) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-gd --enable-gd-native-ttf --enable-gd-jis-conv" ;;
png) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-png-dir" ;;
vpx) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-vpx-dir" ;;
xmp) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-xmp-dir" ;;
freetype) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-freetype-dir" ;;
jpeg) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-jpeg-dir" ;;
readline) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --with-readline" ;;
opcache) CONFIGURE_OPTIONS="$CONFIGURE_OPTIONS --enable-opcache" ;;
esac
done;
./configure $CONFIGURE_OPTIONS
# cleaning
make clean || exit 7
# install
make install || exit 7