From: Ondřej Surý Date: Fri, 30 Aug 2024 09:13:51 +0000 (+0200) Subject: Import php8.2_8.2.23-1.debian.tar.xz X-Git-Tag: archive/raspbian/8.2.23-1+rpi1^2~49^2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=0d1363ce8fe76a72d3c7a840439a36002b9e91c8;p=php8.2.git Import php8.2_8.2.23-1.debian.tar.xz [dgit import tarball php8.2 8.2.23-1 php8.2_8.2.23-1.debian.tar.xz] --- 0d1363ce8fe76a72d3c7a840439a36002b9e91c8 diff --git a/PEAR-Builder-print-info-about-php-dev.patch b/PEAR-Builder-print-info-about-php-dev.patch new file mode 100644 index 00000000..95d41633 --- /dev/null +++ b/PEAR-Builder-print-info-about-php-dev.patch @@ -0,0 +1,10 @@ +--- a/PEAR/Builder.php 2011-05-14 20:43:01.000000000 +0000 ++++ b/PEAR/Builder.php 2011-05-26 15:56:41.096485701 +0000 +@@ -309,5 +309,7 @@ class PEAR_Builder extends PEAR_Common + } + + if (!$err) { ++ print "If the command failed with 'phpize: not found' then you need to install php@PHP_VERSION@-dev package"; ++ print "You can do it by running 'apt-get install php@PHP_VERSION@-dev' as a root user"; + return $this->raiseError("`phpize' failed"); + } diff --git a/README.Debian.security b/README.Debian.security new file mode 100644 index 00000000..e75c57b1 --- /dev/null +++ b/README.Debian.security @@ -0,0 +1,23 @@ +The Debian stable security team does not provide security support for +certain configurations known to be inherently insecure. This includes +the interpreter itself, extensions, and user scripts written in the PHP +language. Most specifically, but not exclusively, the security team will +not provide support for the following. + + * Security issues which are caused by careless programming, such as: + - extracting a tar file without first checking the contents; + - using unserialize() on untrusted data; + - relying on a specific value of short_open_tag. + + * Vulnerabilities involving any kind of open_basedir violation, as + this feature is not considered a security model either by us or by + PHP upstream. + + * Any "works as expected" vulnerabilities, such as "user can cause + PHP to crash by writing a malicious PHP script", unless such + vulnerabilities involve some kind of higher-level DoS or privilege + escalation that would not otherwise be available. + +PHP upstream has published a statement regarding their view on security +and the PHP interpreter: +http://www.php.net/security-note.php diff --git a/README.source b/README.source new file mode 100644 index 00000000..bd56f405 --- /dev/null +++ b/README.source @@ -0,0 +1,45 @@ + == Generation of the php5-dbg package Depends == + +The following command can be used to generate a heuristic list of +packages the php5-dbg package probably needs to Depend on: + +dh_testdir && egrep '^Package' debian/control | cut '-d ' -f2 | \ + egrep -v '(^php5|dbg|dev|common|pear)$' | tr "\n" "|" | sed 's/|$//' |\ + sed -r 's/([^|]+)(\||$)/ \1 (= ${binary:Version}) \2/g'; echo + + == Making some sense out of the configure options == + +The COMMON_CONFIG variable contains the configure options that are to +be used on all the SAPIs. Built-in extensions and other general options +should be set here. +The shared extensions are built when building the apache2 SAPI and as +such they need to be specified there. +The calls to configure for the other SAPIs usually only need +--without-foo when the extension or feature is otherwise enabled by +default. + + == The *modulelist files == + +When building a new module (or extension) on an individual binary +package, it must be added to the debian/modulelist file. However, if +the extension is to be included in an existing binary package, it +must be added to the debian/extramodulelist file. + +The format of these files is: +" " + +E.g. for, if we want the mysql extension to be shipped in the +php5-mysql package we use: +"mysql MySQL mysql" +But we also want mysqli and the PDO in the same package, so we add the +following lines to extramoduleslist: +"mysql MySQLi mysqli +mysql MySQL_PDO pdo_mysql" + + == More debian/rules foo == + +* The shared extensions are built under the apache2 target (see above). +* The CLI SAPI is built on the build-cli-stamp AND build-cgi-stamp, with + different configure options. + + -- Ondřej Surý , Tue, 27 Nov 2012 17:01:53 +0100 diff --git a/changelog b/changelog new file mode 100644 index 00000000..d3bfc69f --- /dev/null +++ b/changelog @@ -0,0 +1,1323 @@ +php8.2 (8.2.23-1) unstable; urgency=medium + + * New upstream version 8.2.23 + + -- Ondřej Surý Fri, 30 Aug 2024 11:13:51 +0200 + +php8.2 (8.2.22-1) unstable; urgency=medium + + * New upstream version 8.2.22 + + -- Ondřej Surý Fri, 02 Aug 2024 17:31:20 +0200 + +php8.2 (8.2.21-1) unstable; urgency=medium + + * New upstream version 8.2.21 + * Add Restart=on-failure to the systemd service file + * Remove the patch that fixed GH-14480 (merged upstream) + + -- Ondřej Surý Thu, 04 Jul 2024 17:15:46 +0200 + +php8.2 (8.2.20-3) unstable; urgency=medium + + * Add Breaks on extensions using php_strlcpy (Closes: #1074167) + + -- Ondřej Surý Mon, 24 Jun 2024 13:16:58 +0200 + +php8.2 (8.2.20-2) unstable; urgency=medium + + * Fix GH-14480: Method visibility issue introduced in version 8.3.8 (#14484) + + -- Ondřej Surý Sat, 08 Jun 2024 23:18:10 +0200 + +php8.2 (8.2.20-1) unstable; urgency=medium + + * New upstream version 8.2.20 + + [CVE-2024-4577]: Bypass of CVE-2012-1823, Argument Injection in + PHP-CGI. + + [CVE-2024-5458]: Filter bypass in filter_var FILTER_VALIDATE_URL. + + [CVE-2024-5585]: Bypass of CVE-2024-1874. + + -- Ondřej Surý Thu, 06 Jun 2024 17:25:11 +0200 + +php8.2 (8.2.19-2) unstable; urgency=medium + + * Fix the php-config mangling script in configure embeds the options in + a single quote + + -- Ondřej Surý Thu, 23 May 2024 12:29:27 +0200 + +php8.2 (8.2.19-1) unstable; urgency=medium + + * New upstream version 8.2.19 + + -- Ondřej Surý Mon, 13 May 2024 20:12:23 +0200 + +php8.2 (8.2.18-1) unstable; urgency=medium + + * New upstream version 8.2.18 + + -- Ondřej Surý Thu, 11 Apr 2024 22:30:26 +0200 + +php8.2 (8.2.17-1) unstable; urgency=medium + + [ Ondřej Surý ] + * New upstream version 8.2.17 + * Remove hardcoded dependency on libmagic1 (Closes: #1065985) + * Just don't set PHP extra version at all - it makes a little + sense when we are just updating upstream versions + + [ Andrey Rakhmatullin ] + * Fix FTBFS with -Werror=implicit-function-declaration (Closes: #1066234). + + -- Ondřej Surý Sat, 16 Mar 2024 09:29:51 +0100 + +php8.2 (8.2.16-2) unstable; urgency=medium + + * Regenerate d/tests for correct PHP version (Closes: #1064174) + + -- Ondřej Surý Sun, 18 Feb 2024 08:09:07 +0100 + +php8.2 (8.2.16-1) unstable; urgency=medium + + * New upstream version 8.2.16 + + -- Ondřej Surý Fri, 16 Feb 2024 16:33:12 +0100 + +php8.2 (8.2.15-1) unstable; urgency=medium + + [ Ondřej Surý ] + * New upstream version 8.2.15 + + [ Athos Ribeiro ] + * Fix PHP_EXTRA_VERSION setting + * Test the PHP_EXTRA_VERSION setting + * Move disabling the upstream GC routine to a patch (Closes: #831752) + + -- Ondřej Surý Sat, 20 Jan 2024 14:05:48 +0100 + +php8.2 (8.2.14-1) unstable; urgency=medium + + * New upstream version 8.2.14 + + -- Ondřej Surý Thu, 21 Dec 2023 21:08:22 +0100 + +php8.2 (8.2.13-1) unstable; urgency=medium + + * New upstream version 8.2.13 + + -- Ondřej Surý Fri, 24 Nov 2023 09:40:22 +0100 + +php8.2 (8.2.12-1) unstable; urgency=medium + + * New upstream version 8.2.12 + + -- Ondřej Surý Thu, 26 Oct 2023 19:23:09 +0200 + +php8.2 (8.2.11-1) unstable; urgency=medium + + * New upstream version 8.2.11 + + -- Ondřej Surý Fri, 06 Oct 2023 11:32:59 +0200 + +php8.2 (8.2.10-2) unstable; urgency=medium + + * Add systemtap-sdt-dev on all architectures (Closes: #1051246) + + -- Ondřej Surý Tue, 05 Sep 2023 07:43:15 +0200 + +php8.2 (8.2.10-1) unstable; urgency=medium + + * New upstream version 8.2.10 + * Enable DTrace on all architectures + + -- Ondřej Surý Sat, 02 Sep 2023 08:31:05 +0200 + +php8.2 (8.2.9-2) unstable; urgency=medium + + * Pull upstream patch to revert behaviour of receiving SIGCHLD signals + back to the behaviour before 8.1.22. (GH#2007) + + -- Ondřej Surý Tue, 29 Aug 2023 12:28:29 +0200 + +php8.2 (8.2.9-1) unstable; urgency=medium + + * New upstream version 8.2.9 + + -- Ondřej Surý Wed, 16 Aug 2023 21:39:43 +0200 + +php8.2 (8.2.8-1) unstable; urgency=medium + + * New upstream version 8.2.8 + + -- Ondřej Surý Sat, 08 Jul 2023 08:49:00 +0200 + +php8.2 (8.2.7-1) unstable; urgency=medium + + * New upstream version 8.2.7 + + Fixed GHSA-76gg-c692-v2mw: Missing error check and insufficient + random bytes in HTTP Digest authentication for SOAP. + + -- Ondřej Surý Fri, 09 Jun 2023 08:51:32 +0200 + +php8.2 (8.2.6-1) unstable; urgency=medium + + * New upstream version 8.2.6 + + -- Ondřej Surý Fri, 12 May 2023 08:08:36 +0200 + +php8.2 (8.2.5-2) unstable; urgency=medium + + * Hard code sed path to /bin/sed (Closes: #1034423) + * Remove timestamps from phar (Closes: #1034892) + + -- Ondřej Surý Thu, 27 Apr 2023 10:13:47 +0200 + +php8.2 (8.2.5-1) unstable; urgency=medium + + * New upstream version 8.2.5 + + -- Ondřej Surý Fri, 14 Apr 2023 06:07:56 +0200 + +php8.2 (8.2.4-1) unstable; urgency=medium + + * New upstream version 8.2.4 + + -- Ondřej Surý Thu, 16 Mar 2023 15:24:40 +0100 + +php8.2 (8.2.3-1) unstable; urgency=medium + + * New upstream version 8.2.3 (Closes: #1031368) + + CVE-2023-0567: Fixed bug #81744 (Password_verify() always return true + with some hash). + + CVE-2023-0568: Fixed bug #81746 (1-byte array overrun in common path + resolve code). + + CVE-2023-0662: Fixed bug GHSA-54hq-v5wp-fqgv (DOS vulnerability when + parsing multipart request body). + + -- Ondřej Surý Tue, 14 Feb 2023 17:51:54 +0100 + +php8.2 (8.2.2-3) unstable; urgency=medium + + * Disable OPcache JIT by default (fixup) + + -- Ondřej Surý Tue, 07 Feb 2023 12:27:52 +0100 + +php8.2 (8.2.2-2) unstable; urgency=medium + + * Disable OPcache JIT by default (can be re-enabled at runtime) + + -- Ondřej Surý Tue, 07 Feb 2023 11:54:06 +0100 + +php8.2 (8.2.2-1) unstable; urgency=medium + + * New upstream version 8.2.2 + + -- Ondřej Surý Fri, 03 Feb 2023 10:34:17 +0100 + +php8.2 (8.2.1-2) unstable; urgency=medium + + * Fix GH-10187: Segfault in stripslashes() with arm64 + + -- Ondřej Surý Fri, 13 Jan 2023 11:35:02 +0100 + +php8.2 (8.2.1-1) unstable; urgency=medium + + * New upstream version 8.2.1 + + -- Ondřej Surý Fri, 06 Jan 2023 16:12:40 +0100 + +php8.2 (8.2.0-4) unstable; urgency=medium + + * Upload to unstable + + -- Ondřej Surý Thu, 05 Jan 2023 13:39:04 +0100 + +php8.2 (8.2.0-3) experimental; urgency=medium + + * Revert "Disable xxHash vectorization on ppc64el" + * Pull xxHash ppc64el fix from xxHash upstream + + -- Ondřej Surý Sat, 10 Dec 2022 11:52:05 +0100 + +php8.2 (8.2.0-2) experimental; urgency=medium + + * Disable xxHash vectorization on ppc64el + + -- Ondřej Surý Sat, 10 Dec 2022 11:40:36 +0100 + +php8.2 (8.2.0-1) experimental; urgency=medium + + * Update d/watch for PHP 8.2.0 + * New upstream version 8.2.0 + + -- Ondřej Surý Thu, 08 Dec 2022 14:09:11 +0100 + +php8.2 (8.2.0~rc7-1) experimental; urgency=medium + + * New upstream version 8.2.0~rc7 + + -- Ondřej Surý Sat, 26 Nov 2022 15:11:52 +0100 + +php8.2 (8.2.0~rc5-1) experimental; urgency=medium + + * New upstream version 8.2.0~rc5 + + CVE-2022-31630: OOB read due to insufficient input validation in + imageloadfont() + + CVE-2022-37454: buffer overflow in hash_update() on long parameter + + -- Ondřej Surý Fri, 28 Oct 2022 19:55:40 +0200 + +php8.2 (8.2.0~rc4-1) experimental; urgency=medium + + * New upstream version 8.2.0~rc4 + + -- Ondřej Surý Mon, 24 Oct 2022 12:09:06 +0200 + +php8.2 (8.2.0~rc3-1) experimental; urgency=medium + + * New upstream version 8.2.0~rc3 + + CVE-2022-31628: phar wrapper: DOS when using quine gzip file. + + CVE-2022-31629: Don't mangle HTTP variable names that clash with + ones that have a specific semantic meaning. + + -- Ondřej Surý Mon, 24 Oct 2022 12:08:58 +0200 + +php8.2 (8.2.0~rc1-2) experimental; urgency=medium + + * Use media-types instead of mime-support (Closes: #1010155) + * Make the build (mostly) reproducible (Closes: #1001648) + * Export SED := /bin/sed in d/rules (Closes: #1015188) + + -- Ondřej Surý Sun, 18 Sep 2022 12:02:59 +0200 + +php8.2 (8.2.0~rc1-1) experimental; urgency=medium + + * New upstream version 8.2.0~rc1 + * Bump d/phpapi to 20220829 + + -- Ondřej Surý Wed, 14 Sep 2022 12:20:18 +0200 + +php8.2 (8.2.0~beta2-1) experimental; urgency=medium + + [ Simon Deziel ] + * debian: use non-capturing group with FilesMatch + * Add a brief comment explaning non-capturing group regexes + + [ Ondřej Surý ] + * New upstream version 8.2.0~beta2 + + -- Ondřej Surý Mon, 15 Aug 2022 11:37:56 +0200 + +php8.2 (8.2.0~alpha3-1) experimental; urgency=medium + + * d/watch: Switch upstream location, add alpha/beta/rc version mangling + * Add Sergey Panteleev signing key + * New upstream version 8.2.0~alpha3 + + -- Ondřej Surý Thu, 07 Jul 2022 18:18:07 +0200 + +php8.2 (8.2.0~alpha2-1) experimental; urgency=medium + + * New upstream version 8.2.0~alpha2 + * Refresh patches for PHP 8.2 + * Update phpapi for PHP 8.2 + + -- Ondřej Surý Wed, 06 Jul 2022 16:06:45 +0200 + +php8.1 (8.1.7-2) unstable; urgency=medium + + * Add Provides: php-json to PHP SAPIS + + -- Ondřej Surý Sat, 25 Jun 2022 09:57:04 +0200 + +php8.1 (8.1.7-1) unstable; urgency=medium + + * New upstream version 8.1.7 + + -- Ondřej Surý Fri, 10 Jun 2022 14:16:47 +0200 + +php8.1 (8.1.6-1) unstable; urgency=medium + + * New upstream version 8.1.6 + + -- Ondřej Surý Tue, 17 May 2022 18:42:21 +0200 + +php8.1 (8.1.5-1) unstable; urgency=medium + + * New upstream version 8.1.5 + + -- Ondřej Surý Thu, 21 Apr 2022 11:51:30 +0200 + +php8.1 (8.1.4-1) unstable; urgency=medium + + * New upstream version 8.1.4 + + -- Ondřej Surý Sun, 20 Mar 2022 17:43:51 +0100 + +php8.1 (8.1.3-1) unstable; urgency=medium + + * New upstream version 8.1.3 + + CVE-2021-21708: Fix use-after-free due to php_filter_float() failing + for ints (Closes: #1006672) + + -- Ondřej Surý Mon, 21 Feb 2022 15:47:42 +0100 + +php8.1 (8.1.2-1) unstable; urgency=medium + + * New upstream version 8.1.2 + + -- Ondřej Surý Mon, 24 Jan 2022 11:36:08 +0100 + +php8.1 (8.1.1-4) unstable; urgency=medium + + * Override result of AC_PROG_LN_S to fix FTBFS on ppc64el + + -- Ondřej Surý Mon, 03 Jan 2022 15:34:56 +0100 + +php8.1 (8.1.1-3) unstable; urgency=medium + + * Fail the build when the dtrace call fails (Closes: #1000784) + + -- Ondřej Surý Fri, 31 Dec 2021 10:25:19 +0100 + +php8.1 (8.1.1-2) unstable; urgency=medium + + * Lower the OpenSSL requirement to 1.0.1 + + -- Ondřej Surý Fri, 31 Dec 2021 08:25:33 +0100 + +php8.1 (8.1.1-1) unstable; urgency=medium + + * New upstream version 8.1.1 + + -- Ondřej Surý Mon, 20 Dec 2021 22:13:08 +0100 + +php8.1 (8.1.0-1) unstable; urgency=medium + + * Update d/watch for final PHP 8.1 + * New upstream version 8.1.0 + + -- Ondřej Surý Thu, 25 Nov 2021 20:57:29 +0100 + +php8.1 (8.1.0~rc6-3) unstable; urgency=medium + + * Backported from 7.3.33 + - XML: + . Fix #79971: special character is breaking the path in xml function. + (CVE-2021-21707) + + -- Ondřej Surý Fri, 19 Nov 2021 07:45:31 +0100 + +php8.1 (8.1.0~rc6-2) unstable; urgency=medium + + [ Pino Toscano ] + * Enable AppArmor (--with-fpm-apparmor) only on Linux archs + (Closes: #999495) + * Fix Vcs-* fields + + -- Ondřej Surý Sat, 13 Nov 2021 12:54:26 +0100 + +php8.1 (8.1.0~rc6-1) unstable; urgency=medium + + * Update d/watch for updated location + * New upstream version 8.1.0~rc6 + + -- Ondřej Surý Thu, 11 Nov 2021 20:50:27 +0100 + +php8.1 (8.1.0~rc5-2) unstable; urgency=medium + + * d/rules: Fix FTBFS on armhf. Use -mfpu=vfpv3-d16 in CFLAGS + (Pulled from Ubuntu.) + * Revert "Disable Zend fiber asm on armhf (FTBFS)" + + -- Ondřej Surý Wed, 10 Nov 2021 12:05:30 +0100 + +php8.1 (8.1.0~rc5-1) unstable; urgency=medium + + * New upstream version 8.1.0~rc5 + * Disable Zend fiber asm on armhf (FTBFS) + + -- Ondřej Surý Thu, 04 Nov 2021 15:57:08 +0100 + +php8.1 (8.1.0~rc4-1+u1) unstable; urgency=low + + * Upload to unstable + + -- Ondřej Surý Mon, 25 Oct 2021 13:35:13 +0200 + +php8.1 (8.1.0~rc4-1) experimental; urgency=medium + + * New upstream version 8.1.0~rc4 + + -- Ondřej Surý Thu, 14 Oct 2021 18:09:23 +0200 + +php8.1 (8.1.0~rc2-1) experimental; urgency=medium + + * New upstream version 8.1.0~rc2 + + -- Ondřej Surý Thu, 23 Sep 2021 22:52:45 +0200 + +php8.1 (8.1.0~rc1-1) experimental; urgency=medium + + * New upstream version 8.1.0~rc1 + * Update the systz patch to v21 + * Add Patrick Allaert GPG key as upstream signing key + * Bump PHPAPI to 20210902 + + -- Ondřej Surý Mon, 13 Sep 2021 18:23:41 +0200 + +php8.1 (8.1.0~beta3-1) experimental; urgency=medium + + * New upstream version 8.1.0~beta3 + * Check for symlink before removing directory in the postrm scripts + * Update packaging and patches for PHP 8.1.0 beta3 + + -- Ondřej Surý Wed, 25 Aug 2021 15:12:26 +0200 + +php8.0 (8.0.9-1) unstable; urgency=medium + + * New upstream version 8.0.9 + + -- Ondřej Surý Fri, 30 Jul 2021 15:01:13 +0200 + +php8.0 (8.0.8-1) unstable; urgency=medium + + * New upstream version 8.0.8 (Closes: #990575) + + CVE-2021-21705: SSRF bypass in FILTER_VALIDATE_URL + + CVE-2021-21704: Stack buffer overflow in firebird_info_cb + + CVE-2021-21704: SIGSEGV in firebird_handle_doer + + CVE-2021-21704: SIGSEGV in firebird_stmt_execute + + CVE-2021-21704: Crash while parsing blob data in firebird_fetch_blob + + -- Ondřej Surý Thu, 01 Jul 2021 17:25:46 +0200 + +php8.0 (8.0.7-1) unstable; urgency=medium + + * Disable LTO (needed for Ubuntu Hirsute) - now for real + * New upstream version 8.0.7 + + -- Ondřej Surý Fri, 04 Jun 2021 12:03:18 +0200 + +php8.0 (8.0.5-2) unstable; urgency=medium + + * Disable LTO (needed for Ubuntu Hirsute) + * Revert: Fix bug #80892 PDO::PARAM_INT on pdo_pgsql + + -- Ondřej Surý Mon, 03 May 2021 13:29:29 +0200 + +php8.0 (8.0.5-1) unstable; urgency=medium + + * New upstream version 8.0.5 + + -- Ondřej Surý Sat, 01 May 2021 10:38:31 +0200 + +php8.0 (8.0.3-3) unstable; urgency=medium + + * Allow printing credits buffer larger than 4k + + -- Ondřej Surý Sat, 03 Apr 2021 16:19:27 +0200 + +php8.0 (8.0.3-2) unstable; urgency=medium + + * Update the packaging credits + + -- Ondřej Surý Thu, 18 Mar 2021 10:40:39 +0100 + +php8.0 (8.0.3-1) unstable; urgency=medium + + * New upstream version 8.0.3 + + -- Ondřej Surý Fri, 05 Mar 2021 08:50:54 +0100 + +php8.0 (8.0.2-7) unstable; urgency=medium + + * Bump php-common depends to 1:81~ + + -- Ondřej Surý Tue, 23 Feb 2021 15:58:27 +0100 + +php8.0 (8.0.2-6) unstable; urgency=medium + + * Add example configuration to not pass URLs for missing files to + PHP-FPM + + -- Ondřej Surý Sat, 20 Feb 2021 17:48:30 +0100 + +php8.0 (8.0.2-5) unstable; urgency=medium + + * Revert "Don't pass URLs for missing files to PHP-FPM" + + -- Ondřej Surý Fri, 19 Feb 2021 16:33:16 +0100 + +php8.0 (8.0.2-4) unstable; urgency=medium + + [ Svante Signell ] + * Add patch to disable HR Timers on GNU Hurd (Closes: #951834) + * Add --without build-stamp to dh invocation + + -- Ondřej Surý Tue, 16 Feb 2021 19:42:14 +0100 + +php8.0 (8.0.2-3) unstable; urgency=medium + + [ Sylvain Beucler ] + * Update obsolete/non-free FPM configuration procedure + + [ Kevin Locke ] + * Don't pass URLs for missing files to PHP-FPM + + [ Ondřej Surý ] + * Check if the logrotate script exists (GH #1534) + + -- Ondřej Surý Sun, 14 Feb 2021 15:02:37 +0100 + +php8.0 (8.0.2-2) unstable; urgency=medium + + * Enable AppArmor support in FPM + * Enable FPM ACL support + + -- Ondřej Surý Fri, 12 Feb 2021 11:14:38 +0100 + +php8.0 (8.0.2-1) unstable; urgency=medium + + * New upstream version 8.0.2 + * Force hardcoded path to be /bin/sed (Closes: #960786) + + -- Ondřej Surý Sun, 07 Feb 2021 12:39:18 +0100 + +php8.0 (8.0.1-1) unstable; urgency=medium + + * New upstream version 8.0.1 + + -- Ondřej Surý Tue, 12 Jan 2021 11:05:21 +0100 + +php8.0 (8.0.0-1) unstable; urgency=medium + + * Update d/watch for production PHP 8.0 release + * New upstream version 8.0.0 + + -- Ondřej Surý Fri, 27 Nov 2020 12:28:33 +0100 + +php8.0 (8.0.0~rc3-4) unstable; urgency=medium + + * Copy the files from auxdir in a separate variable to sync with PHP 7.3 + and lower + + -- Ondřej Surý Sat, 31 Oct 2020 18:05:42 +0100 + +php8.0 (8.0.0~rc3-3) unstable; urgency=medium + + * Move the non-m4 files from LIBTOOL_FILES to FILES_BUILD + + -- Ondřej Surý Sat, 31 Oct 2020 11:06:16 +0100 + +php8.0 (8.0.0~rc3-2) unstable; urgency=medium + + * Move the system wide phpize files to LIBTOOL_FILES + + -- Ondřej Surý Sat, 31 Oct 2020 11:05:46 +0100 + +php8.0 (8.0.0~rc3-1) unstable; urgency=medium + + * New upstream version 8.0.0~rc3 + + -- Ondřej Surý Fri, 30 Oct 2020 20:32:59 +0100 + +php8.0 (8.0.0~rc1-6) unstable; urgency=medium + + * In phpize, copy the foreign files from their respective packages + (libtool, pkg-config, shtool) + + -- Ondřej Surý Sun, 18 Oct 2020 21:42:45 +0200 + +php8.0 (8.0.0~rc1-5) unstable; urgency=medium + + * Include all libtool files from phpize.m4 + + -- Ondřej Surý Sun, 18 Oct 2020 13:38:45 +0200 + +php8.0 (8.0.0~rc1-4) unstable; urgency=medium + + * Use system-wide pkg.m4 from pkg-config package in phpize + * Restore the patch to use system-wide libtool and pkg-config m4 files + + -- Ondřej Surý Sat, 17 Oct 2020 08:33:56 +0200 + +php8.0 (8.0.0~rc1-3) unstable; urgency=medium + + [ Chris Hofstaedtler ] + * Use netcat-openbsd to build instead of netcat-traditional (Closes: #963261) + + [ Pino Toscano ] + * Disable AppArmor support on non-Linux archs (Closes: #951857) + * Enable systemd integration only on Linux archs (Closes: #951834) + + [ Ondřej Surý ] + * Use just php_module in the apache2 .load file + + -- Ondřej Surý Sun, 11 Oct 2020 16:01:02 +0200 + +php8.0 (8.0.0~rc1-2) unstable; urgency=medium + + * Disable the MySQL extension testing as it's too complicated + + -- Ondřej Surý Sat, 10 Oct 2020 21:45:35 +0200 + +php8.0 (8.0.0~rc1-1) unstable; urgency=medium + + * Regenerate d/control for PHP 8.0 + * New upstream version 8.0.0~rc1 + * Specify the socket via ./configure option rather than patch + * XMLRPC extension is no longer bundled + * The JSON extension is always available + * Fix syntax-error-in-dep5-copyright + * Update lintian overrides + * Remove obsolete d/NEWS + + -- Ondřej Surý Wed, 07 Oct 2020 20:11:17 +0200 + +php7.4 (7.4.11-1) unstable; urgency=medium + + * New upstream version 7.4.11 + + -- Ondřej Surý Tue, 06 Oct 2020 12:34:39 +0200 + +php7.4 (7.4.10-1) unstable; urgency=medium + + * New upstream version 7.4.10 + * Lower the minimal debhelper dependency to >= 9.20150101~ + * Use libenchant-dev as Build-Depends alternative to libenchant-2-dev + * Remove deprecated calls from enchant-2 (Closes: #954855) + + -- Ondřej Surý Tue, 08 Sep 2020 12:22:27 +0200 + +php7.4 (7.4.9-2) unstable; urgency=medium + + * Pull upstream patch for enchant-2 and change build-dep (Closes: #954855) + + -- Ondřej Surý Thu, 27 Aug 2020 15:37:23 +0200 + +php7.4 (7.4.9-1) unstable; urgency=medium + + * New upstream version 7.4.9 + + -- Ondřej Surý Fri, 07 Aug 2020 16:27:40 +0200 + +php7.4 (7.4.8-1) unstable; urgency=medium + + * Finish updating the packaging to dh compat level 10 + * New upstream version 7.4.8 + * Adjust for upstream phar.phar -> phar7.4.phar binary rename + + -- Ondřej Surý Mon, 13 Jul 2020 18:35:53 +0200 + +php7.4 (7.4.7-1) unstable; urgency=medium + + * New upstream version 7.4.7 + + -- Ondřej Surý Fri, 12 Jun 2020 09:42:27 +0200 + +php7.4 (7.4.6-1) unstable; urgency=medium + + * Properly detect CRC32 APIs on aarch64 from configure + * New upstream version 7.4.6 + + -- Ondřej Surý Thu, 14 May 2020 11:59:59 +0200 + +php7.4 (7.4.5-1) unstable; urgency=medium + + * New upstream version 7.4.5 + + -- Ondřej Surý Sun, 19 Apr 2020 09:35:13 +0200 + +php7.4 (7.4.4-1) unstable; urgency=medium + + * Add (non-existent yet) systemd-tmpfiles package as alternative to systemd + * php-fpm has to depend on procps due kill usage in systemd service file + (Closes: #861855) + * New upstream version 7.4.4 + + -- Ondřej Surý Fri, 20 Mar 2020 14:45:16 +0100 + +php7.4 (7.4.3-4) unstable; urgency=medium + + * Remove /etc/init/php@PHP_VERSION@-fpm.conf, not + /etc/init/php@PHP_VERSION@.conf (Closes: #951745) + + -- Ondřej Surý Sun, 23 Feb 2020 08:07:28 +0100 + +php7.4 (7.4.3-3) unstable; urgency=medium + + * Fixup upstart removal (missing prepare-files update) (Closes: #951745) + + -- Ondřej Surý Fri, 21 Feb 2020 18:01:35 +0100 + +php7.4 (7.4.3-2) unstable; urgency=medium + + * Remove the PIDFile= setting from systemd unit file (it should not be + needed with Type=notify) + * Use php-fpm-socket-helper from php-common >= 1:73 to update the + default socket + + -- Ondřej Surý Fri, 21 Feb 2020 09:59:48 +0100 + +php7.4 (7.4.3-1) unstable; urgency=medium + + * Remove upstart support, use systemd-tmpfiles to create tmpfiles + (Closes: #923032) + * New upstream version 7.4.3 + + -- Ondřej Surý Thu, 20 Feb 2020 13:12:06 +0100 + +php7.4 (7.4.2-7) unstable; urgency=medium + + * Add a note about PIDFile= and pid= match in php-fpm.conf + * Silently ignore errors from update-alternatives in php-fpm.service + + -- Ondřej Surý Sat, 08 Feb 2020 13:04:50 +0100 + +php7.4 (7.4.2-6) unstable; urgency=medium + + * Use absolute path to update-alternatives + + -- Ondřej Surý Wed, 05 Feb 2020 17:47:54 +0100 + +php7.4 (7.4.2-5) unstable; urgency=medium + + * Move the update-alternatives call from postinst/prerm to systemd startup script + + -- Ondřej Surý Sat, 01 Feb 2020 18:44:05 +0100 + +php7.4 (7.4.2-4) unstable; urgency=medium + + * Make the creation of the default socket work on new installs + + -- Ondřej Surý Sat, 01 Feb 2020 14:11:48 +0100 + +php7.4 (7.4.2-3) unstable; urgency=medium + + * Use a mock socket file for setting up FPM socket alternatives + + -- Ondřej Surý Sat, 01 Feb 2020 13:09:39 +0100 + +php7.4 (7.4.2-2) unstable; urgency=medium + + * Create a generic /run/php/php-fpm.sock socket using update-alternatives + + -- Ondřej Surý Sat, 01 Feb 2020 10:17:27 +0100 + +php7.4 (7.4.2-1) unstable; urgency=medium + + * New upstream version 7.4.2 + * Disable dh_autoreconf for PHP, it breaks the build + + -- Ondřej Surý Thu, 23 Jan 2020 12:20:45 +0100 + +php7.4 (7.4.1-1) unstable; urgency=medium + + * Update d/watch for final release + * New upstream version 7.4.1 + * Bump the debhelper compat to 10 + * Bump the Standards Version (no change) + + -- Ondřej Surý Tue, 21 Jan 2020 09:23:37 +0100 + +php7.4 (7.4.0-1) unstable; urgency=medium + + * New upstream version 7.4.0 + + -- Ondřej Surý Thu, 28 Nov 2019 08:25:29 +0100 + +php7.4 (7.4.0~rc6-1) experimental; urgency=medium + + * Fix the FTBFS with MySQL 8.0 + * New upstream version 7.4.0~rc6 + + -- Ondřej Surý Tue, 19 Nov 2019 18:49:28 +0100 + +php7.4 (7.4.0~rc4-1) experimental; urgency=medium + + * Bump d/phpapi to 20190902 + * New upstream version 7.4.0~rc4 + + -- Ondřej Surý Sat, 26 Oct 2019 11:10:04 +0200 + +php7.4 (7.4.0~rc3-1) experimental; urgency=medium + + * New upstream version 7.4.0~rc3 + * GMP now uses autodetection (don't pass /usr to configure) + * Bump d/phpapi to 20190902 + + -- Ondřej Surý Tue, 08 Oct 2019 08:08:28 +0200 + +php7.4 (7.4.0~beta4-2) experimental; urgency=medium + + * Enable FFI experimental extension + * Add libffi to B-D + + -- Ondřej Surý Wed, 28 Aug 2019 10:50:48 +0200 + +php7.4 (7.4.0~beta4-1) experimental; urgency=medium + + * Remove 0003-libtool2.2.patch, it's no longer needed [GL #1236] + * New upstream version 7.4.0~beta4 + + -- Ondřej Surý Tue, 27 Aug 2019 15:22:26 +0200 + +php7.4 (7.4.0~beta2-1) experimental; urgency=medium + + * New upstream version 7.4.0~beta2 + * Rebase patches for PHP 7.4.0~beta2 + + -- Ondřej Surý Thu, 08 Aug 2019 13:41:59 +0200 + +php7.4 (7.4.0~beta1-1) experimental; urgency=medium + + * New upstream version 7.4.0~beta1 + * Rebase patches for PHP 7.4.0~beta1 + * Configure option --with-libxml-dir is now named --with-libxml + * The recode extension has been moved to PECL. + * The interbase extension has been moved to PECL. + * The configure option for zip extension has changed from --enable-zip to --with-zlib + * The WDDX extension has been deprecated and moved to PECL. + * The configure options to enable GD extension has changed to --enable-gd and --with-external-gd + * Regenerated d/control + * Update the configure options according to UPGRADING file (mostly pkg-config related changes) + * Cleanup the missing documentation + * Update phpapi to 20190529 + + -- Ondřej Surý Wed, 07 Aug 2019 17:47:41 +0200 + +php7.4 (7.4.0~alpha2-1) experimental; urgency=low + + * New upstream version 7.4.0~alpha2 + + -- Ondřej Surý Wed, 10 Jul 2019 09:36:25 +0200 + +php7.3 (7.3.7-1) unstable; urgency=medium + + * New upstream version 7.3.7 + + -- Ondřej Surý Wed, 10 Jul 2019 08:52:54 +0200 + +php7.3 (7.3.6-1) unstable; urgency=medium + + [ Ondřej Surý ] + * New upstream version 7.3.6 + + [ Andreas Beckmann ] + * php7.3-curl: Add Breaks against php7.0-curl for smoother upgrades from stretch. (Closes: #929689) + + -- Ondřej Surý Fri, 31 May 2019 13:36:51 +0200 + +php7.3 (7.3.5-1) unstable; urgency=medium + + * New upstream version 7.3.5 + + -- Ondřej Surý Fri, 03 May 2019 10:16:15 +0200 + +php7.3 (7.3.4-2) unstable; urgency=medium + + [Andreas Beckmann] + * php7.3-common: Add Breaks against php7.0-curl for smoother upgrades from + stretch. (Closes: #925106) + * php7.3-common: Add Breaks against gforge-common from jessie which uses a + deprecated constructor syntax. + * Deterministically generate debian/control by sorting the extension + packages. + + -- Ondřej Surý Sat, 13 Apr 2019 19:05:48 +0000 + +php7.3 (7.3.4-1) unstable; urgency=medium + + * Update d/watch for new php.net pages + * New upstream version 7.3.4 + * Enforce C++11 for intl compilation on older distributions + + -- Ondřej Surý Wed, 10 Apr 2019 06:55:43 +0000 + +php7.3 (7.3.3-1) unstable; urgency=medium + + * New upstream version 7.3.3 + * Update systzdata patch to v18 (Courtesy of RemiRepo) + * Add patch for OpenSSL 1.1.1b (Courtesy of RemiRepo) + + -- Ondřej Surý Thu, 07 Mar 2019 19:43:34 +0000 + +php7.3 (7.3.2-3) unstable; urgency=medium + + * Update systzdata patch to v17 (Courtesy of remirepo) + + -- Ondřej Surý Fri, 08 Feb 2019 15:05:54 +0000 + +php7.3 (7.3.2-2) unstable; urgency=medium + + * Fix the icu patch condition for icu >= 60 + + -- Ondřej Surý Fri, 08 Feb 2019 10:49:26 +0000 + +php7.3 (7.3.2-1) unstable; urgency=medium + + * New upstream version 7.3.2 + + -- Ondřej Surý Thu, 07 Feb 2019 17:58:05 +0000 + +php7.3 (7.3.1-3) unstable; urgency=medium + + * Always build spoofchecker, because we are enforcing icu >= 50.1 + (Closes: #921199) + + -- Ondřej Surý Tue, 05 Feb 2019 10:25:33 +0000 + +php7.3 (7.3.1-2) unstable; urgency=high + + * Add patch to use pkg-config instead of icu-config to detect icu + libraries (Closes: #916110) + + -- Ondřej Surý Mon, 21 Jan 2019 09:09:55 +0000 + +php7.3 (7.3.1-1) unstable; urgency=medium + + * New upstream version 7.3.1 + + -- Ondřej Surý Sun, 13 Jan 2019 10:13:20 +0000 + +php7.3 (7.3.0-2) unstable; urgency=medium + + * Add upstream patch to fix OPcache optimization problem for + ArrayAccess->offsetGet + * Add upstream patch to fix infinite loop in preg_replace_callback + * Fix check for rl_completion_matches in readline extension + + -- Ondřej Surý Mon, 17 Dec 2018 09:51:53 +0000 + +php7.3 (7.3.0-1) unstable; urgency=medium + + * Update d/watch for the final PHP 7.3.0 release + * New upstream version 7.3.0 + + -- Ondřej Surý Thu, 06 Dec 2018 20:22:15 +0000 + +php7.3 (7.3.0~rc6-1) unstable; urgency=medium + + * New upstream version 7.3.0~rc6 + + -- Ondřej Surý Sun, 25 Nov 2018 10:01:25 +0000 + +php7.3 (7.3.0~rc5-2) unstable; urgency=medium + + * Don't use sed found by configure, use the sed command as available in + the host system (Closes: #913620) + + -- Ondřej Surý Tue, 13 Nov 2018 09:10:56 +0000 + +php7.3 (7.3.0~rc5-1) unstable; urgency=medium + + * New upstream version 7.3.0~rc5 + * Enable lmdb support in dba extension + + -- Ondřej Surý Mon, 12 Nov 2018 09:54:24 +0000 + +php7.3 (7.3.0~rc4-2) unstable; urgency=medium + + * Restore correct patch name for + 0040-Add-patch-to-install-php7-module-directly-to-APXS_LI.patch + + -- Ondřej Surý Sun, 04 Nov 2018 04:54:20 +0000 + +php7.3 (7.3.0~rc4-1) unstable; urgency=medium + + * New upstream version 7.3.0~rc4 + * Rebase patches for PHP 7.4.0~rc4 + + -- Ondřej Surý Thu, 25 Oct 2018 08:57:33 +0000 + +php7.3 (7.3.0~rc3-3) unstable; urgency=medium + + * Add patch to use pkg-config for FreeType2 library detection + (Closes: #911460) + * Remove libmcrypt-dev from Build-Depends + + -- Ondřej Surý Thu, 25 Oct 2018 06:39:32 +0000 + +php7.3 (7.3.0~rc3-2) unstable; urgency=medium + + * Disable the enabled modules in prerm, because in postrm the phpquery + script is not aware of already removed sapi (Closes: #911018) + + -- Ondřej Surý Mon, 15 Oct 2018 09:53:04 +0000 + +php7.3 (7.3.0~rc3-1) unstable; urgency=medium + + * New upstream version 7.3.0~rc3 + * Rebase patches for PHP 7.3.0~rc3 + + -- Ondřej Surý Sat, 13 Oct 2018 13:47:36 +0000 + +php7.3 (7.3.0~rc2-3) unstable; urgency=medium + + * Remove ancient mv_conffile (from php5) + * Remove spurious L from phpize script (Closes: #909110) + * Downgrade dh-php from Recommends to Suggests (Closes: #910620) + + -- Ondřej Surý Tue, 09 Oct 2018 13:22:52 +0000 + +php7.3 (7.3.0~rc2-2) unstable; urgency=medium + + * Fix the Vcs-* links + * Apply upstream patch to allow disabling pcre jit and disable it on + mips and s390x archs + * Extra 'L' is gone (Closes: #909110) + + -- Ondřej Surý Thu, 04 Oct 2018 14:25:15 +0000 + +php7.3 (7.3.0~rc2-1) unstable; urgency=medium + + * New upstream version 7.3.0~rc2 + * Rebase patches for PHP 7.3.0~rc2 + + -- Ondřej Surý Mon, 01 Oct 2018 11:42:35 +0000 + +php7.3 (7.3.0~beta2-3) unstable; urgency=medium + + * Disable assembly code with gcc 4.8 on i386 + + -- Ondřej Surý Mon, 20 Aug 2018 08:07:58 +0000 + +php7.3 (7.3.0~beta2-2) unstable; urgency=medium + + * Remove dependency on pcre3 and add libpcre2-dev to phpX.Y-dev + + -- Ondřej Surý Sun, 19 Aug 2018 16:12:50 +0000 + +php7.3 (7.3.0~beta2-1) unstable; urgency=medium + + * New upstream version 7.3.0~beta2 + * Rebase patches for PHP 7.3.0~beta2 + * Fix phpdbg.1 installation path from srcdir to builddir + * Bump d/phpapi to 20180731 + + -- Ondřej Surý Sun, 19 Aug 2018 07:49:10 +0000 + +php7.3 (7.3.0~beta1-1) unstable; urgency=medium + + [ Lior Kaplan ] + * Fix syntax typo + + [ Ondřej Surý ] + * New upstream version 7.3.0~beta1 + * Rebase patches for PHP 7.3.0beta1 + + -- Ondřej Surý Fri, 03 Aug 2018 13:52:09 +0000 + +php7.3 (7.3.0~alpha4-1) unstable; urgency=medium + + * Use cpuid.h instead of custom assembler + * New upstream version 7.3.0~alpha4 + * Rebase patches for PHP 7.3.0~alpha4 + + -- Ondřej Surý Wed, 25 Jul 2018 11:11:09 +0000 + +php7.3 (7.3.0~alpha3-2) unstable; urgency=medium + + * Remove traces of ext_skel modifications + * Add profile to all default-mysql-server alternatives + * Bump d/phpapi for PHP 7.3 + * Add libargon2-dev as new alternative build-dependency to + libargon2-0-dev + + -- Ondřej Surý Sat, 14 Jul 2018 13:57:34 +0000 + +php7.3 (7.3.0~alpha3-1) unstable; urgency=medium + + * Update upstream signing-key.asc for PHP 7.3 + * New upstream version 7.3.0~alpha3 + * Build-Depend on libpcre2-dev + * Rebase patches for PHP 7.3.0~alpha3 + + -- Ondřej Surý Mon, 09 Jul 2018 13:49:59 +0000 + +php7.2 (7.2.7-2) unstable; urgency=medium + + * Update the maintainer email to team+pkg-php@tracker.debian.org + * Update the Vcs-* links to salsa.d.o + + -- Ondřej Surý Mon, 09 Jul 2018 12:28:45 +0000 + +php7.2 (7.2.7-1) unstable; urgency=medium + + * New upstream version 7.2.7 + * Refresh patches for PHP 7.2.7 + + -- Ondřej Surý Fri, 22 Jun 2018 07:35:11 +0000 + +php7.2 (7.2.6-1) unstable; urgency=medium + + * New upstream version 7.2.6 + * Rebase patches for PHP version 7.2.6 + + -- Ondřej Surý Mon, 11 Jun 2018 14:54:56 +0000 + +php7.2 (7.2.5-1) unstable; urgency=medium + + * New upstream version 7.2.5 + * Rebase patches for PHP 7.2.5 + + -- Ondřej Surý Sat, 05 May 2018 04:56:32 +0000 + +php7.2 (7.2.4-1) unstable; urgency=medium + + * New upstream version 7.2.4 + * Rebase patches on top of new upstream release. + + -- Ondřej Surý Thu, 05 Apr 2018 08:50:27 +0000 + +php7.2 (7.2.3-1) unstable; urgency=medium + + * New upstream version 7.2.3 + * Rebase patches on top of new upstream release. + + -- Ondřej Surý Tue, 06 Mar 2018 11:15:04 +0000 + +php7.2 (7.2.2-3) unstable; urgency=medium + + * Add explicit libpcre3 >= 2:8.35 dependency as dh_genshlibs is failing + to add versioned dependency for some reason. + + -- Ondřej Surý Tue, 06 Feb 2018 16:07:40 +0000 + +php7.2 (7.2.2-2) unstable; urgency=medium + + * Remove explicit libpcre3 dependency and let dh_genshlibs do its magic + + -- Ondřej Surý Tue, 06 Feb 2018 13:00:04 +0000 + +php7.2 (7.2.2-1) unstable; urgency=medium + + * New upstream version 7.2.2 + * Rebase patches on top of new upstream release + * Regenerate d/control to finish php7.2-sodium removal + + -- Ondřej Surý Thu, 01 Feb 2018 15:19:04 +0000 + +php7.2 (7.2.1-1) unstable; urgency=medium + + * Update the Vcs-* to salsa.d.o + * Slightly update debian/copyright (most changes were already in) + * New upstream version 7.2.1 + * Rebase patches on top of new upstream release + + -- Ondřej Surý Fri, 05 Jan 2018 11:21:04 +0000 + +php7.2 (7.2.0-2) unstable; urgency=medium + + * Get rid of extra php7.2-sodium module + + -- Ondřej Surý Wed, 06 Dec 2017 14:15:47 +0000 + +php7.2 (7.2.0-1) unstable; urgency=low + + * Update PHP 7.2 signing keys + * New upstream version 7.2.0 + * Rebase patches for new upstream release. + + -- Ondřej Surý Thu, 30 Nov 2017 13:55:57 +0000 + +php7.2 (7.2.0~rc6-1) unstable; urgency=medium + + * New upstream version 7.2.0~rc6 + * Rebase patches for new upstream version. + + -- Ondřej Surý Sun, 12 Nov 2017 03:30:05 +0000 + +php7.2 (7.2.0~rc5-1) unstable; urgency=medium + + * New upstream version 7.2.0~rc5 + * Rebase patches for new upstream release + + -- Ondřej Surý Fri, 27 Oct 2017 13:33:55 +0000 + +php7.2 (7.2.0~rc4-2) unstable; urgency=medium + + * Fix the usage of internal allocator in xmlrpc extension + + -- Ondřej Surý Tue, 24 Oct 2017 18:54:46 +0000 + +php7.2 (7.2.0~rc4-1) unstable; urgency=medium + + * New upstream version 7.2.0~rc4 + * Rebase patches on top of new upstream version 7.2.0~rc4 + + -- Ondřej Surý Sun, 22 Oct 2017 13:07:11 +0000 + +php7.2 (7.2.0~rc3-1) unstable; urgency=medium + + * New upstream version 7.2.0~rc3 + * Refresh patches for PHP 7.2.0~rc3 + + -- Ondřej Surý Thu, 28 Sep 2017 18:26:49 +0200 + +php7.2 (7.2.0~rc2-1) unstable; urgency=medium + + * New upstream version 7.2.0~rc2 + * Rebase patches on top of PHP 7.2.0~rc2 + + -- Ondřej Surý Mon, 18 Sep 2017 11:24:14 +0200 + +php7.2 (7.2.0~rc1-1) unstable; urgency=medium + + * New upstream version 7.2.0~rc1 + * Rebase patches on top of PHP 7.2.0~rc1 + * Update d/copyright (License check courtesy of Luca Falavigna) + * Rewrap the files in d/ with wrap-and-sort -a + + -- Ondřej Surý Thu, 31 Aug 2017 14:00:16 +0200 + +php7.2 (7.2.0~beta3-2) unstable; urgency=medium + + * Enable Argon2 support for password hashing functions + * Enable shared libsodium extension + + -- Ondřej Surý Fri, 25 Aug 2017 11:35:23 +0200 + +php7.2 (7.2.0~beta3-1) unstable; urgency=medium + + * Allow libgcrypt11-dev when it's not a transitional package + * New upstream version 7.2.0~beta3 + * Refresh patches on top of PHP 7.2.0~beta3 + + -- Ondřej Surý Fri, 18 Aug 2017 15:00:36 +0200 + +php7.2 (7.2.0~beta2-2) experimental; urgency=medium + + * Update Vcs-* links to https://gitlab.com/deb.sury.org/... + * Stop depending on obsolete automake1.11 + * Switch build-depends to libgcrypt20-dev + + -- Ondřej Surý Fri, 04 Aug 2017 11:56:09 +0200 + +php7.2 (7.2.0~beta2-1) experimental; urgency=medium + + * Update d/watch for PHP 7.2 + * New upstream version 7.2.0~beta2 + * Rebase patches for PHP 7.2.0~beta2 + + -- Ondřej Surý Thu, 03 Aug 2017 20:42:38 +0200 + +php7.2 (7.2.0~beta1-1) experimental; urgency=medium + + * New upstream version 7.2.0~beta1 + * Enable support for libsodium crypto + * Rebase patches on top of PHP 7.2.0~beta1 + * Update phpapi for PHP 7.2 to 20170718 + + -- Ondřej Surý Thu, 27 Jul 2017 13:29:34 +0200 + +php7.2 (7.2.0~alpha3-1) experimental; urgency=medium + + * New upstream version 7.2.0~alpha3 + * Rebase patches on top of PHP 7.2.0~alpha3 + * Update d/rules with configure.in -> configure.ac rename + * Remove mcrypt extension that has been removed upstream + * Update phpapi to 20160731 + + -- Ondřej Surý Thu, 06 Jul 2017 13:50:44 +0200 diff --git a/compat b/compat new file mode 100644 index 00000000..f599e28b --- /dev/null +++ b/compat @@ -0,0 +1 @@ +10 diff --git a/control b/control new file mode 100644 index 00000000..c98d2461 --- /dev/null +++ b/control @@ -0,0 +1,890 @@ +Source: php8.2 +Section: php +Priority: optional +Maintainer: Debian PHP Maintainers +Uploaders: Ondřej Surý , + Lior Kaplan +Build-Depends: apache2-dev (>= 2.4), + autoconf (>= 2.63), + automake, + bison, + chrpath, + debhelper (>= 9.20160709~), + default-libmysqlclient-dev | libmysqlclient-dev, + dh-apache2, + dpkg-dev (>= 1.16.1~), + firebird-dev [!hurd-any !m68k !hppa !ppc64] | firebird2.5-dev [!hurd-any !m68k !hppa !ppc64] | firebird2.1-dev [!hurd-any !m68k !hppa !ppc64], + flex, + freetds-dev, + libacl1-dev, + libapparmor-dev [linux-any], + libapr1-dev (>= 1.2.7-8), + libargon2-dev | libargon2-0-dev, + libbz2-dev, + libc-client-dev, + libcurl4-openssl-dev | libcurl-dev, + libdb-dev, + libedit-dev (>= 2.11-20080614-4), + libenchant-2-dev | libenchant-dev, + libevent-dev (>= 1.4.11), + libexpat1-dev (>= 1.95.2-2.1), + libffi-dev, + libfreetype6-dev, + libgcrypt20-dev (>> 1.6.3) | libgcrypt11-dev (<< 1.5.4), + libgd-dev (>= 2.1.0) | libgd2-dev, + libglib2.0-dev, + libgmp3-dev, + libicu-dev, + libjpeg-dev | libjpeg62-dev, + libkrb5-dev, + libldap2-dev, + liblmdb-dev, + libmagic-dev, + libmhash-dev (>= 0.8.8), + libnss-myhostname [linux-any], + libonig-dev, + libpam0g-dev, + libpcre2-dev (>= 10.30), + libpng-dev, + libpq-dev, + libpspell-dev, + libqdbm-dev, + libsasl2-dev, + libsnmp-dev, + libsodium-dev, + libsqlite3-dev, + libssl-dev, + libsystemd-dev [linux-any], + libtidy-dev (>= 1:5.2.0), + libtool (>= 2.2), + libwebp-dev, + libwrap0-dev, + libxml2-dev, + libxmltok1-dev, + libxslt1-dev (>= 1.0.18), + libzip-dev (>= 1.0.0), + locales-all | language-pack-de, + netbase, + netcat-openbsd, + re2c, + systemtap-sdt-dev, + tzdata, + unixodbc-dev, + zlib1g-dev +Build-Conflicts: bind-dev, + libxmlrpc-core-c3-dev +Standards-Version: 4.5.0.0 +Vcs-Git: https://salsa.debian.org/php-team/php.git -b debian/main/8.2 +Vcs-Browser: https://salsa.debian.org/php-team/php/-/tree/debian/main/8.2 +Homepage: http://www.php.net/ + +Package: libapache2-mod-php8.2 +Section: httpd +Architecture: any +Depends: media-types | mime-support, + php8.2-cli, + php8.2-common (= ${binary:Version}), + php8.2-opcache, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: libapache2-mod-php, + php-json, + php8.2-json, + ${php:Provides} +Recommends: apache2 +Suggests: php-pear +Description: server-side, HTML-embedded scripting language (Apache 2 module) + This package provides the PHP module for the Apache 2 webserver (as + found in the apache2-mpm-prefork package). Please note that this package + ONLY works with Apache's prefork MPM, as it is not compiled thread-safe. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: libphp8.2-embed +Architecture: any +Depends: media-types | mime-support, + php8.2-cli, + php8.2-common (= ${binary:Version}), + php8.2-opcache, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: libphp-embed, + php-json, + php8.2-json, + ${php:Provides} +Suggests: php-pear +Description: HTML-embedded scripting language (Embedded SAPI library) + This package provides the library /usr/lib/libphp8.2.so which can + be used by application developers to embed PHP scripting functionality. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + . + WARNING: The embed SAPI is experimental and there's no guarantee that + the API/ABI will be kept compatible even between minor releases. You + have been warned. + +Package: php8.2 +Architecture: all +Depends: libapache2-mod-php8.2 | php8.2-fpm | php8.2-cgi, + php8.2-common, + ${misc:Depends} +Provides: php +Description: server-side, HTML-embedded scripting language (metapackage) + This package is a metapackage that, when installed, guarantees that you + have at least one of the four server-side versions of the PHP interpreter + installed. Removing this package won't remove PHP from your system, however + it may remove other packages that depend on this one. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-cgi +Architecture: any +Depends: media-types | mime-support, + php8.2-cli, + php8.2-common (= ${binary:Version}), + php8.2-opcache, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: php-cgi, + php-json, + php8.2-json, + ${php:Provides} +Suggests: php-pear +Description: server-side, HTML-embedded scripting language (CGI binary) + This package provides the /usr/lib/cgi-bin/php CGI interpreter built + for use in Apache 2 with mod_actions, or any other CGI httpd that + supports a similar mechanism. Note that MOST users probably + want the php8.2-fpm package. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-cli +Architecture: any +Depends: libedit2 (>= 2.11-20080614-4), + media-types | mime-support, + php8.2-common (= ${binary:Version}), + php8.2-opcache, + php8.2-readline, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: php-cli, + php-json, + php8.2-json, + ${php:Provides} +Suggests: php-pear +Description: command-line interpreter for the PHP scripting language + This package provides the /usr/bin/php8.2 command interpreter, useful for + testing PHP scripts from a shell or performing general shell scripting tasks. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-dev +Depends: autoconf (>= 2.63), + automake (>= 1.11), + libpcre2-dev (>= 10.30), + libssl-dev, + php8.2-cli (>= ${binary:Version}), + php8.2-common (= ${binary:Version}), + pkg-config, + shtool, + ${libtool:Depends}, + ${misc:Depends}, + ${perl:Depends} +Conflicts: ${libtool:Conflicts} +Architecture: any +Recommends: pkg-php-tools +Suggests: dh-php +Description: Files for PHP8.2 module development + This package provides the files from the PHP8.2 source needed for compiling + additional modules. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-fpm +Architecture: any +Depends: media-types | mime-support, + php8.2-cli, + php8.2-common (= ${binary:Version}), + php8.2-opcache, + procps, + systemd | systemd-tmpfiles, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: php-fpm, + php-json, + php8.2-json, + ${php:Provides} +Suggests: php-pear +Pre-Depends: ${misc:Pre-Depends} +Description: server-side, HTML-embedded scripting language (FPM-CGI binary) + This package provides the Fast Process Manager interpreter that runs + as a daemon and receives Fast/CGI requests. Note that MOST Apache users + probably want the libapache2-mod-php8.2 package. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-phpdbg +Architecture: any +Depends: media-types | mime-support, + php8.2-cli, + php8.2-common (= ${binary:Version}), + php8.2-opcache, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: php-json, + php-phpdbg, + php8.2-json, + ${php:Provides} +Recommends: php-readline +Description: server-side, HTML-embedded scripting language (PHPDBG binary) + This package provides the /usr/bin/phpdbg command interpreter, useful for + stepthrough debugging of PHP code. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-xsl +Architecture: all +Depends: php8.2-common, + php8.2-xml, + ${misc:Depends} +Description: XSL module for PHP (dummy) + This package is a transitional dummy package and can be safely + removed. + +Package: php8.2-bcmath +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-bcmath:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-bcmath:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-bcmath:Replaces} +Breaks: ${php-bcmath:Breaks} +Conflicts: ${php-bcmath:Conflicts} +Provides: ${php-bcmath:Provides} +Recommends: ${php-bcmath:Recommends} +Description: Bcmath module for PHP + This package provides the Bcmath module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-bz2 +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-bz2:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-bz2:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-bz2:Replaces} +Breaks: ${php-bz2:Breaks} +Conflicts: ${php-bz2:Conflicts} +Provides: ${php-bz2:Provides} +Recommends: ${php-bz2:Recommends} +Description: bzip2 module for PHP + This package provides the bzip2 module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-common +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-common:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-common:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-common:Replaces} +Breaks: ${php-common:Breaks} +Conflicts: ${php-common:Conflicts} +Provides: ${php-common:Provides} +Recommends: ${php-common:Recommends} +Description: documentation, examples and common module for PHP + This package provides the documentation, examples and common module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-curl +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-curl:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-curl:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-curl:Replaces} +Breaks: ${php-curl:Breaks} +Conflicts: ${php-curl:Conflicts} +Provides: ${php-curl:Provides} +Recommends: ${php-curl:Recommends} +Description: CURL module for PHP + This package provides the CURL module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-dba +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-dba:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-dba:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-dba:Replaces} +Breaks: ${php-dba:Breaks} +Conflicts: ${php-dba:Conflicts} +Provides: ${php-dba:Provides} +Recommends: ${php-dba:Recommends} +Description: DBA module for PHP + This package provides the DBA module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-enchant +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-enchant:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-enchant:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-enchant:Replaces} +Breaks: ${php-enchant:Breaks} +Conflicts: ${php-enchant:Conflicts} +Provides: ${php-enchant:Provides} +Recommends: ${php-enchant:Recommends} +Description: Enchant module for PHP + This package provides the Enchant module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-gd +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-gd:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-gd:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-gd:Replaces} +Breaks: ${php-gd:Breaks} +Conflicts: ${php-gd:Conflicts} +Provides: ${php-gd:Provides} +Recommends: ${php-gd:Recommends} +Description: GD module for PHP + This package provides the GD module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-gmp +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-gmp:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-gmp:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-gmp:Replaces} +Breaks: ${php-gmp:Breaks} +Conflicts: ${php-gmp:Conflicts} +Provides: ${php-gmp:Provides} +Recommends: ${php-gmp:Recommends} +Description: GMP module for PHP + This package provides the GMP module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-imap +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-imap:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-imap:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-imap:Replaces} +Breaks: ${php-imap:Breaks} +Conflicts: ${php-imap:Conflicts} +Provides: ${php-imap:Provides} +Recommends: ${php-imap:Recommends} +Description: IMAP module for PHP + This package provides the IMAP module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-interbase +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-interbase:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-interbase:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-interbase:Replaces} +Breaks: ${php-interbase:Breaks} +Conflicts: ${php-interbase:Conflicts} +Provides: ${php-interbase:Provides} +Recommends: ${php-interbase:Recommends} +Description: Interbase module for PHP + This package provides the Interbase module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-intl +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-intl:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-intl:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-intl:Replaces} +Breaks: ${php-intl:Breaks} +Conflicts: ${php-intl:Conflicts} +Provides: ${php-intl:Provides} +Recommends: ${php-intl:Recommends} +Description: Internationalisation module for PHP + This package provides the Internationalisation module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-ldap +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-ldap:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-ldap:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-ldap:Replaces} +Breaks: ${php-ldap:Breaks} +Conflicts: ${php-ldap:Conflicts} +Provides: ${php-ldap:Provides} +Recommends: ${php-ldap:Recommends} +Description: LDAP module for PHP + This package provides the LDAP module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-mbstring +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-mbstring:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-mbstring:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-mbstring:Replaces} +Breaks: ${php-mbstring:Breaks} +Conflicts: ${php-mbstring:Conflicts} +Provides: ${php-mbstring:Provides} +Recommends: ${php-mbstring:Recommends} +Description: MBSTRING module for PHP + This package provides the MBSTRING module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-mysql +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-mysql:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-mysql:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-mysql:Replaces} +Breaks: ${php-mysql:Breaks} +Conflicts: ${php-mysql:Conflicts} +Provides: ${php-mysql:Provides} +Recommends: ${php-mysql:Recommends} +Description: MySQL module for PHP + This package provides the MySQL module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-odbc +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-odbc:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-odbc:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-odbc:Replaces} +Breaks: ${php-odbc:Breaks} +Conflicts: ${php-odbc:Conflicts} +Provides: ${php-odbc:Provides} +Recommends: ${php-odbc:Recommends} +Description: ODBC module for PHP + This package provides the ODBC module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-opcache +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-opcache:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-opcache:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-opcache:Replaces} +Breaks: ${php-opcache:Breaks} +Conflicts: ${php-opcache:Conflicts} +Provides: ${php-opcache:Provides} +Recommends: ${php-opcache:Recommends} +Description: Zend OpCache module for PHP + This package provides the Zend OpCache module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-pgsql +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-pgsql:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-pgsql:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-pgsql:Replaces} +Breaks: ${php-pgsql:Breaks} +Conflicts: ${php-pgsql:Conflicts} +Provides: ${php-pgsql:Provides} +Recommends: ${php-pgsql:Recommends} +Description: PostgreSQL module for PHP + This package provides the PostgreSQL module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-pspell +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-pspell:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-pspell:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-pspell:Replaces} +Breaks: ${php-pspell:Breaks} +Conflicts: ${php-pspell:Conflicts} +Provides: ${php-pspell:Provides} +Recommends: ${php-pspell:Recommends} +Description: pspell module for PHP + This package provides the pspell module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-readline +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-readline:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-readline:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-readline:Replaces} +Breaks: ${php-readline:Breaks} +Conflicts: ${php-readline:Conflicts} +Provides: ${php-readline:Provides} +Recommends: ${php-readline:Recommends} +Description: readline module for PHP + This package provides the readline module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-snmp +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-snmp:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-snmp:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-snmp:Replaces} +Breaks: ${php-snmp:Breaks} +Conflicts: ${php-snmp:Conflicts} +Provides: ${php-snmp:Provides} +Recommends: ${php-snmp:Recommends} +Description: SNMP module for PHP + This package provides the SNMP module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-soap +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-soap:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-soap:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-soap:Replaces} +Breaks: ${php-soap:Breaks} +Conflicts: ${php-soap:Conflicts} +Provides: ${php-soap:Provides} +Recommends: ${php-soap:Recommends} +Description: SOAP module for PHP + This package provides the SOAP module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-sqlite3 +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-sqlite3:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-sqlite3:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-sqlite3:Replaces} +Breaks: ${php-sqlite3:Breaks} +Conflicts: ${php-sqlite3:Conflicts} +Provides: ${php-sqlite3:Provides} +Recommends: ${php-sqlite3:Recommends} +Description: SQLite3 module for PHP + This package provides the SQLite3 module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-sybase +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-sybase:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-sybase:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-sybase:Replaces} +Breaks: ${php-sybase:Breaks} +Conflicts: ${php-sybase:Conflicts} +Provides: ${php-sybase:Provides} +Recommends: ${php-sybase:Recommends} +Description: Sybase module for PHP + This package provides the Sybase module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-tidy +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-tidy:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-tidy:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-tidy:Replaces} +Breaks: ${php-tidy:Breaks} +Conflicts: ${php-tidy:Conflicts} +Provides: ${php-tidy:Provides} +Recommends: ${php-tidy:Recommends} +Description: tidy module for PHP + This package provides the tidy module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-xml +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-xml:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-xml:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-xml:Replaces} +Breaks: ${php-xml:Breaks} +Conflicts: ${php-xml:Conflicts} +Provides: ${php-xml:Provides} +Recommends: ${php-xml:Recommends} +Description: DOM, SimpleXML, XML, and XSL module for PHP + This package provides the DOM, SimpleXML, XML, and XSL module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php8.2-zip +Architecture: any +Depends: php-common (>= 1:81~), + ucf, + ${misc:Depends}, + ${php:Depends}, + ${php-zip:Depends}, + ${shlibs:Depends} +Pre-Depends: ${misc:Pre-Depends}, + ${php-zip:Pre-Depends} +Built-Using: ${php:Built-Using} +Replaces: ${php-zip:Replaces} +Breaks: ${php-zip:Breaks} +Conflicts: ${php-zip:Conflicts} +Provides: ${php-zip:Provides} +Recommends: ${php-zip:Recommends} +Description: Zip module for PHP + This package provides the Zip module(s) for PHP. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. diff --git a/control.in b/control.in new file mode 100644 index 00000000..fc52fb74 --- /dev/null +++ b/control.in @@ -0,0 +1,292 @@ +Source: php@PHP_VERSION@ +Section: php +Priority: optional +Maintainer: Debian PHP Maintainers +Uploaders: Ondřej Surý , + Lior Kaplan +Build-Depends: apache2-dev (>= 2.4), + autoconf (>= 2.63), + automake, + bison, + chrpath, + debhelper (>= 9.20160709~), + default-libmysqlclient-dev | libmysqlclient-dev, + dh-apache2, + dpkg-dev (>= 1.16.1~), + firebird-dev [!hurd-any !m68k !hppa !ppc64] | firebird2.5-dev [!hurd-any !m68k !hppa !ppc64] | firebird2.1-dev [!hurd-any !m68k !hppa !ppc64], + flex, + freetds-dev, + libacl1-dev, + libapparmor-dev [linux-any], + libapr1-dev (>= 1.2.7-8), + libargon2-dev | libargon2-0-dev, + libbz2-dev, + libc-client-dev, + libcurl4-openssl-dev | libcurl-dev, + libdb-dev, + libedit-dev (>= 2.11-20080614-4), + libenchant-2-dev | libenchant-dev, + libevent-dev (>= 1.4.11), + libexpat1-dev (>= 1.95.2-2.1), + libffi-dev, + libfreetype6-dev, + libgcrypt20-dev (>> 1.6.3) | libgcrypt11-dev (<< 1.5.4), + libgd-dev (>= 2.1.0) | libgd2-dev, + libglib2.0-dev, + libgmp3-dev, + libicu-dev, + libjpeg-dev | libjpeg62-dev, + libkrb5-dev, + libldap2-dev, + liblmdb-dev, + libmagic-dev, + libmhash-dev (>= 0.8.8), + libnss-myhostname [linux-any], + libonig-dev, + libpam0g-dev, + libpcre2-dev (>= 10.30), + libpng-dev, + libpq-dev, + libpspell-dev, + libqdbm-dev, + libsasl2-dev, + libsnmp-dev, + libsodium-dev, + libsqlite3-dev, + libssl-dev, + libsystemd-dev [linux-any], + libtidy-dev (>= 1:5.2.0), + libtool (>= 2.2), + libwebp-dev, + libwrap0-dev, + libxml2-dev, + libxmltok1-dev, + libxslt1-dev (>= 1.0.18), + libzip-dev (>= 1.0.0), + locales-all | language-pack-de, + netbase, + netcat-openbsd, + re2c, + systemtap-sdt-dev, + tzdata, + unixodbc-dev, + zlib1g-dev +Build-Conflicts: bind-dev, + libxmlrpc-core-c3-dev +Standards-Version: 4.5.0.0 +Vcs-Git: https://salsa.debian.org/php-team/php.git -b debian/main/@PHP_VERSION@ +Vcs-Browser: https://salsa.debian.org/php-team/php/-/tree/debian/main/@PHP_VERSION@ +Homepage: http://www.php.net/ + +Package: libapache2-mod-php@PHP_VERSION@ +Section: httpd +Architecture: any +Depends: media-types | mime-support, + php@PHP_VERSION@-cli, + php@PHP_VERSION@-common (= ${binary:Version}), + php@PHP_VERSION@-opcache, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: libapache2-mod-php, + php-json, + php@PHP_VERSION@-json, + ${php:Provides} +Recommends: apache2 +Suggests: php-pear +Description: server-side, HTML-embedded scripting language (Apache 2 module) + This package provides the PHP module for the Apache 2 webserver (as + found in the apache2-mpm-prefork package). Please note that this package + ONLY works with Apache's prefork MPM, as it is not compiled thread-safe. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: libphp@PHP_VERSION@-embed +Architecture: any +Depends: media-types | mime-support, + php@PHP_VERSION@-cli, + php@PHP_VERSION@-common (= ${binary:Version}), + php@PHP_VERSION@-opcache, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: libphp-embed, + php-json, + php@PHP_VERSION@-json, + ${php:Provides} +Suggests: php-pear +Description: HTML-embedded scripting language (Embedded SAPI library) + This package provides the library /usr/lib/libphp@PHP_VERSION@.so which can + be used by application developers to embed PHP scripting functionality. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + . + WARNING: The embed SAPI is experimental and there's no guarantee that + the API/ABI will be kept compatible even between minor releases. You + have been warned. + +Package: php@PHP_VERSION@ +Architecture: all +Depends: libapache2-mod-php@PHP_VERSION@ | php@PHP_VERSION@-fpm | php@PHP_VERSION@-cgi, + php@PHP_VERSION@-common, + ${misc:Depends} +Provides: php +Description: server-side, HTML-embedded scripting language (metapackage) + This package is a metapackage that, when installed, guarantees that you + have at least one of the four server-side versions of the PHP interpreter + installed. Removing this package won't remove PHP from your system, however + it may remove other packages that depend on this one. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php@PHP_VERSION@-cgi +Architecture: any +Depends: media-types | mime-support, + php@PHP_VERSION@-cli, + php@PHP_VERSION@-common (= ${binary:Version}), + php@PHP_VERSION@-opcache, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: php-cgi, + php-json, + php@PHP_VERSION@-json, + ${php:Provides} +Suggests: php-pear +Description: server-side, HTML-embedded scripting language (CGI binary) + This package provides the /usr/lib/cgi-bin/php CGI interpreter built + for use in Apache 2 with mod_actions, or any other CGI httpd that + supports a similar mechanism. Note that MOST users probably + want the php@PHP_VERSION@-fpm package. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php@PHP_VERSION@-cli +Architecture: any +Depends: libedit2 (>= 2.11-20080614-4), + media-types | mime-support, + php@PHP_VERSION@-common (= ${binary:Version}), + php@PHP_VERSION@-opcache, + php@PHP_VERSION@-readline, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: php-cli, + php-json, + php@PHP_VERSION@-json, + ${php:Provides} +Suggests: php-pear +Description: command-line interpreter for the PHP scripting language + This package provides the /usr/bin/php@PHP_VERSION@ command interpreter, useful for + testing PHP scripts from a shell or performing general shell scripting tasks. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php@PHP_VERSION@-dev +Depends: autoconf (>= 2.63), + automake (>= 1.11), + libpcre2-dev (>= 10.30), + libssl-dev, + php@PHP_VERSION@-cli (>= ${binary:Version}), + php@PHP_VERSION@-common (= ${binary:Version}), + pkg-config, + shtool, + ${libtool:Depends}, + ${misc:Depends}, + ${perl:Depends} +Conflicts: ${libtool:Conflicts} +Architecture: any +Recommends: pkg-php-tools +Suggests: dh-php +Description: Files for PHP@PHP_VERSION@ module development + This package provides the files from the PHP@PHP_VERSION@ source needed for compiling + additional modules. + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php@PHP_VERSION@-fpm +Architecture: any +Depends: media-types | mime-support, + php@PHP_VERSION@-cli, + php@PHP_VERSION@-common (= ${binary:Version}), + php@PHP_VERSION@-opcache, + procps, + systemd | systemd-tmpfiles, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: php-fpm, + php-json, + php@PHP_VERSION@-json, + ${php:Provides} +Suggests: php-pear +Pre-Depends: ${misc:Pre-Depends} +Description: server-side, HTML-embedded scripting language (FPM-CGI binary) + This package provides the Fast Process Manager interpreter that runs + as a daemon and receives Fast/CGI requests. Note that MOST Apache users + probably want the libapache2-mod-php@PHP_VERSION@ package. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php@PHP_VERSION@-phpdbg +Architecture: any +Depends: media-types | mime-support, + php@PHP_VERSION@-cli, + php@PHP_VERSION@-common (= ${binary:Version}), + php@PHP_VERSION@-opcache, + tzdata, + ucf, + ${misc:Depends}, + ${shlibs:Depends} +Provides: php-json, + php-phpdbg, + php@PHP_VERSION@-json, + ${php:Provides} +Recommends: php-readline +Description: server-side, HTML-embedded scripting language (PHPDBG binary) + This package provides the /usr/bin/phpdbg command interpreter, useful for + stepthrough debugging of PHP code. + . + ${php:Extensions} + . + PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used + open source general-purpose scripting language that is especially suited + for web development and can be embedded into HTML. + +Package: php@PHP_VERSION@-xsl +Architecture: all +Depends: php@PHP_VERSION@-common, + php@PHP_VERSION@-xml, + ${misc:Depends} +Description: XSL module for PHP (dummy) + This package is a transitional dummy package and can be safely + removed. diff --git a/copyright b/copyright new file mode 100644 index 00000000..3ffd5951 --- /dev/null +++ b/copyright @@ -0,0 +1,726 @@ +Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: php +Upstream-Contact: https://bugs.php.net/ +Source: http://php.net/downloads.php + +Files: * +Copyright: 1999-2018 The PHP Group. +License: PHP-3.01 + +Files: TSRM/* +Copyright: 1999-2006 Andi Gutmans, Sascha Schumann, Zeev Suraski. +License: BSD-TSRM + +Files: pear/install-pear-nozlib.phar +Copyright: + 1996-2005 Daniel Stenberg + 1997-2006 The PHP Group + 2004 The PEAR Group + 2001-2015 The PEAR developers + 2004-2005 Michael Wallner + 2004-2008 Greg Beaver + Alexander Merz + Baba Buehler + Bertrand Mansion + David C. Morse + Hannes Magnusson + Hans Lellelid + Helgi Þormar Þorbjörnsson + Ian Eure + Mark Wiesemann + Martin Jansen + Moritz Heidkamp + Paul M. Jones + Pierre-Alain Joye + Sara Golemon + Stephan Schmidt + Sterling Hughes + Stig Bakken + Tatsuhiko Miyagawa + Tomas V. V. Cox + Vincent Blavet + Wez Furlong + 1997-2008 Vincent Blavet + 2003 Sérgio Gonçalves Carvalho + 2003-2008 Stephan Schmidt + 2008 Chuck Burgess +License: BSD-2-clause and LGPL-3+ + +Files: Zend/* +Copyright: 1999-2006 Zend Technologies Ltd. +License: Zend-Engine-2.00 + +Files: ext/phar/tar.c +Copyright: 2003-2007 Tim Kientzle + 1999-2015 The PHP Group. +License: BSD-2-clause + +Files: sapi/fpm/* +Copyright: 2007-2009 Andrei Nigmatulin +License: BSD-2-clause + +Files: ext/bcmath/libbcmath/* +Copyright: 1991, 1992, 1993, 1994, 1997 Free Software Foundation, Inc. + 2000 Philip A. Nelson +License: LGPL-2+ + +Files: ext/fileinfo/libmagic/* +Copyright: 1985-1995 Ian F. Darwin + 1994-2009 Christos Zoulas +License: BSD-2-clause-libmagic + +Files: ext/date/lib/* +Copyright: 2015-2017 Derick Rethans + 2017 MongoDB, Inc. +License: Expat + +Files: ext/mbstring/libmbfl/* +Copyright: 1998,1999,2000,2001 HappySize, Inc. +License: LGPL-2.1 + +Files: debian/* +Copyright: Ondřej Surý +License: Expat + +Files: debian/patches/0013-Add-support-for-use-of-the-system-timezone-database.patch +Copyright: 2008 Red Hat, Inc. +License: PHP-3.01 + +Files: ext/standard/rand.c +Copyright: 1997-2002 Makoto Matsumoto and Takuji Nishimura, + 2000-2003 Richard J. Wagner + 1999-2015 The PHP Group. +License: BSD-3-clause and PHP-3.01 + +Files: ext/pdo_odbc/odbc_driver.c +Copyright: 1999-2015 The PHP Group. +License: PHP-3.0 + +Files: ext/gd/tests/Rochester-Regular.otf +Copyright: 2012 Sideshow +License: Apache-2.0 + +Files: ext/gd/libgd/* +Copyright: 1991-2002, Thomas G. Lane + 1994-2002, Cold Spring Harbor Laboratory + 1996-2002, Thomas Boutell (Boutell.Com, Inc.) + 1999-2002, Greg Roelofs + 1999-2002, John Ellson + 1999-2002, Philip Warner + 2000-2002, Maurice Szmurlo + 2000-2002, Johan Van den Brande + 2000-2002, Doug Becker + 2000-2009, Pierre-Alain Joye +License: GD + +Files: ext/hash/sha3/* +Copyright: Guido Bertoni,Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer +License: CC0 + +Files: ext/hash/sha3/*/brg_endian.h +Copyright: 1998-2008, Brian Gladman +License: BSD-3-clause + +Files: ext/mbstring/oniguruma/src/st.h ext/mbstring/oniguruma/src/st.c +Copyright: 1989 Peter Moore +License: public-domain + This is a public domain general purpose hash table package. + +Files: ext/mbstring/oniguruma/ +Copyright: 2002-2015 K.Kosako +License: BSD-2-clause + +Files: ext/mbstring/ucgendat/ +Copyright: 1999-2003 The OpenLDAP Foundation +License: OpenLDAP + +Files: ext/zip/lib/* +Copyright: 1999-2008 Dieter Baron and Thomas Klausner +License: BSD-3-clause + +Files: ext/zip/lib/config.h +Copyright: 1999-2018 The PHP Group. +License: PHP-3.01 + +Files: ext/sqlite3/libsqlite/* +Copyright: D. Richard Hipp +License: public-domain + The files listed have been put on the public domain by the sqlite3 + contributors. + +Files: main/mergesort.c +Copyright: 1992, 1993 The Regents of the University of California +License: BSD-4-clause + +License: PHP-3.0 + -------------------------------------------------------------------- + The PHP License, version 3.0 + Copyright (c) 1999 - 2006 The PHP Group. All rights reserved. + -------------------------------------------------------------------- + . + Redistribution and use in source and binary forms, with or without + modification, is permitted provided that the following conditions + are met: + . + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + . + 3. The name "PHP" must not be used to endorse or promote products + derived from this software without prior written permission. For + written permission, please contact group@php.net. + . + 4. Products derived from this software may not be called "PHP", nor + may "PHP" appear in their name, without prior written permission + from group@php.net. You may indicate that your software works in + conjunction with PHP by saying "Foo for PHP" instead of calling + it "PHP Foo" or "phpfoo" + . + 5. The PHP Group may publish revised and/or new versions of the + license from time to time. Each version will be given a + distinguishing version number. + Once covered code has been published under a particular version + of the license, you may always continue to use it under the terms + of that version. You may also choose to use such covered code + under the terms of any subsequent version of the license + published by the PHP Group. No one other than the PHP Group has + the right to modify the terms applicable to covered code created + under this License. + . + 6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes PHP, freely available from + ". + . + THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND + ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP + DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + +License: PHP-3.01 + -------------------------------------------------------------------- + The PHP License, version 3.01 + Copyright (c) 1999 - 2015 The PHP Group. All rights reserved. + -------------------------------------------------------------------- + . + Redistribution and use in source and binary forms, with or without + modification, is permitted provided that the following conditions + are met: + . + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + . + 3. The name "PHP" must not be used to endorse or promote products + derived from this software without prior written permission. For + written permission, please contact group@php.net. + . + 4. Products derived from this software may not be called "PHP", nor + may "PHP" appear in their name, without prior written permission + from group@php.net. You may indicate that your software works in + conjunction with PHP by saying "Foo for PHP" instead of calling + it "PHP Foo" or "phpfoo" + . + 5. The PHP Group may publish revised and/or new versions of the + license from time to time. Each version will be given a + distinguishing version number. + Once covered code has been published under a particular version + of the license, you may always continue to use it under the terms + of that version. You may also choose to use such covered code + under the terms of any subsequent version of the license + published by the PHP Group. No one other than the PHP Group has + the right to modify the terms applicable to covered code created + under this License. + . + 6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes PHP software, freely available from + ". + . + THIS SOFTWARE IS PROVIDED BY THE PHP DEVELOPMENT TEAM ``AS IS'' AND + ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE PHP + DEVELOPMENT TEAM OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + OF THE POSSIBILITY OF SUCH DAMAGE. + +License: Zend-Engine-2.00 + Redistribution and use in source and binary forms, with or without + modification, is permitted provided that the following conditions + are met: + . + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + . + 3. The names "Zend" and "Zend Engine" must not be used to endorse + or promote products derived from this software without prior + permission from Zend Technologies Ltd. For written permission, + please contact license@zend.com. + . + 4. Zend Technologies Ltd. may publish revised and/or new versions + of the license from time to time. Each version will be given a + distinguishing version number. + Once covered code has been published under a particular version + of the license, you may always continue to use it under the + terms of that version. You may also choose to use such covered + code under the terms of any subsequent version of the license + published by Zend Technologies Ltd. No one other than Zend + Technologies Ltd. has the right to modify the terms applicable + to covered code created under this License. + . + 5. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes the Zend Engine, freely available at + http://www.zend.com" + . + 6. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "The Zend Engine is freely available at http://www.zend.com" + . + THIS SOFTWARE IS PROVIDED BY ZEND TECHNOLOGIES LTD. ``AS IS'' AND + ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ZEND + TECHNOLOGIES LTD. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF + USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT + OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +License: Expat + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + . + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + . + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +License: BSD-3-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + . + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + 3. The names of its contributors may not be used to endorse or promote + products derived from this software without specific prior written + permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: LGPL-2+ + This library is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. + . + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + . + On Debian systems, the complete text of the GNU Lesser General Public + License version 2 can be found in ‘/usr/share/common-licenses/LGPL-2’. + +License: LGPL-2.1 + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License. + . + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + . + On Debian systems, the complete text of the GNU Lesser General Public + License version 2.1 can be found in ‘/usr/share/common-licenses/LGPL-2.1’. + +License: LGPL-3+ + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 3 of the License, or (at your option) any later version. + . + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + . + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + . + On Debian GNU/Linux systems, the complete text of the GNU Lesser General + Public License can be found in `/usr/share/common-licenses/LGPL'. + +License: BSD-2-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR + IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT, + INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: BSD-2-clause-libmagic + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + . + 1. Redistributions of source code must retain the above copyright + notice immediately at the beginning of the file, without modification, + this list of conditions, and the following disclaimer. + . + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. + +License: BSD-TSRM + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + . + - Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + . + - Neither name of the copyright holders nor the names of their contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS + IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, + THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +License: Apache-2.0 + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + . + http://www.apache.org/licenses/LICENSE-2.0 + . + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + . + On Debian systems, the full text of the Apache Software License version 2 can + be found in the file `/usr/share/common-licenses/Apache-2.0'. + +License: GD + Permission has been granted to copy, distribute and modify gd in any + context without fee, including a commercial application, provided that + this notice is present in user-accessible supporting documentation. + . + This does not affect your ownership of the derived work itself, and the + intent is to assure proper credit for the authors of gd, not to + interfere with your productive use of gd. If you have questions, ask. + "Derived works" includes all programs that utilize the library. Credit + must be given in user-accessible documentation. + . + This software is provided "AS IS." The copyright holders disclaim all + warranties, either express or implied, including but not limited to + implied warranties of merchantability and fitness for a particular + purpose, with respect to this code and accompanying documentation. + +License: CC0 + Statement of Purpose + . + The laws of most jurisdictions throughout the world automatically + confer exclusive Copyright and Related Rights (defined below) upon + the creator and subsequent owner(s) (each and all, an "owner") of an + original work of authorship and/or a database (each, a "Work"). + . + Certain owners wish to permanently relinquish those rights to a Work + for the purpose of contributing to a commons of creative, cultural + and scientific works ("Commons") that the public can reliably and + without fear of later claims of infringement build upon, modify, + incorporate in other works, reuse and redistribute as freely as + possible in any form whatsoever and for any purposes, including + without limitation commercial purposes. These owners may contribute + to the Commons to promote the ideal of a free culture and the further + production of creative, cultural and scientific works, or to gain + reputation or greater distribution for their Work in part through the + use and efforts of others. + . + For these and/or other purposes and motivations, and without any + expectation of additional consideration or compensation, the person + associating CC0 with a Work (the "Affirmer"), to the extent that he + or she is an owner of Copyright and Related Rights in the Work, + voluntarily elects to apply CC0 to the Work and publicly distribute + the Work under its terms, with knowledge of his or her Copyright and + Related Rights in the Work and the meaning and intended legal effect + of CC0 on those rights. + . + 1. Copyright and Related Rights. A Work made available under CC0 may + be protected by copyright and related or neighboring rights + ("Copyright and Related Rights"). Copyright and Related Rights + include, but are not limited to, the following: + . + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + . + ii. moral rights retained by the original author(s) and/or + performer(s); + . + iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + . + iv. rights protecting against unfair competition in regards to a + Work, subject to the limitations in paragraph 4(a), below; + . + v. rights protecting the extraction, dissemination, use and reuse of + data in a Work; + . + vi. database rights (such as those arising under Directive 96/9/EC + of the European Parliament and of the Council of 11 March 1996 + on the legal protection of databases, and under any national + implementation thereof, including any amended or successor + version of such directive); and + . + vii. other similar, equivalent or corresponding rights throughout + the world based on applicable law or treaty, and any national + implementations thereof. + . + 2. Waiver. To the greatest extent permitted by, but not in + contravention of, applicable law, Affirmer hereby overtly, fully, + permanently, irrevocably and unconditionally waives, abandons, and + surrenders all of Affirmer's Copyright and Related Rights and + associated claims and causes of action, whether now known or + unknown (including existing as well as future claims and causes of + action), in the Work (i) in all territories worldwide, (ii) for + the maximum duration provided by applicable law or treaty + (including future time extensions), (iii) in any current or future + medium and for any number of copies, and (iv) for any purpose + whatsoever, including without limitation commercial, advertising + or promotional purposes (the "Waiver"). Affirmer makes the Waiver + for the benefit of each member of the public at large and to the + detriment of Affirmer's heirs and successors, fully intending that + such Waiver shall not be subject to revocation, rescission, + cancellation, termination, or any other legal or equitable action + to disrupt the quiet enjoyment of the Work by the public as + contemplated by Affirmer's express Statement of Purpose. + . + 3. Public License Fallback. Should any part of the Waiver for any + reason be judged legally invalid or ineffective under applicable + law, then the Waiver shall be preserved to the maximum extent + permitted taking into account Affirmer's express Statement of + Purpose. In addition, to the extent the Waiver is so judged + Affirmer hereby grants to each affected person a royalty-free, non + transferable, non sublicensable, non exclusive, irrevocable and + unconditional license to exercise Affirmer's Copyright and Related + Rights in the Work (i) in all territories worldwide, (ii) for the + maximum duration provided by applicable law or treaty (including + future time extensions), (iii) in any current or future medium and + for any number of copies, and (iv) for any purpose whatsoever, + including without limitation commercial, advertising or + promotional purposes (the "License"). The License shall be deemed + effective as of the date CC0 was applied by Affirmer to the + Work. Should any part of the License for any reason be judged + legally invalid or ineffective under applicable law, such partial + invalidity or ineffectiveness shall not invalidate the remainder + of the License, and in such case Affirmer hereby affirms that he + or she will not (i) exercise any of his or her remaining Copyright + and Related Rights in the Work or (ii) assert any associated + claims and causes of action with respect to the Work, in either + case contrary to Affirmer's express Statement of Purpose. + . + 4. Limitations and Disclaimers. + . + a. No trademark or patent rights held by Affirmer are waived, + abandoned, surrendered, licensed or otherwise affected by this + document. + . + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, + statutory or otherwise, including without limitation warranties + of title, merchantability, fitness for a particular purpose, non + infringement, or the absence of latent or other defects, + accuracy, or the present or absence of errors, whether or not + discoverable, all to the greatest extent permissible under + applicable law. + . + c. Affirmer disclaims responsibility for clearing rights of other + persons that may apply to the Work or any use thereof, including + without limitation any person's Copyright and Related Rights in + the Work. Further, Affirmer disclaims responsibility for + obtaining any necessary consents, permissions or other rights + required for any use of the Work. + . + d. Affirmer understands and acknowledges that Creative Commons is + not a party to this document and has no duty or obligation with + respect to this CC0 or use of the Work. + +License: OpenLDAP + . + Redistribution and use of this software and associated documentation + ("Software"), with or without modification, are permitted provided + that the following conditions are met: + . + 1. Redistributions in source form must retain copyright statements + and notices, + . + 2. Redistributions in binary form must reproduce applicable copyright + statements and notices, this list of conditions, and the following + disclaimer in the documentation and/or other materials provided + with the distribution, and + . + 3. Redistributions must contain a verbatim copy of this document. + . + The OpenLDAP Foundation may revise this license from time to time. + Each revision is distinguished by a version number. You may use this + Software under terms of this license revision or under the terms of + any subsequent revision of the license. + . + THIS SOFTWARE IS PROVIDED BY THE OPENLDAP FOUNDATION AND ITS + CONTRIBUTORS ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE OPENLDAP FOUNDATION, ITS CONTRIBUTORS, OR THE + AUTHOR(S) OR OWNER(S) OF THE SOFTWARE BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING + IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + . + The names of the authors and copyright holders must not be used in + advertising or otherwise to promote the sale, use or other dealing in + this Software without specific, written prior permission. Title to + copyright in this Software shall at all times remain with copyright + holders. + . + OpenLDAP is a registered trademark of the OpenLDAP Foundation. + +License: BSD-4-clause + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + This product includes software developed by the University of + California, Berkeley and its contributors. + 4. Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + . + THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) AND CONTRIBUTORS ``AS IS'' AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR(S) OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + SUCH DAMAGE. diff --git a/gbp.conf b/gbp.conf new file mode 100644 index 00000000..4dcbcfe1 --- /dev/null +++ b/gbp.conf @@ -0,0 +1,10 @@ +[DEFAULT] +debian-branch = debian/main/8.2 +upstream-branch = upstream/8.2 +pristine-tar = True + +[dch] +meta = 1 + +[import-orig] +filter = ['.gitignore'] diff --git a/libapache2-mod-php.apache2 b/libapache2-mod-php.apache2 new file mode 100644 index 00000000..1d5f6b60 --- /dev/null +++ b/libapache2-mod-php.apache2 @@ -0,0 +1,2 @@ +mod debian/php@PHP_VERSION@.load +mod debian/php@PHP_VERSION@.conf diff --git a/libapache2-mod-php.dirs.extra b/libapache2-mod-php.dirs.extra new file mode 100644 index 00000000..1204391b --- /dev/null +++ b/libapache2-mod-php.dirs.extra @@ -0,0 +1,2 @@ +/etc/apache2/mods-available +/usr/lib/apache2/modules diff --git a/libapache2-mod-php.install.extra b/libapache2-mod-php.install.extra new file mode 100755 index 00000000..3a6a7805 --- /dev/null +++ b/libapache2-mod-php.install.extra @@ -0,0 +1 @@ +usr/lib/apache2/modules/libphp@PHP_VERSION@.so /usr/lib/apache2/modules/ diff --git a/libapache2-mod-php.postinst.extra b/libapache2-mod-php.postinst.extra new file mode 100644 index 00000000..923e475f --- /dev/null +++ b/libapache2-mod-php.postinst.extra @@ -0,0 +1,48 @@ +if [ -e /usr/share/apache2/apache2-maintscript-helper ]; then + . /usr/share/apache2/apache2-maintscript-helper + + php_enable() { + local a2query_ret=0 + a2query -m "php@PHP_VERSION@" > /dev/null 2>&1 || a2query_ret=$? + if [ "$a2query_ret" -eq 0 ] ; then + apache2_msg "info" "$DPKG_MAINTSCRIPT_PACKAGE: not switching MPM - already enabled" + return 1 + elif [ "$a2query_ret" -eq 32 ] ; then + apache2_msg "info" "$DPKG_MAINTSCRIPT_PACKAGE: not switching MPM - disabled by maintainer" + return 1 + fi + + PHP_MODULE=$(a2query -m | sed -n 's/^\(php[\.0-9]*\) (enabled.*)/\1/p') + if [ -n "$PHP_MODULE" -a "$PHP_MODULE" != "php@PHP_VERSION@" ]; then + apache2_msg "err" "$DPKG_MAINTSCRIPT_PACKAGE: $PHP_MODULE module already enabled, not enabling PHP @PHP_VERSION@" + return 1 + fi + + mpm=$(a2query -M) + case "$(a2query -M)" in + prefork|itk) return 0;; + *) if apache2_switch_mpm prefork; then return 0; fi;; + esac + apache2_msg "err" "$DPKG_MAINTSCRIPT_PACKAGE: Could not switch to prefork MPM, not enabling PHP @PHP_VERSION@" + return 1 + } + +else + echo "Warning: Could not load Apache 2.4 maintainer script helper." + + php_enable() { + return 1; + } + +fi + +# we've registered a trigger to handle extension updates. +if [ "$1" = "triggered" ] && [ "$2" = "/etc/php/@PHP_VERSION@/apache2/conf.d" ]; then + if [ -e /usr/share/apache2/apache2-maintscript-helper ]; then + . /usr/share/apache2/apache2-maintscript-helper + apache2_reload restart + fi + exit 0 +elif [ "$1" != "configure" ]; then + exit 0 +fi diff --git a/libphp-embed.dirs.extra b/libphp-embed.dirs.extra new file mode 100644 index 00000000..0bf940b3 --- /dev/null +++ b/libphp-embed.dirs.extra @@ -0,0 +1 @@ +/usr/lib diff --git a/libphp-embed.install.extra b/libphp-embed.install.extra new file mode 100644 index 00000000..f11d27a7 --- /dev/null +++ b/libphp-embed.install.extra @@ -0,0 +1 @@ +usr/lib/libphp@PHP_VERSION@.so diff --git a/libphp-embed.postinst.extra b/libphp-embed.postinst.extra new file mode 100644 index 00000000..f7190859 --- /dev/null +++ b/libphp-embed.postinst.extra @@ -0,0 +1,6 @@ +if [ "$1" = "configure" ]; then + update-alternatives \ + --install /usr/lib/libphp@PHP_MAJOR@.so libphp@PHP_MAJOR@ /usr/lib/libphp@PHP_VERSION@.so @PHP_MAJOR@@PHP_MINOR@ +fi + +[ "$1" = "configure" ] && ldconfig diff --git a/libphp-embed.postrm.extra b/libphp-embed.postrm.extra new file mode 100644 index 00000000..2ab961e7 --- /dev/null +++ b/libphp-embed.postrm.extra @@ -0,0 +1 @@ +[ "$1" = "remove" ] && ldconfig diff --git a/libphp-embed.prerm.extra b/libphp-embed.prerm.extra new file mode 100644 index 00000000..02518d5e --- /dev/null +++ b/libphp-embed.prerm.extra @@ -0,0 +1,3 @@ +if [ "$1" = "remove" -o "$1" = "deconfigure" ]; then + update-alternatives --remove libphp@PHP_MAJOR@ /usr/lib/libphp@PHP_VERSION@.so +fi diff --git a/patches/0001-libtool_fixes.patch b/patches/0001-libtool_fixes.patch new file mode 100644 index 00000000..9591f390 --- /dev/null +++ b/patches/0001-libtool_fixes.patch @@ -0,0 +1,21 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:50 +0200 +Subject: libtool_fixes + +--- + configure.ac | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 50992e9..cafc55b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1634,8 +1634,6 @@ AC_PROVIDE_IFELSE([PHP_REQUIRE_CXX], [], [ + ]) + AC_PROG_LIBTOOL + +-PHP_SET_LIBTOOL_VARIABLE([--silent]) +- + dnl libtool 1.4.3 needs this. + PHP_SET_LIBTOOL_VARIABLE([--preserve-dup-deps]) + diff --git a/patches/0002-debian_quirks.patch b/patches/0002-debian_quirks.patch new file mode 100644 index 00000000..59d6ce98 --- /dev/null +++ b/patches/0002-debian_quirks.patch @@ -0,0 +1,145 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:51 +0200 +Subject: debian_quirks + +--- + configure.ac | 6 +++++- + php.ini-development | 2 +- + php.ini-production | 2 +- + sapi/cli/php.1.in | 11 ++++++----- + scripts/Makefile.frag | 4 ++-- + scripts/php-config.in | 8 ++++---- + scripts/phpize.in | 4 ++-- + 7 files changed, 21 insertions(+), 16 deletions(-) + +diff --git a/configure.ac b/configure.ac +index cafc55b..5470374 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1207,7 +1207,7 @@ fi + PHP_ARG_WITH([pear], + [whether to install PEAR], + [AS_HELP_STRING([[--with-pear[=DIR]]], +- [Install PEAR in DIR [PREFIX/lib/php]])], ++ [Install PEAR in DIR [PREFIX/share/php]])], + [no], + [yes]) + +@@ -1238,6 +1238,8 @@ if test "$PHP_PEAR" != "no"; then + PHP_ADD_MAKEFILE_FRAGMENT($abs_srcdir/pear/Makefile.frag,$abs_srcdir/pear,pear) + fi + ++PEAR_INSTALLDIR=/usr/share/php ++ + dnl Configuring Zend and TSRM. + dnl ---------------------------------------------------------------------------- + +@@ -1379,6 +1381,8 @@ datadir=`eval eval echo $datadir` + dnl Build extension directory path. + ZEND_MODULE_API_NO=`$EGREP '#define ZEND_MODULE_API_NO ' $srcdir/Zend/zend_modules.h|"${SED}" 's/#define ZEND_MODULE_API_NO //'` + ++AC_SUBST(ZEND_MODULE_API_NO) ++ + if test -z "$EXTENSION_DIR"; then + extbasedir=$ZEND_MODULE_API_NO + if test "$oldstyleextdir" = "yes"; then +diff --git a/php.ini-development b/php.ini-development +index 2bb4712..5fb1066 100644 +--- a/php.ini-development ++++ b/php.ini-development +@@ -740,7 +740,7 @@ default_charset = "UTF-8" + ;;;;;;;;;;;;;;;;;;;;;;;;; + + ; UNIX: "/path1:/path2" +-;include_path = ".:/php/includes" ++;include_path = ".:/usr/share/php" + ; + ; Windows: "\path1;\path2" + ;include_path = ".;c:\php\includes" +diff --git a/php.ini-production b/php.ini-production +index 4fcd47b..eab21ab 100644 +--- a/php.ini-production ++++ b/php.ini-production +@@ -742,7 +742,7 @@ default_charset = "UTF-8" + ;;;;;;;;;;;;;;;;;;;;;;;;; + + ; UNIX: "/path1:/path2" +-;include_path = ".:/php/includes" ++;include_path = ".:/usr/share/php" + ; + ; Windows: "\path1;\path2" + ;include_path = ".;c:\php\includes" +diff --git a/sapi/cli/php.1.in b/sapi/cli/php.1.in +index a49e9ca..32ca73d 100644 +--- a/sapi/cli/php.1.in ++++ b/sapi/cli/php.1.in +@@ -374,13 +374,14 @@ Shows configuration for extension + Show configuration file names + .SH FILES + .TP 15 +-.B php\-cli.ini ++.B /etc/php/@PHP_MAJOR_VERSION@.@PHP_MINOR_VERSION@/cli/php.ini + The configuration file for the CLI version of PHP. + .TP +-.B php.ini +-The standard configuration file will only be used when +-.B php\-cli.ini +-cannot be found. +++.B /etc/php/@PHP_MAJOR_VERSION@.@PHP_MINOR_VERSION@/cgi/php.ini +++The configuration file for the CGI version of PHP. +++.TP +++.B /etc/php/@PHP_MAJOR_VERSION@.@PHP_MINOR_VERSION@/apache2/php.ini +++The configuration file for the version of PHP that apache2 uses. + .SH EXAMPLES + .TP 5 + \fI@program_prefix@php \-r 'echo "Hello World\\n";'\fP +diff --git a/scripts/Makefile.frag b/scripts/Makefile.frag +index 1049832..e543263 100644 +--- a/scripts/Makefile.frag ++++ b/scripts/Makefile.frag +@@ -2,8 +2,8 @@ + # Build environment install + # + +-phpincludedir = $(includedir)/php +-phpbuilddir = $(libdir)/build ++phpincludedir = $(includedir)/php/$(DEBIAN_PHP_API) ++phpbuilddir = $(prefix)/lib/php/$(DEBIAN_PHP_API)/build + + BUILD_FILES = \ + scripts/phpize.m4 \ +diff --git a/scripts/php-config.in b/scripts/php-config.in +index 9271e87..355be04 100644 +--- a/scripts/php-config.in ++++ b/scripts/php-config.in +@@ -6,11 +6,11 @@ datarootdir="@datarootdir@" + exec_prefix="@exec_prefix@" + version="@PHP_VERSION@" + vernum="@PHP_VERSION_ID@" +-include_dir="@includedir@/php" +-includes="-I$include_dir -I$include_dir/main -I$include_dir/TSRM -I$include_dir/Zend -I$include_dir/ext -I$include_dir/ext/date/lib" +-ldflags="@PHP_LDFLAGS@" ++include_dir="@includedir@/php/@DEBIAN_PHP_API@" ++includes="-I$include_dir -I$include_dir/main -I$include_dir/TSRM -I$include_dir/Zend -I$include_dir/ext -I$include_dir/ext/date/lib $(getconf LFS_CFLAGS)" ++ldflags="-L$prefix/lib/php/@DEBIAN_PHP_API@ @PHP_LDFLAGS@" + libs="@EXTRA_LIBS@" +-extension_dir='@EXTENSION_DIR@' ++extension_dir="@EXTENSION_DIR@" + man_dir=`eval echo @mandir@` + program_prefix="@program_prefix@" + program_suffix="@program_suffix@" +diff --git a/scripts/phpize.in b/scripts/phpize.in +index 7d9c1df..0846bf2 100644 +--- a/scripts/phpize.in ++++ b/scripts/phpize.in +@@ -4,8 +4,8 @@ + prefix='@prefix@' + datarootdir='@datarootdir@' + exec_prefix="`eval echo @exec_prefix@`" +-phpdir="`eval echo @libdir@`/build" +-includedir="`eval echo @includedir@`/php" ++phpdir="$prefix/lib/php/@DEBIAN_PHP_API@/build" ++includedir="$prefix/include/php/@DEBIAN_PHP_API@" + builddir="`pwd`" + SED="@SED@" + diff --git a/patches/0003-php-5.4.9-phpinfo.patch b/patches/0003-php-5.4.9-phpinfo.patch new file mode 100644 index 00000000..3d27d1d2 --- /dev/null +++ b/patches/0003-php-5.4.9-phpinfo.patch @@ -0,0 +1,38 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:51 +0200 +Subject: php-5.4.9-phpinfo + +Drop "Configure Command" from phpinfo as it doesn't +provide any useful information. +The available extensions are not related to this command. +--- + ext/standard/info.c | 3 --- + ext/standard/tests/general_functions/phpinfo.phpt | 1 - + 2 files changed, 4 deletions(-) + +diff --git a/ext/standard/info.c b/ext/standard/info.c +index b7e9fe4..dd25119 100644 +--- a/ext/standard/info.c ++++ b/ext/standard/info.c +@@ -834,9 +834,6 @@ PHPAPI ZEND_COLD void php_print_info(int flag) + #ifdef PHP_BUILD_ARCH + php_info_print_table_row(2, "Architecture", PHP_BUILD_ARCH); + #endif +-#ifdef CONFIGURE_COMMAND +- php_info_print_table_row(2, "Configure Command", CONFIGURE_COMMAND ); +-#endif + + if (sapi_module.pretty_name) { + php_info_print_table_row(2, "Server API", sapi_module.pretty_name ); +diff --git a/ext/standard/tests/general_functions/phpinfo.phpt b/ext/standard/tests/general_functions/phpinfo.phpt +index 57ba13b..2e2fae8 100644 +--- a/ext/standard/tests/general_functions/phpinfo.phpt ++++ b/ext/standard/tests/general_functions/phpinfo.phpt +@@ -17,7 +17,6 @@ + + System => %s + Build Date => %s%a +-Configure Command => %s + Server API => Command Line Interface + Virtual Directory Support => %s + Configuration File (php.ini) Path => %s diff --git a/patches/0004-extension_api.patch b/patches/0004-extension_api.patch new file mode 100644 index 00000000..6a032afd --- /dev/null +++ b/patches/0004-extension_api.patch @@ -0,0 +1,62 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:51 +0200 +Subject: extension_api + +--- + configure.ac | 5 ++++- + scripts/php-config.in | 4 ++++ + 2 files changed, 8 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 5470374..c3987ed 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1383,8 +1383,10 @@ ZEND_MODULE_API_NO=`$EGREP '#define ZEND_MODULE_API_NO ' $srcdir/Zend/zend_modul + + AC_SUBST(ZEND_MODULE_API_NO) + ++DEBIAN_PHP_API=$ZEND_MODULE_API_NO ++ + if test -z "$EXTENSION_DIR"; then +- extbasedir=$ZEND_MODULE_API_NO ++ extbasedir=$DEBIAN_PHP_API + if test "$oldstyleextdir" = "yes"; then + if test "$PHP_DEBUG" = "1"; then + part1=debug +@@ -1518,6 +1520,7 @@ PHP_SUBST(CXX) + PHP_SUBST(CXXFLAGS) + PHP_SUBST(CXXFLAGS_CLEAN) + PHP_SUBST_OLD(DEBUG_CFLAGS) ++PHP_SUBST_OLD(DEBIAN_PHP_API) + PHP_SUBST_OLD(EXTENSION_DIR) + PHP_SUBST_OLD(EXTRA_LDFLAGS) + PHP_SUBST_OLD(EXTRA_LDFLAGS_PROGRAM) +diff --git a/scripts/php-config.in b/scripts/php-config.in +index 355be04..cac95ac 100644 +--- a/scripts/php-config.in ++++ b/scripts/php-config.in +@@ -19,6 +19,7 @@ php_cli_binary=NONE + php_cgi_binary=NONE + configure_options="@CONFIGURE_OPTIONS@" + php_sapis="@PHP_INSTALLED_SAPIS@" ++phpapi="@DEBIAN_PHP_API@" + ini_dir="@EXPANDED_PHP_CONFIG_FILE_SCAN_DIR@" + ini_path="@EXPANDED_PHP_CONFIG_FILE_PATH@" + +@@ -59,6 +60,8 @@ case "$1" in + echo $include_dir;; + --php-binary) + echo $php_binary;; ++--phpapi) ++ echo $phpapi;; + --php-sapis) + echo $php_sapis;; + --configure-options) +@@ -86,6 +89,7 @@ Options: + --man-dir [$man_dir] + --php-binary [$php_binary] + --php-sapis [$php_sapis] ++ --phpapi [$phpapi] + --ini-path [$ini_path] + --ini-dir [$ini_dir] + --configure-options [$configure_options] diff --git a/patches/0005-php.ini_securitynotes.patch b/patches/0005-php.ini_securitynotes.patch new file mode 100644 index 00000000..b2dbbcaa --- /dev/null +++ b/patches/0005-php.ini_securitynotes.patch @@ -0,0 +1,34 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:52 +0200 +Subject: php.ini_securitynotes + +--- + php.ini-development | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/php.ini-development b/php.ini-development +index 5fb1066..e53f0ce 100644 +--- a/php.ini-development ++++ b/php.ini-development +@@ -315,6 +315,12 @@ serialize_precision = -1 + ; or per-virtualhost web server configuration file. + ; Note: disables the realpath cache + ; https://php.net/open-basedir ++ ++; NOTE: this is considered a "broken" security measure. ++; Applications relying on this feature will not receive full ++; support by the security team. For more information please ++; see /usr/share/doc/php-common/README.Debian.security ++; + ;open_basedir = + + ; This directive allows you to disable certain functions. +@@ -1369,7 +1375,7 @@ session.save_handler = files + ; where MODE is the octal representation of the mode. Note that this + ; does not overwrite the process's umask. + ; https://php.net/session.save-path +-;session.save_path = "/tmp" ++;session.save_path = "/var/lib/php/sessions" + + ; Whether to use strict session mode. + ; Strict session mode does not accept an uninitialized session ID, and diff --git a/patches/0006-php-5.4.7-libdb.patch b/patches/0006-php-5.4.7-libdb.patch new file mode 100644 index 00000000..0e76b3ed --- /dev/null +++ b/patches/0006-php-5.4.7-libdb.patch @@ -0,0 +1,103 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:52 +0200 +Subject: php-5.4.7-libdb + +--- + ext/dba/config.m4 | 52 ++-------------------------------------------------- + ext/dba/dba.c | 8 ++++++++ + 2 files changed, 10 insertions(+), 50 deletions(-) + +diff --git a/ext/dba/config.m4 b/ext/dba/config.m4 +index 1e80319..51bdd84 100644 +--- a/ext/dba/config.m4 ++++ b/ext/dba/config.m4 +@@ -375,61 +375,13 @@ if test "$PHP_DB4" != "no"; then + dbdp4="/usr/local/BerkeleyDB.4." + dbdp5="/usr/local/BerkeleyDB.5." + for i in $PHP_DB4 ${dbdp5}1 ${dbdp5}0 ${dbdp4}8 ${dbdp4}7 ${dbdp4}6 ${dbdp4}5 ${dbdp4}4 ${dbdp4}3 ${dbdp4}2 ${dbdp4}1 ${dbdp}0 /usr/local /usr; do +- if test -f "$i/db5/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/db5/db.h +- break +- elif test -f "$i/db4/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/db4/db.h +- break +- elif test -f "$i/include/db5.3/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db5.3/db.h +- break +- elif test -f "$i/include/db5.1/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db5.1/db.h +- break +- elif test -f "$i/include/db5.0/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db5.0/db.h +- break +- elif test -f "$i/include/db4.8/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db4.8/db.h +- break +- elif test -f "$i/include/db4.7/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db4.7/db.h +- break +- elif test -f "$i/include/db4.6/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db4.6/db.h +- break +- elif test -f "$i/include/db4.5/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db4.5/db.h +- break +- elif test -f "$i/include/db4/db.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db4/db.h +- break +- elif test -f "$i/include/db/db4.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db/db4.h +- break +- elif test -f "$i/include/db4.h"; then +- THIS_PREFIX=$i +- THIS_INCLUDE=$i/include/db4.h +- break +- elif test -f "$i/include/db.h"; then ++ if test -f "$i/include/db.h"; then + THIS_PREFIX=$i + THIS_INCLUDE=$i/include/db.h + break + fi + done +- PHP_DBA_DB_CHECK(4, db-5.3 db-5.1 db-5.0 db-4.8 db-4.7 db-4.6 db-4.5 db-4.4 db-4.3 db-4.2 db-4.1 db-4.0 db-4 db4 db, [(void)db_create((DB**)0, (DB_ENV*)0, 0)]) ++ PHP_DBA_DB_CHECK(4, db, [(void)db_create((DB**)0, (DB_ENV*)0, 0)]) + fi + PHP_DBA_STD_RESULT(db4,Berkeley DB4) + +diff --git a/ext/dba/dba.c b/ext/dba/dba.c +index 7e0f56b..9e9d700 100644 +--- a/ext/dba/dba.c ++++ b/ext/dba/dba.c +@@ -50,6 +50,10 @@ + #include "php_lmdb.h" + #include "dba_arginfo.h" + ++#ifdef DB4_INCLUDE_FILE ++#include DB4_INCLUDE_FILE ++#endif ++ + PHP_MINIT_FUNCTION(dba); + PHP_MSHUTDOWN_FUNCTION(dba); + PHP_MINFO_FUNCTION(dba); +@@ -387,6 +391,10 @@ PHP_MINFO_FUNCTION(dba) + + php_info_print_table_start(); + php_info_print_table_row(2, "DBA support", "enabled"); ++#ifdef DB_VERSION_STRING ++ php_info_print_table_row(2, "libdb header version", DB_VERSION_STRING); ++ php_info_print_table_row(2, "libdb library version", db_version(NULL, NULL, NULL)); ++#endif + if (handlers.s) { + smart_str_0(&handlers); + php_info_print_table_row(2, "Supported handlers", ZSTR_VAL(handlers.s)); diff --git a/patches/0007-Add-support-for-use-of-the-system-timezone-database.patch b/patches/0007-Add-support-for-use-of-the-system-timezone-database.patch new file mode 100644 index 00000000..38e5ed5e --- /dev/null +++ b/patches/0007-Add-support-for-use-of-the-system-timezone-database.patch @@ -0,0 +1,675 @@ +From: Debian PHP Maintainers +Date: Wed, 25 Aug 2021 16:47:17 +0200 +Subject: Add-support-for-use-of-the-system-timezone-database + +# License: MIT +# http://opensource.org/licenses/MIT + +# License: MIT +# http://opensource.org/licenses/MIT + +Add support for use of the system timezone database, rather +than embedding a copy. Discussed upstream but was not desired. + +History: +r21: adapt for timelib 2021.03 (in 8.1.0) +r20: adapt for timelib 2020.03 (in 8.0.10RC1) +r19: adapt for timelib 2020.02 (in 8.0.0beta2) +r18: adapt for autotool change in 7.3.3RC1 +r17: adapt for timelib 2018.01 (in 7.3.2RC1) +r16: adapt for timelib 2017.06 (in 7.2.3RC1) +r15: adapt for timelib 2017.05beta7 (in 7.2.0RC1) +r14: improve check for valid tz file +r13: adapt for upstream changes to use PHP allocator +r12: adapt for upstream changes for new zic +r11: use canonical names to avoid more case sensitivity issues + round lat/long from zone.tab towards zero per builtin db +r10: make timezone case insensitive +r9: fix another compile error without --with-system-tzdata configured (Michael Heimpold) +r8: fix compile error without --with-system-tzdata configured +r7: improve check for valid timezone id to exclude directories +r6: fix fd leak in r5, fix country code/BC flag use in + timezone_identifiers_list() using system db, + fix use of PECL timezonedb to override system db, +r5: reverts addition of "System/Localtime" fake tzname. + updated for 5.3.0, parses zone.tab to pick up mapping between + timezone name, country code and long/lat coords +r4: added "System/Localtime" tzname which uses /etc/localtime +r3: fix a crash if /usr/share/zoneinfo doesn't exist (Raphael Geissert) +r2: add filesystem trawl to set up name alias index +r1: initial revision +--- + ext/date/config0.m4 | 13 ++ + ext/date/lib/parse_tz.c | 535 +++++++++++++++++++++++++++++++++++++++++++++++- + 2 files changed, 545 insertions(+), 3 deletions(-) + +diff --git a/ext/date/config0.m4 b/ext/date/config0.m4 +index d7ec926..5d55a70 100644 +--- a/ext/date/config0.m4 ++++ b/ext/date/config0.m4 +@@ -8,6 +8,19 @@ AX_CHECK_COMPILE_FLAG([-Wno-implicit-fallthrough], + [PHP_DATE_CFLAGS="$PHP_DATE_CFLAGS -Wno-implicit-fallthrough"],, + [-Werror]) + ++PHP_ARG_WITH(system-tzdata, for use of system timezone data, ++[ --with-system-tzdata[=DIR] to specify use of system timezone data], ++no, no) ++ ++if test "$PHP_SYSTEM_TZDATA" != "no"; then ++ AC_DEFINE(HAVE_SYSTEM_TZDATA, 1, [Define if system timezone data is used]) ++ ++ if test "$PHP_SYSTEM_TZDATA" != "yes"; then ++ AC_DEFINE_UNQUOTED(HAVE_SYSTEM_TZDATA_PREFIX, "$PHP_SYSTEM_TZDATA", ++ [Define for location of system timezone data]) ++ fi ++fi ++ + PHP_DATE_CFLAGS="$PHP_DATE_CFLAGS -I@ext_builddir@/lib -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1 -DHAVE_TIMELIB_CONFIG_H=1" + timelib_sources="lib/astro.c lib/dow.c lib/parse_date.c lib/parse_tz.c lib/parse_posix.c + lib/timelib.c lib/tm2unixtime.c lib/unixtime2tm.c lib/parse_iso_intervals.c lib/interval.c" +diff --git a/ext/date/lib/parse_tz.c b/ext/date/lib/parse_tz.c +index c7f9358..88a746c 100644 +--- a/ext/date/lib/parse_tz.c ++++ b/ext/date/lib/parse_tz.c +@@ -26,9 +26,22 @@ + #include "timelib.h" + #include "timelib_private.h" + ++#ifdef HAVE_SYSTEM_TZDATA ++#include ++#include ++#include ++#include ++#include ++ ++#include "php_scandir.h" ++ ++#else + #define TIMELIB_SUPPORTS_V2DATA + #define TIMELIB_SUPPORT_SLIM_FILE + #include "timezonedb.h" ++#endif ++ ++#include + + #if (defined(__APPLE__) || defined(__APPLE_CC__)) && (defined(__BIG_ENDIAN__) || defined(__LITTLE_ENDIAN__)) + # if defined(__LITTLE_ENDIAN__) +@@ -95,6 +108,11 @@ static int read_php_preamble(const unsigned char **tzf, timelib_tzinfo *tz) + { + uint32_t version; + ++ if (memcmp(*tzf, "TZif", 4) == 0) { ++ *tzf += 20; ++ return 0; ++ } ++ + /* read ID */ + version = (*tzf)[3] - '0'; + *tzf += 4; +@@ -577,7 +595,429 @@ void timelib_dump_tzinfo(timelib_tzinfo *tz) + } + } + +-static int seek_to_tz_position(const unsigned char **tzf, const char *timezone, const timelib_tzdb *tzdb) ++#ifdef HAVE_SYSTEM_TZDATA ++ ++#ifdef HAVE_SYSTEM_TZDATA_PREFIX ++#define ZONEINFO_PREFIX HAVE_SYSTEM_TZDATA_PREFIX ++#else ++#define ZONEINFO_PREFIX "/usr/share/zoneinfo" ++#endif ++ ++/* System timezone database pointer. */ ++static const timelib_tzdb *timezonedb_system; ++ ++/* Hash table entry for the cache of the zone.tab mapping table. */ ++struct location_info { ++ char code[2]; ++ double latitude, longitude; ++ char name[64]; ++ char *comment; ++ struct location_info *next; ++}; ++ ++/* Cache of zone.tab. */ ++static struct location_info **system_location_table; ++ ++/* Size of the zone.tab hash table; a random-ish prime big enough to ++ * prevent too many collisions. */ ++#define LOCINFO_HASH_SIZE (1021) ++ ++/* Compute a case insensitive hash of str */ ++static uint32_t tz_hash(const char *str) ++{ ++ const unsigned char *p = (const unsigned char *)str; ++ uint32_t hash = 5381; ++ int c; ++ ++ while ((c = tolower(*p++)) != '\0') { ++ hash = (hash << 5) ^ hash ^ c; ++ } ++ ++ return hash % LOCINFO_HASH_SIZE; ++} ++ ++/* Parse an ISO-6709 date as used in zone.tab. Returns end of the ++ * parsed string on success, or NULL on parse error. On success, ++ * writes the parsed number to *result. */ ++static char *parse_iso6709(char *p, double *result) ++{ ++ double v, sign; ++ char *pend; ++ size_t len; ++ ++ if (*p == '+') ++ sign = 1.0; ++ else if (*p == '-') ++ sign = -1.0; ++ else ++ return NULL; ++ ++ p++; ++ for (pend = p; *pend >= '0' && *pend <= '9'; pend++) ++ ;; ++ ++ /* Annoying encoding used by zone.tab has no decimal point, so use ++ * the length to determine the format: ++ * ++ * 4 = DDMM ++ * 5 = DDDMM ++ * 6 = DDMMSS ++ * 7 = DDDMMSS ++ */ ++ len = pend - p; ++ if (len < 4 || len > 7) { ++ return NULL; ++ } ++ ++ /* p => [D]DD */ ++ v = (p[0] - '0') * 10.0 + (p[1] - '0'); ++ p += 2; ++ if (len == 5 || len == 7) ++ v = v * 10.0 + (*p++ - '0'); ++ /* p => MM[SS] */ ++ v += (10.0 * (p[0] - '0') ++ + p[1] - '0') / 60.0; ++ p += 2; ++ /* p => [SS] */ ++ if (len > 5) { ++ v += (10.0 * (p[0] - '0') ++ + p[1] - '0') / 3600.0; ++ p += 2; ++ } ++ ++ /* Round to five decimal place, not because it's a good idea, ++ * but, because the builtin data uses rounded data, so, match ++ * that. */ ++ *result = trunc(v * sign * 100000.0) / 100000.0; ++ ++ return p; ++} ++ ++/* This function parses the zone.tab file to build up the mapping of ++ * timezone to country code and geographic location, and returns a ++ * hash table. The hash table is indexed by the function: ++ * ++ * tz_hash(timezone-name) ++ */ ++static struct location_info **create_location_table(void) ++{ ++ struct location_info **li, *i; ++ char zone_tab[PATH_MAX]; ++ char line[512]; ++ FILE *fp; ++ ++ strncpy(zone_tab, ZONEINFO_PREFIX "/zone.tab", sizeof zone_tab); ++ ++ fp = fopen(zone_tab, "r"); ++ if (!fp) { ++ return NULL; ++ } ++ ++ li = calloc(LOCINFO_HASH_SIZE, sizeof *li); ++ ++ while (fgets(line, sizeof line, fp)) { ++ char *p = line, *code, *name, *comment; ++ uint32_t hash; ++ double latitude, longitude; ++ ++ while (isspace(*p)) ++ p++; ++ ++ if (*p == '#' || *p == '\0' || *p == '\n') ++ continue; ++ ++ if (!isalpha(p[0]) || !isalpha(p[1]) || p[2] != '\t') ++ continue; ++ ++ /* code => AA */ ++ code = p; ++ p[2] = 0; ++ p += 3; ++ ++ /* coords => [+-][D]DDMM[SS][+-][D]DDMM[SS] */ ++ p = parse_iso6709(p, &latitude); ++ if (!p) { ++ continue; ++ } ++ p = parse_iso6709(p, &longitude); ++ if (!p) { ++ continue; ++ } ++ ++ if (!p || *p != '\t') { ++ continue; ++ } ++ ++ /* name = string */ ++ name = ++p; ++ while (*p != '\t' && *p && *p != '\n') ++ p++; ++ ++ *p++ = '\0'; ++ ++ /* comment = string */ ++ comment = p; ++ while (*p != '\t' && *p && *p != '\n') ++ p++; ++ ++ if (*p == '\n' || *p == '\t') ++ *p = '\0'; ++ ++ hash = tz_hash(name); ++ i = malloc(sizeof *i); ++ memcpy(i->code, code, 2); ++ strncpy(i->name, name, sizeof i->name); ++ i->comment = strdup(comment); ++ i->longitude = longitude; ++ i->latitude = latitude; ++ i->next = li[hash]; ++ li[hash] = i; ++ /* printf("%s [%u, %f, %f]\n", name, hash, latitude, longitude); */ ++ } ++ ++ fclose(fp); ++ ++ return li; ++} ++ ++/* Return location info from hash table, using given timezone name. ++ * Returns NULL if the name could not be found. */ ++const struct location_info *find_zone_info(struct location_info **li, ++ const char *name) ++{ ++ uint32_t hash = tz_hash(name); ++ const struct location_info *l; ++ ++ if (!li) { ++ return NULL; ++ } ++ ++ for (l = li[hash]; l; l = l->next) { ++ if (timelib_strcasecmp(l->name, name) == 0) ++ return l; ++ } ++ ++ return NULL; ++} ++ ++/* Filter out some non-tzdata files and the posix/right databases, if ++ * present. */ ++static int index_filter(const struct dirent *ent) ++{ ++ return strcmp(ent->d_name, ".") != 0 ++ && strcmp(ent->d_name, "..") != 0 ++ && strcmp(ent->d_name, "posix") != 0 ++ && strcmp(ent->d_name, "posixrules") != 0 ++ && strcmp(ent->d_name, "right") != 0 ++ && strstr(ent->d_name, ".list") == NULL ++ && strstr(ent->d_name, ".tab") == NULL; ++} ++ ++static int sysdbcmp(const void *first, const void *second) ++{ ++ const timelib_tzdb_index_entry *alpha = first, *beta = second; ++ ++ return timelib_strcasecmp(alpha->id, beta->id); ++} ++ ++ ++/* Create the zone identifier index by trawling the filesystem. */ ++static void create_zone_index(timelib_tzdb *db) ++{ ++ size_t dirstack_size, dirstack_top; ++ size_t index_size, index_next; ++ timelib_tzdb_index_entry *db_index; ++ char **dirstack; ++ ++ /* LIFO stack to hold directory entries to scan; each slot is a ++ * directory name relative to the zoneinfo prefix. */ ++ dirstack_size = 32; ++ dirstack = malloc(dirstack_size * sizeof *dirstack); ++ dirstack_top = 1; ++ dirstack[0] = strdup(""); ++ ++ /* Index array. */ ++ index_size = 64; ++ db_index = malloc(index_size * sizeof *db_index); ++ index_next = 0; ++ ++ do { ++ struct dirent **ents; ++ char name[PATH_MAX], *top; ++ int count; ++ ++ /* Pop the top stack entry, and iterate through its contents. */ ++ top = dirstack[--dirstack_top]; ++ snprintf(name, sizeof name, ZONEINFO_PREFIX "/%s", top); ++ ++ count = php_scandir(name, &ents, index_filter, php_alphasort); ++ ++ while (count > 0) { ++ struct stat st; ++ const char *leaf = ents[count - 1]->d_name; ++ ++ snprintf(name, sizeof name, ZONEINFO_PREFIX "/%s/%s", ++ top, leaf); ++ ++ if (strlen(name) && stat(name, &st) == 0) { ++ /* Name, relative to the zoneinfo prefix. */ ++ const char *root = top; ++ ++ if (root[0] == '/') root++; ++ ++ snprintf(name, sizeof name, "%s%s%s", root, ++ *root ? "/": "", leaf); ++ ++ if (S_ISDIR(st.st_mode)) { ++ if (dirstack_top == dirstack_size) { ++ dirstack_size *= 2; ++ dirstack = realloc(dirstack, ++ dirstack_size * sizeof *dirstack); ++ } ++ dirstack[dirstack_top++] = strdup(name); ++ } ++ else { ++ if (index_next == index_size) { ++ index_size *= 2; ++ db_index = realloc(db_index, ++ index_size * sizeof *db_index); ++ } ++ ++ db_index[index_next++].id = strdup(name); ++ } ++ } ++ ++ free(ents[--count]); ++ } ++ ++ if (count != -1) free(ents); ++ free(top); ++ } while (dirstack_top); ++ ++ qsort(db_index, index_next, sizeof *db_index, sysdbcmp); ++ ++ db->index = db_index; ++ db->index_size = index_next; ++ ++ free(dirstack); ++} ++ ++#define FAKE_HEADER "1234\0??\1??" ++#define FAKE_UTC_POS (7 - 4) ++ ++/* Create a fake data segment for database 'sysdb'. */ ++static void fake_data_segment(timelib_tzdb *sysdb, ++ struct location_info **info) ++{ ++ size_t n; ++ char *data, *p; ++ ++ data = malloc(3 * sysdb->index_size + 7); ++ ++ p = mempcpy(data, FAKE_HEADER, sizeof(FAKE_HEADER) - 1); ++ ++ for (n = 0; n < sysdb->index_size; n++) { ++ const struct location_info *li; ++ timelib_tzdb_index_entry *ent; ++ ++ ent = (timelib_tzdb_index_entry *)&sysdb->index[n]; ++ ++ /* Lookup the timezone name in the hash table. */ ++ if (strcmp(ent->id, "UTC") == 0) { ++ ent->pos = FAKE_UTC_POS; ++ continue; ++ } ++ ++ li = find_zone_info(info, ent->id); ++ if (li) { ++ /* If found, append the BC byte and the ++ * country code; set the position for this ++ * section of timezone data. */ ++ ent->pos = (p - data) - 4; ++ *p++ = '\1'; ++ *p++ = li->code[0]; ++ *p++ = li->code[1]; ++ } ++ else { ++ /* If not found, the timezone data can ++ * point at the header. */ ++ ent->pos = 0; ++ } ++ } ++ ++ sysdb->data = (unsigned char *)data; ++} ++ ++/* Returns true if the passed-in stat structure describes a ++ * probably-valid timezone file. */ ++static int is_valid_tzfile(const struct stat *st, int fd) ++{ ++ if (fd) { ++ char buf[20]; ++ if (read(fd, buf, 20)!=20) { ++ return 0; ++ } ++ lseek(fd, SEEK_SET, 0); ++ if (memcmp(buf, "TZif", 4)) { ++ return 0; ++ } ++ } ++ return S_ISREG(st->st_mode) && st->st_size > 20; ++} ++ ++/* To allow timezone names to be used case-insensitively, find the ++ * canonical name for this timezone, if possible. */ ++static const char *canonical_tzname(const char *timezone) ++{ ++ if (timezonedb_system) { ++ timelib_tzdb_index_entry *ent, lookup; ++ ++ lookup.id = (char *)timezone; ++ ++ ent = bsearch(&lookup, timezonedb_system->index, ++ timezonedb_system->index_size, sizeof lookup, ++ sysdbcmp); ++ if (ent) { ++ return ent->id; ++ } ++ } ++ ++ return timezone; ++} ++ ++/* Return the mmap()ed tzfile if found, else NULL. On success, the ++ * length of the mapped data is placed in *length. */ ++static char *map_tzfile(const char *timezone, size_t *length) ++{ ++ char fname[PATH_MAX]; ++ struct stat st; ++ char *p; ++ int fd; ++ ++ if (timezone[0] == '\0' || strstr(timezone, "..") != NULL) { ++ return NULL; ++ } ++ ++ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", canonical_tzname(timezone)); ++ ++ fd = open(fname, O_RDONLY); ++ if (fd == -1) { ++ return NULL; ++ } else if (fstat(fd, &st) != 0 || !is_valid_tzfile(&st, fd)) { ++ close(fd); ++ return NULL; ++ } ++ ++ *length = st.st_size; ++ p = mmap(NULL, st.st_size, PROT_READ, MAP_SHARED, fd, 0); ++ close(fd); ++ ++ return p != MAP_FAILED ? p : NULL; ++} ++ ++#endif ++ ++static int inmem_seek_to_tz_position(const unsigned char **tzf, const char *timezone, const timelib_tzdb *tzdb) + { + int left = 0, right = tzdb->index_size - 1; + +@@ -603,9 +1043,48 @@ static int seek_to_tz_position(const unsigned char **tzf, const char *timezone, + return 0; + } + ++static int seek_to_tz_position(const unsigned char **tzf, const char *timezone, ++ char **map, size_t *maplen, ++ const timelib_tzdb *tzdb) ++{ ++#ifdef HAVE_SYSTEM_TZDATA ++ if (tzdb == timezonedb_system) { ++ char *orig; ++ ++ orig = map_tzfile(timezone, maplen); ++ if (orig == NULL) { ++ return 0; ++ } ++ ++ (*tzf) = (unsigned char *)orig; ++ *map = orig; ++ return 1; ++ } ++ else ++#endif ++ { ++ return inmem_seek_to_tz_position(tzf, timezone, tzdb); ++ } ++} ++ + const timelib_tzdb *timelib_builtin_db(void) + { ++#ifdef HAVE_SYSTEM_TZDATA ++ if (timezonedb_system == NULL) { ++ timelib_tzdb *tmp = malloc(sizeof *tmp); ++ ++ tmp->version = "0.system"; ++ tmp->data = NULL; ++ create_zone_index(tmp); ++ system_location_table = create_location_table(); ++ fake_data_segment(tmp, system_location_table); ++ timezonedb_system = tmp; ++ } ++ ++ return timezonedb_system; ++#else + return &timezonedb_builtin; ++#endif + } + + const timelib_tzdb_index_entry *timelib_timezone_identifiers_list(const timelib_tzdb *tzdb, int *count) +@@ -617,7 +1096,30 @@ const timelib_tzdb_index_entry *timelib_timezone_identifiers_list(const timelib_ + int timelib_timezone_id_is_valid(const char *timezone, const timelib_tzdb *tzdb) + { + const unsigned char *tzf; +- return (seek_to_tz_position(&tzf, timezone, tzdb)); ++ ++#ifdef HAVE_SYSTEM_TZDATA ++ if (tzdb == timezonedb_system) { ++ char fname[PATH_MAX]; ++ struct stat st; ++ ++ if (timezone[0] == '\0' || strstr(timezone, "..") != NULL) { ++ return 0; ++ } ++ ++ if (system_location_table) { ++ if (find_zone_info(system_location_table, timezone) != NULL) { ++ /* found in cache */ ++ return 1; ++ } ++ } ++ ++ snprintf(fname, sizeof fname, ZONEINFO_PREFIX "/%s", canonical_tzname(timezone)); ++ ++ return stat(fname, &st) == 0 && is_valid_tzfile(&st, 0); ++ } ++#endif ++ ++ return (inmem_seek_to_tz_position(&tzf, timezone, tzdb)); + } + + static int skip_64bit_preamble(const unsigned char **tzf, timelib_tzinfo *tz) +@@ -662,6 +1164,8 @@ static timelib_tzinfo* timelib_tzinfo_ctor(const char *name) + timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *tzdb, int *error_code) + { + const unsigned char *tzf; ++ char *memmap = NULL; ++ size_t maplen; + timelib_tzinfo *tmp; + int version; + int transitions_result, types_result; +@@ -669,7 +1173,7 @@ timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *t + + *error_code = TIMELIB_ERROR_NO_ERROR; + +- if (seek_to_tz_position(&tzf, timezone, tzdb)) { ++ if (seek_to_tz_position(&tzf, timezone, &memmap, &maplen, tzdb)) { + tmp = timelib_tzinfo_ctor(timezone); + + version = read_preamble(&tzf, tmp, &type); +@@ -712,11 +1216,36 @@ timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *t + return NULL; + } + ++#ifdef HAVE_SYSTEM_TZDATA ++ if (memmap) { ++ const struct location_info *li; ++ ++ /* TZif-style - grok the location info from the system database, ++ * if possible. */ ++ ++ if ((li = find_zone_info(system_location_table, timezone)) != NULL) { ++ tmp->location.comments = timelib_strdup(li->comment); ++ strncpy(tmp->location.country_code, li->code, 2); ++ tmp->location.longitude = li->longitude; ++ tmp->location.latitude = li->latitude; ++ tmp->bc = 1; ++ } ++ else { ++ set_default_location_and_comments(&tzf, tmp); ++ } ++ ++ /* Now done with the mmap segment - discard it. */ ++ munmap(memmap, maplen); ++ } else { ++#endif + if (type == TIMELIB_TZINFO_PHP) { + read_location(&tzf, tmp); + } else { + set_default_location_and_comments(&tzf, tmp); + } ++#ifdef HAVE_SYSTEM_TZDATA ++ } ++#endif + } else { + *error_code = TIMELIB_ERROR_NO_SUCH_TIMEZONE; + tmp = NULL; diff --git a/patches/0008-strcmp_null-OnUpdateErrorLog.patch b/patches/0008-strcmp_null-OnUpdateErrorLog.patch new file mode 100644 index 00000000..186f6270 --- /dev/null +++ b/patches/0008-strcmp_null-OnUpdateErrorLog.patch @@ -0,0 +1,25 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:53 +0200 +Subject: strcmp_null-OnUpdateErrorLog + +--- + tests/func/null-new_val.phpt | 10 ++++++++++ + 1 file changed, 10 insertions(+) + create mode 100644 tests/func/null-new_val.phpt + +diff --git a/tests/func/null-new_val.phpt b/tests/func/null-new_val.phpt +new file mode 100644 +index 0000000..412da39 +--- /dev/null ++++ b/tests/func/null-new_val.phpt +@@ -0,0 +1,10 @@ ++--TEST-- ++ini_restore strcmp NULL new_val ++--FILE-- ++ ++--EXPECT-- diff --git a/patches/0009-qdbm-is-usr_include_qdbm.patch b/patches/0009-qdbm-is-usr_include_qdbm.patch new file mode 100644 index 00000000..f18b3976 --- /dev/null +++ b/patches/0009-qdbm-is-usr_include_qdbm.patch @@ -0,0 +1,23 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:53 +0200 +Subject: qdbm-is-usr_include_qdbm + +--- + ext/dba/config.m4 | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/ext/dba/config.m4 b/ext/dba/config.m4 +index 51bdd84..79136d5 100644 +--- a/ext/dba/config.m4 ++++ b/ext/dba/config.m4 +@@ -145,6 +145,10 @@ if test "$PHP_QDBM" != "no"; then + THIS_PREFIX=$i + THIS_INCLUDE=$i/include/qdbm/depot.h + break ++ elif test -f "$i/include/qdbm/depot.h"; then ++ THIS_PREFIX=$i ++ THIS_INCLUDE=$i/include/qdbm/depot.h ++ break + fi + done + diff --git a/patches/0010-session_save_path.patch b/patches/0010-session_save_path.patch new file mode 100644 index 00000000..47b17b60 --- /dev/null +++ b/patches/0010-session_save_path.patch @@ -0,0 +1,35 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:54 +0200 +Subject: session_save_path + +--- + ext/session/session.c | 2 +- + php.ini-production | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/ext/session/session.c b/ext/session/session.c +index 8b95b31..bd09f26 100644 +--- a/ext/session/session.c ++++ b/ext/session/session.c +@@ -790,7 +790,7 @@ static PHP_INI_MH(OnUpdateRfc1867Freq) /* {{{ */ + + /* {{{ PHP_INI */ + PHP_INI_BEGIN() +- STD_PHP_INI_ENTRY("session.save_path", "", PHP_INI_ALL, OnUpdateSaveDir, save_path, php_ps_globals, ps_globals) ++ STD_PHP_INI_ENTRY("session.save_path", "/var/lib/php/sessions", PHP_INI_ALL, OnUpdateSaveDir, save_path, php_ps_globals, ps_globals) + STD_PHP_INI_ENTRY("session.name", "PHPSESSID", PHP_INI_ALL, OnUpdateName, session_name, php_ps_globals, ps_globals) + PHP_INI_ENTRY("session.save_handler", "files", PHP_INI_ALL, OnUpdateSaveHandler) + STD_PHP_INI_BOOLEAN("session.auto_start", "0", PHP_INI_PERDIR, OnUpdateBool, auto_start, php_ps_globals, ps_globals) +diff --git a/php.ini-production b/php.ini-production +index eab21ab..3b8344a 100644 +--- a/php.ini-production ++++ b/php.ini-production +@@ -1371,7 +1371,7 @@ session.save_handler = files + ; where MODE is the octal representation of the mode. Note that this + ; does not overwrite the process's umask. + ; https://php.net/session.save-path +-;session.save_path = "/tmp" ++;session.save_path = "/var/lib/php/sessions" + + ; Whether to use strict session mode. + ; Strict session mode does not accept an uninitialized session ID, and diff --git a/patches/0011-php-fpm-man-section-and-cleanup.patch b/patches/0011-php-fpm-man-section-and-cleanup.patch new file mode 100644 index 00000000..dd14e9c4 --- /dev/null +++ b/patches/0011-php-fpm-man-section-and-cleanup.patch @@ -0,0 +1,48 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:54 +0200 +Subject: php-fpm-man-section-and-cleanup + +--- + sapi/fpm/php-fpm.8.in | 22 ++-------------------- + 1 file changed, 2 insertions(+), 20 deletions(-) + +diff --git a/sapi/fpm/php-fpm.8.in b/sapi/fpm/php-fpm.8.in +index 821fd73..0001a03 100644 +--- a/sapi/fpm/php-fpm.8.in ++++ b/sapi/fpm/php-fpm.8.in +@@ -141,22 +141,8 @@ The configuration file for the php-fpm daemon. + .TP + .B php.ini + The standard php configuration file. +-.SH EXAMPLES +-For any unix systems which use init.d for their main process manager, you should use the init script provided to start and stop the php-fpm daemon. +-.P +-.PD 1 +-.RS +-sudo /etc/init.d/php-fpm start +-.RE +-.TP +-For any unix systems which use systemd for their main process manager, you should use the unit file provided to start and stop the php-fpm daemon. +-.P +-.PD 1 +-.RS +-sudo systemctl start php-fpm.service +-.RE +-.TP +-If your installation has no appropriate init script, launch php-fpm with no arguments. It will launch as a daemon (background process) by default. The file @php_fpm_localstatedir@/run/php-fpm.pid determines whether php-fpm is already up and running. Once started, php-fpm then responds to several POSIX signals: ++.SH SIGNAL ++Once started, php-fpm then responds to several POSIX signals: + .P + .PD 0 + .RS +@@ -170,10 +156,6 @@ If your installation has no appropriate init script, launch php-fpm with no argu + .RE + .PD 1 + .P +-.SH TIPS +-The PHP-FPM CGI daemon will work well with most popular webservers, including Apache2, lighttpd and nginx. +-.PD 1 +-.P + .SH SEE ALSO + The PHP-FPM website: + .PD 0 diff --git a/patches/0012-fpm-config.patch b/patches/0012-fpm-config.patch new file mode 100644 index 00000000..01d86a24 --- /dev/null +++ b/patches/0012-fpm-config.patch @@ -0,0 +1,37 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:54 +0200 +Subject: fpm-config + +--- + sapi/fpm/php-fpm.conf.in | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +diff --git a/sapi/fpm/php-fpm.conf.in b/sapi/fpm/php-fpm.conf.in +index 4818f20..4997748 100644 +--- a/sapi/fpm/php-fpm.conf.in ++++ b/sapi/fpm/php-fpm.conf.in +@@ -14,14 +14,16 @@ + ; Pid file + ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ + ; Default Value: none +-;pid = run/php-fpm.pid ++; Warning: if you change the value here, you need to modify systemd ++; service PIDFile= setting to match the value here. ++pid = @EXPANDED_LOCALSTATEDIR@/run/php/php@PHP_MAJOR_VERSION@.@PHP_MINOR_VERSION@-fpm.pid + + ; Error log file + ; If it's set to "syslog", log is sent to syslogd instead of being written + ; into a local file. + ; Note: the default prefix is @EXPANDED_LOCALSTATEDIR@ + ; Default Value: log/php-fpm.log +-;error_log = log/php-fpm.log ++error_log = @EXPANDED_LOCALSTATEDIR@/log/php@PHP_MAJOR_VERSION@.@PHP_MINOR_VERSION@-fpm.log + + ; syslog_facility is used to specify what type of program is logging the + ; message. This lets syslogd specify that messages from different facilities +@@ -140,4 +142,4 @@ + ; Relative path can also be used. They will be prefixed by: + ; - the global prefix if it's been set (-p argument) + ; - @prefix@ otherwise +-include=@php_fpm_sysconfdir@/php-fpm.d/*.conf ++include=@php_fpm_sysconfdir@/pool.d/*.conf diff --git a/patches/0013-php-fpm-sysconfdir.patch b/patches/0013-php-fpm-sysconfdir.patch new file mode 100644 index 00000000..3345b54f --- /dev/null +++ b/patches/0013-php-fpm-sysconfdir.patch @@ -0,0 +1,21 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:54 +0200 +Subject: php-fpm-sysconfdir + +--- + sapi/fpm/fpm/fpm_conf.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/sapi/fpm/fpm/fpm_conf.c b/sapi/fpm/fpm/fpm_conf.c +index 389a85a..3ba4e00 100644 +--- a/sapi/fpm/fpm/fpm_conf.c ++++ b/sapi/fpm/fpm/fpm_conf.c +@@ -1839,7 +1839,7 @@ int fpm_conf_init_main(int test_conf, int force_daemon) /* {{{ */ + char *tmp; + + if (fpm_globals.prefix == NULL) { +- spprintf(&tmp, 0, "%s/php-fpm.conf", PHP_SYSCONFDIR); ++ spprintf(&tmp, 0, "%s/php/%d.%d/fpm/php-fpm.conf", PHP_SYSCONFDIR, PHP_MAJOR_VERSION, PHP_MINOR_VERSION); + } else { + spprintf(&tmp, 0, "%s/etc/php-fpm.conf", fpm_globals.prefix); + } diff --git a/patches/0014-lp564920-fix-big-files.patch b/patches/0014-lp564920-fix-big-files.patch new file mode 100644 index 00000000..58394a32 --- /dev/null +++ b/patches/0014-lp564920-fix-big-files.patch @@ -0,0 +1,27 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:54 +0200 +Subject: lp564920-fix-big-files + +--- + main/streams/plain_wrapper.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/main/streams/plain_wrapper.c b/main/streams/plain_wrapper.c +index c92b76d..f484a7d 100644 +--- a/main/streams/plain_wrapper.c ++++ b/main/streams/plain_wrapper.c +@@ -750,7 +750,13 @@ static int php_stdiop_set_option(php_stream *stream, int option, int value, void + + switch (value) { + case PHP_STREAM_MMAP_SUPPORTED: +- return fd == -1 ? PHP_STREAM_OPTION_RETURN_ERR : PHP_STREAM_OPTION_RETURN_OK; ++ if (fd == -1) ++ return PHP_STREAM_OPTION_RETURN_ERR; ++ /* Don't mmap large files */ ++ do_fstat(data, 1); ++ if (data->sb.st_size > 4 * 1024 * 1024) ++ return PHP_STREAM_OPTION_RETURN_ERR; ++ return PHP_STREAM_OPTION_RETURN_OK; + + case PHP_STREAM_MMAP_MAP_RANGE: + if (do_fstat(data, 1) != 0) { diff --git a/patches/0015-temporary-path-fixes-for-multiarch.patch b/patches/0015-temporary-path-fixes-for-multiarch.patch new file mode 100644 index 00000000..196a6885 --- /dev/null +++ b/patches/0015-temporary-path-fixes-for-multiarch.patch @@ -0,0 +1,79 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:54 +0200 +Subject: temporary-path-fixes-for-multiarch + +--- + ext/dba/config.m4 | 2 +- + ext/gmp/config.m4 | 3 ++- + ext/ldap/config.m4 | 7 ++----- + ext/pdo_dblib/config.m4 | 2 +- + 4 files changed, 6 insertions(+), 8 deletions(-) + +diff --git a/ext/dba/config.m4 b/ext/dba/config.m4 +index 79136d5..bbd6bad 100644 +--- a/ext/dba/config.m4 ++++ b/ext/dba/config.m4 +@@ -302,7 +302,7 @@ AC_DEFUN([PHP_DBA_DB_CHECK],[ + AC_MSG_ERROR([DBA: Could not find necessary header file(s).]) + fi + for LIB in $2; do +- if test -f $THIS_PREFIX/$PHP_LIBDIR/lib$LIB.a || test -f $THIS_PREFIX/$PHP_LIBDIR/lib$LIB.$SHLIB_SUFFIX_NAME; then ++ if test -f $THIS_PREFIX/$PHP_LIBDIR/lib$LIB.a || test -f $THIS_PREFIX/$PHP_LIBDIR/$DEB_HOST_MULTIARCH/lib$LIB.$SHLIB_SUFFIX_NAME || test -f $THIS_PREFIX/$PHP_LIBDIR/lib$LIB.$SHLIB_SUFFIX_NAME; then + lib_found=""; + PHP_TEMP_LDFLAGS(-L$THIS_PREFIX/$PHP_LIBDIR, -l$LIB,[ + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ +diff --git a/ext/gmp/config.m4 b/ext/gmp/config.m4 +index fa55751..1efacd8 100644 +--- a/ext/gmp/config.m4 ++++ b/ext/gmp/config.m4 +@@ -12,7 +12,7 @@ if test "$PHP_GMP" != "no"; then + + PHP_ADD_LIBRARY(gmp,,GMP_SHARED_LIBADD) + else +- if test ! -f $PHP_GMP/include/gmp.h; then ++ if test ! -f $PHP_GMP/include/gmp.h -a test ! -f $PHP_GMP/$DEB_HOST_MULTIARCH/include/gmp.h; then + AC_MSG_ERROR(Unable to locate gmp.h) + fi + +@@ -25,6 +25,7 @@ if test "$PHP_GMP" != "no"; then + + PHP_ADD_LIBRARY_WITH_PATH(gmp, $PHP_GMP/$PHP_LIBDIR, GMP_SHARED_LIBADD) + PHP_ADD_INCLUDE($PHP_GMP/include) ++ PHP_ADD_INCLUDE($PHP_GMP/include/$DEB_HOST_MULTIARCH) + fi + + PHP_INSTALL_HEADERS([ext/gmp/php_gmp_int.h]) +diff --git a/ext/ldap/config.m4 b/ext/ldap/config.m4 +index 89c4b19..2c3b524 100644 +--- a/ext/ldap/config.m4 ++++ b/ext/ldap/config.m4 +@@ -65,14 +65,11 @@ if test "$PHP_LDAP" != "no"; then + AC_MSG_ERROR(Cannot find ldap.h) + fi + +- dnl -pc removal is a hack for clang +- MACHINE_INCLUDES=$($CC -dumpmachine | $SED 's/-pc//') +- +- if test -f $LDAP_LIBDIR/liblber.a || test -f $LDAP_LIBDIR/liblber.$SHLIB_SUFFIX_NAME || test -f $LDAP_LIBDIR/$MACHINE_INCLUDES/liblber.a || test -f $LDAP_LIBDIR/$MACHINE_INCLUDES/liblber.$SHLIB_SUFFIX_NAME; then ++ if test -f $LDAP_LIBDIR/liblber.a || test -f $LDAP_LIBDIR/liblber.$SHLIB_SUFFIX_NAME || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/liblber.a || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/liblber.$SHLIB_SUFFIX_NAME; then + PHP_ADD_LIBRARY_WITH_PATH(lber, $LDAP_LIBDIR, LDAP_SHARED_LIBADD) + PHP_ADD_LIBRARY_WITH_PATH(ldap, $LDAP_LIBDIR, LDAP_SHARED_LIBADD) + +- elif test -f $LDAP_LIBDIR/libldap.$SHLIB_SUFFIX_NAME || test -f $LDAP_LIBDIR/libldap.$SHLIB_SUFFIX_NAME.3 || test -f $LDAP_LIBDIR/$MACHINE_INCLUDES/libldap.$SHLIB_SUFFIX_NAME || test -f $LDAP_LIBDIR/$MACHINE_INCLUDES/libldap.$SHLIB_SUFFIX_NAME.3 || test -f $LDAP_LIBDIR/libldap.3.dylib; then ++ elif test -f $LDAP_LIBDIR/libldap.$SHLIB_SUFFIX_NAME || test -f $LDAP_LIBDIR/libldap.$SHLIB_SUFFIX_NAME.3 || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/libldap.$SHLIB_SUFFIX_NAME || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/libldap.$SHLIB_SUFFIX_NAME.3 || test -f $LDAP_LIBDIR/libldap.3.dylib; then + PHP_ADD_LIBRARY_WITH_PATH(ldap, $LDAP_LIBDIR, LDAP_SHARED_LIBADD) + + elif test -f $LDAP_LIBDIR/libclntsh.$SHLIB_SUFFIX_NAME.12.1 || test -f $LDAP_LIBDIR/$MACHINE_INCLUDES/libclntsh.$SHLIB_SUFFIX_NAME.12.1; then +diff --git a/ext/pdo_dblib/config.m4 b/ext/pdo_dblib/config.m4 +index 289eeb7..7b7a063 100644 +--- a/ext/pdo_dblib/config.m4 ++++ b/ext/pdo_dblib/config.m4 +@@ -33,7 +33,7 @@ if test "$PHP_PDO_DBLIB" != "no"; then + PHP_LIBDIR=lib + fi + +- if test ! -r "$PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR/libsybdb.a" && test ! -r "$PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR/libsybdb.so"; then ++ if test ! -r "$PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR/libsybdb.a" && test ! -r "$PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR/$DEB_HOST_MULTIARCH/libsybdb.so" && test ! -r "$PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR/libsybdb.so"; then + AC_MSG_ERROR(Could not find $PDO_FREETDS_INSTALLATION_DIR/$PHP_LIBDIR/libsybdb.[a|so]) + fi + diff --git a/patches/0016-hurd-noptrace.patch b/patches/0016-hurd-noptrace.patch new file mode 100644 index 00000000..6394b201 --- /dev/null +++ b/patches/0016-hurd-noptrace.patch @@ -0,0 +1,24 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:54 +0200 +Subject: hurd-noptrace + +--- + sapi/fpm/config.m4 | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/sapi/fpm/config.m4 b/sapi/fpm/config.m4 +index e3d5208..b9b4dda 100644 +--- a/sapi/fpm/config.m4 ++++ b/sapi/fpm/config.m4 +@@ -165,6 +165,11 @@ AC_DEFUN([AC_FPM_TRACE], + pid_t child; + int status; + ++ /* broken ptrace on Hurd, avoid hanging */ ++ #ifdef __GNU__ ++ return 10; ++ #endif ++ + if ( (child = fork()) ) { /* parent */ + int ret = 0; + diff --git a/patches/0017-php-5.3.3-macropen.patch b/patches/0017-php-5.3.3-macropen.patch new file mode 100644 index 00000000..ff347111 --- /dev/null +++ b/patches/0017-php-5.3.3-macropen.patch @@ -0,0 +1,55 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:55 +0200 +Subject: php-5.3.3-macropen + +--- + ext/dba/dba.c | 2 +- + ext/dba/dba_db3.c | 4 ++-- + ext/dba/dba_db4.c | 4 ++-- + 3 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/ext/dba/dba.c b/ext/dba/dba.c +index 9e9d700..a9f99c9 100644 +--- a/ext/dba/dba.c ++++ b/ext/dba/dba.c +@@ -851,7 +851,7 @@ static void php_dba_open(INTERNAL_FUNCTION_PARAMETERS, bool persistent) + } + } + +- if (error || hptr->open(info, &error) == FAILURE) { ++ if (error || (hptr->open)(info, &error) == FAILURE) { + dba_close(info); + if (EXPECTED(!EG(exception))) { + if (error) { +diff --git a/ext/dba/dba_db3.c b/ext/dba/dba_db3.c +index d9e948a..11610da 100644 +--- a/ext/dba/dba_db3.c ++++ b/ext/dba/dba_db3.c +@@ -81,9 +81,9 @@ DBA_OPEN_FUNC(db3) + dbp->set_errcall(dbp, php_dba_db3_errcall_fcn); + if( + #if (DB_VERSION_MAJOR > 4 || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)) +- (err=dbp->open(dbp, 0, info->path, NULL, type, gmode, filemode)) == 0) { ++ (err=(dbp->open)(dbp, 0, info->path, NULL, type, gmode, filemode)) == 0) { + #else +- (err=dbp->open(dbp, info->path, NULL, type, gmode, filemode)) == 0) { ++ (err=(dbp->open)(dbp, info->path, NULL, type, gmode, filemode)) == 0) { + #endif + dba_db3_data *data; + +diff --git a/ext/dba/dba_db4.c b/ext/dba/dba_db4.c +index 3de66a4..c088cc7 100644 +--- a/ext/dba/dba_db4.c ++++ b/ext/dba/dba_db4.c +@@ -110,9 +110,9 @@ DBA_OPEN_FUNC(db4) + dbp->set_errcall(dbp, php_dba_db4_errcall_fcn); + if ( + #if (DB_VERSION_MAJOR > 4 || (DB_VERSION_MAJOR == 4 && DB_VERSION_MINOR >= 1)) +- (err=dbp->open(dbp, 0, info->path, NULL, type, gmode, filemode)) == 0) { ++ (err=(dbp->open)(dbp, 0, info->path, NULL, type, gmode, filemode)) == 0) { + #else +- (err=dbp->open(dbp, info->path, NULL, type, gmode, filemode)) == 0) { ++ (err=(dbp->open)(dbp, info->path, NULL, type, gmode, filemode)) == 0) { + #endif + dba_db4_data *data; + diff --git a/patches/0018-php-5.2.4-embed.patch b/patches/0018-php-5.2.4-embed.patch new file mode 100644 index 00000000..63522ac4 --- /dev/null +++ b/patches/0018-php-5.2.4-embed.patch @@ -0,0 +1,21 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:55 +0200 +Subject: php-5.2.4-embed + +--- + sapi/embed/config.m4 | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/sapi/embed/config.m4 b/sapi/embed/config.m4 +index 39d7dcf..e648f97 100644 +--- a/sapi/embed/config.m4 ++++ b/sapi/embed/config.m4 +@@ -12,7 +12,7 @@ if test "$PHP_EMBED" != "no"; then + yes|shared) + LIBPHP_CFLAGS="-shared" + PHP_EMBED_TYPE=shared +- INSTALL_IT="\$(mkinstalldirs) \$(INSTALL_ROOT)\$(prefix)/lib; \$(INSTALL) -m 0755 $SAPI_SHARED \$(INSTALL_ROOT)\$(prefix)/lib" ++ INSTALL_IT="\$(mkinstalldirs) \$(INSTALL_ROOT)\$(libdir); \$(LIBTOOL) --mode=install \$(INSTALL) -m 0755 \$(OVERALL_TARGET) \$(INSTALL_ROOT)\$(libdir)" + ;; + static) + LIBPHP_CFLAGS="-static" diff --git a/patches/0019-php-fpm-m68k.patch b/patches/0019-php-fpm-m68k.patch new file mode 100644 index 00000000..90c11ce0 --- /dev/null +++ b/patches/0019-php-fpm-m68k.patch @@ -0,0 +1,60 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:55 +0200 +Subject: php-fpm-m68k + +--- + sapi/fpm/fpm/fpm_atomic.h | 34 ++++++++++++++++++++++++++++++++++ + 1 file changed, 34 insertions(+) + +diff --git a/sapi/fpm/fpm/fpm_atomic.h b/sapi/fpm/fpm/fpm_atomic.h +index e3926e7..b2855a1 100644 +--- a/sapi/fpm/fpm/fpm_atomic.h ++++ b/sapi/fpm/fpm/fpm_atomic.h +@@ -3,6 +3,12 @@ + #ifndef FPM_ATOMIC_H + #define FPM_ATOMIC_H 1 + ++#if defined(__m68k__) ++#define _GNU_SOURCE ++#include ++#include ++#endif ++ + #include + #include + +@@ -131,6 +137,34 @@ static inline atomic_uint_t atomic_cmp_set(atomic_t *lock, atomic_uint_t old, at + #error Sparc v8 and predecessors are not and will not be supported (see bug report 53310) + #endif /* #if (__sparcv9 || __sparcv9__) */ + ++#elif defined(__m68k__) && defined(__linux__) ++ ++typedef signed int atomic_int_t __attribute__((__aligned__(4))); ++typedef unsigned int atomic_uint_t __attribute__((__aligned__(4))); ++typedef volatile unsigned int atomic_t __attribute__((__aligned__(4))); ++ ++#ifndef SYS_atomic_cmpxchg_32 ++#define SYS_atomic_cmpxchg_32 335 ++#endif ++ ++static inline atomic_uint_t atomic_cas_32(atomic_t *lock, atomic_uint_t old, atomic_uint_t new) /* {{{ */ ++{ ++ register atomic_t *a0 asm("a0") = lock; ++ register atomic_uint_t d2 asm("d2") = old; ++ register atomic_uint_t d1 asm("d1") = new; ++ register atomic_uint_t d0 asm("d0") = SYS_atomic_cmpxchg_32; ++ ++ asm volatile("trap #0" : "+r" (d0), "+r" (d1), "+r" (a0) : "r" (d2) : "memory", "a1"); ++ return (d0); ++} ++/* }}} */ ++ ++static inline atomic_uint_t atomic_cmp_set(atomic_t *lock, atomic_uint_t old, atomic_uint_t set) /* {{{ */ ++{ ++ return (atomic_cas_32(lock, old, set) == old); ++} ++/* }}} */ ++ + #else + + #error Unsupported processor. Please open a bug report (https://github.com/php/php-src/issues). diff --git a/patches/0020-expose_all_built_and_installed_apis.patch b/patches/0020-expose_all_built_and_installed_apis.patch new file mode 100644 index 00000000..b58b982d --- /dev/null +++ b/patches/0020-expose_all_built_and_installed_apis.patch @@ -0,0 +1,42 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:56 +0200 +Subject: expose_all_built_and_installed_apis + +--- + scripts/man1/php-config.1.in | 2 +- + scripts/php-config.in | 5 ++++- + 2 files changed, 5 insertions(+), 2 deletions(-) + +diff --git a/scripts/man1/php-config.1.in b/scripts/man1/php-config.1.in +index 8ccd171..04a3290 100644 +--- a/scripts/man1/php-config.1.in ++++ b/scripts/man1/php-config.1.in +@@ -44,7 +44,7 @@ Full path to php CLI or CGI binary + .TP + .PD 0 + .B \-\-php-sapis +-Show all SAPI modules available ++Show all SAPI modules installed on the Debian system + .TP + .PD 0 + .B \-\-configure-options +diff --git a/scripts/php-config.in b/scripts/php-config.in +index cac95ac..45a0759 100644 +--- a/scripts/php-config.in ++++ b/scripts/php-config.in +@@ -18,11 +18,14 @@ exe_extension="@EXEEXT@" + php_cli_binary=NONE + php_cgi_binary=NONE + configure_options="@CONFIGURE_OPTIONS@" +-php_sapis="@PHP_INSTALLED_SAPIS@" ++#php_sapis="@PHP_INSTALLED_SAPIS@" + phpapi="@DEBIAN_PHP_API@" + ini_dir="@EXPANDED_PHP_CONFIG_FILE_SCAN_DIR@" + ini_path="@EXPANDED_PHP_CONFIG_FILE_PATH@" + ++# Query the dpkg database for available PHP sapis ++php_sapis=$(dpkg-query -W -f='${Package} ' libapache2-mod-php${program_suffix} php${program_suffix}-cgi php${program_suffix}-cli php${program_suffix}-fpm libphp${program_suffix}-embed php${program_suffix}-phpdbg 2>/dev/null | sed -e "s|libapache2-mod-php${program_suffix}|apache2handler|;s|php${program_suffix}-cgi|cgi|;s|php${program_suffix}-cli|cli|;s|php${program_suffix}-fpm|fpm|;s|libphp${program_suffix}-embed|embed|;s|php${program_suffix}-phpdbg|phpdbg|;") ++ + # Set php_cli_binary and php_cgi_binary if available + for sapi in $php_sapis; do + case $sapi in diff --git a/patches/0021-Use-system-timezone.patch b/patches/0021-Use-system-timezone.patch new file mode 100644 index 00000000..fd796979 --- /dev/null +++ b/patches/0021-Use-system-timezone.patch @@ -0,0 +1,43 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:56 +0200 +Subject: Use system timezone + +Upstream don't want this patch. See +http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=730771 for a summary. + +This delta is recovered from previous versions of the system timezone patch in +Debian, and appears to have inadvertently been dropped. Author unknown. + +To be used in tandem with use_embedded_timezonedb.patch and use_embedded_timezonedb_fixes.patch. +--- + ext/date/php_date.c | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/ext/date/php_date.c b/ext/date/php_date.c +index 4e1ff21..876e5b5 100644 +--- a/ext/date/php_date.c ++++ b/ext/date/php_date.c +@@ -549,6 +549,23 @@ static char* guess_timezone(const timelib_tzdb *tzdb) + } else if (*DATEG(default_timezone)) { + return DATEG(default_timezone); + } ++ /* Try to guess timezone from system information */ ++ { ++ struct tm *ta, tmbuf; ++ time_t the_time; ++ char *tzid = NULL; ++ ++ the_time = time(NULL); ++ ta = php_localtime_r(&the_time, &tmbuf); ++ if (ta) { ++ tzid = timelib_timezone_id_from_abbr(ta->tm_zone, ta->tm_gmtoff, ta->tm_isdst); ++ } ++ if (! tzid) { ++ tzid = "UTC"; ++ } ++ ++ return tzid; ++ } + /* Fallback to UTC */ + return "UTC"; + } diff --git a/patches/0022-php-fpm-do-reload-on-SIGHUP.patch b/patches/0022-php-fpm-do-reload-on-SIGHUP.patch new file mode 100644 index 00000000..a8e05eb8 --- /dev/null +++ b/patches/0022-php-fpm-do-reload-on-SIGHUP.patch @@ -0,0 +1,67 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:56 +0200 +Subject: php-fpm-do-reload-on-SIGHUP + +--- + sapi/fpm/fpm/fpm_events.c | 5 +++++ + sapi/fpm/fpm/fpm_signals.c | 3 +++ + sapi/fpm/php-fpm.8.in | 2 +- + 3 files changed, 9 insertions(+), 1 deletion(-) + +diff --git a/sapi/fpm/fpm/fpm_events.c b/sapi/fpm/fpm/fpm_events.c +index 4cc5606..de60589 100644 +--- a/sapi/fpm/fpm/fpm_events.c ++++ b/sapi/fpm/fpm/fpm_events.c +@@ -132,6 +132,11 @@ static void fpm_got_signal(struct fpm_event_s *ev, short which, void *arg) /* {{ + zlog(ZLOG_NOTICE, "Reloading in progress ..."); + fpm_pctl(FPM_PCTL_STATE_RELOADING, FPM_PCTL_ACTION_SET); + break; ++ case 'H' : /* SIGHUP */ ++ zlog(ZLOG_DEBUG, "received SIGHUP"); ++ zlog(ZLOG_NOTICE, "Reloading in progress ..."); ++ fpm_pctl(FPM_PCTL_STATE_RELOADING, FPM_PCTL_ACTION_SET); ++ break; + } + + if (fpm_globals.is_child) { +diff --git a/sapi/fpm/fpm/fpm_signals.c b/sapi/fpm/fpm/fpm_signals.c +index 6aad440..845385e 100644 +--- a/sapi/fpm/fpm/fpm_signals.c ++++ b/sapi/fpm/fpm/fpm_signals.c +@@ -160,6 +160,7 @@ static void sig_handler(int signo) /* {{{ */ + [SIGINT] = 'I', + [SIGUSR1] = '1', + [SIGUSR2] = '2', ++ [SIGHUP] = 'H', + [SIGQUIT] = 'Q', + [SIGCHLD] = 'C' + }; +@@ -209,6 +210,7 @@ int fpm_signals_init_main(void) + 0 > sigaction(SIGINT, &act, 0) || + 0 > sigaction(SIGUSR1, &act, 0) || + 0 > sigaction(SIGUSR2, &act, 0) || ++ 0 > sigaction(SIGHUP, &act, 0) || + 0 > sigaction(SIGCHLD, &act, 0) || + 0 > sigaction(SIGQUIT, &act, 0)) { + +@@ -242,6 +244,7 @@ int fpm_signals_init_child(void) + 0 > sigaction(SIGINT, &act_dfl, 0) || + 0 > sigaction(SIGUSR1, &act_dfl, 0) || + 0 > sigaction(SIGUSR2, &act_dfl, 0) || ++ 0 > sigaction(SIGHUP, &act_dfl, 0) || + 0 > sigaction(SIGCHLD, &act_dfl, 0) || + 0 > sigaction(SIGQUIT, &act, 0)) { + +diff --git a/sapi/fpm/php-fpm.8.in b/sapi/fpm/php-fpm.8.in +index 0001a03..15873df 100644 +--- a/sapi/fpm/php-fpm.8.in ++++ b/sapi/fpm/php-fpm.8.in +@@ -152,7 +152,7 @@ Once started, php-fpm then responds to several POSIX signals: + .TP + .B SIGUSR1 \fPre-open log file + .TP +-.B SIGUSR2 \fPgraceful reload of all workers + reload of fpm conf/binary ++.B SIGUSR2,SIGHUP \fPgraceful reload of all workers + reload of fpm conf/binary + .RE + .PD 1 + .P diff --git a/patches/0023-php-5.4.8-ldap_r.patch b/patches/0023-php-5.4.8-ldap_r.patch new file mode 100644 index 00000000..5e66c43d --- /dev/null +++ b/patches/0023-php-5.4.8-ldap_r.patch @@ -0,0 +1,25 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:56 +0200 +Subject: php-5.4.8-ldap_r + +Use -lldap_r by default. +--- + ext/ldap/config.m4 | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/ext/ldap/config.m4 b/ext/ldap/config.m4 +index 2c3b524..ecf5341 100644 +--- a/ext/ldap/config.m4 ++++ b/ext/ldap/config.m4 +@@ -65,7 +65,10 @@ if test "$PHP_LDAP" != "no"; then + AC_MSG_ERROR(Cannot find ldap.h) + fi + +- if test -f $LDAP_LIBDIR/liblber.a || test -f $LDAP_LIBDIR/liblber.$SHLIB_SUFFIX_NAME || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/liblber.a || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/liblber.$SHLIB_SUFFIX_NAME; then ++ if test -f $LDAP_LIBDIR/libldap_r.a || test -f $LDAP_LIBDIR/libldap_r.$SHLIB_SUFFIX_NAME || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/libldap_r.a || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/libldap_r.$SHLIB_SUFFIX_NAME; then ++ PHP_ADD_LIBRARY_WITH_PATH(lber, $LDAP_LIBDIR, LDAP_SHARED_LIBADD) ++ PHP_ADD_LIBRARY_WITH_PATH(ldap_r, $LDAP_LIBDIR, LDAP_SHARED_LIBADD) ++ elif test -f $LDAP_LIBDIR/liblber.a || test -f $LDAP_LIBDIR/liblber.$SHLIB_SUFFIX_NAME || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/liblber.a || test -f $LDAP_LIBDIR/$DEB_HOST_MULTIARCH/liblber.$SHLIB_SUFFIX_NAME; then + PHP_ADD_LIBRARY_WITH_PATH(lber, $LDAP_LIBDIR, LDAP_SHARED_LIBADD) + PHP_ADD_LIBRARY_WITH_PATH(ldap, $LDAP_LIBDIR, LDAP_SHARED_LIBADD) + diff --git a/patches/0024-php-5.4.9-fixheader.patch b/patches/0024-php-5.4.9-fixheader.patch new file mode 100644 index 00000000..bb0a8f83 --- /dev/null +++ b/patches/0024-php-5.4.9-fixheader.patch @@ -0,0 +1,22 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:56 +0200 +Subject: php-5.4.9-fixheader + +Make generated php_config.h constant across rebuilds. +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index c3987ed..75218bc 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1460,7 +1460,7 @@ PHP_REMOVE_USR_LIB(LDFLAGS) + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $PHP_LDFLAGS" + EXTRA_LDFLAGS_PROGRAM="$EXTRA_LDFLAGS_PROGRAM $PHP_LDFLAGS" + +-UNAME=`uname -a | xargs` ++UNAME=`uname | xargs` + PHP_UNAME=${PHP_UNAME:-$UNAME} + AC_DEFINE_UNQUOTED(PHP_UNAME,"$PHP_UNAME",[uname -a output]) + PHP_OS=`uname | xargs` diff --git a/patches/0025-php-5.6.0-noNO.patch b/patches/0025-php-5.6.0-noNO.patch new file mode 100644 index 00000000..ae739e76 --- /dev/null +++ b/patches/0025-php-5.6.0-noNO.patch @@ -0,0 +1,53 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:56 +0200 +Subject: php-5.6.0-noNO + +--- + ext/standard/tests/strings/setlocale_variation2.phpt | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +diff --git a/ext/standard/tests/strings/setlocale_variation2.phpt b/ext/standard/tests/strings/setlocale_variation2.phpt +index 6f62f71..d8666ba 100644 +--- a/ext/standard/tests/strings/setlocale_variation2.phpt ++++ b/ext/standard/tests/strings/setlocale_variation2.phpt +@@ -47,6 +47,7 @@ function list_system_locales() { + //try different locale names + $failure_locale = array(); + $success_count = 0; ++$expected = 0; + + echo "-- Test setlocale() with all available locale in the system --\n"; + // gather all locales installed in the system(stored $all_system_locales), +@@ -56,6 +57,10 @@ function list_system_locales() { + if(setlocale(LC_ALL,$value )){ + $success_count++; + } ++ else if ($value == 'no_NO.ISO-8859-1') { ++ // ignore this one, see rhbz #971416 ++ $expected++; ++ } + else{ + //failure values are put in to an array $failure_locale + $failure_locale[] = $value; +@@ -64,11 +69,11 @@ function list_system_locales() { + + echo "No of locales found on the machine = ".count($all_system_locales)."\n"; + echo "No of setlocale() success = ".$success_count."\n"; +-echo "Expected no of failures = 0\n"; ++echo "Expected no of failures = $expected\n"; + echo "Test "; + // check if there were any failure of setlocale() function earlier, if any + // failure then dump the list of failing locales +-if($success_count != count($all_system_locales)){ ++if(($success_count + $expected) != count($all_system_locales)){ + echo "FAILED\n"; + echo "Names of locale() for which setlocale() failed ...\n"; + var_dump($failure_locale); +@@ -84,6 +89,6 @@ function list_system_locales() { + -- Test setlocale() with all available locale in the system -- + No of locales found on the machine = %d + No of setlocale() success = %d +-Expected no of failures = 0 ++Expected no of failures = %d + Test PASSED + Done diff --git a/patches/0026-php-5.6.0-oldpcre.patch b/patches/0026-php-5.6.0-oldpcre.patch new file mode 100644 index 00000000..a28f92f2 --- /dev/null +++ b/patches/0026-php-5.6.0-oldpcre.patch @@ -0,0 +1,39 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:57 +0200 +Subject: php-5.6.0-oldpcre + +--- + ext/pcre/tests/grep2.phpt | 10 ++-------- + ext/pcre/tests/match_flags3.phpt | 2 +- + 2 files changed, 3 insertions(+), 9 deletions(-) + +diff --git a/ext/pcre/tests/grep2.phpt b/ext/pcre/tests/grep2.phpt +index 9721dfb..4c35ec3 100644 +--- a/ext/pcre/tests/grep2.phpt ++++ b/ext/pcre/tests/grep2.phpt +@@ -36,12 +36,6 @@ + string(1) "1" + } + bool(true) +-array(3) { +- [5]=> +- string(1) "a" +- ["xyz"]=> +- string(2) "q6" +- [6]=> +- string(3) "h20" ++array(0) { + } +-bool(false) ++bool(true) +diff --git a/ext/pcre/tests/match_flags3.phpt b/ext/pcre/tests/match_flags3.phpt +index 6511c71..05c62a0 100644 +--- a/ext/pcre/tests/match_flags3.phpt ++++ b/ext/pcre/tests/match_flags3.phpt +@@ -41,5 +41,5 @@ + } + } + +-Warning: preg_match(): Compilation failed: %s name must start with a non-digit at offset %d in %smatch_flags3.php on line %d ++Warning: preg_match(): Numeric named subpatterns are not allowed in %smatch_flags3.php on line %d + bool(false) diff --git a/patches/0027-hack-phpdbg-to-explicitly-link-with-libedit.patch b/patches/0027-hack-phpdbg-to-explicitly-link-with-libedit.patch new file mode 100644 index 00000000..07e3c29d --- /dev/null +++ b/patches/0027-hack-phpdbg-to-explicitly-link-with-libedit.patch @@ -0,0 +1,23 @@ +From: Debian PHP Maintainers +Date: Sat, 2 May 2015 10:26:57 +0200 +Subject: hack-phpdbg-to-explicitly-link-with-libedit + +--- + sapi/phpdbg/config.m4 | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/sapi/phpdbg/config.m4 b/sapi/phpdbg/config.m4 +index 4bce378..c1fb29c 100644 +--- a/sapi/phpdbg/config.m4 ++++ b/sapi/phpdbg/config.m4 +@@ -36,7 +36,9 @@ if test "$BUILD_PHPDBG" = "" && test "$PHP_PHPDBG" != "no"; then + if test "$PHP_PHPDBG_READLINE" = "yes"; then + if test "$PHP_READLINE" != "no" -o "$PHP_LIBEDIT" != "no"; then + AC_DEFINE(HAVE_PHPDBG_READLINE, 1, [ ]) +- PHPDBG_EXTRA_LIBS="$PHP_READLINE_LIBS" ++# PHPDBG_EXTRA_LIBS="$PHP_READLINE_LIBS" ++# Temporary hack until this gets fixed ++ PHPDBG_EXTRA_LIBS="-ledit -ltermcap" + AC_MSG_RESULT([ok]) + else + AC_MSG_RESULT([readline is not available]) diff --git a/patches/0028-Remove-W3C-validation-icon-to-not-expose-the-reader-.patch b/patches/0028-Remove-W3C-validation-icon-to-not-expose-the-reader-.patch new file mode 100644 index 00000000..7bfe8b09 --- /dev/null +++ b/patches/0028-Remove-W3C-validation-icon-to-not-expose-the-reader-.patch @@ -0,0 +1,25 @@ +From: =?utf-8?b?T25kxZllaiBTdXLDvQ==?= +Date: Wed, 29 Jul 2015 14:37:55 +0200 +Subject: Remove W3C validation icon to not expose the reader's IP address to + potential tracking. + +--- + sapi/fpm/status.html.in | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/sapi/fpm/status.html.in b/sapi/fpm/status.html.in +index d3b6d5e..f71d486 100644 +--- a/sapi/fpm/status.html.in ++++ b/sapi/fpm/status.html.in +@@ -70,11 +70,6 @@ + PID↓Start TimeStart SinceRequests ServedRequest DurationRequest methodRequest URIContent LengthUserScriptLast Request %CPULast Request Memory + + +-

+- +- Valid XHTML 1.0 Transitional +- +-

+