1name: ./configure
2inputs:
3  configurationParameters:
4    default: ''
5    required: false
6  skipSlow:
7    default: false
8    required: false
9runs:
10  using: composite
11  steps:
12    - shell: bash
13      run: |
14        set -x
15        ./buildconf --force
16        ./configure \
17          --enable-option-checking=fatal \
18          --prefix=/usr \
19          --enable-phpdbg \
20          --enable-fpm \
21          --with-pdo-mysql=mysqlnd \
22          --with-mysqli=mysqlnd \
23          ${{ inputs.skipSlow == 'false' && '--with-pgsql' || '' }} \
24          ${{ inputs.skipSlow == 'false' && '--with-pdo-pgsql' || '' }} \
25          ${{ inputs.skipSlow == 'false' && '--with-pdo-sqlite' || '' }} \
26          --enable-intl \
27          --without-pear \
28          --enable-gd \
29          --with-jpeg \
30          --with-webp \
31          --with-freetype \
32          --with-xpm \
33          --enable-exif \
34          --with-zip \
35          --with-zlib \
36          --with-zlib-dir=/usr \
37          --enable-soap \
38          --enable-xmlreader \
39          --with-xsl \
40          ${{ inputs.skipSlow == 'false' && '--with-tidy' || '' }} \
41          --enable-sysvsem \
42          --enable-sysvshm \
43          --enable-shmop \
44          --enable-pcntl \
45          --with-readline \
46          --enable-mbstring \
47          --with-curl \
48          --with-gettext \
49          --enable-sockets \
50          --with-bz2 \
51          --with-openssl \
52          --with-gmp \
53          --enable-bcmath \
54          --enable-calendar \
55          --enable-ftp \
56          --with-pspell=/usr \
57          ${{ inputs.skipSlow == 'false' && '--with-enchant=/usr' || '' }} \
58          --with-kerberos \
59          --enable-sysvmsg \
60          --with-ffi \
61          --enable-zend-test \
62          ${{ inputs.skipSlow == 'false' && '--enable-dl-test=shared' || '' }} \
63          ${{ inputs.skipSlow == 'false' && '--with-ldap' || '' }} \
64          ${{ inputs.skipSlow == 'false' && '--with-ldap-sasl' || '' }} \
65          --with-password-argon2 \
66          --with-mhash \
67          --with-sodium \
68          --enable-dba \
69          --with-cdb \
70          --enable-flatfile \
71          --enable-inifile \
72          --with-tcadb \
73          --with-lmdb \
74          --with-qdbm \
75          ${{ inputs.skipSlow == 'false' && '--with-snmp' || '' }} \
76          ${{ inputs.skipSlow == 'false' && '--with-unixODBC' || '' }} \
77          ${{ inputs.skipSlow == 'false' && '--with-imap' || '' }} \
78          ${{ inputs.skipSlow == 'false' && '--with-imap-ssl' || '' }} \
79          ${{ inputs.skipSlow == 'false' && '--with-pdo-odbc=unixODBC,/usr' || '' }} \
80          $([ -d "/opt/oracle/instantclient" ] && echo '--with-pdo-oci=shared,instantclient,/opt/oracle/instantclient') \
81          $([ -d "/opt/oracle/instantclient" ] && echo '--with-oci8=shared,instantclient,/opt/oracle/instantclient') \
82          --with-config-file-path=/etc \
83          --with-config-file-scan-dir=/etc/php.d \
84          ${{ inputs.skipSlow == 'false' && '--with-pdo-firebird' || '' }} \
85          ${{ inputs.skipSlow == 'false' && '--with-pdo-dblib' || '' }} \
86          --enable-werror \
87          ${{ inputs.configurationParameters }}
88