phpExtensions.*: use meta.broken rather than filtering

This commit is contained in:
Emily 2024-10-28 23:43:03 +00:00
parent e06dae4378
commit 8b7ca25150

View File

@ -182,7 +182,7 @@ in {
meta = {
description = "PHP upstream extension: ${name}";
inherit (php.meta) maintainers homepage license;
};
} // args.meta or { };
}));
php = phpPackage;
@ -458,13 +458,6 @@ in {
configureFlags = [ "--with-iconv" ];
doCheck = stdenv.hostPlatform.isLinux;
}
{
name = "imap";
buildInputs = [ uwimap openssl pam pcre2 libkrb5 ];
configureFlags = [ "--with-imap=${uwimap}" "--with-imap-ssl" "--with-kerberos" ];
# Using version from PECL on new PHP versions.
enable = lib.versionOlder php.version "8.3";
}
{
name = "intl";
buildInputs = [ icu73 ];
@ -560,7 +553,7 @@ in {
internalDeps = [ php.extensions.pdo ];
configureFlags = [ "--with-pdo-dblib=${freetds}" ];
# Doesn't seem to work on darwin.
enable = (!stdenv.hostPlatform.isDarwin);
meta.broken = (!stdenv.hostPlatform.isDarwin);
doCheck = false;
}
{
@ -655,7 +648,7 @@ in {
buildInputs = [ net-snmp openssl ];
configureFlags = [ "--with-snmp" ];
# net-snmp doesn't build on darwin.
enable = (!stdenv.hostPlatform.isDarwin);
meta.broken = (!stdenv.hostPlatform.isDarwin);
doCheck = false;
}
{
@ -810,6 +803,13 @@ in {
"--with-zlib"
];
}
] ++ lib.optionals (lib.versionOlder php.version "8.3") [
# Using version from PECL on new PHP versions.
{
name = "imap";
buildInputs = [ uwimap openssl pam pcre2 libkrb5 ];
configureFlags = [ "--with-imap=${uwimap}" "--with-imap-ssl" "--with-kerberos" ];
}
];
# Convert the list of attrs:
@ -818,14 +818,12 @@ in {
# [ { name = <name>; value = <extension drv>; } ... ]
#
# which we later use listToAttrs to make all attrs available by name.
#
# Also filter out extensions based on the enable property.
namedExtensions = builtins.map
(drv: {
name = drv.name;
value = mkExtension (builtins.removeAttrs drv [ "enable" ]);
value = mkExtension drv;
})
(builtins.filter (i: i.enable or true) extensionData);
extensionData;
# Produce the final attribute set of all extensions defined.
in