commit
4b995ddfe7
@ -4,7 +4,7 @@
|
|||||||
, openssl, pcre, pcre2, sqlite, config, libjpeg, libpng, freetype
|
, openssl, pcre, pcre2, sqlite, config, libjpeg, libpng, freetype
|
||||||
, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, unixODBC
|
, libxslt, libmcrypt, bzip2, icu, openldap, cyrus_sasl, libmhash, unixODBC
|
||||||
, uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy, libargon2
|
, uwimap, pam, gmp, apacheHttpd, libiconv, systemd, libsodium, html-tidy, libargon2
|
||||||
, libzip, valgrind
|
, libzip, valgrind, oniguruma
|
||||||
}:
|
}:
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
@ -78,6 +78,7 @@ let
|
|||||||
buildInputs = [ ]
|
buildInputs = [ ]
|
||||||
++ optional (versionOlder version "7.3") pcre
|
++ optional (versionOlder version "7.3") pcre
|
||||||
++ optional (versionAtLeast version "7.3") pcre2
|
++ optional (versionAtLeast version "7.3") pcre2
|
||||||
|
++ optional (versionAtLeast version "7.4") oniguruma
|
||||||
++ optional withSystemd systemd
|
++ optional withSystemd systemd
|
||||||
++ optionals imapSupport [ uwimap openssl pam ]
|
++ optionals imapSupport [ uwimap openssl pam ]
|
||||||
++ optionals curlSupport [ curl openssl ]
|
++ optionals curlSupport [ curl openssl ]
|
||||||
@ -114,7 +115,8 @@ let
|
|||||||
"--with-config-file-scan-dir=/etc/php.d"
|
"--with-config-file-scan-dir=/etc/php.d"
|
||||||
]
|
]
|
||||||
++ optional (versionOlder version "7.3") "--with-pcre-regex=${pcre.dev} PCRE_LIBDIR=${pcre}"
|
++ optional (versionOlder version "7.3") "--with-pcre-regex=${pcre.dev} PCRE_LIBDIR=${pcre}"
|
||||||
++ optional (versionAtLeast version "7.3") "--with-pcre-regex=${pcre2.dev} PCRE_LIBDIR=${pcre2}"
|
++ optional (versions.majorMinor version == "7.3") "--with-pcre-regex=${pcre2.dev} PCRE_LIBDIR=${pcre2}"
|
||||||
|
++ optional (versionAtLeast version "7.4") "--with-external-pcre=${pcre2.dev} PCRE_LIBDIR=${pcre2}"
|
||||||
++ optional stdenv.isDarwin "--with-iconv=${libiconv}"
|
++ optional stdenv.isDarwin "--with-iconv=${libiconv}"
|
||||||
++ optional withSystemd "--with-fpm-systemd"
|
++ optional withSystemd "--with-fpm-systemd"
|
||||||
++ optionals imapSupport [
|
++ optionals imapSupport [
|
||||||
@ -133,10 +135,11 @@ let
|
|||||||
++ optional mhashSupport "--with-mhash"
|
++ optional mhashSupport "--with-mhash"
|
||||||
++ optional curlSupport "--with-curl=${curl.dev}"
|
++ optional curlSupport "--with-curl=${curl.dev}"
|
||||||
++ optional zlibSupport "--with-zlib=${zlib.dev}"
|
++ optional zlibSupport "--with-zlib=${zlib.dev}"
|
||||||
++ optional libxml2Support "--with-libxml-dir=${libxml2.dev}"
|
++ optional (libxml2Support && (versionOlder version "7.4")) "--with-libxml-dir=${libxml2.dev}"
|
||||||
++ optional (!libxml2Support) [
|
++ optional (!libxml2Support) [
|
||||||
"--disable-dom"
|
"--disable-dom"
|
||||||
"--disable-libxml"
|
"--disable-libxml"
|
||||||
|
(if (versionOlder version "7.4") then "--disable-libxml" else "--without-libxml")
|
||||||
"--disable-simplexml"
|
"--disable-simplexml"
|
||||||
"--disable-xml"
|
"--disable-xml"
|
||||||
"--disable-xmlreader"
|
"--disable-xmlreader"
|
||||||
@ -156,7 +159,12 @@ let
|
|||||||
++ optional ( pdo_mysqlSupport || mysqliSupport ) "--with-mysql-sock=/run/mysqld/mysqld.sock"
|
++ optional ( pdo_mysqlSupport || mysqliSupport ) "--with-mysql-sock=/run/mysqld/mysqld.sock"
|
||||||
++ optional bcmathSupport "--enable-bcmath"
|
++ optional bcmathSupport "--enable-bcmath"
|
||||||
# FIXME: Our own gd package doesn't work, see https://bugs.php.net/bug.php?id=60108.
|
# FIXME: Our own gd package doesn't work, see https://bugs.php.net/bug.php?id=60108.
|
||||||
++ optionals gdSupport [
|
++ optionals (gdSupport && versionAtLeast version "7.4") [
|
||||||
|
"--enable-gd"
|
||||||
|
"--with-jpeg=${libjpeg.dev}"
|
||||||
|
"--with-freetype=${freetype.dev}"
|
||||||
|
"--enable-gd-jis-conv"
|
||||||
|
] ++ optionals (gdSupport && versionOlder version "7.4") [
|
||||||
"--with-gd"
|
"--with-gd"
|
||||||
"--with-freetype-dir=${freetype.dev}"
|
"--with-freetype-dir=${freetype.dev}"
|
||||||
"--with-png-dir=${libpng.dev}"
|
"--with-png-dir=${libpng.dev}"
|
||||||
@ -173,7 +181,7 @@ let
|
|||||||
++ optional xslSupport "--with-xsl=${libxslt.dev}"
|
++ optional xslSupport "--with-xsl=${libxslt.dev}"
|
||||||
++ optional mcryptSupport "--with-mcrypt=${libmcrypt'}"
|
++ optional mcryptSupport "--with-mcrypt=${libmcrypt'}"
|
||||||
++ optional bz2Support "--with-bz2=${bzip2.dev}"
|
++ optional bz2Support "--with-bz2=${bzip2.dev}"
|
||||||
++ optional zipSupport "--enable-zip"
|
++ optional (zipSupport && (versionOlder version "7.4")) "--enable-zip"
|
||||||
++ optional ftpSupport "--enable-ftp"
|
++ optional ftpSupport "--enable-ftp"
|
||||||
++ optional fpmSupport "--enable-fpm"
|
++ optional fpmSupport "--enable-fpm"
|
||||||
++ optional ztsSupport "--enable-maintainer-zts"
|
++ optional ztsSupport "--enable-maintainer-zts"
|
||||||
@ -181,7 +189,7 @@ let
|
|||||||
++ optional sodiumSupport "--with-sodium=${libsodium.dev}"
|
++ optional sodiumSupport "--with-sodium=${libsodium.dev}"
|
||||||
++ optional tidySupport "--with-tidy=${html-tidy}"
|
++ optional tidySupport "--with-tidy=${html-tidy}"
|
||||||
++ optional argon2Support "--with-password-argon2=${libargon2}"
|
++ optional argon2Support "--with-password-argon2=${libargon2}"
|
||||||
++ optional libzipSupport "--with-libzip=${libzip.dev}"
|
++ optional (libzipSupport && (versionOlder version "7.4")) "--with-libzip=${libzip.dev}"
|
||||||
++ optional phpdbgSupport "--enable-phpdbg"
|
++ optional phpdbgSupport "--enable-phpdbg"
|
||||||
++ optional (!phpdbgSupport) "--disable-phpdbg"
|
++ optional (!phpdbgSupport) "--disable-phpdbg"
|
||||||
++ optional (!cgiSupport) "--disable-cgi"
|
++ optional (!cgiSupport) "--disable-cgi"
|
||||||
@ -268,4 +276,9 @@ in {
|
|||||||
# https://bugs.php.net/bug.php?id=76826
|
# https://bugs.php.net/bug.php?id=76826
|
||||||
extraPatches = optional stdenv.isDarwin ./php73-darwin-isfinite.patch;
|
extraPatches = optional stdenv.isDarwin ./php73-darwin-isfinite.patch;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
php74 = generic {
|
||||||
|
version = "7.4.0";
|
||||||
|
sha256 = "1h01bahvcm9kgm5jqhm2j9k9d4q4rpfkkpqk00c47rirdblnn85z";
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@ -9093,6 +9093,10 @@ in
|
|||||||
php = php73;
|
php = php73;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
php74Packages = recurseIntoAttrs (callPackage ./php-packages.nix {
|
||||||
|
php = php74;
|
||||||
|
});
|
||||||
|
|
||||||
phpPackages-unit = php72Packages-unit;
|
phpPackages-unit = php72Packages-unit;
|
||||||
|
|
||||||
php72Packages-unit = recurseIntoAttrs (callPackage ./php-packages.nix {
|
php72Packages-unit = recurseIntoAttrs (callPackage ./php-packages.nix {
|
||||||
@ -9103,11 +9107,16 @@ in
|
|||||||
php = php73-unit;
|
php = php73-unit;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
php74Packages-unit = recurseIntoAttrs (callPackage ./php-packages.nix {
|
||||||
|
php = php74-unit;
|
||||||
|
});
|
||||||
|
|
||||||
inherit (callPackages ../development/interpreters/php {
|
inherit (callPackages ../development/interpreters/php {
|
||||||
stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv;
|
stdenv = if stdenv.cc.isClang then llvmPackages_6.stdenv else stdenv;
|
||||||
})
|
})
|
||||||
php72
|
php74
|
||||||
php73;
|
php73
|
||||||
|
php72;
|
||||||
|
|
||||||
php-embed = php73-embed;
|
php-embed = php73-embed;
|
||||||
|
|
||||||
@ -9121,6 +9130,11 @@ in
|
|||||||
config.php.apxs2 = false;
|
config.php.apxs2 = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
php74-embed = php74.override {
|
||||||
|
config.php.embed = true;
|
||||||
|
config.php.apxs2 = false;
|
||||||
|
};
|
||||||
|
|
||||||
php-unit = php73-unit;
|
php-unit = php73-unit;
|
||||||
|
|
||||||
php72-unit = php72.override {
|
php72-unit = php72.override {
|
||||||
@ -9141,6 +9155,15 @@ in
|
|||||||
config.php.fpm = false;
|
config.php.fpm = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
php74-unit = php74.override {
|
||||||
|
config.php.embed = true;
|
||||||
|
config.php.apxs2 = false;
|
||||||
|
config.php.systemd = false;
|
||||||
|
config.php.phpdbg = false;
|
||||||
|
config.php.cgi = false;
|
||||||
|
config.php.fpm = false;
|
||||||
|
};
|
||||||
|
|
||||||
picoc = callPackage ../development/interpreters/picoc {};
|
picoc = callPackage ../development/interpreters/picoc {};
|
||||||
|
|
||||||
picolisp = callPackage ../development/interpreters/picolisp {};
|
picolisp = callPackage ../development/interpreters/picolisp {};
|
||||||
|
@ -14,12 +14,13 @@ let
|
|||||||
});
|
});
|
||||||
|
|
||||||
isPhp73 = pkgs.lib.versionAtLeast php.version "7.3";
|
isPhp73 = pkgs.lib.versionAtLeast php.version "7.3";
|
||||||
|
isPhp74 = pkgs.lib.versionAtLeast php.version "7.4";
|
||||||
|
|
||||||
apcu = buildPecl {
|
apcu = buildPecl {
|
||||||
version = "5.1.17";
|
version = "5.1.18";
|
||||||
pname = "apcu";
|
pname = "apcu";
|
||||||
|
|
||||||
sha256 = "14y7alvj5q17q1b544bxidavkn6i40cjbq2nv1m0k70ai5vv84bb";
|
sha256 = "0ayykd4hfvdzk7qnr5k6yq5scwf6rb2i05xscfv76q5dmkkynvfl";
|
||||||
|
|
||||||
buildInputs = [ (if isPhp73 then pkgs.pcre2 else pkgs.pcre) ];
|
buildInputs = [ (if isPhp73 then pkgs.pcre2 else pkgs.pcre) ];
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
@ -140,6 +141,8 @@ let
|
|||||||
AC_MSG_WARN([Cannot find igbinary.h])
|
AC_MSG_WARN([Cannot find igbinary.h])
|
||||||
'')
|
'')
|
||||||
];
|
];
|
||||||
|
|
||||||
|
meta.broken = isPhp74; # Build error
|
||||||
};
|
};
|
||||||
|
|
||||||
event = buildPecl {
|
event = buildPecl {
|
||||||
@ -259,6 +262,8 @@ let
|
|||||||
pname = "pcs";
|
pname = "pcs";
|
||||||
|
|
||||||
sha256 = "0d4p1gpl8gkzdiv860qzxfz250ryf0wmjgyc8qcaaqgkdyh5jy5p";
|
sha256 = "0d4p1gpl8gkzdiv860qzxfz250ryf0wmjgyc8qcaaqgkdyh5jy5p";
|
||||||
|
|
||||||
|
meta.broken = isPhp74; # Build error
|
||||||
};
|
};
|
||||||
|
|
||||||
pdo_sqlsrv = buildPecl {
|
pdo_sqlsrv = buildPecl {
|
||||||
@ -268,6 +273,8 @@ let
|
|||||||
sha256 = "02ill1iqffa5fha9iz4y91823scml24ikfk8pn90jyycfwv07x6a";
|
sha256 = "02ill1iqffa5fha9iz4y91823scml24ikfk8pn90jyycfwv07x6a";
|
||||||
|
|
||||||
buildInputs = [ pkgs.unixODBC ];
|
buildInputs = [ pkgs.unixODBC ];
|
||||||
|
|
||||||
|
meta.broken = isPhp74; # Build error
|
||||||
};
|
};
|
||||||
|
|
||||||
php-cs-fixer = mkDerivation rec {
|
php-cs-fixer = mkDerivation rec {
|
||||||
@ -492,6 +499,7 @@ let
|
|||||||
'';
|
'';
|
||||||
license = licenses.bsd3;
|
license = licenses.bsd3;
|
||||||
homepage = "https://developers.google.com/protocol-buffers/";
|
homepage = "https://developers.google.com/protocol-buffers/";
|
||||||
|
broken = isPhp74; # Build error
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -592,6 +600,8 @@ let
|
|||||||
sha256 = "0ial621zxn9zvjh7k1h755sm2lc9aafc389yxksqcxcmm7kqmd0a";
|
sha256 = "0ial621zxn9zvjh7k1h755sm2lc9aafc389yxksqcxcmm7kqmd0a";
|
||||||
|
|
||||||
buildInputs = [ pkgs.unixODBC ];
|
buildInputs = [ pkgs.unixODBC ];
|
||||||
|
|
||||||
|
meta.broken = isPhp74; # Build error
|
||||||
};
|
};
|
||||||
|
|
||||||
v8 = buildPecl {
|
v8 = buildPecl {
|
||||||
@ -617,10 +627,10 @@ let
|
|||||||
};
|
};
|
||||||
|
|
||||||
xdebug = buildPecl {
|
xdebug = buildPecl {
|
||||||
version = "2.7.1";
|
version = "2.8.0";
|
||||||
pname = "xdebug";
|
pname = "xdebug";
|
||||||
|
|
||||||
sha256 = "1hr4gy87a3gp682ggwp831xk1fxasil9wan8cxv23q3m752x3sdp";
|
sha256 = "0r62501fdp63zz81scz2x1pq3qzpjafya96g12j0jx7crdz127fb";
|
||||||
|
|
||||||
doCheck = true;
|
doCheck = true;
|
||||||
checkTarget = "test";
|
checkTarget = "test";
|
||||||
|
Loading…
x
Reference in New Issue
Block a user