From: TinfoilSubmarine <TinfoilSubmarine@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] [WIP] New package: php8-8.0.16
Date: Tue, 08 Mar 2022 20:10:17 +0100 [thread overview]
Message-ID: <20220308191017.zDn0nI1kXcA2A3NcvEoCqZlOsJJ_z1P9nOJMS9jP73I@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-36026@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 1678 bytes --]
There is an updated pull request by TinfoilSubmarine against master on the void-packages repository
https://github.com/TinfoilSubmarine/void-packages php8
https://github.com/void-linux/void-packages/pull/36026
[WIP] New package: php8-8.0.16
<!-- Uncomment relevant sections and delete options which are not applicable -->
#### Testing the changes
- I tested the changes in this PR: **YES**
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**
<!-- Note: If the build is likely to take more than 2 hours, please [skip CI](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration)
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
#### Local build testing
- I built this PR locally for my native architecture, (x86_64-glibc)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
- x86_64-musl
- aarch64 (cross)
- armv6l (cross)
Not sure what else is needed for this to round a complete PHP environment, but I am currently using this to self-host Nextcloud and Firefly III without any issues.
In regards to 8.0.x vs 8.1.x, I opted for 8.0.x because in my use case both Nextcloud and Firefly III still haven't properly supported PHP 8.1.x. For reference, it's been out for [3 months](https://www.php.net/supported-versions.php). Perhaps we can have a php8.1 package as well? idk
A patch file from https://github.com/void-linux/void-packages/pull/36026.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-php8-36026.patch --]
[-- Type: text/x-diff, Size: 39605 bytes --]
From 548722f67c3d0bd7bb14fc4c8cb7faa3503b978b Mon Sep 17 00:00:00 2001
From: Joel Beckmeyer <joel@beckmeyer.us>
Date: Mon, 7 Mar 2022 20:29:56 -0500
Subject: [PATCH 1/7] New package: php8-8.0.16
---
srcpkgs/php8-apache | 1 +
srcpkgs/php8-cgi | 1 +
srcpkgs/php8-devel | 1 +
srcpkgs/php8-embed | 1 +
srcpkgs/php8-enchant | 1 +
srcpkgs/php8-ffi | 1 +
srcpkgs/php8-fpm | 1 +
srcpkgs/php8-gd | 1 +
srcpkgs/php8-intl | 1 +
srcpkgs/php8-ldap | 1 +
srcpkgs/php8-mysql | 1 +
srcpkgs/php8-odbc | 1 +
srcpkgs/php8-pgsql | 1 +
srcpkgs/php8-phpdbg | 1 +
srcpkgs/php8-snmp | 1 +
srcpkgs/php8-sodium | 1 +
srcpkgs/php8-sqlite | 1 +
srcpkgs/php8-tidy | 1 +
srcpkgs/php8-xsl | 1 +
srcpkgs/php8/files/apache.conf | 13 +
srcpkgs/php8/files/php-fpm8/run | 3 +
srcpkgs/php8/patches/php-706-crypt.patch | 15 +
srcpkgs/php8/patches/php-cross-config.patch | 41 +++
srcpkgs/php8/patches/php-fpm.patch | 13 +
.../patches/php-ltmain-sysroot-support.patch | 39 ++
srcpkgs/php8/patches/php-opcache-cross.patch | 14 +
srcpkgs/php8/patches/php-pear-cross.patch | 23 ++
srcpkgs/php8/patches/php-phar-cross.patch | 29 ++
.../patches/php-phpize-sysroot-support.patch | 28 ++
srcpkgs/php8/patches/php.ini.patch | 24 ++
srcpkgs/php8/template | 335 ++++++++++++++++++
31 files changed, 596 insertions(+)
create mode 120000 srcpkgs/php8-apache
create mode 120000 srcpkgs/php8-cgi
create mode 120000 srcpkgs/php8-devel
create mode 120000 srcpkgs/php8-embed
create mode 120000 srcpkgs/php8-enchant
create mode 120000 srcpkgs/php8-ffi
create mode 120000 srcpkgs/php8-fpm
create mode 120000 srcpkgs/php8-gd
create mode 120000 srcpkgs/php8-intl
create mode 120000 srcpkgs/php8-ldap
create mode 120000 srcpkgs/php8-mysql
create mode 120000 srcpkgs/php8-odbc
create mode 120000 srcpkgs/php8-pgsql
create mode 120000 srcpkgs/php8-phpdbg
create mode 120000 srcpkgs/php8-snmp
create mode 120000 srcpkgs/php8-sodium
create mode 120000 srcpkgs/php8-sqlite
create mode 120000 srcpkgs/php8-tidy
create mode 120000 srcpkgs/php8-xsl
create mode 100644 srcpkgs/php8/files/apache.conf
create mode 100755 srcpkgs/php8/files/php-fpm8/run
create mode 100644 srcpkgs/php8/patches/php-706-crypt.patch
create mode 100644 srcpkgs/php8/patches/php-cross-config.patch
create mode 100644 srcpkgs/php8/patches/php-fpm.patch
create mode 100644 srcpkgs/php8/patches/php-ltmain-sysroot-support.patch
create mode 100644 srcpkgs/php8/patches/php-opcache-cross.patch
create mode 100644 srcpkgs/php8/patches/php-pear-cross.patch
create mode 100644 srcpkgs/php8/patches/php-phar-cross.patch
create mode 100644 srcpkgs/php8/patches/php-phpize-sysroot-support.patch
create mode 100644 srcpkgs/php8/patches/php.ini.patch
create mode 100644 srcpkgs/php8/template
diff --git a/srcpkgs/php8-apache b/srcpkgs/php8-apache
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-apache
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-cgi b/srcpkgs/php8-cgi
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-cgi
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-devel b/srcpkgs/php8-devel
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-devel
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-embed b/srcpkgs/php8-embed
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-embed
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-enchant b/srcpkgs/php8-enchant
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-enchant
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-ffi b/srcpkgs/php8-ffi
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-ffi
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-fpm b/srcpkgs/php8-fpm
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-fpm
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-gd b/srcpkgs/php8-gd
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-gd
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-intl b/srcpkgs/php8-intl
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-intl
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-ldap b/srcpkgs/php8-ldap
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-ldap
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-mysql b/srcpkgs/php8-mysql
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-mysql
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-odbc b/srcpkgs/php8-odbc
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-odbc
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-pgsql b/srcpkgs/php8-pgsql
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-pgsql
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-phpdbg b/srcpkgs/php8-phpdbg
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-phpdbg
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-snmp b/srcpkgs/php8-snmp
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-snmp
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-sodium b/srcpkgs/php8-sodium
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-sodium
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-sqlite b/srcpkgs/php8-sqlite
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-sqlite
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-tidy b/srcpkgs/php8-tidy
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-tidy
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8-xsl b/srcpkgs/php8-xsl
new file mode 120000
index 000000000000..015de7408c42
--- /dev/null
+++ b/srcpkgs/php8-xsl
@@ -0,0 +1 @@
+php8
\ No newline at end of file
diff --git a/srcpkgs/php8/files/apache.conf b/srcpkgs/php8/files/apache.conf
new file mode 100644
index 000000000000..1ff98e95061e
--- /dev/null
+++ b/srcpkgs/php8/files/apache.conf
@@ -0,0 +1,13 @@
+# Required modules: dir_module, php8_module
+
+<IfModule dir_module>
+ <IfModule php8_module>
+ DirectoryIndex index.php index.html
+ <FilesMatch "\.php$">
+ SetHandler application/x-httpd-php
+ </FilesMatch>
+ <FilesMatch "\.phps$">
+ SetHandler application/x-httpd-php-source
+ </FilesMatch>
+ </IfModule>
+</IfModule>
diff --git a/srcpkgs/php8/files/php-fpm8/run b/srcpkgs/php8/files/php-fpm8/run
new file mode 100755
index 000000000000..745416a459d7
--- /dev/null
+++ b/srcpkgs/php8/files/php-fpm8/run
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+exec php-fpm8 --nodaemonize
diff --git a/srcpkgs/php8/patches/php-706-crypt.patch b/srcpkgs/php8/patches/php-706-crypt.patch
new file mode 100644
index 000000000000..254f1d2187c2
--- /dev/null
+++ b/srcpkgs/php8/patches/php-706-crypt.patch
@@ -0,0 +1,15 @@
+--- a/ext/standard/crypt.c 2016-04-28 14:13:00.000000000 -0400
++++ b/ext/standard/crypt.c 2016-04-28 21:45:24.340955313 -0400
+@@ -267,6 +267,12 @@
+ }
+ # elif defined(HAVE_CRYPT)
+ crypt_res = crypt(password, salt);
++ if (!crypt_res || (salt[0] == '*' && salt[1] == '0')) {
++ return NULL;
++ } else {
++ result = zend_string_init(crypt_res, strlen(crypt_res), 0);
++ return result;
++ }
+ # else
+ # error No crypt() implementation
+ # endif
diff --git a/srcpkgs/php8/patches/php-cross-config.patch b/srcpkgs/php8/patches/php-cross-config.patch
new file mode 100644
index 000000000000..24de8c58cbdd
--- /dev/null
+++ b/srcpkgs/php8/patches/php-cross-config.patch
@@ -0,0 +1,41 @@
+--- a/configure 2020-03-17 11:40:20.000000000 +0100
++++ b/configure 2020-04-12 19:51:57.216350534 +0200
+@@ -6374,10 +6374,12 @@ IFS="- /.
+ as_fn_error $? "Please note that Apache version >= 2.0.44 is required" "$LINENO" 5
+ fi
+
++ APXS_PREFIX='$(INSTALL_ROOT)'/usr
+ APXS_LIBEXECDIR='$(INSTALL_ROOT)'`$APXS -q LIBEXECDIR`
+ if test -z `$APXS -q SYSCONFDIR`; then
+ INSTALL_IT="\$(mkinstalldirs) '$APXS_LIBEXECDIR' && \
+ $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \
++ -S PREFIX='$APXS_PREFIX' \
+ -i -n php"
+ else
+ APXS_SYSCONFDIR='$(INSTALL_ROOT)'`$APXS -q SYSCONFDIR`
+@@ -6385,6 +6387,7 @@ IFS="- /.
+ \$(mkinstalldirs) '$APXS_SYSCONFDIR' && \
+ $APXS -S LIBEXECDIR='$APXS_LIBEXECDIR' \
+ -S SYSCONFDIR='$APXS_SYSCONFDIR' \
++ -S PREFIX='$APXS_PREFIX' \
+ -i -a -n php"
+ fi
+
+@@ -57170,7 +57173,7 @@ $as_echo_n "checking for pg_config... "
+ fi
+ done
+
+- if test -n "$PG_CONFIG"; then
++ if test -n "$PG_CONFIG" && test "x$cross_compiling" != "xyes"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PG_CONFIG" >&5
+ $as_echo "$PG_CONFIG" >&6; }
+ PGSQL_INCLUDE=`$PG_CONFIG --includedir`
+@@ -58821,7 +58824,7 @@ $as_echo_n "checking for pg_config... "
+ fi
+ done
+
+- if test -n "$PG_CONFIG"; then
++ if test -n "$PG_CONFIG" && test "x$cross_compiling" != "xyes"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PG_CONFIG" >&5
+ $as_echo "$PG_CONFIG" >&6; }
+ PGSQL_INCLUDE=`$PG_CONFIG --includedir`
diff --git a/srcpkgs/php8/patches/php-fpm.patch b/srcpkgs/php8/patches/php-fpm.patch
new file mode 100644
index 000000000000..5e55e179f8a4
--- /dev/null
+++ b/srcpkgs/php8/patches/php-fpm.patch
@@ -0,0 +1,13 @@
+--- a/sapi/fpm/Makefile.frag 2017-04-15 23:58:56.965737425 +0200
++++ b/sapi/fpm/Makefile.frag 2017-04-16 00:00:57.814831649 +0200
+@@ -15,8 +15,8 @@ install-fpm: $(SAPI_FPM_PATH)
+ else \
+ echo "Installing PHP FPM defconfig: $(INSTALL_ROOT)$(sysconfdir)/" && \
+ $(mkinstalldirs) $(INSTALL_ROOT)$(sysconfdir)/php-fpm.d; \
+- $(INSTALL_DATA) sapi/fpm/php-fpm.conf $(INSTALL_ROOT)$(sysconfdir)/php-fpm.conf.default; \
+- $(INSTALL_DATA) sapi/fpm/www.conf $(INSTALL_ROOT)$(sysconfdir)/php-fpm.d/www.conf.default; \
++ $(INSTALL_DATA) sapi/fpm/php-fpm.conf $(INSTALL_ROOT)$(sysconfdir)/php-fpm.conf; \
++ $(INSTALL_DATA) sapi/fpm/www.conf $(INSTALL_ROOT)$(sysconfdir)/php-fpm.d/www.conf; \
+ fi
+
+ @echo "Installing PHP FPM man page: $(INSTALL_ROOT)$(mandir)/man8/"
diff --git a/srcpkgs/php8/patches/php-ltmain-sysroot-support.patch b/srcpkgs/php8/patches/php-ltmain-sysroot-support.patch
new file mode 100644
index 000000000000..bbe0a514a9e8
--- /dev/null
+++ b/srcpkgs/php8/patches/php-ltmain-sysroot-support.patch
@@ -0,0 +1,39 @@
+--- a/build/ltmain.sh 2021-09-09 15:19:14.822208365 +0200
++++ b/build/ltmain.sh 2021-09-09 15:47:55.397011151 +0200
+@@ -2375,6 +2375,13 @@ EOF
+ *) . ./$lib ;;
+ esac
+
++ newdependency_libs=
++ for deplib in $dependency_libs; do
++ deplib=$(echo "$deplib" | sed "s#^=\(.*\)#$(${CC} --print-sysroot)\1#")
++ newdependency_libs="$newdependency_libs $deplib"
++ done
++ dependency_libs=${newdependency_libs}
++
+ if test "$linkmode,$pass" = "lib,link" ||
+ test "$linkmode,$pass" = "prog,scan" ||
+ { test "$linkmode" != prog && test "$linkmode" != lib; }; then
+@@ -5750,6 +5757,13 @@ fi\
+ case $host,$output,$installed,$module,$dlname in
+ *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;;
+ esac
++
++ newdependency_libs=
++ for deplib in $dependency_libs; do
++ deplib=$(echo "$deplib" | sed "s#^$(${CC} --print-sysroot)#=#")
++ newdependency_libs="$newdependency_libs $deplib"
++ done
++
+ $echo > $output "\
+ # $outputname - a libtool library file
+ # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP
+@@ -5767,7 +5781,7 @@ library_names='$library_names'
+ old_library='$old_library'
+
+ # Libraries that this one depends upon.
+-dependency_libs='$dependency_libs'
++dependency_libs='$newdependency_libs'
+
+ # Version information for $libname.
+ current=$current
diff --git a/srcpkgs/php8/patches/php-opcache-cross.patch b/srcpkgs/php8/patches/php-opcache-cross.patch
new file mode 100644
index 000000000000..5d8a8c5ceed5
--- /dev/null
+++ b/srcpkgs/php8/patches/php-opcache-cross.patch
@@ -0,0 +1,14 @@
+diff --git a/configure b/configure.new
+index 1159224b4c..29f763aa05 100755
+--- a/configure
++++ b/configure.new
+@@ -51689,7 +51689,8 @@ $as_echo "$have_shm_ipc" >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mmap() using MAP_ANON shared memory support" >&5
+ $as_echo_n "checking for mmap() using MAP_ANON shared memory support... " >&6; }
+ if test "$cross_compiling" = yes; then :
+- have_shm_mmap_anon=no
++$as_echo "#define HAVE_SHM_MMAP_ANON 1" >>confdefs.h
++ have_shm_mmap_anon=yes
+ else
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
diff --git a/srcpkgs/php8/patches/php-pear-cross.patch b/srcpkgs/php8/patches/php-pear-cross.patch
new file mode 100644
index 000000000000..f9191a50a0b5
--- /dev/null
+++ b/srcpkgs/php8/patches/php-pear-cross.patch
@@ -0,0 +1,23 @@
+--- a/pear/Makefile.frag 2020-03-17 11:40:21.000000000 +0100
++++ b/pear/Makefile.frag 2020-04-12 22:29:31.846943414 +0200
+@@ -8,9 +8,10 @@ FETCH = `which fetch 2>/dev/null`
+ PEAR_PREFIX = -dp a${program_prefix}
+ PEAR_SUFFIX = -ds a$(program_suffix)
+ PEAR_INSTALLER_URL = https://pear.php.net/install-pear-nozlib.phar
++PEAR_PHP ?= $(top_builddir)/sapi/cli/php
+
+ install-pear-installer: $(SAPI_CLI_PATH)
+- @$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS) pear/install-pear-nozlib.phar -d "$(peardir)" -b "$(bindir)" ${PEAR_PREFIX} ${PEAR_SUFFIX}
++ @$(PEAR_PHP) $(PEAR_INSTALL_FLAGS) pear/install-pear-nozlib.phar -d "$(peardir)" -b "$(bindir)" ${PEAR_PREFIX} ${PEAR_SUFFIX}
+
+ install-pear:
+ @echo "Installing PEAR environment: $(INSTALL_ROOT)$(peardir)/"
+@@ -23,7 +24,7 @@ install-pear:
+ elif test ! -z "$(FETCH)" && test -x "$(FETCH)"; then \
+ "$(FETCH)" -o $(builddir)/ "${PEAR_INSTALLER_URL}"; \
+ else \
+- $(top_builddir)/sapi/cli/php -n $(srcdir)/fetch.php "${PEAR_INSTALLER_URL}" $(builddir)/install-pear-nozlib.phar; \
++ $(PEAR_PHP) -n $(srcdir)/fetch.php "${PEAR_INSTALLER_URL}" $(builddir)/install-pear-nozlib.phar; \
+ fi \
+ fi \
+ fi
diff --git a/srcpkgs/php8/patches/php-phar-cross.patch b/srcpkgs/php8/patches/php-phar-cross.patch
new file mode 100644
index 000000000000..1e4e627ec65b
--- /dev/null
+++ b/srcpkgs/php8/patches/php-phar-cross.patch
@@ -0,0 +1,29 @@
+--- a/ext/phar/Makefile.frag 2020-04-13 12:18:23.998801926 +0200
++++ b/ext/phar/Makefile.frag 2020-04-13 12:20:58.031795293 +0200
+@@ -8,12 +8,14 @@ $(srcdir)/phar_path_check.c: $(srcdir)/p
+
+ pharcmd: $(builddir)/phar.php $(builddir)/phar.phar
+
++PHAR_PHP ?= $(top_builddir)/$(SAPI_CLI_PATH)
++PHAR_PHP_MODULES ?= $(top_builddir)/modules
+ PHP_PHARCMD_SETTINGS = -n -d 'open_basedir=' -d 'output_buffering=0' -d 'memory_limit=-1' -d phar.readonly=0
+ PHP_PHARCMD_EXECUTABLE = ` \
+- if test -x "$(top_builddir)/$(SAPI_CLI_PATH)"; then \
+- $(top_srcdir)/build/shtool echo -n -- "$(top_builddir)/$(SAPI_CLI_PATH) -n"; \
++ if test -x "$(PHAR_PHP)"; then \
++ $(top_srcdir)/build/shtool echo -n -- "$(PHAR_PHP) -n"; \
+ if test "x$(PHP_MODULES)" != "x"; then \
+- $(top_srcdir)/build/shtool echo -n -- " -d extension_dir=$(top_builddir)/modules"; \
++ $(top_srcdir)/build/shtool echo -n -- " -d extension_dir=$(PHAR_PHP_MODULES)"; \
+ for i in bz2 zlib phar; do \
+ if test -f "$(top_builddir)/modules/$$i.la"; then \
+ . $(top_builddir)/modules/$$i.la; $(top_srcdir)/build/shtool echo -n -- " -d extension=$$dlname"; \
+@@ -21,7 +23,7 @@ PHP_PHARCMD_EXECUTABLE = ` \
+ done; \
+ fi; \
+ else \
+- $(top_srcdir)/build/shtool echo -n -- "$(PHP_EXECUTABLE)"; \
++ $(top_srcdir)/build/shtool echo -n -- "$(PHAR_PHP)"; \
+ fi;`
+ PHP_PHARCMD_BANG = `$(top_srcdir)/build/shtool echo -n -- "$(INSTALL_ROOT)$(bindir)/$(program_prefix)php$(program_suffix)$(EXEEXT)";`
+
diff --git a/srcpkgs/php8/patches/php-phpize-sysroot-support.patch b/srcpkgs/php8/patches/php-phpize-sysroot-support.patch
new file mode 100644
index 000000000000..76cff3f81664
--- /dev/null
+++ b/srcpkgs/php8/patches/php-phpize-sysroot-support.patch
@@ -0,0 +1,28 @@
+--- a/scripts/phpize.m4 2020-03-17 11:40:21.000000000 +0100
++++ b/scripts/phpize.m4 2020-04-15 12:27:36.400466387 +0200
+@@ -44,6 +44,12 @@ PHP_ARG_WITH([libdir],
+ [lib],
+ [no])
+
++PHP_ARG_WITH([sysroot],,
++ [AS_HELP_STRING([--with-sysroot=NAME],
++ [System sysroot])],
++ [no],
++ [no])
++
+ PHP_RUNPATH_SWITCH
+ PHP_SHLIB_SUFFIX_NAMES
+
+@@ -58,7 +64,11 @@ dnl For BC.
+ PHP_CONFIG=$PHP_PHP_CONFIG
+ prefix=`$PHP_CONFIG --prefix 2>/dev/null`
+ phpincludedir=`$PHP_CONFIG --include-dir 2>/dev/null`
+-INCLUDES=`$PHP_CONFIG --includes 2>/dev/null`
++if test "x$PHP_SYSROOT" = xno; then :
++ INCLUDES=`$PHP_CONFIG --includes 2>/dev/null`
++else
++ INCLUDES=`$PHP_CONFIG --includes 2>/dev/null | sed "s#-I#-I$PHP_SYSROOT#g"`
++fi
+ EXTENSION_DIR=`$PHP_CONFIG --extension-dir 2>/dev/null`
+ PHP_EXECUTABLE=`$PHP_CONFIG --php-binary 2>/dev/null`
+
diff --git a/srcpkgs/php8/patches/php.ini.patch b/srcpkgs/php8/patches/php.ini.patch
new file mode 100644
index 000000000000..14efedc578e8
--- /dev/null
+++ b/srcpkgs/php8/patches/php.ini.patch
@@ -0,0 +1,24 @@
+diff --git php.ini-production php.ini-production
+index 794d3e8ddb..c7acf9c883 100644
+--- a/php.ini-production
++++ b/php.ini-production
+@@ -729,7 +729,7 @@ default_charset = "UTF-8"
+ ;;;;;;;;;;;;;;;;;;;;;;;;;
+
+ ; UNIX: "/path1:/path2"
+-;include_path = ".:/php/includes"
++include_path = ".:/usr/share/pear"
+ ;
+ ; Windows: "\path1;\path2"
+ ;include_path = ".;c:\php\includes"
+@@ -752,9 +752,7 @@ user_dir =
+
+ ; Directory in which the loadable extensions (modules) reside.
+ ; http://php.net/extension-dir
+-;extension_dir = "./"
+-; On windows:
+-;extension_dir = "ext"
++extension_dir = "/usr/lib/php8/modules/"
+
+ ; Directory where the temporary files should be placed.
+ ; Defaults to the system default (see sys_get_temp_dir)
diff --git a/srcpkgs/php8/template b/srcpkgs/php8/template
new file mode 100644
index 000000000000..0b9c0a0fedf9
--- /dev/null
+++ b/srcpkgs/php8/template
@@ -0,0 +1,335 @@
+# Template file for 'php8'
+pkgname=php8
+version=8.0.16
+revision=1
+wrksrc="php-${version}"
+hostmakedepends="bison pkg-config apache-devel curl"
+makedepends="apache-devel enchant2-devel freetds-devel freetype-devel gdbm-devel
+ gmp-devel libcurl-devel libjpeg-turbo-devel libmariadbclient-devel
+ libsodium-devel libtidy5-devel libxslt-devel libzip-devel net-snmp-devel
+ postgresql-libs-devel readline-devel sqlite-devel unixodbc-devel pcre2-devel
+ libffi-devel oniguruma-devel gd-devel"
+short_desc="HTML-embedded scripting language"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="PHP-3.01"
+homepage="https://www.php.net"
+distfiles="https://www.php.net/distributions/php-${version}.tar.gz"
+checksum=ce0ea32ff9c5af18cfb70197b40caf55824400dc8d5b4258a783ec9168baa5b1
+
+fetch_cmd="curl -O"
+
+conf_files="/etc/php8/php.ini"
+
+lib32disabled=yes
+
+if [ -n "$CROSS_BUILD" ]; then
+ # phar needs php to build
+ hostmakedepends+=" php8"
+ CFLAGS+=" -DHAVE_LIBDL
+ -DHAVE_DLOPEN
+ -DHAVE_DLSYM
+ -DHAVE_SHM_IPC
+ -DHAVE_SHM_MMAP_ANON
+ -DHAVE_SHM_MMAP_ZERO
+ -DHAVE_SHM_MMAP_POSIX
+ -DHAVE_SHM_MMAP_FILE"
+fi
+
+do_build() {
+ local _phpconfig="--srcdir=.. \
+ --config-cache \
+ --prefix=/usr \
+ --sbindir=/usr/bin \
+ --sysconfdir=/etc/php8 \
+ --localstatedir=/var \
+ --with-layout=GNU \
+ --with-config-file-path=/etc/php8 \
+ --with-config-file-scan-dir=/etc/php8/conf.d \
+ --disable-rpath \
+ --mandir=/usr/share/man \
+ --libdir=/usr/lib/php8 \
+ --datarootdir=/usr/share/php8 \
+ --datadir=/usr/share/php8 \
+ --program-suffix=8 \
+ --includedir=/usr/include/php8 \
+ "
+
+ local _phpextensions="--enable-bcmath=shared \
+ --enable-calendar=shared \
+ --enable-exif=shared \
+ --enable-ftp=shared \
+ --enable-intl=shared \
+ --enable-mbstring \
+ --enable-opcache \
+ --enable-pcntl \
+ --enable-phar=shared \
+ --enable-posix=shared \
+ --enable-shmop=shared \
+ --enable-soap=shared \
+ --enable-sockets=shared \
+ --enable-sysvmsg=shared \
+ --enable-sysvsem=shared \
+ --enable-sysvshm=shared \
+ --enable-mysqlnd \
+ --enable-gd=shared \
+ --with-external-gd \
+ --with-ffi=shared \
+ --with-bz2=shared,$XBPS_CROSS_BASE/usr/ \
+ --with-curl=shared \
+ --with-db4=$XBPS_CROSS_BASE/usr \
+ --with-enchant=shared,$XBPS_CROSS_BASE/usr \
+ --with-gdbm=$XBPS_CROSS_BASE/usr \
+ --with-gettext=shared \
+ --with-gmp=shared \
+ --with-iconv=shared \
+ --with-ldap=shared,$XBPS_CROSS_BASE/usr \
+ --with-ldap-sasl \
+ --with-sodium=shared \
+ --with-mhash \
+ --with-mysql-sock=/run/mysqld/mysqld.sock \
+ --with-mysqli=shared,mysqlnd \
+ --with-openssl=shared \
+ --with-external-pcre \
+ --without-pear \
+ --with-pdo-mysql=shared,mysqlnd \
+ --with-pdo-odbc=shared,unixODBC,$XBPS_CROSS_BASE/usr \
+ --with-pdo-pgsql=shared,$XBPS_CROSS_BASE/usr \
+ --with-pdo-sqlite=shared,$XBPS_CROSS_BASE/usr \
+ --with-pgsql=shared,$XBPS_CROSS_BASE/usr \
+ --with-readline=$XBPS_CROSS_BASE/usr \
+ --with-snmp=shared,$XBPS_CROSS_BASE/usr \
+ --with-sqlite3=shared,$XBPS_CROSS_BASE/usr \
+ --with-unixODBC=shared,$XBPS_CROSS_BASE/usr \
+ --with-xsl=shared,$XBPS_CROSS_BASE/usr \
+ --with-tidy=shared,$XBPS_CROSS_BASE/usr \
+ --with-zip=shared \
+ --with-zlib \
+ ${configure_args} \
+ "
+ if [ -n "$CROSS_BUILD" ]; then
+ local _make_env="PHAR_PHP=/usr/bin/php8 PHAR_PHP_MODULES=/usr/lib/php8/modules"
+ fi
+
+ EXTENSION_DIR=/usr/lib/php8/modules
+ export EXTENSION_DIR
+ PEAR_INSTALLDIR=/usr/share/pear
+ export PEAR_INSTALLDIR
+ EXTRA_LIBS="-ldl"
+ export EXTRA_LIBS
+
+ # cgi,cli,embed,fcgi,fpm
+ mkdir -p build
+ cd build
+ ln -s ${wrksrc}/configure
+ ./configure ${_phpconfig} \
+ --host=${XBPS_CROSS_TRIPLET} \
+ --enable-cgi \
+ --enable-fpm \
+ --with-fpm-user=http \
+ --with-fpm-group=http \
+ --enable-embed=shared \
+ ${_phpextensions}
+ make ${makejobs} ${_make_env}
+
+ # apache
+ # reuse the previous run; this will save us a lot of time
+ cp -a ${wrksrc}/build ${wrksrc}/build-apache
+ cd ${wrksrc}/build-apache
+ ./configure ${_phpconfig} \
+ --host=${XBPS_CROSS_TRIPLET} \
+ --with-apxs2 \
+ ${_phpextensions}
+ make ${makejobs} ${_make_env}
+}
+
+do_install() {
+ cd ${wrksrc}/build
+ local _env="INSTALL_ROOT=${DESTDIR}"
+ if [ -n "$CROSS_BUILD" ]; then
+ _env+=" PHAR_PHP=/usr/bin/php8"
+ fi
+ make ${_env} install-{modules,cli,build,headers,programs,pharcmd}
+
+ # install php.ini
+ vinstall ${wrksrc}/php.ini-production 644 etc/php8 php.ini
+ # remove static modules
+ rm -f ${DESTDIR}/usr/lib/php8/modules/*.a
+}
+
+php8-devel_package() {
+ short_desc+=" - development files"
+ pkg_install() {
+ vmove usr/include
+ vmove usr/lib/php8/build
+ vmove usr/bin/php-config8
+ vmove usr/bin/phpize8
+ vmove usr/share/man/man1/phpize8.1
+ vmove usr/share/man/man1/php-config8.1
+ }
+}
+
+php8-phpdbg_package() {
+ short_desc+=" - interactive debugger"
+ depends="php8-${version}_${revision}"
+ pkg_install() {
+ cd ${wrksrc}/build
+ make INSTALL_ROOT=${PKGDESTDIR} install-phpdbg
+ }
+}
+
+php8-cgi_package() {
+ short_desc+=' - CGI and FCGI SAPI'
+ depends="php8-${version}_${revision}"
+ pkg_install() {
+ cd ${wrksrc}/build
+ make INSTALL_ROOT=${PKGDESTDIR} install-cgi
+ }
+}
+
+php8-apache_package() {
+ short_desc+=' - Apache SAPI'
+ depends="php8-${version}_${revision}"
+ conf_files="/etc/apache/extra/php8_module.conf"
+ pkg_install() {
+ vinstall ${wrksrc}/build-apache/libs/libphp.so 755 usr/libexec/httpd/modules libphp.so
+ vinstall ${FILESDIR}/apache.conf 644 etc/apache/extra php8_module.conf
+ }
+}
+
+php8-fpm_package() {
+ short_desc+=' - FastCGI Process Manager'
+ depends="php8-${version}_${revision}"
+ conf_files="/etc/php8/php-fpm.conf /etc/php8/php-fpm.d/*"
+ pkg_install() {
+ cd ${wrksrc}/build
+ make INSTALL_ROOT=${PKGDESTDIR} install-fpm
+ vsv php-fpm8
+ }
+}
+
+php8-embed_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - Embed SAPI'
+ pkg_install() {
+ cd ${wrksrc}/build
+ make INSTALL_ROOT=${PKGDESTDIR} PHP_SAPI=embed install-sapi
+ }
+}
+
+php8-enchant_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - enchant module'
+ pkg_install() {
+ vmove usr/lib/php8/modules/enchant.so
+ }
+}
+
+php8-gd_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - gd module'
+ pkg_install() {
+ vmove usr/lib/php8/modules/gd.so
+ }
+}
+
+php8-intl_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - Internationalization module'
+ pkg_install() {
+ vmove usr/lib/php8/modules/intl.so
+ }
+}
+
+php8-ldap_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - LDAP module'
+ pkg_install() {
+ vmove usr/lib/php8/modules/ldap.so
+ }
+}
+
+php8-mysql_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - MySQL modules'
+ pkg_install() {
+ vmove "usr/lib/php8/modules/*mysql*.so"
+ }
+}
+
+php8-odbc_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - ODBC modules'
+ pkg_install() {
+ vmove "usr/lib/php8/modules/*odbc.so"
+ }
+}
+
+php8-pgsql_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - PostgreSQL modules'
+ pkg_install() {
+ vmove "usr/lib/php8/modules/*pgsql.so"
+ }
+}
+
+php8-snmp_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - snmp module'
+ pkg_install() {
+ vmove usr/lib/php8/modules/snmp.so
+ }
+}
+
+php8-sqlite_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - sqlite module'
+ pkg_install() {
+ vmove "usr/lib/php8/modules/*sqlite*.so"
+ }
+}
+
+php8-tidy_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - tidy HTML module'
+ pkg_install() {
+ vmove "usr/lib/php8/modules/*tidy*.so"
+ }
+}
+
+php8-xsl_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - XSL module'
+ pkg_install() {
+ vmove usr/lib/php8/modules/xsl.so
+ }
+}
+
+php8-sodium_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - sodium module'
+ pkg_install() {
+ vmove usr/lib/php8/modules/sodium.so
+ }
+}
+
+php8-ffi_package() {
+ lib32disabled=yes
+ depends="php8-${version}_${revision}"
+ short_desc+=' - FFI module'
+ pkg_install() {
+ vmove usr/lib/php8/modules/ffi.so
+ }
+}
From 26c6a558bebaa28d783f2668aacdd5edd24a453f Mon Sep 17 00:00:00 2001
From: Joel Beckmeyer <joel@beckmeyer.us>
Date: Mon, 7 Mar 2022 20:33:01 -0500
Subject: [PATCH 2/7] New package: php8-apcu-5.1.21
---
srcpkgs/php8-apcu/INSTALL.msg | 3 +++
srcpkgs/php8-apcu/template | 29 +++++++++++++++++++++++++++++
srcpkgs/php8-apcu/update | 2 ++
3 files changed, 34 insertions(+)
create mode 100644 srcpkgs/php8-apcu/INSTALL.msg
create mode 100644 srcpkgs/php8-apcu/template
create mode 100644 srcpkgs/php8-apcu/update
diff --git a/srcpkgs/php8-apcu/INSTALL.msg b/srcpkgs/php8-apcu/INSTALL.msg
new file mode 100644
index 000000000000..9da8a70ccc2b
--- /dev/null
+++ b/srcpkgs/php8-apcu/INSTALL.msg
@@ -0,0 +1,3 @@
+To enable APCu add the following line to your php.ini:
+
+ extension=apcu.so
diff --git a/srcpkgs/php8-apcu/template b/srcpkgs/php8-apcu/template
new file mode 100644
index 000000000000..daa464718437
--- /dev/null
+++ b/srcpkgs/php8-apcu/template
@@ -0,0 +1,29 @@
+# Template file for 'php8-apcu'
+pkgname=php8-apcu
+version=5.1.21
+revision=1
+wrksrc="apcu-${version}"
+build_style=gnu-configure
+configure_args="--with-php-config=/usr/bin/php-config8"
+make_check_target=test
+hostmakedepends="autoconf php8-devel"
+makedepends="php8-devel pcre2-devel"
+depends="php8>=8.0.16"
+short_desc="In-memory key-value store for PHP"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="PHP-3.01"
+homepage="https://pecl.php.net/package/APCu"
+distfiles="https://pecl.php.net/get/apcu-${version}.tgz"
+checksum=1033530448696ee7cadec85050f6df5135fb1330072ef2a74569392acfecfbc1
+
+pre_configure() {
+ phpize8
+}
+
+pre_install() {
+ make_install_args="INSTALL_ROOT=$DESTDIR"
+}
+
+post_install() {
+ rm -r $DESTDIR/usr/include
+}
diff --git a/srcpkgs/php8-apcu/update b/srcpkgs/php8-apcu/update
new file mode 100644
index 000000000000..ad899519e313
--- /dev/null
+++ b/srcpkgs/php8-apcu/update
@@ -0,0 +1,2 @@
+site="https://pecl.php.net/package/APCu"
+pattern="apcu-\K[\d\.]*(?=\.tgz)"
From 004826231232f1efa58b6ea935cfbf77597a86a3 Mon Sep 17 00:00:00 2001
From: Joel Beckmeyer <joel@beckmeyer.us>
Date: Mon, 7 Mar 2022 20:37:16 -0500
Subject: [PATCH 3/7] New package: php8-imagick-3.7.0
---
srcpkgs/php8-imagick/INSTALL.msg | 3 ++
...le-libmagick-header-file-search-path.patch | 17 +++++++++++
srcpkgs/php8-imagick/template | 29 +++++++++++++++++++
3 files changed, 49 insertions(+)
create mode 100644 srcpkgs/php8-imagick/INSTALL.msg
create mode 100644 srcpkgs/php8-imagick/patches/0001-fix-cross-compile-libmagick-header-file-search-path.patch
create mode 100644 srcpkgs/php8-imagick/template
diff --git a/srcpkgs/php8-imagick/INSTALL.msg b/srcpkgs/php8-imagick/INSTALL.msg
new file mode 100644
index 000000000000..00497519fcee
--- /dev/null
+++ b/srcpkgs/php8-imagick/INSTALL.msg
@@ -0,0 +1,3 @@
+To enable the Imagick extension add the following line to your php.ini:
+
+ extension=imagick.so
diff --git a/srcpkgs/php8-imagick/patches/0001-fix-cross-compile-libmagick-header-file-search-path.patch b/srcpkgs/php8-imagick/patches/0001-fix-cross-compile-libmagick-header-file-search-path.patch
new file mode 100644
index 000000000000..16b8aaa57371
--- /dev/null
+++ b/srcpkgs/php8-imagick/patches/0001-fix-cross-compile-libmagick-header-file-search-path.patch
@@ -0,0 +1,17 @@
+--- a/imagemagick.m4 2021-09-09 10:53:42.287881616 +0200
++++ b/imagemagick.m4 2021-09-09 11:14:47.662312430 +0200
+@@ -167,6 +167,14 @@ AC_DEFUN([IM_FIND_IMAGEMAGICK],[
+
+ AC_MSG_RESULT([user location ${IM_IMAGEMAGICK_PREFIX}/include/ImageMagick-${IM_MAJOR_VERSION}/wand/MagickWand.h])
+
++ elif test -r "${IM_IMAGEMAGICK_PREFIX}/include/ImageMagick-${IM_MAJOR_VERSION}/MagickWand/MagickWand.h"; then
++
++ IM_INCLUDE_FORMAT="MagickWand/MagickWand.h"
++ IM_HEADER_STYLE="SEVEN"
++ AC_DEFINE([IM_MAGICKWAND_HEADER_STYLE_SEVEN], [1], [ImageMagick 7.x style header])
++
++ AC_MSG_RESULT([${IM_PREFIX}/include/ImageMagick-${IM_MAJOR_VERSION}/MagickWand/MagickWand.h])
++
+ elif test -r "${IM_PREFIX}/include/ImageMagick-${IM_MAJOR_VERSION}/MagickWand/MagickWand.h"; then
+
+ IM_INCLUDE_FORMAT="MagickWand/MagickWand.h"
diff --git a/srcpkgs/php8-imagick/template b/srcpkgs/php8-imagick/template
new file mode 100644
index 000000000000..3de4da2c86b0
--- /dev/null
+++ b/srcpkgs/php8-imagick/template
@@ -0,0 +1,29 @@
+# Template file for 'php8-imagick'
+pkgname=php8-imagick
+version=3.7.0
+revision=1
+wrksrc="imagick-$version"
+build_style=gnu-configure
+configure_args="--with-imagick=${XBPS_CROSS_BASE}/usr \
+ --with-php-config=/usr/bin/php-config8"
+hostmakedepends="php8-devel autoconf pkg-config"
+makedepends="php8-devel pcre2-devel libmagick-devel"
+depends="php8>=8.0.16"
+short_desc="Provides a PHP wrapper to the ImageMagick library"
+maintainer="Orphaned <orphan@voidlinux.org>"
+license="PHP-3.01"
+homepage="https://pecl.php.net/package/imagick"
+distfiles="https://pecl.php.net/get/imagick-$version.tgz"
+checksum=5a364354109029d224bcbb2e82e15b248be9b641227f45e63425c06531792d3e
+
+pre_configure() {
+ phpize8
+}
+
+pre_install() {
+ make_install_args="INSTALL_ROOT=$DESTDIR"
+}
+
+post_install() {
+ rm -r $DESTDIR/usr/include
+}
From 821626dfde5b086a7dcce78a04087ffbe8162f49 Mon Sep 17 00:00:00 2001
From: Joel Beckmeyer <joel@beckmeyer.us>
Date: Tue, 8 Mar 2022 08:27:29 -0500
Subject: [PATCH 4/7] New package: php8-ast-1.0.16
---
srcpkgs/php8-ast/INSTALL.msg | 2 ++
srcpkgs/php8-ast/template | 25 +++++++++++++++++++++++++
2 files changed, 27 insertions(+)
create mode 100644 srcpkgs/php8-ast/INSTALL.msg
create mode 100644 srcpkgs/php8-ast/template
diff --git a/srcpkgs/php8-ast/INSTALL.msg b/srcpkgs/php8-ast/INSTALL.msg
new file mode 100644
index 000000000000..0dd0b5df2d96
--- /dev/null
+++ b/srcpkgs/php8-ast/INSTALL.msg
@@ -0,0 +1,2 @@
+To enable the ast extension please add the following to php.ini:
+ extension=ast.so
diff --git a/srcpkgs/php8-ast/template b/srcpkgs/php8-ast/template
new file mode 100644
index 000000000000..71737dbe0cd4
--- /dev/null
+++ b/srcpkgs/php8-ast/template
@@ -0,0 +1,25 @@
+# Template file for 'php8-ast'
+pkgname=php8-ast
+version=1.0.16
+revision=1
+wrksrc="ast-${version}"
+build_style=gnu-configure
+configure_args="--with-php-config=/usr/bin/php-config8"
+hostmakedepends="php8-devel autoconf"
+makedepends="php8-devel"
+depends="php8>=8.0.16"
+short_desc="Exposes the abstract syntax tree generated by PHP"
+maintainer="Merlin Diavova <merlindiavova@gmail.com>"
+license="BSD-3-Clause"
+homepage="https://github.com/nikic/php-ast"
+distfiles="https://pecl.php.net/get/ast-${version}.tgz"
+checksum=45bda34b780c4661ce77cf65cd8a504fb56526d4b456edcc97d791c86f3879ce
+
+pre_configure() {
+ phpize8
+}
+
+do_install() {
+ make INSTALL_ROOT=${DESTDIR} install
+ vlicense LICENSE
+}
From d53df6e69427c6555bd5e29ba4db4be33d8be6da Mon Sep 17 00:00:00 2001
From: Joel Beckmeyer <joel@beckmeyer.us>
Date: Tue, 8 Mar 2022 08:31:05 -0500
Subject: [PATCH 5/7] New package: php8-igbinary-3.2.7
---
srcpkgs/php8-igbinary/template | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
create mode 100644 srcpkgs/php8-igbinary/template
diff --git a/srcpkgs/php8-igbinary/template b/srcpkgs/php8-igbinary/template
new file mode 100644
index 000000000000..7eaf19056db6
--- /dev/null
+++ b/srcpkgs/php8-igbinary/template
@@ -0,0 +1,25 @@
+# Template file for 'php8-igbinary'
+pkgname=php8-igbinary
+version=3.2.7
+revision=1
+wrksrc="igbinary-${version}"
+build_style=gnu-configure
+configure_args="--with-php-config=/usr/bin/php-config8"
+hostmakedepends="autoconf php8-devel"
+makedepends="php8-devel"
+depends="php8>8.0.16"
+short_desc="Igbinary is a drop in replacement for the standard php serializer"
+maintainer="Merlin Diavova <merlindiavova@gmail.com>"
+license="BSD-3-Clause"
+homepage="https://github.com/igbinary/igbinary/"
+distfiles="https://pecl.php.net/get/igbinary-${version}.tgz"
+checksum=d0dc0d0b56a985f4f52cea20717133d3da05368876bc0f94317c1e60e0319e7d
+
+pre_configure() {
+ phpize8
+}
+
+do_install() {
+ make INSTALL_ROOT="${DESTDIR}" install
+ vlicense COPYING
+}
From 26d4d619c660070600c4fc157df495cef9761265 Mon Sep 17 00:00:00 2001
From: Joel Beckmeyer <joel@beckmeyer.us>
Date: Tue, 8 Mar 2022 11:54:40 -0500
Subject: [PATCH 6/7] New package: composer8-2.2.7
---
srcpkgs/composer8/files/composer8 | 2 ++
srcpkgs/composer8/template | 26 ++++++++++++++++++++++++++
2 files changed, 28 insertions(+)
create mode 100644 srcpkgs/composer8/files/composer8
create mode 100644 srcpkgs/composer8/template
diff --git a/srcpkgs/composer8/files/composer8 b/srcpkgs/composer8/files/composer8
new file mode 100644
index 000000000000..f75085dbfb6f
--- /dev/null
+++ b/srcpkgs/composer8/files/composer8
@@ -0,0 +1,2 @@
+#!/bin/sh
+php8 -f /usr/libexec/composer.phar8
diff --git a/srcpkgs/composer8/template b/srcpkgs/composer8/template
new file mode 100644
index 000000000000..c1311bcbf455
--- /dev/null
+++ b/srcpkgs/composer8/template
@@ -0,0 +1,26 @@
+# Template file for 'composer8'
+pkgname=composer8
+version=2.2.7
+revision=1
+build_style=fetch
+depends="php8"
+short_desc="Dependency manager for PHP"
+maintainer="Felipe Nogueira <contato.fnog@gmail.com>"
+license="MIT"
+homepage="https://getcomposer.org/"
+changelog="https://raw.githubusercontent.com/composer/composer/main/CHANGELOG.md"
+distfiles="https://github.com/composer/composer/releases/download/${version}/composer.phar
+ https://raw.githubusercontent.com/composer/composer/main/LICENSE"
+checksum="10040ded663541990eef8ce1f6fa44cb3b4a47e145efb8e9e59907a15068033d
+ 7855ac293067aebe7e51afdd23b9dea54b8be24187dbecc9b9142581c37f596c"
+
+do_install() {
+ vbin ${FILESDIR}/composer8
+
+ vinstall composer.phar 644 usr/libexec composer.phar8
+ vlicense LICENSE
+
+ vmkdir /etc/php8/conf.d
+ printf 'extension=%s\n' phar iconv openssl zip \
+ >${DESTDIR}/etc/php8/conf.d/composer.ini
+}
From 2b3812ab38fbf90652ea69bd73ebb8daf3924b00 Mon Sep 17 00:00:00 2001
From: Joel Beckmeyer <joel@beckmeyer.us>
Date: Tue, 8 Mar 2022 13:30:07 -0500
Subject: [PATCH 7/7] New package: xdebug8-3.1.3
---
srcpkgs/xdebug8/INSTALL.msg | 1 +
srcpkgs/xdebug8/template | 29 +++++++++++++++++++++++++++++
srcpkgs/xdebug8/update | 1 +
3 files changed, 31 insertions(+)
create mode 100644 srcpkgs/xdebug8/INSTALL.msg
create mode 100644 srcpkgs/xdebug8/template
create mode 100644 srcpkgs/xdebug8/update
diff --git a/srcpkgs/xdebug8/INSTALL.msg b/srcpkgs/xdebug8/INSTALL.msg
new file mode 100644
index 000000000000..04e3343216f7
--- /dev/null
+++ b/srcpkgs/xdebug8/INSTALL.msg
@@ -0,0 +1 @@
+You should add 'zend_extension="xdebug.so"' to php.ini
diff --git a/srcpkgs/xdebug8/template b/srcpkgs/xdebug8/template
new file mode 100644
index 000000000000..0422b366cf88
--- /dev/null
+++ b/srcpkgs/xdebug8/template
@@ -0,0 +1,29 @@
+# Template file for 'xdebug8'
+pkgname=xdebug8
+version=3.1.3
+revision=1
+wrksrc="xdebug-${version}"
+build_style=gnu-configure
+configure_args="--with-php-config=/usr/bin/php-config8"
+hostmakedepends="autoconf"
+makedepends="php8-devel"
+short_desc="PHP debugging extension"
+maintainer="Alexander Mamay <alexander@mamay.su>"
+license="PHP-3.0"
+homepage="http://xdebug.org"
+changelog="https://xdebug.org/updates"
+distfiles="http://xdebug.org/files/xdebug-${version,,}.tgz"
+checksum=37d0a6701955f5b3406c6c327b7702bd7c21462e656f3b4cce24a05258013d4e
+
+if [ "$CROSS_BUILD" ]; then
+ hostmakedepends+=" php8-devel"
+fi
+
+pre_configure() {
+ phpize8
+}
+
+do_install() {
+ make INSTALL_ROOT=${DESTDIR} install
+ vlicense LICENSE
+}
diff --git a/srcpkgs/xdebug8/update b/srcpkgs/xdebug8/update
new file mode 100644
index 000000000000..ec68403a03ba
--- /dev/null
+++ b/srcpkgs/xdebug8/update
@@ -0,0 +1 @@
+ignore="*alpha* *beta*"
next prev parent reply other threads:[~2022-03-08 19:10 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-08 2:11 [PR PATCH] " TinfoilSubmarine
2022-03-08 2:43 ` TinfoilSubmarine
2022-03-08 2:50 ` [PR PATCH] [Updated] " TinfoilSubmarine
2022-03-08 2:55 ` TinfoilSubmarine
2022-03-08 14:28 ` TinfoilSubmarine
2022-03-08 14:31 ` TinfoilSubmarine
2022-03-08 16:54 ` [PR PATCH] [Updated] " TinfoilSubmarine
2022-03-08 17:51 ` TinfoilSubmarine
2022-03-08 18:30 ` [PR PATCH] [Updated] [WIP] " TinfoilSubmarine
2022-03-08 19:10 ` TinfoilSubmarine [this message]
2022-03-08 19:49 ` TinfoilSubmarine
2022-03-15 19:47 ` [PR PATCH] [Updated] " TinfoilSubmarine
2022-03-15 19:49 ` [PR PATCH] [Updated] New packages: php8.0-*, php8.1-*, xdebug8.0/1, composer8.0/1 TinfoilSubmarine
2022-03-16 3:47 ` TinfoilSubmarine
2022-03-27 8:31 ` [PR REVIEW] " paper42
2022-03-28 14:17 ` [PR PATCH] [Updated] " TinfoilSubmarine
2022-03-28 14:17 ` [PR REVIEW] " TinfoilSubmarine
2022-03-28 14:17 ` TinfoilSubmarine
2022-03-28 14:47 ` [PR PATCH] [Updated] " TinfoilSubmarine
2022-04-09 10:21 ` [PR REVIEW] " paper42
2022-04-10 0:22 ` [PR PATCH] [Updated] " TinfoilSubmarine
2022-04-11 13:19 ` TinfoilSubmarine
2022-04-19 17:19 ` TinfoilSubmarine
2022-04-19 18:45 ` New packages: php8.[01]*, xdebug8.[01], composer8.[01] paper42
2022-04-19 19:24 ` [PR PATCH] [Updated] " TinfoilSubmarine
2022-04-19 20:01 ` TinfoilSubmarine
2022-04-29 10:33 ` [PR PATCH] [Merged]: " paper42
2022-05-06 20:10 ` jchook
2022-05-06 20:10 ` jchook
2022-05-06 20:10 ` jchook
2022-05-06 21:02 ` TinfoilSubmarine
2022-05-06 21:19 ` paper42
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220308191017.zDn0nI1kXcA2A3NcvEoCqZlOsJJ_z1P9nOJMS9jP73I@z \
--to=tinfoilsubmarine@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).