default build branch=default; source=; env="VERSION=8.1.30 ALIAS=8.1…

API event #10923 failed

  • Ran for
  • Total time
  • Manually triggered by smokodon
api
{
  "merge_mode": "deep_merge",
  "env": {
    "global": "VERSION=8.1.30 ALIAS=8.1"
  },
  "jobs": {
    "include": [
      {
        "dist": "jammy",
        "env": [
          "RELEASE=jammy"
        ],
        "name": "jammy",
        "php": "8.1",
        "before_install": [
          "sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock",
          "sudo apt-get update",
          "sudo apt-get -y install libcurl4-openssl-dev php-dev libicu-dev php-pear php",
          "if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 php-pear libargon2-0-dev php-dev libonig-dev; fi",
          "sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include",
          "command -v expect || sudo apt-get install expect",
          "if ! command -v phpenv; then\n  pushd $HOME\n  curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash\n  popd\n  export PHPENV_ROOT=\"/home/travis/.phpenv\"\n  if [ -d \"${PHPENV_ROOT}\" ]; then\n    export PATH=\"${PHPENV_ROOT}/bin:${PATH}\"\n    eval \"$(phpenv init -)\"\n  fi\nfi\n"
        ],
        "os": "linux",
        "arch": "x86_64"
      },
      {
        "dist": "focal",
        "env": [
          "RELEASE=focal"
        ],
        "name": "focal",
        "php": "7.4",
        "before_install": [
          "sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock",
          "sudo apt-get update",
          "sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev",
          "if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi",
          "sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include",
          "command -v expect || sudo apt-get install expect",
          "if ! command -v phpenv; then\n  pushd $HOME\n  curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash\n  popd\n  export PHPENV_ROOT=\"/home/travis/.phpenv\"\n  if [ -d \"${PHPENV_ROOT}\" ]; then\n    export PATH=\"${PHPENV_ROOT}/bin:${PATH}\"\n    eval \"$(phpenv init -)\"\n  fi\nfi\n"
        ],
        "os": "linux",
        "arch": "x86_64"
      },
      {
        "dist": "bionic",
        "group": "stable",
        "php": "7.4",
        "env": [
          "RELEASE=bionic"
        ],
        "name": "bionic",
        "before_install": [
          "sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock",
          "sudo apt-get update",
          "sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev re2c",
          "if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev re2c php-dev libonig-dev; fi",
          "sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include",
          "command -v expect || sudo apt-get install expect",
          "wget https://github.com/skvadrik/re2c/releases/download/3.1/re2c-3.1.tar.xz",
          "tar -xf ./re2c-3.1.tar.xz",
          "./re2c-3.1/configure && make && sudo make install",
          "if ! command -v phpenv; then\n  pushd $HOME\n  curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash\n  popd\n  export PHPENV_ROOT=\"/home/travis/.phpenv\"\n  if [ -d \"${PHPENV_ROOT}\" ]; then\n    export PATH=\"${PHPENV_ROOT}/bin:${PATH}\"\n    eval \"$(phpenv init -)\"\n  fi\nfi\n"
        ],
        "os": "linux",
        "arch": "x86_64"
      },
      {
        "dist": "xenial",
        "group": "stable",
        "env": [
          "RELEASE=xenial"
        ],
        "name": "xenial",
        "php": "7.4",
        "before_install": [
          "sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock",
          "sudo apt-get update",
          "sudo apt-get install -y libicu-dev re2c",
          "if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install php-pear php-dev re2c libonig-dev build-essential; fi",
          "command -v expect || sudo apt-get install expect",
          "wget https://github.com/skvadrik/re2c/releases/download/3.1/re2c-3.1.tar.xz",
          "tar -xf ./re2c-3.1.tar.xz",
          "./re2c-3.1/configure && make && sudo make install",
          "if ! command -v phpenv; then\n  pushd $HOME\n  curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash\n  popd\n  export PHPENV_ROOT=\"/home/travis/.phpenv\"\n  if [ -d \"${PHPENV_ROOT}\" ]; then\n    export PATH=\"${PHPENV_ROOT}/bin:${PATH}\"\n    eval \"$(phpenv init -)\"\n  fi\nfi\n"
        ],
        "os": "linux",
        "arch": "x86_64"
      }
    ]
  }
}
travis-ci/php-src-builder:.travis.yml@08212b9
language: php

