Advertisement
AlexySirov

Untitled

Jul 14th, 2025
20
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 43.38 KB | None | 0 0
  1. ###############################################################################
  2. # Generated by arch-phpbs: https://github.com/lamskoy/arch-phpbs
  3. #
  4. # Maintaining/co-maintaining on AUR: all packages from php56 up to php84
  5. #
  6. # Thanks to:
  7. #
  8. # AUR php80 Co-maintainer: Timo Sarawinski
  9. # AUR php70 and php71 Co-maintainer: William Gathoye <[email protected]>
  10. # AUR php74 Co-maintainer: Tomasz Gruszka <[email protected]>
  11. # AUR php73 Co-maintainer: Matt Harrison <[email protected]>
  12. # AUR php73 and php56 Contributor: Pierre Schmitz <[email protected]>
  13. # AUR php56 Contributor: Chris Severance aur.severach aATt spamgourmet dott com
  14. # AUR php56 Contributor: Thore Bödecker <[email protected]>
  15. # AUR php56 Contributor: Jörg Schuck <joerg_schuck [at] web.de>
  16. # AUR php55 Contributor: Raphaël Doursenaud <[email protected]>
  17. # AUR php53 Contriburor: Felix Yan <[email protected]>
  18. ###############################################################################
  19. _phpbase="74"
  20. _suffix=""
  21. pkgver="7.4.33"
  22. pkgbase_rc=""
  23. pkgrel="9"
  24. pkgbase="php74"
  25. pkgdesc="PHP 7.4.33 compiled as to not conflict with mainline php"
  26. _cppflags=" -DU_USING_ICU_NAMESPACE=1 -DU_DEFINE_FALSE_AND_TRUE=1 "
  27. _build_apache_cfg="etc/httpd/conf/extra"
  28. _build_bundled_gd="0"
  29. _build_conf_d="etc/php74/conf.d"
  30. _build_forced_openssl_11="1"
  31. _build_fpm_name="php-fpm74"
  32. _build_fpm_service_name="php74-fpm"
  33. _build_icu_src_dir="icu/source"
  34. _build_ini_per_sapi="0"
  35. _build_mysql_socket="/run/mysqld/mysqld.sock"
  36. _build_openssl_v11_patch="0"
  37. _build_phpdbg="1"
  38. _build_sapi_ini_apache="etc/php74"
  39. _build_sapi_ini_cgi="etc/php74"
  40. _build_sapi_ini_cli="etc/php74"
  41. _build_sapi_ini_embed="etc/php74"
  42. _build_sapi_ini_fpm="etc/php74"
  43. _build_sapi_ini_litespeed="etc/php74"
  44. _build_sapi_ini_phpdbg="etc/php74"
  45. _build_sapi_litespeed="--enable-litespeed"
  46. _build_shared_gd="1"
  47. _build_shared_json="1"
  48. _build_shared_libedit="0"
  49. _build_shared_mysqlnd="1"
  50. _build_shared_openssl="1"
  51. _build_shared_pdo="1"
  52. _build_system_timezonedb="1"
  53. _build_update_sqlite="0"
  54. _build_uses_argon="1"
  55. _build_uses_lmdb="1"
  56. _priority_default="20"
  57. _priority_dom="16"
  58. _priority_json="15"
  59. _priority_mysqlnd="10"
  60. _priority_opcache="10"
  61. _priority_openssl="05"
  62. _priority_pdo="10"
  63. _priority_xml="15"
  64. _suffix=""
  65. _suffix_so="7"
  66. pkgname=(
  67. "php74"
  68. "php74-cli"
  69. "php74-cgi"
  70. "php74-fpm"
  71. "php74-embed"
  72. "php74-apache"
  73. "php74-litespeed"
  74. "php74-pear"
  75. "php74-pecl"
  76. "php74-phpdbg"
  77. "php74-xml"
  78. "php74-xsl"
  79. "php74-xmlreader"
  80. "php74-xmlwriter"
  81. "php74-dom"
  82. "php74-simplexml"
  83. "php74-openssl"
  84. "php74-pdo"
  85. "php74-mysql"
  86. "php74-phar"
  87. "php74-pcntl"
  88. "php74-posix"
  89. "php74-shmop"
  90. "php74-sockets"
  91. "php74-sysvmsg"
  92. "php74-sysvsem"
  93. "php74-sysvshm"
  94. "php74-tokenizer"
  95. "php74-dba"
  96. "php74-pgsql"
  97. "php74-odbc"
  98. "php74-firebird"
  99. "php74-dblib"
  100. "php74-sqlite"
  101. "php74-gd"
  102. "php74-exif"
  103. "php74-tidy"
  104. "php74-iconv"
  105. "php74-bcmath"
  106. "php74-gmp"
  107. "php74-zip"
  108. "php74-bz2"
  109. "php74-json"
  110. "php74-fileinfo"
  111. "php74-ctype"
  112. "php74-mbstring"
  113. "php74-pspell"
  114. "php74-enchant"
  115. "php74-intl"
  116. "php74-calendar"
  117. "php74-gettext"
  118. "php74-soap"
  119. "php74-ftp"
  120. "php74-curl"
  121. "php74-snmp"
  122. "php74-ldap"
  123. "php74-imap"
  124. "php74-sodium"
  125. "php74-ffi"
  126. "php74-opcache"
  127. )
  128. source=(
  129. "make-tests.patch"
  130. "php-makefile-patcher.php"
  131. "php-apache.conf"
  132. "pear-config-patcher.php"
  133. "https://php.net/distributions/php-${pkgver}.tar.xz"
  134. "libxml-pear.patch"
  135. "php-libxml.patch"
  136. "libxml-21200-php-7.0.patch"
  137. "icu-74-php-7.4.patch"
  138. "litespeed-phpheader.patch"
  139. "mysql-socket-php7.1.patch"
  140. "php74-enchant.patch"
  141. "debian-php-7.4.patch"
  142. "php-phpinfo.patch"
  143. "timezonedb-guess.patch"
  144. "timezonedb-php7.4.patch"
  145. "additional.patch"
  146. )
  147. depends=(
  148. )
  149. makedepends=(
  150. "acl"
  151. "libtool"
  152. "autoconf"
  153. "automake"
  154. "patchelf"
  155. "gawk"
  156. "sed"
  157. "bash"
  158. "python"
  159. "libxml2"
  160. "pam"
  161. "krb5"
  162. "zlib"
  163. "libedit"
  164. "smtp-forwarder"
  165. "pcre"
  166. "apache"
  167. "ncurses"
  168. "libxcrypt"
  169. "systemd"
  170. "systemd-libs"
  171. "coreutils"
  172. "findutils"
  173. "argon2"
  174. "libxslt"
  175. "e2fsprogs"
  176. "openssl-1.1"
  177. "lmdb"
  178. "db5.3"
  179. "postgresql-libs"
  180. "unixodbc"
  181. "libfbclient"
  182. "freetds"
  183. "sqlite"
  184. "gd"
  185. "tidy"
  186. "gmp"
  187. "libzip"
  188. "oniguruma"
  189. "aspell"
  190. "enchant"
  191. "libvoikko"
  192. "hspell"
  193. "hunspell"
  194. "nuspell"
  195. "aspell"
  196. "icu"
  197. "curl"
  198. "net-snmp"
  199. "libsasl"
  200. "libldap"
  201. "c-client"
  202. "pam"
  203. "libsodium"
  204. "libffi"
  205. )
  206. arch=(
  207. )
  208. _patches=(
  209. "libxml-pear.patch"
  210. "php-libxml.patch"
  211. "libxml-21200-php-7.0.patch"
  212. "icu-74-php-7.4.patch"
  213. "litespeed-phpheader.patch"
  214. "mysql-socket-php7.1.patch"
  215. "php74-enchant.patch"
  216. "debian-php-7.4.patch"
  217. "php-phpinfo.patch"
  218. "timezonedb-guess.patch"
  219. "timezonedb-php7.4.patch"
  220. "additional.patch"
  221. )
  222. _sapi_depends=(
  223. "libxml2"
  224. "pcre2"
  225. "libedit"
  226. "argon2"
  227. )
  228. _ext_depends_snmp=(
  229. "php74=7.4.33"
  230. "net-snmp"
  231. "openssl-1.1"
  232. )
  233. _ext_depends_ftp=(
  234. "php74=7.4.33"
  235. "openssl-1.1"
  236. )
  237. _ext_depends_intl=(
  238. "php74=7.4.33"
  239. "icu"
  240. )
  241. _ext_depends_imap=(
  242. "php74=7.4.33"
  243. "pam"
  244. "krb5"
  245. "c-client"
  246. "libxcrypt"
  247. "openssl-1.1"
  248. )
  249. _ext_depends_gd=(
  250. "php74=7.4.33"
  251. "gd"
  252. )
  253. _ext_depends_mysql=(
  254. "php74=7.4.33"
  255. "php74-pdo=7.4.33"
  256. "php74-openssl=7.4.33"
  257. )
  258. _ext_depends_dba=(
  259. "php74=7.4.33"
  260. "db5.3"
  261. "lmdb"
  262. )
  263. _ext_depends_odbc=(
  264. "php74=7.4.33"
  265. "unixodbc"
  266. "php74-pdo=7.4.33"
  267. )
  268. _ext_depends_pgsql=(
  269. "php74=7.4.33"
  270. "postgresql-libs"
  271. "php74-pdo=7.4.33"
  272. )
  273. _ext_depends_firebird=(
  274. "php74=7.4.33"
  275. "libfbclient"
  276. "php74-pdo=7.4.33"
  277. )
  278. _ext_depends_sqlite=(
  279. "php74=7.4.33"
  280. "sqlite"
  281. "php74-pdo=7.4.33"
  282. )
  283. _ext_depends_mbstring=(
  284. "php74=7.4.33"
  285. "oniguruma"
  286. )
  287. _ext_depends_openssl=(
  288. "php74=7.4.33"
  289. "krb5"
  290. "e2fsprogs"
  291. "openssl-1.1"
  292. )
  293. _phpconfig="\
  294. --prefix=/usr \
  295. --sbindir=/usr/bin \
  296. --localstatedir=/var \
  297. --with-layout=GNU \
  298. --disable-debug \
  299. --mandir=/usr/share/man \
  300. --srcdir=../php-${pkgver} \
  301. --libdir=/usr/lib/php${_phpbase}${_suffix} \
  302. --datadir=/usr/share/php${_phpbase}${_suffix} \
  303. --program-suffix=${_phpbase}${_suffix} \
  304. --with-config-file-scan-dir=/${_build_conf_d} \
  305. --enable-filter \
  306. --enable-session \
  307. --with-pear \
  308. --with-mhash=/usr \
  309. --with-kerberos \
  310. --with-mysql-sock=${_build_mysql_socket} \
  311. --enable-mysqlnd-compression-support \
  312. --datarootdir=/usr/share/php${_phpbase}${_suffix} \
  313. --with-zlib \
  314. --with-libxml \
  315. --with-pcre-jit \
  316. --with-external-pcre=/usr \
  317. --with-password-argon2=/usr \
  318. --disable-rpath \
  319. --config-cache \
  320. --with-system-tzdata \
  321. --enable-phpdbg-readline \
  322. --with-libedit"
  323. _phpextensions="\
  324. --enable-xml=shared \
  325. --with-xsl=shared \
  326. --enable-xmlreader=shared \
  327. --enable-xmlwriter=shared \
  328. --enable-dom=shared \
  329. --enable-simplexml=shared \
  330. --with-openssl=shared \
  331. --enable-pdo=shared \
  332. --enable-mysqlnd=shared \
  333. --with-mysqli=shared,mysqlnd \
  334. --with-pdo-mysql=shared,mysqlnd \
  335. --enable-phar=shared \
  336. --enable-pcntl=shared \
  337. --enable-posix=shared \
  338. --enable-shmop=shared \
  339. --enable-sockets=shared \
  340. --enable-sysvmsg=shared \
  341. --enable-sysvsem=shared \
  342. --enable-sysvshm=shared \
  343. --enable-tokenizer=shared
  344. --enable-dba=shared \
  345. --with-db4=/usr \
  346. --without-gdbm \
  347. --with-cdb \
  348. --with-lmdb=/usr \
  349. --with-pgsql=shared,/usr \
  350. --with-pdo-pgsql=shared,/usr \
  351. --with-unixODBC=shared \
  352. --with-pdo-odbc=shared,unixODBC,/usr \
  353. --with-pdo-firebird=shared,/usr \
  354. --with-pdo-dblib=shared,/usr \
  355. --with-pdo-sqlite=shared,/usr \
  356. --with-sqlite3=shared \
  357. --enable-gd=shared \
  358. --with-external-gd=/usr \
  359. --with-jpeg \
  360. --with-xpm \
  361. --with-webp \
  362. --with-freetype \
  363. --enable-exif=shared \
  364. --with-tidy=shared,/usr \
  365. --with-iconv=shared \
  366. --enable-bcmath=shared \
  367. --with-gmp=shared,/usr \
  368. --with-zip=shared \
  369. --with-bz2=shared,/usr \
  370. --enable-json=shared \
  371. --enable-fileinfo=shared \
  372. --enable-ctype=shared \
  373. --enable-mbstring=shared \
  374. --with-onig=/usr \
  375. --enable-mbregex \
  376. --with-pspell=shared,/usr \
  377. --with-enchant=shared \
  378. --enable-intl=shared \
  379. --enable-calendar=shared \
  380. --with-gettext=shared,/usr \
  381. --enable-soap=shared \
  382. --enable-ftp=shared \
  383. --with-curl=shared \
  384. --with-snmp=shared,/usr \
  385. --with-ldap=shared,/usr \
  386. --with-ldap-sasl \
  387. --with-imap=shared,/usr \
  388. --with-imap-ssl=yes \
  389. --with-sodium=shared \
  390. --with-ffi=shared \
  391. --enable-opcache \
  392. --enable-huge-code-pages"
  393. _phpextensions_fpm="\
  394. --with-fpm-user=http \
  395. --with-fpm-group=http \
  396. --with-fpm-systemd \
  397. --with-fpm-acl"
  398.  
  399.  
  400. options=('!lto')
  401. arch=("$CARCH")
  402. checkdepends=('procps-ng' 'smtp-forwarder')
  403. license=('PHP')
  404. url='http://www.php.net'
  405.  
  406.  
  407. ################################################################################
  408. # Prepare it
  409. ################################################################################
  410. prepare() {
  411. pushd "php-${pkgver}"
  412.  
  413. echo "[SED] scripts/phpize.in"
  414. sed -E "s|(includedir[\t ]*=.*/php)|\1${_phpbase}${_suffix}|g" \
  415. -i scripts/phpize.in
  416.  
  417. echo "[SED] scripts/phpize.m4"
  418. sed -e "s|\[php-config\]|\[php-config${_phpbase}${_suffix}\]|g" \
  419. -e "s|\(PHP_ARG_WITH(\[php-config\)${_phpbase}${_suffix}\]|\1]|g" \
  420. -e "s|php-config, no|php-config${_phpbase}${_suffix}, no|g" \
  421. -i "scripts/phpize.m4"
  422.  
  423. echo "[SED] scripts/Makefile.frag"
  424. sed -E "s|(phpincludedir[\t ]*=.*/php)|\1${_phpbase}${_suffix}|g" \
  425. -i scripts/Makefile.frag
  426.  
  427. echo "[SED] scripts/php-config.in"
  428. sed -E "s|(include_dir[\t ]*=.*php)|\1${_phpbase}${_suffix}|g" \
  429. -i scripts/php-config.in
  430.  
  431. echo "[SED] sapi/apache2handler/config.m4"
  432. sed -e '/APACHE_THREADED_MPM=/d' \
  433. -i sapi/apache2handler/config.m4
  434.  
  435. echo "[SED] sapi/fpm/Makefile.frag"
  436. # sed -e 's#php-fpm\$(program_suffix)#php\$(program_suffix)-fpm#'
  437. sed -e 's/.conf.default/.conf/g' \
  438. -i sapi/fpm/Makefile.frag
  439.  
  440. echo "[SED] sapi/fpm/php-fpm.service.in"
  441. sed -E "s|ExecStart[\s]?=[\s]?@([a-zA-Z_]+)@/php-fpm|ExecStart=@\1@/${_build_fpm_name}|g; \
  442. s|PIDFile[\s]?=[\s]?@([a-zA-Z_]+)@/run/php-fpm.pid|PIDFile=/run/${_build_fpm_service_name}/php-fpm.pid|g" \
  443. -i sapi/fpm/php-fpm.service.in
  444.  
  445. local _check_files=("sapi/fpm/www.conf.in" "sapi/fpm/php-fpm.conf.in");
  446. for file_conf in "${_check_files[@]}"; do
  447. if [[ ! -f $file_conf ]]; then
  448. continue;
  449. fi
  450. echo "[SED] ${file_conf}"
  451. sed -e "s#^listen =.*#listen = /run/${_build_fpm_service_name}/php-fpm.sock#" \
  452. -e "s#run/php-fpm.pid#/run/${_build_fpm_service_name}/php-fpm.pid#" \
  453. -e 's#^;*[ \t]*listen.owner =#listen.owner =#' \
  454. -e 's#^;*[ \t]*listen.group =#listen.group =#' \
  455. -e 's#^;*[ \t]*error_log =.*#error_log = syslog#' \
  456. -e 's#^;*[ \t]*chdir =.*#;chdir = /srv/http#' \
  457. -i "${file_conf}"
  458. done
  459.  
  460. echo "[SED] php.ini-production"
  461. sed -e 's#^;*[ \t]*extension_dir[\t ]*=.*/.*$#extension_dir = "___EXTENSIONDIR___"#' \
  462. -e "s#___EXTENSIONDIR___#/usr/lib/${pkgbase}/modules#g" \
  463. -e "s#^;*[ \t]*extension=#;extension=#g" \
  464. -e "s#^;*[ \t]*session.save_path[\t ]*=.*#session.save_path=___SESSIONS___#g" \
  465. -e "s#___SESSIONS___#/var/lib/${pkgbase}/sessions#g" \
  466. -i php.ini-production
  467.  
  468. for patch_name in "${_patches[@]}"; do
  469. echo "[PATCH] Applying source patch ${patch_name}";
  470. patch -p1 -i "../${patch_name}"
  471. done
  472.  
  473. if ((_phpbase <= 53)); then
  474. PHP_AUTOCONF="/usr/bin/autoconf-2.13" ./buildconf --force
  475. else
  476. ./buildconf --force
  477. fi
  478. rm -f tests/output/stream_isatty_*.phpt
  479. rm -f Zend/tests/arginfo_zpp_mismatch*.phpt
  480. rm -f Zend/tests/bug79919.phpt
  481. popd
  482. }
  483.  
  484. _build_sapi() {
  485. _sapi="${1}"
  486. _commands="${2}"
  487. if (( _sapi == "cli" )); then
  488. if [[ ! -d "build-${_sapi}" ]]; then
  489. mkdir "build-${_sapi}"
  490. fi
  491. pushd "build-${_sapi}"
  492. if [[ -L configure ]]; then
  493. rm configure
  494. fi
  495. ln -s "../php-${pkgver}/configure"
  496. popd
  497. else
  498. cp -Ta "build-cli" "build-${_sapi}"
  499. fi
  500.  
  501. pushd "build-${_sapi}"
  502. ./configure ${_phpconfig} ${_commands}
  503. patch -p1 -i "${srcdir}/make-tests.patch"
  504. if (($_sapi != "cli")); then
  505. make clean
  506. elif ((_phpbase < 82)); then
  507. sed -i 's/\(-Iext\/intl\/.*\)-std=c++11\(.*\)/\1-std=c++17\2/g' Makefile
  508. fi
  509. sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
  510. -e 's|^runpath_var=LD_RUN_PATH|runpath_var=LIBTOOL_IS_BROKED|g' \
  511. libtool
  512. make
  513. popd
  514. }
  515.  
  516. ################################################################################
  517. # BUILD them all
  518. ################################################################################
  519. build() {
  520. export CFLAGS="${CFLAGS} -fPIC -Wno-error=incompatible-pointer-types -DATTRIBUTE_UNUSED="
  521. export CXXFLAGS="${CXXFLAGS} -fPIC -Wno-error=incompatible-pointer-types -std=c++17 -DATTRIBUTE_UNUSED="
  522. if ((_phpbase <= 73)); then
  523. export CFLAGS="${CFLAGS} -Wno-implicit-function-declaration -fpermissive"
  524. export CXXFLAGS="${CXXFLAGS} -Wno-implicit-function-declaration -fpermissive"
  525. fi
  526. export EXTENSION_DIR="/usr/lib/${pkgbase}/modules"
  527. if ((_build_forced_openssl_11)); then
  528. export PHP_OPENSSL_DIR="/usr/lib/openssl-1.1"
  529. export PKG_CONFIG_PATH="/usr/lib/openssl-1.1/pkgconfig"
  530. fi
  531. if [[ ! -z "${_cppflags}" ]]; then
  532. CPPFLAGS+=" $_cppflags "
  533. fi
  534.  
  535. if ((_build_ini_per_sapi)); then
  536.  
  537. # CLI
  538. _cli_addons=''
  539. # CGI enabled here only for tests passing, then overriden later by cgi build
  540. _cli_addons+=" --enable-cgi "
  541.  
  542. _build_sapi "cli" "\
  543. --sysconfdir=/${_build_sapi_ini_cli} \
  544. --with-config-file-path=/${_build_sapi_ini_cli} \
  545. --enable-cli \
  546. ${_phpextensions} \
  547. ${_cli_addons} \
  548. --disable-fpm \
  549. --disable-embed \
  550. --disable-phpdbg \
  551. "
  552.  
  553. # phpdbg
  554. if ((_build_phpdbg)); then
  555. _sapi="phpdbg"
  556. _build_sapi "phpdbg" "\
  557. --sysconfdir=/${_build_sapi_ini_phpdbg} \
  558. --with-config-file-path=/${_build_sapi_ini_phpdbg} \
  559. --disable-all \
  560. --enable-phpdbg \
  561. --disable-cgi \
  562. --disable-cli \
  563. --disable-fpm \
  564. --disable-embed \
  565. "
  566. fi
  567.  
  568. # embed
  569. _build_sapi "embed" "\
  570. --sysconfdir=/${_build_sapi_ini_embed} \
  571. --with-config-file-path=/${_build_sapi_ini_embed} \
  572. --disable-all \
  573. --enable-embed=shared \
  574. --disable-cgi \
  575. --disable-cli \
  576. --disable-fpm \
  577. --disable-phpdbg \
  578. "
  579.  
  580. # cgi
  581. _build_sapi "cgi" "\
  582. --sysconfdir=/${_build_sapi_ini_cgi} \
  583. --with-config-file-path=/${_build_sapi_ini_cgi} \
  584. --disable-all \
  585. --enable-cgi \
  586. --disable-cli \
  587. --disable-fpm \
  588. --disable-embed \
  589. --disable-phpdbg \
  590. "
  591.  
  592. # litespeed
  593. _cflags="${CFLAGS}"
  594. export CFLAGS="${CFLAGS} -Wno-error=format-security"
  595. _build_sapi "litespeed" "\
  596. --sysconfdir=/${_build_sapi_ini_litespeed} \
  597. --with-config-file-path=/${_build_sapi_ini_litespeed} \
  598. --disable-all \
  599. --disable-cgi \
  600. --disable-cli \
  601. --disable-fpm \
  602. --disable-embed \
  603. --disable-phpdbg \
  604. ${_build_sapi_litespeed} \
  605. "
  606. export CFLAGS="${_cflags}"
  607.  
  608. # fpm
  609. _build_sapi "fpm" "\
  610. --sysconfdir=/${_build_sapi_ini_fpm} \
  611. --with-config-file-path=/${_build_sapi_ini_fpm} \
  612. --disable-all \
  613. --enable-fpm \
  614. ${_phpextensions_fpm} \
  615. --disable-cli \
  616. --disable-cgi \
  617. --disable-embed \
  618. --disable-phpdbg \
  619. "
  620. else
  621.  
  622. # CLI
  623. if ((_build_phpdbg)); then
  624. _cli_addons+=" --enable-phpdbg "
  625. fi
  626. _build_sapi "cli" "\
  627. --sysconfdir=/${_build_sapi_ini_cli} \
  628. --with-config-file-path=/${_build_sapi_ini_cli} \
  629. --enable-cli \
  630. ${_phpextensions} \
  631. ${_cli_addons} \
  632. --enable-fpm \
  633. --enable-cgi \
  634. --enable-embed=shared \
  635. --enable-fpm \
  636. ${_phpextensions_fpm} \
  637. ${_build_sapi_litespeed} \
  638. "
  639. fi
  640.  
  641. # apache
  642. _build_sapi "apache" "\
  643. --disable-all \
  644. --disable-cli \
  645. --disable-cgi \
  646. --disable-fpm \
  647. --disable-embed \
  648. --disable-phpdbg \
  649. --with-apxs2 \
  650. --sysconfdir=/${_build_sapi_ini_apache} \
  651. --with-config-file-path=/${_build_sapi_ini_apache} \
  652. "
  653.  
  654. }
  655.  
  656. check() {
  657. export CFLAGS="${CFLAGS} -fPIC"
  658. export CXXFLAGS="${CXXFLAGS} -fPIC"
  659. pushd "build-cli"
  660. # Check if sendmail was configured correctly (FS#47600)
  661. export REPORT_EXIT_STATUS=1
  662. export NO_INTERACTION=1
  663. export SKIP_ONLINE_TESTS=1
  664. export SKIP_SLOW_TESTS=1
  665. export TESTS='tests Zend'
  666. if ((_phpbase > 73)); then
  667. export TEST_PHP_ARGS="-j$(nproc)"
  668. fi
  669. # Patch tests to run PHP modules in needed order
  670. sapi/cli/php -n ../php-makefile-patcher.php Makefile
  671. make test
  672. popd
  673. }
  674.  
  675. ################################################################################
  676. # Custom code
  677. ################################################################################
  678. _install_module_ini() {
  679. local extension=$(echo "${1}" | sed 's/\.so//')
  680. local priority="${_priority_default}"
  681. case "${extension}" in
  682. "json")
  683. priority="${_priority_json}"
  684. ;;
  685. "xml")
  686. priority="${_priority_xml}"
  687. ;;
  688. "openssl")
  689. priority="${_priority_openssl}"
  690. ;;
  691. "mysqlnd")
  692. priority="${_priority_mysqlnd}"
  693. ;;
  694. "pdo")
  695. priority="${_priority_pdo}"
  696. ;;
  697. "opcache")
  698. priority="${_priority_opcache}"
  699. ;;
  700. "dom")
  701. priority="${_priority_dom}"
  702. ;;
  703. esac
  704. local extension_type="extension"
  705. case "${extension}" in
  706. "opcache" | "xdebug")
  707. extension_type="zend_extension"
  708. ;;
  709. "recode")
  710. extension_type=";extension"
  711. ;;
  712. esac
  713.  
  714. if [[ ! -d "${pkgdir}/${_build_conf_d}" ]]; then
  715. mkdir -p "${pkgdir}/${_build_conf_d}"
  716. fi
  717. echo "${extension_type}=${extension}.so" > "${pkgdir}/${_build_conf_d}/${priority}-${extension}.ini"
  718. chmod 0644 "$pkgdir/${_build_conf_d}/${priority}-${extension}.ini"
  719. _last_priority=${priority}
  720. _last_extension=${extension}
  721. }
  722.  
  723. _install_module() {
  724. if [[ -f "build-cli/modules/${1}.so" ]]; then
  725. install -D -m755 "build-cli/modules/${1}.so" "${pkgdir}/usr/lib/${pkgbase}/modules/${1}.so";
  726. _install_module_ini "${1}"
  727. else
  728. echo "[DEBUG]: Install_module can't find ${1}.so, skipped"
  729. fi
  730. }
  731.  
  732. ###############################################################################
  733. # PHP: SAPI's
  734. ###############################################################################
  735.  
  736. # Main package
  737. package_php74() {
  738. # Binary names
  739. pkgdesc='PHP. A general-purpose scripting language that is especially suited to web development'
  740. depends=('zlib' 'pcre' 'libedit')
  741.  
  742. # Install session dir
  743. install -d -m1733 "${pkgdir}/var/lib/${pkgbase}/sessions"
  744.  
  745. # conf.d dir with shared modules
  746. install -d -m755 "${pkgdir}/${_build_conf_d}/"
  747.  
  748. pushd "build-cli"
  749. make -j1 INSTALL_ROOT=${pkgdir} install-{modules,build,headers,programs}
  750. # Cleanup for CGI"
  751. rm -rf "${pkgdir}/usr/bin/${pkgbase}-cgi"
  752. popd
  753.  
  754. pushd "${pkgdir}/usr/lib/${pkgbase}/modules/"
  755. # remove static modules
  756. rm -f *.a
  757. # remove modules provided by subpackages
  758. rm -f {enchant,imap,intl,pspell,snmp,tidy,curl,ldap,bz2,bcmath,soap,zip,gmp,dba,opcache,json,gd,mcrypt,sodium,recode}.so
  759. rm -f {pdo_dblib,mssql}.so
  760. rm -f {dom,simplexml,xml,xmlreader,xmlwriter,xsl,wddx,xmlrpc}.so
  761. rm -f {pgsql,pdo_pgsql}.so
  762. rm -f {odbc,pdo_odbc}.so
  763. rm -f {pdo_sqlite,sqlite3}.so
  764. rm -f {pdo_firebird.so,interbase.so}
  765. rm -f {mysqli,pdo_mysql,mysqlnd,mysql}.so
  766. rm -f {openssl,ffi,pcntl,ftp,calendar,ctype,fileinfo,iconv,mbstring,exif,pdo,phar,posix,shmop}.so
  767. rm -f {sockets,tokenizer,gettext,sysvmsg,sysvsem,sysvshm}.so
  768. popd
  769. pushd build-cli
  770. if (( ! _build_ini_per_sapi )); then
  771. backup=("${_build_sapi_ini_cli}/php.ini")
  772. install -d -m755 "${pkgdir}/${_build_sapi_ini_cli}"
  773. install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_cli}/php.ini"
  774. fi
  775. popd
  776. }
  777.  
  778. # Cli + phar
  779. package_php74-cli() {
  780. _sapi="cli"
  781. pkgdesc="cli (command-line executable) version for ${pkgbase}"
  782. depends=("${pkgbase}=${pkgver}")
  783. depends+=("${_sapi_depends[@]}")
  784. pushd "build-${_sapi}"
  785. make -j1 INSTALL_ROOT="${pkgdir}" install-cli
  786. make -j1 INSTALL_ROOT="${pkgdir}" install-pharcmd
  787. if ((_build_ini_per_sapi)); then
  788. backup=("${_build_sapi_ini_cli}/php.ini")
  789. install -d -m755 "${pkgdir}/${_build_sapi_ini_cli}"
  790. install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_cli}/php.ini"
  791. fi
  792. # Cleanup for CGI
  793. rm -rf "${pkgdir}/usr/bin/${pkgbase}-cgi"
  794. popd
  795. }
  796. # End cli
  797.  
  798. # CGI
  799. package_php74-cgi() {
  800. _sapi="cgi"
  801. pkgdesc="CGI and FCGI SAPI for ${pkgbase}"
  802. depends=("${pkgbase}=${pkgver}")
  803. depends+=("${_sapi_depends[@]}")
  804. if ((_build_ini_per_sapi)); then
  805. pushd "build-${_sapi}"
  806. else
  807. pushd "build-cli"
  808. fi
  809. if ((_build_ini_per_sapi)); then
  810. install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_cgi}/php.ini"
  811. backup=("${_build_sapi_ini_cgi}/php.ini")
  812. fi
  813. make -j1 INSTALL_ROOT="${pkgdir}" install-cgi
  814. popd
  815. }
  816. # CGI end
  817.  
  818. # Apache
  819. package_php74-apache() {
  820. _sapi="apache"
  821. _build_mod_php_so="libphp${_suffix_so}.so"
  822. _build_mod_php_module="php${_suffix_so}_module"
  823. _build_build_php_script_name="php${_suffix_so}-script"
  824. _apache_module_conf="${pkgbase}-module.conf"
  825. pkgdesc="Apache SAPI for ${pkgbase}"
  826. depends=("${pkgbase}=${pkgver}" 'apache')
  827. depends+=("${_sapi_depends[@]}")
  828. depends+=('libxcrypt');
  829. depends+=('ncurses');
  830. backup=("${_build_apache_cfg}/${_apache_module_conf}")
  831. echo "# End of LoadModule in httpd.conf - see ArchWiki Apache HTTP Server"
  832. echo "LoadModule ${_build_mod_php_module} modules/lib${pkgbase}.so"
  833. echo "AddHandler ${_build_php_script_name} .php"
  834. echo "# End of Include List"
  835. echo "Include conf/extra/${_apache_module_conf}"
  836.  
  837. pushd "build-${_sapi}"
  838. if ((_build_ini_per_sapi)); then
  839. backup+=("${_build_sapi_ini_apache}/php.ini")
  840. install -d -m755 "${pkgdir}/${_build_sapi_ini_apache}"
  841. install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_apache}/php.ini"
  842. fi
  843. install -D -m755 "libs/${_build_mod_php_so}" "${pkgdir}/usr/lib/httpd/modules/lib${pkgbase}.so"
  844. patchelf --set-soname \
  845. "lib${pkgbase}.so" \
  846. "${pkgdir}/usr/lib/httpd/modules/lib${pkgbase}.so"
  847. popd
  848.  
  849. install -D -m644 "php-apache.conf" "${pkgdir}/${_build_apache_cfg}/${_apache_module_conf}"
  850. echo "[SED] ${pkgdir}/${_build_apache_cfg}/${_apache_module_conf}"
  851. sed -e "s#@MODULE@#${_build_mod_php_module}#" \
  852. -i "${pkgdir}/${_build_apache_cfg}/${_apache_module_conf}"
  853. }
  854. # Apache end
  855.  
  856. # FPM
  857. package_php74-fpm() {
  858. _sapi="fpm"
  859. install="php-fpm.install"
  860. pkgdesc="FastCGI Process Manager for ${pkgbase}"
  861. depends=("${pkgbase}=${pkgver}" 'systemd-libs' 'acl')
  862. depends+=("${_sapi_depends[@]}")
  863. backup=("${_build_sapi_ini_fpm}/php-fpm.conf")
  864. if ((_phpbase >= 70)); then
  865. backup+=("${_build_sapi_ini_fpm}/php-fpm.d/www.conf")
  866. fi
  867. options=('!emptydirs')
  868. if ((_build_ini_per_sapi)); then
  869. pushd "build-${_sapi}"
  870. else
  871. pushd "build-cli"
  872. fi
  873. if ((_build_ini_per_sapi)); then
  874. backup+=("${_build_sapi_ini_fpm}/php.ini")
  875. install -d -m755 "${pkgdir}/${_build_sapi_ini_fpm}/"
  876. install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_fpm}/php.ini"
  877. fi
  878. make -j1 INSTALL_ROOT="${pkgdir}" install-fpm
  879. install -D -m644 "sapi/fpm/php-fpm.service" "${pkgdir}/usr/lib/systemd/system/${_build_fpm_service_name}.service"
  880. echo "d /run/${_build_fpm_service_name} 755 root root" > php-fpm.tmpfiles
  881. install -D -m644 "php-fpm.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${_build_fpm_service_name}.conf"
  882. popd
  883. }
  884. # FPM end
  885.  
  886. # embed sapi
  887. package_php74-embed() {
  888. _sapi="embed"
  889. pkgdesc="Embedded PHP SAPI library for ${pkgbase}"
  890. depends=("${pkgbase}=${pkgver}" 'ncurses' 'systemd-libs' 'libxcrypt' 'acl' 'ncurses')
  891. depends+=("${_sapi_depends[@]}")
  892. options=('!emptydirs')
  893. if ((_build_ini_per_sapi)); then
  894. pushd "build-${_sapi}"
  895. else
  896. pushd "build-cli"
  897. fi
  898. install -d -m755 "${pkgdir}/${_build_sapi_ini_embed}"
  899. if ((_build_ini_per_sapi)); then
  900. install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_embed}/php.ini"
  901. backup=("${_build_sapi_ini_embed}/php.ini")
  902. fi
  903. make -j1 INSTALL_ROOT="${pkgdir}" PHP_SAPI=embed install-sapi
  904. if ((_phpbase < 84)); then
  905. mv "${pkgdir}/usr/lib/libphp${_suffix_so}.so" "${pkgdir}/usr/lib/lib${pkgbase}.so"
  906. else
  907. mv "${pkgdir}/usr/lib/${pkgbase}/libphp${_suffix_so}.so" "${pkgdir}/usr/lib/lib${pkgbase}.so"
  908. fi
  909. popd
  910. patchelf --set-soname "lib${pkgbase}.so" "${pkgdir}/usr/lib/lib${pkgbase}.so"
  911. }
  912. # embed sapi end
  913.  
  914. # phpdbg sapi
  915. package_php74-phpdbg() {
  916. _sapi="phpdbg"
  917. options=('!emptydirs')
  918. pkgdesc="Interactive PHP debugger for ${pkgbase}"
  919. depends=("${pkgbase}=${pkgver}")
  920. depends+=("${_sapi_depends[@]}")
  921. if ((_build_ini_per_sapi)); then
  922. pushd "build-${_sapi}"
  923. else
  924. pushd "build-cli"
  925. fi
  926. if ((_build_ini_per_sapi)); then
  927. backup=("${_build_sapi_ini_phpdbg}/php.ini")
  928. install -d -m755 "${pkgdir}/${_build_sapi_ini_phpdbg}"
  929. install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_phpdbg}/php.ini"
  930. fi
  931. make -j1 INSTALL_ROOT="${pkgdir}" "install-${_sapi}"
  932. popd
  933. }
  934. # phpdbg sapi end
  935.  
  936. # litespeed sapi
  937. package_php74-litespeed() {
  938. _sapi="litespeed"
  939. pkgdesc="LiteSpeed SAPI for ${pkgbase}"
  940. depends=("${pkgbase}=${pkgver}")
  941. depends+=("${_sapi_depends[@]}")
  942. if ((_build_ini_per_sapi)); then
  943. pushd "build-${_sapi}"
  944. else
  945. pushd "build-cli"
  946. fi
  947. if ((_build_ini_per_sapi)); then
  948. install -D -m644 "../php-${pkgver}/php.ini-production" "${pkgdir}/${_build_sapi_ini_cgi}/php.ini"
  949. backup=("${_build_sapi_ini_cgi}/php.ini")
  950. fi
  951. case "${_phpbase}" in
  952. *)
  953. install -D -m755 sapi/litespeed/php "${pkgdir}/usr/bin/ls${pkgbase}"
  954. ;;
  955. esac
  956. popd
  957. }
  958. # litespeed sapi end
  959.  
  960. ###############################################################################
  961. # PEAR + PECL
  962. ###############################################################################
  963.  
  964. # PEAR
  965. package_php74-pear() {
  966. pkgdesc="PHP Extension and Application Repository (PEAR) for ${pkgbase}"
  967. depends=(
  968. "${pkgbase}=${pkgver}"
  969. "php${_phpbase}-xml${_suffix}=${pkgver}"
  970. "php${_phpbase}-cli${_suffix}=${pkgver}"
  971. "php${_phpbase}-phar${_suffix}=${pkgver}"
  972. )
  973. #backup=("${_build_sapi_ini_cli}/pear.conf")
  974. install -d "${pkgdir}/usr/share/${pkgbase}/pear/htdocs"
  975. install -d "${pkgdir}/usr/share/${pkgbase}/pear/data"
  976. install -d "${pkgdir}/usr/share/${pkgbase}/pear/doc"
  977. install -d "${pkgdir}/usr/share/${pkgbase}/pear/test"
  978. install -d "${pkgdir}/usr/share/${pkgbase}/pear/cfg"
  979. install -d "${pkgdir}/var/lib/${pkgbase}/pear/cache"
  980. install -d "${pkgdir}/var/lib/${pkgbase}/pear/metadata"
  981. install -d "${pkgdir}/var/lib/${pkgbase}/pear/download"
  982. install -d "${pkgdir}/var/lib/${pkgbase}/pear/temp"
  983. export PHP_PEAR_SYSCONF_DIR="${_build_sapi_ini_cli}"
  984. pushd build-cli
  985.  
  986. cp "${srcdir}/php-${pkgver}/pear/install-pear-nozlib.phar" "pear/install-pear-nozlib.phar"
  987.  
  988. INSTALL_ROOT="${pkgdir}/" ./sapi/cli/php -n \
  989. -d extension=modules/xml.so \
  990. -d extension=modules/phar.so \
  991. -d date.timezone=UTC -d memory_limit=64M -d short_open_tag=0 -d safe_mode=0 \
  992. -d 'error_reporting=E_ALL&~E_DEPRECATED' -d detect_unicode=0 "pear/install-pear-nozlib.phar" \
  993. -ds "${_phpbase}${_suffix}" \
  994. --php "/usr/bin/${pkgbase}" \
  995. --bin "/usr/bin" \
  996. --man "/usr/share/man" \
  997. --dir "/usr/share/${pkgbase}/pear" \
  998. --data "/usr/share/${pkgbase}/pear/data" \
  999. --doc "/usr/share/${pkgbase}/pear/doc" \
  1000. --test "/usr/share/${pkgbase}/pear/test" \
  1001. --www "/usr/share/${pkgbase}/pear/htdocs" \
  1002. --config "/usr/share/${pkgbase}/pear/cfg" \
  1003. --force
  1004. # fix pear.conf with unserialize
  1005. # first arg: path to pear.conf
  1006. # second arg: PEAR base /var path
  1007. ./sapi/cli/php -n ../pear-config-patcher.php \
  1008. "${pkgdir}/${_build_sapi_ini_cli}/pear.conf" \
  1009. "/var/lib/${pkgbase}/pear"
  1010. popd
  1011. # remove unneeded files
  1012. rm -rf "${pkgdir}"/.{channels,depdb,depdblock,filemap,lock,registry}
  1013. #rename binaries
  1014. for i in pear peardev pecl; do
  1015. _target="${pkgbase/php/$i}"
  1016. # fix hardcoded paths
  1017. sed "s|PHP=php|PHP=\"/usr/bin/${pkgbase}\"|g; s|\"/usr/bin/php\"|\"/usr/bin/${pkgbase}\"|g; s| -n | |g" \
  1018. -i "${pkgdir}/usr/bin/${i}"
  1019. if [[ "$i" == "pecl" ]]; then
  1020. echo "Moving ${pkgdir}/usr/bin/${i} => ${srcdir}/${pkgbase}-pecl-bin/"
  1021. mkdir -p "${srcdir}/${pkgbase}-pecl-bin/"
  1022. mv "${pkgdir}/usr/bin/pecl" "${srcdir}/${pkgbase}-pecl-bin/"
  1023. else
  1024. echo "Moving ${pkgdir}/usr/bin/${i} => ${pkgdir}/usr/bin/${_target}"
  1025. mv "${pkgdir}/usr/bin/${i}" "${pkgdir}/usr/bin/${_target}"
  1026. fi
  1027. done
  1028. }
  1029. # PEAR end
  1030.  
  1031. # PECL
  1032. package_php74-pecl() {
  1033. pkgdesc="PHP Extension Community Library (PECL) for ${pkgbase}"
  1034. depends=("php${_phpbase}-pear${_suffix}=${pkgver}")
  1035. _target="${pkgbase/php/pecl}"
  1036. install -D -m755 "${srcdir}/${pkgbase}-pecl-bin/pecl" "${pkgdir}/usr/bin/${_target}"
  1037. }
  1038.  
  1039. ###############################################################################
  1040. # PHP Modules: First need
  1041. ###############################################################################
  1042.  
  1043. # OpenSSL
  1044. package_php74-openssl() {
  1045. pkgdesc="OpenSSL module for php74"
  1046. depends=("${_ext_depends_openssl[@]}")
  1047. _install_module openssl
  1048. }
  1049.  
  1050. # Json
  1051. package_php74-json() {
  1052. pkgdesc="json module for php74"
  1053. depends=("php74=${pkgver}")
  1054. _install_module json
  1055. }
  1056.  
  1057. # pdo
  1058. package_php74-pdo() {
  1059. pkgdesc="pdo module for php74"
  1060. depends=("php74=${pkgver}")
  1061. _install_module pdo
  1062. }
  1063.  
  1064.  
  1065. # mbstring
  1066. package_php74-mbstring() {
  1067. pkgdesc="mbstring module for php74"
  1068. depends=("${_ext_depends_mbstring[@]}")
  1069. _install_module mbstring
  1070. }
  1071.  
  1072.  
  1073. # phar
  1074. package_php74-phar() {
  1075. pkgdesc="phar module for php74"
  1076. depends=("php74=${pkgver}")
  1077. _install_module phar
  1078. }
  1079.  
  1080.  
  1081. ###############################################################################
  1082. # PHP modules: XML
  1083. ###############################################################################
  1084.  
  1085. # XML modules combined package
  1086. package_php74-xml() {
  1087. pkgdesc="xml modules for php74"
  1088. depends=("php74=${pkgver}" 'libxml2')
  1089. _install_module xml
  1090. }
  1091.  
  1092. package_php74-wddx() {
  1093. pkgdesc="wddx module for php74"
  1094. depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
  1095. _install_module wddx
  1096. }
  1097.  
  1098. package_php74-simplexml() {
  1099. pkgdesc="simplexml module for php74"
  1100. depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
  1101. _install_module simplexml
  1102. }
  1103.  
  1104. package_php74-dom() {
  1105. pkgdesc="dom module for php74"
  1106. depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
  1107. _install_module dom
  1108. }
  1109.  
  1110. package_php74-xmlreader() {
  1111. pkgdesc="xmlreader module for php74"
  1112. depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
  1113. _install_module xmlreader
  1114. }
  1115.  
  1116. package_php74-xmlwriter() {
  1117. pkgdesc="xmlwriter module for php74"
  1118. depends=("php${_phpbase}-xml${_suffix}=${pkgver}")
  1119. _install_module xmlwriter
  1120. }
  1121.  
  1122. # Tidy
  1123. package_php74-tidy() {
  1124. pkgdesc="tidy module for php74"
  1125. depends=("php74=${pkgver}" 'tidy')
  1126. _install_module tidy
  1127. }
  1128.  
  1129. # XSL
  1130. package_php74-xsl() {
  1131. pkgdesc="xsl module for php74"
  1132. depends=("php${_phpbase}-xml${_suffix}=${pkgver}" "php${_phpbase}-dom${_suffix}=${pkgver}")
  1133. depends+=('libxslt')
  1134. _install_module xsl
  1135. }
  1136.  
  1137. ###############################################################################
  1138. # PHP modules: Databases
  1139. ###############################################################################
  1140.  
  1141. # MySQL
  1142. package_php74-mysql() {
  1143. pkgdesc="MySQL modules for php74"
  1144. depends=("${_ext_depends_mysql[@]}")
  1145. _install_module mysqlnd
  1146. _install_module mysql
  1147. _install_module mysqli
  1148. _install_module pdo_mysql
  1149. }
  1150.  
  1151. # pdo_sqlite + sqlite3
  1152. package_php74-sqlite() {
  1153. pkgdesc="sqlite module for php74"
  1154. depends=("${_ext_depends_sqlite[@]}")
  1155. _install_module sqlite3
  1156. _install_module pdo_sqlite
  1157. }
  1158.  
  1159. # ODBC
  1160. package_php74-odbc() {
  1161. pkgdesc="ODBC modules for php74"
  1162. depends=("${_ext_depends_odbc[@]}")
  1163. _install_module odbc
  1164. _install_module pdo_odbc
  1165. }
  1166.  
  1167. # PostgreSQL
  1168. package_php74-pgsql() {
  1169. pkgdesc="PostgreSQL modules for php74"
  1170. depends=("${_ext_depends_pgsql[@]}")
  1171. _install_module pgsql
  1172. _install_module pdo_pgsql
  1173. }
  1174.  
  1175. # interbase
  1176. package_php74-interbase() {
  1177. pkgdesc="interbase module for php74"
  1178. depends=("php74=${pkgver}" "libfbclient")
  1179. _install_module interbase
  1180. }
  1181.  
  1182. # firebird
  1183. package_php74-firebird() {
  1184. pkgdesc="pdo_firebird module for php74"
  1185. depends=("${_ext_depends_firebird[@]}")
  1186. _install_module pdo_firebird
  1187. }
  1188.  
  1189. # pdo_dblib
  1190. package_php74-dblib() {
  1191. depends=("php74=${pkgver}" 'freetds')
  1192. pkgdesc="pdo_dblib module for php74"
  1193. _install_module pdo_dblib
  1194. }
  1195.  
  1196. # mssql
  1197. package_php74-mssql() {
  1198. depends=("php74=${pkgver}" 'freetds')
  1199. pkgdesc="mssql module for php74"
  1200. _install_module mssql
  1201. }
  1202.  
  1203. # Dba
  1204. package_php74-dba() {
  1205. pkgdesc="dba module for php74"
  1206. depends=("${_ext_depends_dba[@]}")
  1207. _install_module dba
  1208. }
  1209.  
  1210. ###############################################################################
  1211. # PHP Modules: internationalization, text, datetime
  1212. ###############################################################################
  1213.  
  1214. # Intl
  1215. package_php74-intl() {
  1216. pkgdesc="intl module for php74"
  1217. depends=("${_ext_depends_intl[@]}")
  1218. _install_module intl
  1219. }
  1220.  
  1221. # Recode
  1222. package_php74-recode() {
  1223. pkgdesc="recode module for php74"
  1224. depends=("php74=${pkgver}" 'recode')
  1225. _install_module recode
  1226. }
  1227.  
  1228. # gettext
  1229. package_php74-gettext() {
  1230. pkgdesc="gettext module for php74"
  1231. depends=("php74=${pkgver}")
  1232. _install_module gettext
  1233. }
  1234.  
  1235. # iconv
  1236. package_php74-iconv() {
  1237. pkgdesc="iconv module for php74"
  1238. depends=("php74=${pkgver}")
  1239. _install_module iconv
  1240. }
  1241.  
  1242. # calendar
  1243. package_php74-calendar() {
  1244. pkgdesc="calendar module for php74"
  1245. depends=("php74=${pkgver}")
  1246. _install_module calendar
  1247. }
  1248.  
  1249.  
  1250. ###############################################################################
  1251. # PHP Modules: multimedia
  1252. ###############################################################################
  1253.  
  1254. # GD
  1255. package_php74-gd() {
  1256. pkgdesc="gd module for php74"
  1257. depends=("${_ext_depends_gd[@]}")
  1258. _install_module gd
  1259. }
  1260.  
  1261. # exif
  1262. package_php74-exif() {
  1263. pkgdesc="exif module for php74"
  1264. depends=("php74=${pkgver}")
  1265. _install_module exif
  1266. }
  1267.  
  1268. # fileinfo
  1269. package_php74-fileinfo() {
  1270. pkgdesc="fileinfo module for php74"
  1271. depends=("php74=${pkgver}")
  1272. _install_module fileinfo
  1273. }
  1274.  
  1275.  
  1276. ###############################################################################
  1277. # PHP modules: math
  1278. ###############################################################################
  1279.  
  1280. # bcmath
  1281. package_php74-bcmath() {
  1282. pkgdesc="bcmath module for php74"
  1283. depends=("php74")
  1284. _install_module bcmath
  1285. }
  1286.  
  1287. # gmp
  1288. package_php74-gmp() {
  1289. pkgdesc="gmp module for php74"
  1290. depends=("php74=${pkgver}" 'gmp')
  1291. _install_module gmp
  1292. }
  1293.  
  1294. ###############################################################################
  1295. # PHP modules: spell checking
  1296. ###############################################################################
  1297.  
  1298. # Enchant
  1299. package_php74-enchant() {
  1300. pkgdesc="enchant module for php74"
  1301. depends=("php74=${pkgver}" 'enchant' 'libvoikko' 'hspell' 'hunspell' 'nuspell' 'aspell')
  1302. _install_module enchant
  1303. }
  1304.  
  1305. # Pspell
  1306. package_php74-pspell() {
  1307. pkgdesc="pspell module for php74"
  1308. depends=("php74=${pkgver}" 'aspell')
  1309. _install_module pspell
  1310. }
  1311.  
  1312. ###############################################################################
  1313. # PHP modules: compression
  1314. ###############################################################################
  1315.  
  1316. # bz2
  1317. package_php74-bz2() {
  1318. pkgdesc="bz2 module for php74"
  1319. depends=("php74=${pkgver}" 'bzip2')
  1320. _install_module bz2
  1321. }
  1322.  
  1323. # Zip
  1324. package_php74-zip() {
  1325. pkgdesc="zip module for php74"
  1326. depends=("php74=${pkgver}" 'libzip')
  1327. _install_module zip
  1328. }
  1329.  
  1330. ###############################################################################
  1331. # PHP modules: network client/servers
  1332. ###############################################################################
  1333.  
  1334. # curl
  1335. package_php74-curl() {
  1336. pkgdesc="curl module for php74"
  1337. depends=("php74=${pkgver}" "curl")
  1338. _install_module curl
  1339. }
  1340.  
  1341. # SOAP
  1342. package_php74-soap() {
  1343. pkgdesc="soap module for php74"
  1344. depends=("php74=${pkgver}" 'libxml2')
  1345. _install_module soap
  1346. }
  1347.  
  1348. # FTP
  1349. package_php74-ftp() {
  1350. pkgdesc="FTP module for php74"
  1351. depends=("${_ext_depends_ftp[@]}")
  1352. _install_module ftp
  1353. }
  1354.  
  1355. # ldap
  1356. package_php74-ldap() {
  1357. pkgdesc="ldap module for php74"
  1358. depends=("php74=${pkgver}" 'libldap' 'libsasl')
  1359. _install_module ldap
  1360. }
  1361.  
  1362. # SNMP
  1363. package_php74-snmp() {
  1364. pkgdesc="snmp module for php74"
  1365. depends=("${_ext_depends_snmp[@]}")
  1366. _install_module snmp
  1367. }
  1368.  
  1369. # XML-RPC
  1370. package_php74-xmlrpc() {
  1371. pkgdesc="xmlrpc module for php74"
  1372. depends=("php74=${pkgver}" 'libxml2')
  1373. _install_module xmlrpc
  1374. }
  1375.  
  1376. # Imap
  1377. package_php74-imap() {
  1378. pkgdesc="imap module for php74"
  1379. depends=("${_ext_depends_imap[@]}")
  1380. _install_module imap
  1381. }
  1382.  
  1383. # sockets
  1384. package_php74-sockets() {
  1385. pkgdesc="sockets module for php74"
  1386. depends=("php74=${pkgver}")
  1387. _install_module sockets
  1388. }
  1389.  
  1390. ###############################################################################
  1391. # PHP Modules: cryptography
  1392. ###############################################################################
  1393.  
  1394. # Sodium
  1395. package_php74-sodium() {
  1396. pkgdesc="sodium (libsodium) module for php74"
  1397. depends=("php74=${pkgver}" "libsodium")
  1398. _install_module sodium
  1399. }
  1400.  
  1401. # Mcrypt
  1402. package_php74-mcrypt() {
  1403. pkgdesc="mcrypt module for php74"
  1404. depends=("php74=${pkgver}" 'libmcrypt')
  1405. _install_module mcrypt
  1406. }
  1407.  
  1408.  
  1409. ###############################################################################
  1410. # PHP Zend modules: opcache/jit
  1411. ###############################################################################
  1412.  
  1413. # Opcache
  1414. package_php74-opcache() {
  1415. pkgdesc="opcache zend module for php74"
  1416. depends=("php74=${pkgver}")
  1417. _install_module opcache
  1418. }
  1419.  
  1420. ###############################################################################
  1421. # PHP posix, pcntl, shmop and System V modules
  1422. ###############################################################################
  1423.  
  1424. # posix
  1425. package_php74-posix() {
  1426. pkgdesc="posix module for php74"
  1427. depends=("php74=${pkgver}")
  1428. _install_module posix
  1429. }
  1430.  
  1431. # pcntl
  1432. package_php74-pcntl() {
  1433. pkgdesc="pcntl module for php74"
  1434. depends=("php74=${pkgver}")
  1435. _install_module pcntl
  1436. }
  1437.  
  1438. # shmop
  1439. package_php74-shmop() {
  1440. pkgdesc="shmop module for php74"
  1441. depends=("php74=${pkgver}")
  1442. _install_module shmop
  1443. }
  1444.  
  1445. # sysvmsg
  1446. package_php74-sysvmsg() {
  1447. pkgdesc="sysvmsg module for php74"
  1448. depends=("php74=${pkgver}")
  1449. _install_module sysvmsg
  1450. }
  1451.  
  1452. # sysvsem
  1453. package_php74-sysvsem() {
  1454. pkgdesc="sysvsem module for php74"
  1455. depends=("php74=${pkgver}")
  1456. _install_module sysvsem
  1457. }
  1458.  
  1459. # sysvshm
  1460. package_php74-sysvshm() {
  1461. pkgdesc="sysvshm module for php74"
  1462. depends=("php74=${pkgver}")
  1463. _install_module sysvshm
  1464. }
  1465.  
  1466. ###############################################################################
  1467. # PHP Misc modules
  1468. ###############################################################################
  1469.  
  1470. # Ffi
  1471. package_php74-ffi() {
  1472. pkgdesc="ffi module for php74"
  1473. depends=("php74=${pkgver}" 'libffi')
  1474. _install_module ffi
  1475. }
  1476.  
  1477. # ctype
  1478. package_php74-ctype() {
  1479. pkgdesc="ctype module for php74"
  1480. depends=("php74=${pkgver}")
  1481. _install_module ctype
  1482. }
  1483.  
  1484. # tokenizer
  1485. package_php74-tokenizer() {
  1486. pkgdesc="tokenizer module for php74"
  1487. depends=("php74=${pkgver}")
  1488. _install_module tokenizer
  1489. }
  1490.  
  1491. # libedit/readline
  1492. package_php74-readline() {
  1493. pkgdesc="readline (libedit version) module for php74"
  1494. depends=("php74=${pkgver}" 'libedit')
  1495. _install_module readline
  1496. }
  1497.  
  1498.  
  1499. sha256sums=('e6b8530d747000eebb0089249ec70a3b14add7b501337046700544883f62b17b'
  1500. 'ba72fc64f77822755a469314160d5889d5298f4eb5758dd7939dac9b811afe52'
  1501. '6d0ad9becb5470ce8e5929d7d45660b0f32579038978496317544c5310281a91'
  1502. '0b7e98dca9c996ec10cb9b3f6296bb7547c68797fd5f35006fdfd3e97700672d'
  1503. '924846abf93bc613815c55dd3f5809377813ac62a9ec4eb3778675b82a27b927'
  1504. 'b5a6b99214dce395a058f40bffee50511adaf58ee84ee6fbb7ca7bdc3c07cb3c'
  1505. 'e757f84d2d72ea39259450c32f3a83c72262da4294152ae3e9fbc0cada622bba'
  1506. 'b913755c16e33615bbe820fb6c7e4d5dcd87ca69828af6ca94fcf2ee8c98b31e'
  1507. 'eed71f5568665ad4353d83b696abf0e52c8202c6df7b32923595ac1969e2b5fe'
  1508. 'c397a96905011907a2efa51dc9ea447dcf1a204f24fb190b9be156dbaae15dde'
  1509. '0a3a6e8ff04ff1e0869befcf2c7bca4e886d94065da6d7a10b809a4750b961a0'
  1510. '8fb103438fe12875dbe7c1f5b0899a81a76b4ce1456f16960e23e287d273df14'
  1511. 'c30ff6fcf75b0c0068f3d49fde8024719b3677f104d93232e52c5358c840c0f5'
  1512. '558e780e93dfa861a366c49b4d156d8fc43f17898f001ae6033ec63c33d5d41c'
  1513. '40bcc1e5058602302198d0925e431495391d8469499593af477f59d84d32f764'
  1514. '6ef318bf8d53a2288d037e3284f4dbfc26c36fd2ecc7d62e3d5036c19ec0a707'
  1515. 'SKIP')
  1516.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement