diff options
-rw-r--r-- | pkgs/development/libraries/pcre2/default.nix | 7 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 6 |
2 files changed, 10 insertions, 3 deletions
diff --git a/pkgs/development/libraries/pcre2/default.nix b/pkgs/development/libraries/pcre2/default.nix index ea0ca3e4030c0..226b92ccfdd35 100644 --- a/pkgs/development/libraries/pcre2/default.nix +++ b/pkgs/development/libraries/pcre2/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchurl +, withJitSealloc ? true }: stdenv.mkDerivation rec { @@ -17,9 +18,9 @@ stdenv.mkDerivation rec { "--enable-pcre2-32" # only enable jit on supported platforms which excludes Apple Silicon, see https://github.com/zherczeg/sljit/issues/51 "--enable-jit=auto" - # fix pcre jit in systemd units that set MemoryDenyWriteExecute=true like gitea - "--enable-jit-sealloc" - ]; + ] + # fix pcre jit in systemd units that set MemoryDenyWriteExecute=true like gitea + ++ lib.optional withJitSealloc "--enable-jit-sealloc"; outputs = [ "bin" "dev" "out" "doc" "man" "devdoc" ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5d5e966accc3d..103b844de083a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14815,6 +14815,9 @@ with pkgs; # Import PHP81 interpreter, extensions and packages php81 = callPackage ../development/interpreters/php/8.1.nix { stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + pcre2 = pcre2.override { + withJitSealloc = false; # Needed to avoid crashes, see https://bugs.php.net/bug.php?id=78630 + }; }; php81Extensions = recurseIntoAttrs php81.extensions; php81Packages = recurseIntoAttrs php81.packages; @@ -14822,6 +14825,9 @@ with pkgs; # Import PHP80 interpreter, extensions and packages php80 = callPackage ../development/interpreters/php/8.0.nix { stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv; + pcre2 = pcre2.override { + withJitSealloc = false; # Needed to avoid crashes, see https://bugs.php.net/bug.php?id=78630 + }; }; php80Extensions = recurseIntoAttrs php80.extensions; php80Packages = recurseIntoAttrs php80.packages; |