jobs:
  include:
    - dist: jammy
      env:
        - RELEASE=jammy
      name: jammy
      php: "8.1"
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-dev libicu-dev php-pear php
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 php-pear libargon2-0-dev php-dev libonig-dev; fi
        - sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
        - command -v expect || sudo apt-get install expect
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - dist: focal
      env:
        - RELEASE=focal
      name: focal
      php: "7.4"
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
        - sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
        - command -v expect || sudo apt-get install expect
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - dist: bionic
      group: stable
      php: "7.4"
      env:
        - RELEASE=bionic
      name: bionic
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev re2c
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev re2c php-dev libonig-dev; fi
        - sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include
        - command -v expect || sudo apt-get install expect
        # Install re2c required by PHP8.3 and above
        - wget https://github.com/skvadrik/re2c/releases/download/3.1/re2c-3.1.tar.xz
        - tar -xf ./re2c-3.1.tar.xz
        - ./re2c-3.1/configure && make && sudo make install
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - dist: xenial
      group: stable
      env:
        - RELEASE=xenial
      name: xenial
      php: "7.4"
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get install -y libicu-dev re2c
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install php-pear php-dev re2c libonig-dev build-essential; fi
        - command -v expect || sudo apt-get install expect
        # Install re2c required by PHP8.3 and above
        - wget https://github.com/skvadrik/re2c/releases/download/3.1/re2c-3.1.tar.xz
        - tar -xf ./re2c-3.1.tar.xz
        - ./re2c-3.1/configure && make && sudo make install
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi

    - arch: ppc64le
      dist: jammy
      php: "8.2"
      env:
        - RELEASE=jammy
      name: jammy-ppc64le
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-dev libicu-dev php-pear php
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 php-pear libargon2-0-dev php-dev libonig-dev; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - arch: ppc64le
      dist: focal
      php: "7.4"
      env:
        - RELEASE=focal
      name: focal-ppc64le
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - arch: ppc64le
      dist: bionic
      php: "7.4"
      env:
        - RELEASE=bionic
      name: bionic-ppc64le
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - arch: ppc64le
      dist: xenial
      php: "7.4"
      env:
        - RELEASE=xenial
      name: xenial-ppc64le
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get install -y libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install php-pear php-dev libonig-dev build-essential; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - arch: s390x
      dist: jammy
      php: "8.2"
      env:
        - RELEASE=jammy
      name: jammy-s390x
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-dev libicu-dev php-pear php
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 php-pear libargon2-0-dev php-dev libonig-dev; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
        - 'echo "--without-pcre-jit" >> $TRAVIS_BUILD_DIR/custom_configure_options'
    - arch: s390x
      dist: focal
      php: "7.4"
      env:
        - RELEASE=focal
      name: focal-s390x
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
        - 'echo "--without-pcre-jit" >> $TRAVIS_BUILD_DIR/custom_configure_options'
    - arch: s390x
      dist: bionic
      php: "7.4"
      env:
        - RELEASE=bionic
      name: bionic-s390x
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
        - 'echo "--without-pcre-jit" >> $TRAVIS_BUILD_DIR/custom_configure_options'
    - arch: s390x
      dist: xenial
      php: "7.4"
      env:
        - RELEASE=xenial
      name: xenial-s390x
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get install -y libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install php-pear php-dev libonig-dev build-essential; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
        - 'echo "--without-pcre-jit" >> $TRAVIS_BUILD_DIR/custom_configure_options'
    - arch: arm64
      dist: jammy
      php: "8.2"
      env:
        - RELEASE=jammy
      name: jammy-arm64
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-dev libicu-dev php-pear php
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 php-pear libargon2-0-dev php-dev libonig-dev; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - arch: arm64
      dist: focal
      php: "7.4"
      env:
        - RELEASE=focal
      name: focal-arm64
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - arch: arm64
      dist: bionic
      php: "7.4"
      env:
        - RELEASE=bionic
      name: bionic-arm64
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
    - arch: arm64
      dist: xenial
      php: "7.4"
      env:
        - RELEASE=xenial
      name: xenial-arm64
      before_install:
        - sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock
        - sudo apt-get update
        - sudo apt-get install -y libicu-dev
        - if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install php-pear php-dev libonig-dev build-essential; fi
        - |
          if ! command -v phpenv; then
            pushd $HOME
            curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash
            popd
            export PHPENV_ROOT="/home/travis/.phpenv"
            if [ -d "${PHPENV_ROOT}" ]; then
              export PATH="${PHPENV_ROOT}/bin:${PATH}"
              eval "$(phpenv init -)"
            fi
          fi
