#!/usr/bin/env sh

set -xe

# Downloading PHP
PHP_TAR_FILE=php.tar.gz
apk add --no-cache --virtual .php-build-deps \
    autoconf \
    bison \
    ca-certificates \
    coreutils \
    g++ \
    gcc \
    make \
    re2c \
    wget
apk add --no-cache --virtual .php-deps \
    curl-dev \
    libedit-dev \
    libmcrypt-dev \
    oniguruma-dev \
    libsodium-dev \
    libxml2-dev
mkdir -p $PHP_SRC_DIR
cd $SRC_DIR
wget -O "${PHP_TAR_FILE}" "$PHP_URL"
sha256sum "${PHP_TAR_FILE}"
echo "$PHP_SHA256 *${PHP_TAR_FILE}" | sha256sum -c -
docker-php-source extract
cd $PHP_SRC_DIR

CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS"
PHP_CONFIG_ARGS=""

# Installing PHP
./buildconf --force
./configure \
    --prefix="${PHP_INSTALL_DIR}" \
    --with-config-file-path="${PHP_INI_DIR}" \
    --with-config-file-scan-dir="${PHP_INI_DIR}/conf.d" \
    --with-mhash \
    --with-mcrypt \
    --enable-ftp \
    --enable-mbstring \
    --with-sodium=shared \
    --with-curl \
    --with-libedit \
    --without-pdo-sqlite \
    --without-sqlite3 \
    $([ -n "$SSL_DEV_DEP" ] && echo --with-openssl || echo --without-openssl ) \
    --with-zlib \
    --enable-fpm \
    --with-fpm-user=www-data \
    --with-fpm-group=www-data \
    ${PHP_CONFIG_ARGS}
make -j "$(nproc)"
make install clean

# Removing sources and unused packages
docker-php-source delete
rm "$SRC_DIR/${PHP_TAR_FILE}"
apk del .php-build-deps
