Merge remote-tracking branch 'origin/release-21.05' into staging-next-21.05

This commit is contained in:
Jonathan Ringer
2021-05-25 00:02:45 -07:00
19 changed files with 93 additions and 211 deletions

View File

@@ -235,7 +235,7 @@ lib.makeScope pkgs.newScope (self: with self; {
(dep: "mkdir -p ext; ln -s ${dep.dev}/include ext/${dep.extensionName}")
internalDeps}
'';
checkPhase = "echo n | make test";
checkPhase = "runHook preCheck; echo n | make test; runHook postCheck";
outputs = [ "out" "dev" ];
installPhase = ''
mkdir -p $out/lib/php/extensions
@@ -270,6 +270,20 @@ lib.makeScope pkgs.newScope (self: with self; {
{ name = "dba"; }
{ name = "dom";
buildInputs = [ libxml2 ];
patches = [
# https://github.com/php/php-src/pull/7030
(fetchpatch {
url = "https://github.com/php/php-src/commit/4cc261aa6afca2190b1b74de39c3caa462ec6f0b.patch";
sha256 = "11qsdiwj1zmpfc2pgh6nr0sn7qa1nyjg4jwf69cgwnd57qfjcy4k";
excludes = [ "ext/dom/tests/bug43364.phpt" "ext/dom/tests/bug80268.phpt" ];
})
];
# For some reason `patch` fails to remove these files correctly.
# Since `postPatch` is already used in `mkExtension`, we have to make it here.
preCheck = ''
rm tests/bug43364.phpt
rm tests/bug80268.phpt
'';
configureFlags = [ "--enable-dom" ]
# Required to build on darwin.
++ lib.optionals (lib.versionOlder php.version "7.4") [ "--with-libxml-dir=${libxml2.dev}" ]; }
@@ -322,10 +336,16 @@ lib.makeScope pkgs.newScope (self: with self; {
configureFlags = [ "--with-gmp=${gmp.dev}" ]; }
{ name = "hash"; enable = lib.versionOlder php.version "7.4"; }
{ name = "iconv";
configureFlags = if stdenv.isDarwin then
[ "--with-iconv=${libiconv}" ]
else
[ "--with-iconv" ];
configureFlags = [
"--with-iconv${lib.optionalString stdenv.isDarwin "=${libiconv}"}"
];
patches = lib.optionals (lib.versionOlder php.version "8.0") [
# Header path defaults to FHS location, preventing the configure script from detecting errno support.
(fetchpatch {
url = "https://github.com/fossar/nix-phps/raw/263861a8c9bdafd7abe44db6db4ef0179643680c/pkgs/iconv-header-path.patch";
sha256 = "7GHnEUu+hcsQ4h3itDwk6p46ZKfib9JZ2XpWlXrdn6E=";
})
];
doCheck = false; }
{ name = "imap";
buildInputs = [ uwimap openssl pam pcre' ];