1FROM 32bit/debian:jessie 2 3# Install dependencies. We start with the basic ones require to build protoc 4# and the C++ build 5RUN apt-get update && apt-get install -y \ 6 autoconf \ 7 autotools-dev \ 8 build-essential \ 9 bzip2 \ 10 ccache \ 11 curl \ 12 gcc \ 13 git \ 14 libc6 \ 15 libc6-dbg \ 16 libc6-dev \ 17 libgtest-dev \ 18 libtool \ 19 make \ 20 parallel \ 21 time \ 22 wget \ 23 && apt-get clean 24 25# Install php dependencies 26RUN apt-get clean && apt-get update && apt-get install -y --force-yes \ 27 bison \ 28 php5 \ 29 libcurl4-openssl-dev \ 30 libssl-dev \ 31 libxml2-dev \ 32 unzip \ 33 zlib1g-dev \ 34 pkg-config \ 35 && apt-get clean 36 37# Install other dependencies 38RUN wget http://ftp.gnu.org/gnu/bison/bison-2.6.4.tar.gz -O /var/local/bison-2.6.4.tar.gz 39RUN cd /var/local \ 40 && tar -zxvf bison-2.6.4.tar.gz \ 41 && cd /var/local/bison-2.6.4 \ 42 && ./configure \ 43 && make \ 44 && make install 45 46# Install composer 47RUN curl -sS https://getcomposer.org/installer | php 48RUN mv composer.phar /usr/local/bin/composer 49 50# Download php source code 51RUN git clone https://github.com/php/php-src 52 53# php 5.5 54RUN cd php-src \ 55 && git checkout PHP-5.5.38 \ 56 && ./buildconf --force 57RUN cd php-src \ 58 && ./configure \ 59 --enable-bcmath \ 60 --with-openssl \ 61 --with-zlib \ 62 --prefix=/usr/local/php-5.5 \ 63 && make \ 64 && make install \ 65 && make clean 66RUN cd php-src \ 67 && ./configure \ 68 --enable-maintainer-zts \ 69 --with-openssl \ 70 --with-zlib \ 71 --prefix=/usr/local/php-5.5-zts \ 72 && make \ 73 && make install \ 74 && make clean 75 76RUN wget -O phpunit https://phar.phpunit.de/phpunit-4.phar \ 77 && chmod +x phpunit \ 78 && cp phpunit /usr/local/php-5.5/bin \ 79 && mv phpunit /usr/local/php-5.5-zts/bin 80 81# php 5.6 82RUN cd php-src \ 83 && git checkout PHP-5.6.39 \ 84 && ./buildconf --force 85RUN cd php-src \ 86 && ./configure \ 87 --enable-bcmath \ 88 --with-openssl \ 89 --with-zlib \ 90 --prefix=/usr/local/php-5.6 \ 91 && make \ 92 && make install \ 93 && make clean 94RUN cd php-src \ 95 && ./configure \ 96 --enable-maintainer-zts \ 97 --with-openssl \ 98 --with-zlib \ 99 --prefix=/usr/local/php-5.6-zts \ 100 && make \ 101 && make install \ 102 && make clean 103 104RUN wget -O phpunit https://phar.phpunit.de/phpunit-5.phar \ 105 && chmod +x phpunit \ 106 && cp phpunit /usr/local/php-5.6/bin \ 107 && mv phpunit /usr/local/php-5.6-zts/bin 108 109# php 7.0 110RUN cd php-src \ 111 && git checkout PHP-7.0.33 \ 112 && ./buildconf --force 113RUN cd php-src \ 114 && ./configure \ 115 --enable-bcmath \ 116 --with-openssl \ 117 --with-zlib \ 118 --prefix=/usr/local/php-7.0 \ 119 && make \ 120 && make install \ 121 && make clean 122RUN cd php-src \ 123 && ./configure \ 124 --enable-maintainer-zts \ 125 --with-openssl \ 126 --with-zlib \ 127 --prefix=/usr/local/php-7.0-zts \ 128 && make \ 129 && make install \ 130 && make clean 131 132RUN wget -O phpunit https://phar.phpunit.de/phpunit-6.phar \ 133 && chmod +x phpunit \ 134 && cp phpunit /usr/local/php-7.0/bin \ 135 && mv phpunit /usr/local/php-7.0-zts/bin 136 137# php 7.1 138RUN cd php-src \ 139 && git checkout PHP-7.1.25 \ 140 && ./buildconf --force 141RUN cd php-src \ 142 && ./configure \ 143 --enable-bcmath \ 144 --with-openssl \ 145 --with-zlib \ 146 --prefix=/usr/local/php-7.1 \ 147 && make \ 148 && make install \ 149 && make clean 150RUN cd php-src \ 151 && ./configure \ 152 --enable-maintainer-zts \ 153 --with-openssl \ 154 --with-zlib \ 155 --prefix=/usr/local/php-7.1-zts \ 156 && make \ 157 && make install \ 158 && make clean 159 160RUN wget -O phpunit https://phar.phpunit.de/phpunit-7.phar \ 161 && chmod +x phpunit \ 162 && cp phpunit /usr/local/php-7.1/bin \ 163 && mv phpunit /usr/local/php-7.1-zts/bin 164 165# php 7.2 166RUN cd php-src \ 167 && git checkout PHP-7.2.13 \ 168 && ./buildconf --force 169RUN cd php-src \ 170 && ./configure \ 171 --enable-bcmath \ 172 --with-openssl \ 173 --with-zlib \ 174 --prefix=/usr/local/php-7.2 \ 175 && make \ 176 && make install \ 177 && make clean 178RUN cd php-src \ 179 && ./configure \ 180 --enable-maintainer-zts \ 181 --with-openssl \ 182 --with-zlib \ 183 --prefix=/usr/local/php-7.2-zts \ 184 && make \ 185 && make install \ 186 && make clean 187 188RUN wget -O phpunit https://phar.phpunit.de/phpunit-7.phar \ 189 && chmod +x phpunit \ 190 && cp phpunit /usr/local/php-7.2/bin \ 191 && mv phpunit /usr/local/php-7.2-zts/bin 192 193# php 7.3 194RUN cd php-src \ 195 && git checkout PHP-7.3.0 \ 196 && ./buildconf --force 197RUN cd php-src \ 198 && ./configure \ 199 --enable-bcmath \ 200 --with-openssl \ 201 --with-zlib \ 202 --prefix=/usr/local/php-7.3 \ 203 && make \ 204 && make install \ 205 && make clean 206RUN cd php-src \ 207 && ./configure \ 208 --enable-maintainer-zts \ 209 --with-openssl \ 210 --with-zlib \ 211 --prefix=/usr/local/php-7.3-zts \ 212 && make \ 213 && make install \ 214 && make clean 215 216RUN wget -O phpunit https://phar.phpunit.de/phpunit-7.phar \ 217 && chmod +x phpunit \ 218 && cp phpunit /usr/local/php-7.3/bin \ 219 && mv phpunit /usr/local/php-7.3-zts/bin 220 221# Install php dependencies 222RUN apt-get clean && apt-get update && apt-get install -y --force-yes \ 223 valgrind \ 224 && apt-get clean 225