env:
  global:
    - VERSION=master ALIAS=nightly
    - ICU_RELEASE=74.2
    - ICU_INSTALL_DIR=$HOME/.phpenv/versions/$VERSION
    - PATH="$HOME/.phpenv/bin:$HOME/.php-build/bin:$PATH"

before_install:
  - php -f test.php || true

install:
  - if [[ ! -d $HOME/.php-build ]]; then git clone https://github.com/php-build/php-build.git $HOME/.php-build; fi
  - ~/.php-build/install-dependencies.sh
  - rm -rf $HOME/.phpenv
  - git clone 'https://github.com/phpenv/phpenv.git' $HOME/.phpenv
  - eval "$($HOME/.phpenv/bin/phpenv init -)"
  - pushd $HOME/.php-build
  - git reset --hard HEAD
  - git checkout master
  - git pull
  - popd
  - if [[ $RELEASE != precise ]]; then unset ICU_RELEASE; fi # disable ICU installation for Trusty; see https://github.com/travis-ci/travis-ci/issues/3616#issuecomment-286302387
  - | # older distros don't ship a libjpeg.pc, add our own to pkg-config path
    if ! pkg-config --exists libjpeg libsasl2; then
      export PKG_CONFIG_PATH=$PWD:$PKG_CONFIG_PATH
    fi
  - ./bin/install-icu
  - export PKG_CONFIG_PATH=$ICU_INSTALL_DIR/lib/pkgconfig:$PKG_CONFIG_PATH
  - touch custom_configure_options
  - ./bin/install-libzip
  - ./bin/install-libsodium
  - sudo ./bin/install-password-argon2
  - . ./bin/install-onig # sourced to export ONIG_LIBS
  - MINOR_VERSION=`echo $VERSION | sed -E 's/^([0-9]+\.[0-9]+).*$/\1/'` # Rewrites 7.2, 7.2snapshot, 7.2.13 => '7.2'. Leaves 'master' as-is
  - |
    if [[ -f default_configure_options.$RELEASE-$MINOR_VERSION ]]; then
      cp default_configure_options.$RELEASE-$MINOR_VERSION $HOME/.php-build/share/php-build/default_configure_options
    else
      cp default_configure_options.$RELEASE $HOME/.php-build/share/php-build/default_configure_options
    fi
  - cat custom_configure_options >> $HOME/.php-build/share/php-build/default_configure_options
  - |
    if [[ $(lsb_release -cs) = "trusty" || $(lsb_release -cs) = "xenial" || $(lsb_release -cs) = "bionic" ]]; then
      if [[ $HOSTTYPE == "powerpc64le" ]]; then
        sudo ln /usr/include/powerpc64le-linux-gnu/gmp.h /usr/include/gmp.h
        sudo ln -s /usr/lib/powerpc64le-linux-gnu/libldap_r-2.4.so.2 /usr/lib/libldap_r.so
        sudo ln -s /usr/lib/powerpc64le-linux-gnu/liblber-2.4.so.2 /usr/lib/liblber.so
      else
        sudo ln /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h
        sudo ln -s /usr/lib/x86_64-linux-gnu/libldap_r.so /usr/lib/libldap_r.so
        sudo ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/libldap.so
        sudo ln -s /usr/lib/x86_64-linux-gnu/libldap.a /usr/lib/libldap.a
        sudo ln -s /usr/lib/x86_64-linux-gnu/liblber.so /usr/lib/liblber.so
      fi
    fi

before_script:
  - "export COMPOSER_ALLOW_SUPERUSER=1"
  - "export LSB_RELEASE=${LSB_RELEASE:-$(lsb_release -rs || echo ${$(sw_vers -productVersion)%*.*})}"
  - 'export OS_NAME=${OS_NAME:-$(lsb_release -is | tr "A-Z" "a-z" || echo "osx")}'
  - "export ARCH=${ARCH:-$(uname -m)}"
  - "export INSTALL_DEST=${INSTALL_DEST:-$HOME/.phpenv/versions}"
  - __dots() { while true ; do echo -en . ; sleep 30 ; done } ; __dots &

