add php-8.0-opt
This commit is contained in:
parent
ea0de2c8f1
commit
32a8c7abf5
16 changed files with 261 additions and 0 deletions
18
php-8.0-opt/README.md
Normal file
18
php-8.0-opt/README.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
## PHP 8.0 for Debian Wheezy
|
||||
|
||||
PHP 7.4 as .deb file for installation in /opt and all dependencies as .deb files.
|
||||
|
||||
### Build
|
||||
|
||||
Build is done inside Debian Wheezy docker with
|
||||
```
|
||||
DOCKER_BUILDKIT=1 docker build --file build.Dockerfile --tag lookshe/php-8.0-opt-build .
|
||||
```
|
||||
|
||||
### Get installation files
|
||||
|
||||
To copy the .deb files out of build container run
|
||||
```
|
||||
DOCKER_BUILDKIT=1 docker build --file copy.Dockerfile --output out .
|
||||
```
|
||||
|
6
php-8.0-opt/TODO.md
Normal file
6
php-8.0-opt/TODO.md
Normal file
|
@ -0,0 +1,6 @@
|
|||
## ToDo
|
||||
|
||||
- correct depencies in .deb files
|
||||
- checkinstall --provides
|
||||
- checkinstall --requires
|
||||
|
221
php-8.0-opt/build.Dockerfile
Normal file
221
php-8.0-opt/build.Dockerfile
Normal file
|
@ -0,0 +1,221 @@
|
|||
FROM debian/eol:wheezy
|
||||
|
||||
ENV MAIN_PREFIX_NO_ROOT opt/php-8.0
|
||||
ENV MAIN_PREFIX /$MAIN_PREFIX_NO_ROOT
|
||||
ENV DEP_PREFIX $MAIN_PREFIX/dependencies
|
||||
ENV PHP_VERSION php-8.0.17
|
||||
ENV PACKAGE_NAME $PHP_VERSION-opt
|
||||
|
||||
RUN apt-get update \
|
||||
&& apt-get install -y \
|
||||
curl \
|
||||
build-essential \
|
||||
net-tools \
|
||||
autoconf \
|
||||
pkg-config \
|
||||
wget \
|
||||
libxml2-dev \
|
||||
libkrb5-dev \
|
||||
libssl-dev \
|
||||
libsqlite3-dev \
|
||||
libbz2-dev \
|
||||
libcurl4-openssl-dev \
|
||||
libpng12-dev libjpeg8-dev \
|
||||
libfreetype6-dev \
|
||||
libc-client-dev \
|
||||
libpq-dev \
|
||||
libxslt1-dev \
|
||||
checkinstall \
|
||||
zlib1g-dev \
|
||||
libtool \
|
||||
bison \
|
||||
libgmp-dev \
|
||||
libtidy-dev \
|
||||
libgd2-xpm-dev \
|
||||
libmagickwand-dev \
|
||||
libmagickcore-dev \
|
||||
libmemcached-dev \
|
||||
python-dev \
|
||||
libldap2-dev
|
||||
RUN wget --no-check-certificate https://curl.se/download/curl-7.73.0.tar.gz
|
||||
RUN tar xzf curl-7.73.0.tar.gz
|
||||
RUN cd curl-7.73.0 \
|
||||
&& ./configure --prefix=$DEP_PREFIX \
|
||||
&& make \
|
||||
&& make install \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-libcurl
|
||||
RUN curl -k https://gitlab.gnome.org/GNOME/libxml2/-/archive/v2.9.10/libxml2-v2.9.10.tar.gz > libxml2-v2.9.10.tar.gz
|
||||
RUN tar xzf libxml2-v2.9.10.tar.gz
|
||||
RUN cd libxml2-v2.9.10 \
|
||||
&& ./autogen.sh --prefix=$DEP_PREFIX \
|
||||
&& make \
|
||||
&& make install \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-libxml2
|
||||
RUN wget https://cmake.org/files/v2.8/cmake-2.8.12.1.tar.gz
|
||||
RUN tar xzf cmake-2.8.12.1.tar.gz
|
||||
RUN cd cmake-2.8.12.1 \
|
||||
&& ./bootstrap \
|
||||
&& make \
|
||||
&& make install
|
||||
RUN wget https://github.com/libjpeg-turbo/libjpeg-turbo/archive/2.0.6.tar.gz -O libjpeg-turbo-2.0.6.tar.gz
|
||||
RUN tar xzf libjpeg-turbo-2.0.6.tar.gz
|
||||
RUN cd libjpeg-turbo-2.0.6 \
|
||||
&& mkdir build \
|
||||
&& cd build \
|
||||
&& cmake -DCMAKE_INSTALL_PREFIX=$DEP_PREFIX -DCMAKE_BUILD_TYPE=RELEASE -DENABLE_STATIC=FALSE -DCMAKE_INSTALL_DEFAULT_LIBDIR=lib .. \
|
||||
&& make \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-libjpeg-turbo --pkgversion 1
|
||||
RUN ln -s /usr/lib/libc-client.a /usr/lib/x86_64-linux-gnu/libc-client.a
|
||||
RUN wget https://web.mit.edu/kerberos/dist/krb5/1.17/krb5-1.17.2.tar.gz
|
||||
RUN tar xzf krb5-1.17.2.tar.gz
|
||||
RUN cd krb5-1.17.2/src \
|
||||
&& ./configure --prefix=$DEP_PREFIX \
|
||||
&& make \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-krb5 --pkgversion 1
|
||||
RUN wget https://github.com/unicode-org/icu/releases/download/release-50-2/icu4c-50_2-src.tgz
|
||||
RUN tar xzf icu4c-50_2-src.tgz
|
||||
RUN cd icu/source/ \
|
||||
&& ./configure --prefix=$DEP_PREFIX \
|
||||
&& make \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-icu --pkgversion 1
|
||||
RUN wget https://github.com/kkos/oniguruma/archive/v6.9.6.tar.gz
|
||||
RUN tar xzf v6.9.6.tar.gz
|
||||
RUN cd oniguruma-6.9.6 \
|
||||
&& autoreconf -vfi \
|
||||
&& ./configure --prefix=$DEP_PREFIX \
|
||||
&& make \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-oniguruma
|
||||
RUN wget https://libzip.org/download/libzip-0.11.2.tar.gz --no-check-certificate
|
||||
RUN tar xzf libzip-0.11.2.tar.gz
|
||||
# in this case checkinstall only works after "make install"
|
||||
RUN cd libzip-0.11.2 \
|
||||
&& ./configure --prefix=$DEP_PREFIX \
|
||||
&& make \
|
||||
&& make install \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-libzip
|
||||
RUN wget https://github.com/libgd/libgd/releases/download/gd-2.1.1/libgd-2.1.1.tar.gz
|
||||
RUN tar xzf libgd-2.1.1.tar.gz
|
||||
RUN cd libgd-2.1.1 \
|
||||
&& ./configure --prefix=$DEP_PREFIX \
|
||||
&& make \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-libgd
|
||||
RUN curl -k https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz > libsodium-1.0.18.tar.gz
|
||||
RUN tar xzf libsodium-1.0.18.tar.gz
|
||||
RUN cd libsodium-1.0.18 \
|
||||
&& ./configure --prefix=$DEP_PREFIX \
|
||||
&& make \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-libsodium
|
||||
RUN wget https://www.php.net/distributions/$PHP_VERSION.tar.gz
|
||||
RUN tar xzf $PHP_VERSION.tar.gz
|
||||
RUN cd $PHP_VERSION \
|
||||
&& PKG_CONFIG_PATH=$DEP_PREFIX/lib/pkgconfig ./configure \
|
||||
--prefix=$MAIN_PREFIX \
|
||||
#--with-libdir=/lib/x86_64-linux-gnu \
|
||||
#--disable-rpath \
|
||||
--enable-static \
|
||||
--enable-bcmath \
|
||||
--enable-calendar \
|
||||
--enable-exif \
|
||||
--enable-fpm \
|
||||
--enable-ftp \
|
||||
--enable-gd \
|
||||
--enable-intl \
|
||||
--enable-mbstring \
|
||||
--enable-pcntl \
|
||||
--enable-pdo \
|
||||
--enable-shmop \
|
||||
--enable-soap \
|
||||
--enable-sockets \
|
||||
--enable-sysvsem \
|
||||
--enable-sysvshm \
|
||||
--enable-zip \
|
||||
--with-bz2 \
|
||||
--with-config-file-path=$MAIN_PREFIX/etc \
|
||||
--with-config-file-scan-dir=$MAIN_PREFIX/etc/conf.d \
|
||||
--with-curl \
|
||||
--with-external-gd \
|
||||
--with-freetype \
|
||||
--with-gettext \
|
||||
--with-gmp \
|
||||
--with-imap \
|
||||
--with-imap-ssl \
|
||||
--with-jpeg \
|
||||
--with-kerberos \
|
||||
--with-ldap=shared \
|
||||
--with-mhash \
|
||||
--with-mysql-sock=/var/run/mysqld/mysqld.sock \
|
||||
--with-mysqli \
|
||||
--with-openssl \
|
||||
--with-pdo-mysql \
|
||||
--with-pdo-sqlite \
|
||||
--with-pear \
|
||||
--with-sodium \
|
||||
--with-sqlite3 \
|
||||
--with-tidy \
|
||||
--with-xmlrpc \
|
||||
--with-xpm \
|
||||
--with-xsl \
|
||||
--with-zip \
|
||||
--with-zlib \
|
||||
&& make
|
||||
RUN cd $PHP_VERSION \
|
||||
&& mkdir -p $MAIN_PREFIX_NO_ROOT/etc/conf.d \
|
||||
&& cp php.ini-production $MAIN_PREFIX_NO_ROOT/etc/php.ini \
|
||||
&& sed -i -E 's/^short_open_tag =.+$/short_open_tag = On/' $MAIN_PREFIX_NO_ROOT/etc/php.ini \
|
||||
&& sed -i -E 's/^expose_php =.+$/expose_php = Off/' $MAIN_PREFIX_NO_ROOT/etc/php.ini \
|
||||
&& sed -i -E 's/^memory_limit =.+$/memory_limit = 256M/' $MAIN_PREFIX_NO_ROOT/etc/php.ini \
|
||||
&& sed -i -E 's/^;?date\.timezone =.*$/date.timezone = Europe\/Berlin/' $MAIN_PREFIX_NO_ROOT/etc/php.ini \
|
||||
&& sed -i -E 's/^mail\.add_x_header =.+$/mail.add_x_header = On/' $MAIN_PREFIX_NO_ROOT/etc/php.ini \
|
||||
&& echo zend_extension=opcache.so > $MAIN_PREFIX_NO_ROOT/etc/conf.d/opcache.ini \
|
||||
&& echo $MAIN_PREFIX_NO_ROOT/etc/php.ini >> files_to_add \
|
||||
&& echo $MAIN_PREFIX_NO_ROOT/etc/conf.d/opcache.ini >> files_to_add \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME --include files_to_add
|
||||
RUN cd /$PHP_VERSION/ext \
|
||||
&& wget https://github.com/Imagick/imagick/archive/3.5.1.tar.gz \
|
||||
&& tar xzf 3.5.1.tar.gz \
|
||||
&& cd imagick-3.5.1 \
|
||||
&& $MAIN_PREFIX/bin/phpize \
|
||||
&& ./configure --with-php-config=$MAIN_PREFIX/bin/php-config \
|
||||
&& make
|
||||
RUN cd /$PHP_VERSION/ext/imagick-3.5.1 \
|
||||
&& mkdir -p $MAIN_PREFIX_NO_ROOT/etc/conf.d \
|
||||
&& echo extension=imagick.so > $MAIN_PREFIX_NO_ROOT/etc/conf.d/imagick.ini \
|
||||
&& echo $MAIN_PREFIX_NO_ROOT/etc/conf.d/imagick.ini >> files_to_add \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-imagick --include files_to_add
|
||||
RUN cd /$PHP_VERSION/ext \
|
||||
&& wget https://github.com/krakjoe/apcu/archive/v5.1.20.tar.gz \
|
||||
&& tar xzf v5.1.20.tar.gz \
|
||||
&& cd apcu-5.1.20 \
|
||||
&& $MAIN_PREFIX/bin/phpize \
|
||||
&& ./configure --with-php-config=$MAIN_PREFIX/bin/php-config \
|
||||
&& make
|
||||
RUN cd /$PHP_VERSION/ext/apcu-5.1.20 \
|
||||
&& mkdir -p $MAIN_PREFIX_NO_ROOT/etc/conf.d \
|
||||
&& echo extension=apcu.so > $MAIN_PREFIX_NO_ROOT/etc/conf.d/apcu.ini \
|
||||
&& echo $MAIN_PREFIX_NO_ROOT/etc/conf.d/apcu.ini >> files_to_add \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-apcu --include files_to_add
|
||||
RUN cd /$PHP_VERSION/ext \
|
||||
&& wget https://github.com/php-memcached-dev/php-memcached/archive/v3.1.5.tar.gz \
|
||||
&& tar xzf v3.1.5.tar.gz \
|
||||
&& cd php-memcached-3.1.5 \
|
||||
&& $MAIN_PREFIX/bin/phpize \
|
||||
&& ./configure --with-php-config=$MAIN_PREFIX/bin/php-config --disable-memcached-sasl \
|
||||
&& make
|
||||
RUN cd /$PHP_VERSION/ext/php-memcached-3.1.5 \
|
||||
&& mkdir -p $MAIN_PREFIX_NO_ROOT/etc/conf.d \
|
||||
&& echo extension=memcached.so > $MAIN_PREFIX_NO_ROOT/etc/conf.d/memcached.ini \
|
||||
&& echo $MAIN_PREFIX_NO_ROOT/etc/conf.d/memcached.ini >> files_to_add \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-memcached --include files_to_add
|
||||
RUN cd /$PHP_VERSION/ext \
|
||||
&& wget https://github.com/phpredis/phpredis/archive/5.3.4.tar.gz \
|
||||
&& tar xzf 5.3.4.tar.gz \
|
||||
&& cd phpredis-5.3.4 \
|
||||
&& $MAIN_PREFIX/bin/phpize \
|
||||
&& ./configure --with-php-config=$MAIN_PREFIX/bin/php-config \
|
||||
&& make
|
||||
RUN cd /$PHP_VERSION/ext/phpredis-5.3.4 \
|
||||
&& mkdir -p $MAIN_PREFIX_NO_ROOT/etc/conf.d \
|
||||
&& echo extension=redis.so > $MAIN_PREFIX_NO_ROOT/etc/conf.d/redis.ini \
|
||||
&& echo $MAIN_PREFIX_NO_ROOT/etc/conf.d/redis.ini >> files_to_add \
|
||||
&& checkinstall -y --pkgname $PACKAGE_NAME-redis --include files_to_add
|
||||
|
16
php-8.0-opt/copy.Dockerfile
Normal file
16
php-8.0-opt/copy.Dockerfile
Normal file
|
@ -0,0 +1,16 @@
|
|||
FROM lookshe/php-8.0-opt-build AS build-stage
|
||||
|
||||
FROM scratch AS export-stage
|
||||
COPY --from=build-stage /php-8.0.17/php-8.0.17-opt_8.0.17-1_amd64.deb .
|
||||
COPY --from=build-stage /libzip-0.11.2/php-8.0.17-opt-libzip_0.11.2-1_amd64.deb .
|
||||
COPY --from=build-stage /icu/source/php-8.0.17-opt-icu_1-1_amd64.deb .
|
||||
COPY --from=build-stage /oniguruma-6.9.6/php-8.0.17-opt-oniguruma_6.9.6-1_amd64.deb .
|
||||
COPY --from=build-stage /libgd-2.1.1/php-8.0.17-opt-libgd_2.1.1-1_amd64.deb .
|
||||
COPY --from=build-stage /libjpeg-turbo-2.0.6/build/php-8.0.17-opt-libjpeg-turbo_1-1_amd64.deb .
|
||||
COPY --from=build-stage /krb5-1.17.2/src/php-8.0.17-opt-krb5_1-1_amd64.deb .
|
||||
COPY --from=build-stage /php-8.0.17/ext/imagick-3.5.1/php-8.0.17-opt-imagick_3.5.1-1_amd64.deb .
|
||||
COPY --from=build-stage /php-8.0.17/ext/apcu-5.1.20/php-8.0.17-opt-apcu_5.1.20-1_amd64.deb .
|
||||
COPY --from=build-stage /libsodium-1.0.18/php-8.0.17-opt-libsodium_1.0.18-1_amd64.deb .
|
||||
COPY --from=build-stage /php-8.0.17/ext/php-memcached-3.1.5/php-8.0.17-opt-memcached_3.1.5-1_amd64.deb .
|
||||
COPY --from=build-stage /php-8.0.17/ext/phpredis-5.3.4/php-8.0.17-opt-redis_5.3.4-1_amd64.deb .
|
||||
|
BIN
php-8.0-opt/out/php-8.0.17-opt-apcu_5.1.20-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-apcu_5.1.20-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-icu_1-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-icu_1-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-imagick_3.5.1-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-imagick_3.5.1-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-krb5_1-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-krb5_1-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-libgd_2.1.1-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-libgd_2.1.1-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-libjpeg-turbo_1-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-libjpeg-turbo_1-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-libsodium_1.0.18-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-libsodium_1.0.18-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-libzip_0.11.2-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-libzip_0.11.2-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-memcached_3.1.5-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-memcached_3.1.5-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-oniguruma_6.9.6-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-oniguruma_6.9.6-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt-redis_5.3.4-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt-redis_5.3.4-1_amd64.deb
Normal file
Binary file not shown.
BIN
php-8.0-opt/out/php-8.0.17-opt_8.0.17-1_amd64.deb
Normal file
BIN
php-8.0-opt/out/php-8.0.17-opt_8.0.17-1_amd64.deb
Normal file
Binary file not shown.
Loading…
Reference in a new issue