script:
  - echo "--enable-option-checking=fatal" >> $HOME/.php-build/share/php-build/default_configure_options
  - cat $HOME/.php-build/share/php-build/default_configure_options
  - export PKG_CONFIG_PATH="$HOME/.phpenv/versions/$VERSION/lib/pkgconfig:$PKG_CONFIG_PATH"
  - ./bin/compile
  - | # disable 3rd-party extension builds on master
    if [[ $VERSION =~ ^7.3.* ]]; then
      (yes '' | ./bin/compile-extension-redis) &&
      (./bin/compile-extension-mongo) &&
      ./bin/compile-extension-amqp &&
      ./bin/compile-extension-apcu &&
      ./bin/compile-extension-zmq &&
      (./bin/compile-extension-memcache;
      ./bin/compile-extension-memcached) &&
      ./bin/compile-extension-ssh2 &&
      sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini
    else
      if [[ ! $VERSION =~ ^master$ ]]; then
        (yes '' | ./bin/compile-extension-redis) &&
        (./bin/compile-extension-mongo;
        ./bin/compile-extension-mongodb) &&
        ./bin/compile-extension-amqp &&
        ./bin/compile-extension-apcu &&
        ./bin/compile-extension-zmq &&
        (./bin/compile-extension-memcache;
        ./bin/compile-extension-memcached) &&
        ./bin/compile-extension-ssh2 &&
        sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini
      fi
    fi

after_success:
  - ARTIFACTS_KEY='' ARTIFACTS_SECRET='' ARTIFACTS_BUCKET='' ARTIFACTS_PERMISSIONS='' GITHUB_TOKEN='' $INSTALL_DEST/$VERSION/bin/php -i
  - $INSTALL_DEST/$VERSION/bin/php -m
  - $INSTALL_DEST/$VERSION/bin/php -f test.php
  - ldd $INSTALL_DEST/$VERSION/bin/php
  - $INSTALL_DEST/$VERSION/bin/pecl config-show
  - ./bin/archive

after_failure:
  - cat /tmp/php-build.*.log

addons:
  artifacts:
    paths:
      - $LSB_RELEASE/
    target_paths: /binaries/$OS_NAME/$LSB_RELEASE/$ARCH
  apt:
    packages:
      - libcurl4-openssl-dev
      - libzip-dev
      - libgmp3-dev
      - expect
Build Config
{
  "language": "php",
  "jobs": {
    "include": [
      {
        "dist": "jammy",
        "env": [
          "RELEASE=jammy"
        ],
        "name": "jammy",
        "php": "8.1",
        "before_install": [
          "sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock",
          "sudo apt-get update",
          "sudo apt-get -y install libcurl4-openssl-dev php-dev libicu-dev php-pear php",
          "if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 libargon2-0 php-pear libargon2-0-dev php-dev libonig-dev; fi",
          "sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include",
          "command -v expect || sudo apt-get install expect",
          "if ! command -v phpenv; then\n  pushd $HOME\n  curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash\n  popd\n  export PHPENV_ROOT=\"/home/travis/.phpenv\"\n  if [ -d \"${PHPENV_ROOT}\" ]; then\n    export PATH=\"${PHPENV_ROOT}/bin:${PATH}\"\n    eval \"$(phpenv init -)\"\n  fi\nfi\n"
        ],
        "os": "linux",
        "arch": "x86_64"
      },
      {
        "dist": "focal",
        "env": [
          "RELEASE=focal"
        ],
        "name": "focal",
        "php": "7.4",
        "before_install": [
          "sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock",
          "sudo apt-get update",
          "sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev",
          "if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev php-dev libonig-dev; fi",
          "sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include",
          "command -v expect || sudo apt-get install expect",
          "if ! command -v phpenv; then\n  pushd $HOME\n  curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash\n  popd\n  export PHPENV_ROOT=\"/home/travis/.phpenv\"\n  if [ -d \"${PHPENV_ROOT}\" ]; then\n    export PATH=\"${PHPENV_ROOT}/bin:${PATH}\"\n    eval \"$(phpenv init -)\"\n  fi\nfi\n"
        ],
        "os": "linux",
        "arch": "x86_64"
      },
      {
        "dist": "bionic",
        "group": "stable",
        "php": "7.4",
        "env": [
          "RELEASE=bionic"
        ],
        "name": "bionic",
        "before_install": [
          "sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock",
          "sudo apt-get update",
          "sudo apt-get -y install libcurl4-openssl-dev php-pear php-dev libicu-dev re2c",
          "if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install argon2 php-pear libargon2-0 libargon2-0-dev re2c php-dev libonig-dev; fi",
          "sudo ln -s /usr/include/x86_64-linux-gnu/curl/ /usr/local/include",
          "command -v expect || sudo apt-get install expect",
          "wget https://github.com/skvadrik/re2c/releases/download/3.1/re2c-3.1.tar.xz",
          "tar -xf ./re2c-3.1.tar.xz",
          "./re2c-3.1/configure && make && sudo make install",
          "if ! command -v phpenv; then\n  pushd $HOME\n  curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash\n  popd\n  export PHPENV_ROOT=\"/home/travis/.phpenv\"\n  if [ -d \"${PHPENV_ROOT}\" ]; then\n    export PATH=\"${PHPENV_ROOT}/bin:${PATH}\"\n    eval \"$(phpenv init -)\"\n  fi\nfi\n"
        ],
        "os": "linux",
        "arch": "x86_64"
      },
      {
        "dist": "xenial",
        "group": "stable",
        "env": [
          "RELEASE=xenial"
        ],
        "name": "xenial",
        "php": "7.4",
        "before_install": [
          "sudo rm -rf /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/lock",
          "sudo apt-get update",
          "sudo apt-get install -y libicu-dev re2c",
          "if [[ $VERSION =~ ^8.* ]]; then sudo apt-get -y install php-pear php-dev re2c libonig-dev build-essential; fi",
          "command -v expect || sudo apt-get install expect",
          "wget https://github.com/skvadrik/re2c/releases/download/3.1/re2c-3.1.tar.xz",
          "tar -xf ./re2c-3.1.tar.xz",
          "./re2c-3.1/configure && make && sudo make install",
          "if ! command -v phpenv; then\n  pushd $HOME\n  curl -L https://raw.githubusercontent.com/phpenv/phpenv-installer/master/bin/phpenv-installer | bash\n  popd\n  export PHPENV_ROOT=\"/home/travis/.phpenv\"\n  if [ -d \"${PHPENV_ROOT}\" ]; then\n    export PATH=\"${PHPENV_ROOT}/bin:${PATH}\"\n    eval \"$(phpenv init -)\"\n  fi\nfi\n"
        ],
        "os": "linux",
        "arch": "x86_64"
      }
    ]
  },
  "env": {
    "global": "VERSION=8.1.30 ALIAS=8.1"
  },
  "before_install": [
    "php -f test.php || true"
  ],
  "install": [
    "if [[ ! -d $HOME/.php-build ]]; then git clone https://github.com/php-build/php-build.git $HOME/.php-build; fi",
    "~/.php-build/install-dependencies.sh",
    "rm -rf $HOME/.phpenv",
    "git clone 'https://github.com/phpenv/phpenv.git' $HOME/.phpenv",
    "eval \"$($HOME/.phpenv/bin/phpenv init -)\"",
    "pushd $HOME/.php-build",
    "git reset --hard HEAD",
    "git checkout master",
    "git pull",
    "popd",
    "if [[ $RELEASE != precise ]]; then unset ICU_RELEASE; fi",
    "if ! pkg-config --exists libjpeg libsasl2; then\n  export PKG_CONFIG_PATH=$PWD:$PKG_CONFIG_PATH\nfi\n",
    "./bin/install-icu",
    "export PKG_CONFIG_PATH=$ICU_INSTALL_DIR/lib/pkgconfig:$PKG_CONFIG_PATH",
    "touch custom_configure_options",
    "./bin/install-libzip",
    "./bin/install-libsodium",
    "sudo ./bin/install-password-argon2",
    ". ./bin/install-onig",
    "MINOR_VERSION=`echo $VERSION | sed -E 's/^([0-9]+\\.[0-9]+).*$/\\1/'`",
    "if [[ -f default_configure_options.$RELEASE-$MINOR_VERSION ]]; then\n  cp default_configure_options.$RELEASE-$MINOR_VERSION $HOME/.php-build/share/php-build/default_configure_options\nelse\n  cp default_configure_options.$RELEASE $HOME/.php-build/share/php-build/default_configure_options\nfi\n",
    "cat custom_configure_options >> $HOME/.php-build/share/php-build/default_configure_options",
    "if [[ $(lsb_release -cs) = \"trusty\" || $(lsb_release -cs) = \"xenial\" || $(lsb_release -cs) = \"bionic\" ]]; then\n  if [[ $HOSTTYPE == \"powerpc64le\" ]]; then\n    sudo ln /usr/include/powerpc64le-linux-gnu/gmp.h /usr/include/gmp.h\n    sudo ln -s /usr/lib/powerpc64le-linux-gnu/libldap_r-2.4.so.2 /usr/lib/libldap_r.so\n    sudo ln -s /usr/lib/powerpc64le-linux-gnu/liblber-2.4.so.2 /usr/lib/liblber.so\n  else\n    sudo ln /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h\n    sudo ln -s /usr/lib/x86_64-linux-gnu/libldap_r.so /usr/lib/libldap_r.so\n    sudo ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/libldap.so\n    sudo ln -s /usr/lib/x86_64-linux-gnu/libldap.a /usr/lib/libldap.a\n    sudo ln -s /usr/lib/x86_64-linux-gnu/liblber.so /usr/lib/liblber.so\n  fi\nfi\n"
  ],
  "before_script": [
    "export COMPOSER_ALLOW_SUPERUSER=1",
    "export LSB_RELEASE=${LSB_RELEASE:-$(lsb_release -rs || echo ${$(sw_vers -productVersion)%*.*})}",
    "export OS_NAME=${OS_NAME:-$(lsb_release -is | tr \"A-Z\" \"a-z\" || echo \"osx\")}",
    "export ARCH=${ARCH:-$(uname -m)}",
    "export INSTALL_DEST=${INSTALL_DEST:-$HOME/.phpenv/versions}",
    "__dots() { while true ; do echo -en . ; sleep 30 ; done } ; __dots &"
  ],
  "script": [
    "echo \"--enable-option-checking=fatal\" >> $HOME/.php-build/share/php-build/default_configure_options",
    "cat $HOME/.php-build/share/php-build/default_configure_options",
    "export PKG_CONFIG_PATH=\"$HOME/.phpenv/versions/$VERSION/lib/pkgconfig:$PKG_CONFIG_PATH\"",
    "./bin/compile",
    "if [[ $VERSION =~ ^7.3.* ]]; then\n  (yes '' | ./bin/compile-extension-redis) &&\n  (./bin/compile-extension-mongo) &&\n  ./bin/compile-extension-amqp &&\n  ./bin/compile-extension-apcu &&\n  ./bin/compile-extension-zmq &&\n  (./bin/compile-extension-memcache;\n  ./bin/compile-extension-memcached) &&\n  ./bin/compile-extension-ssh2 &&\n  sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini\nelse \n  if [[ ! $VERSION =~ ^master$ ]]; then\n    (yes '' | ./bin/compile-extension-redis) &&\n    (./bin/compile-extension-mongo;\n    ./bin/compile-extension-mongodb) &&\n    ./bin/compile-extension-amqp &&\n    ./bin/compile-extension-apcu &&\n    ./bin/compile-extension-zmq &&\n    (./bin/compile-extension-memcache;\n    ./bin/compile-extension-memcached) &&\n    ./bin/compile-extension-ssh2 &&\n    sed -i '/^extension=/d' $INSTALL_DEST/$VERSION/etc/php.ini\n  fi\nfi\n"
  ],
  "after_success": [
    "ARTIFACTS_KEY='' ARTIFACTS_SECRET='' ARTIFACTS_BUCKET='' ARTIFACTS_PERMISSIONS='' GITHUB_TOKEN='' $INSTALL_DEST/$VERSION/bin/php -i",
    "$INSTALL_DEST/$VERSION/bin/php -m",
    "$INSTALL_DEST/$VERSION/bin/php -f test.php",
    "ldd $INSTALL_DEST/$VERSION/bin/php",
    "$INSTALL_DEST/$VERSION/bin/pecl config-show",
    "./bin/archive"
  ],
  "after_failure": [
    "cat /tmp/php-build.*.log"
  ],
  "addons": {
    "artifacts": {
      "paths": [
        "$LSB_RELEASE/"
      ],
      "target_paths": "/binaries/$OS_NAME/$LSB_RELEASE/$ARCH"
    },
    "apt": {
      "packages": [
        "libcurl4-openssl-dev",
        "libzip-dev",
        "libgmp3-dev",
        "expect"
      ]
    }
  }
}