summary refs log tree commit diff
path: root/pkgs/servers/sql/postgresql/ext/plv8.nix
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2021-12-09 00:19:00 +0100
committerJan Tojnar <jtojnar@gmail.com>2021-12-27 12:05:02 +0100
commitec53e861f4facab24083d1d16427847e2e9ad1db (patch)
tree506324f4bdde267e7b23bf811782087761829862 /pkgs/servers/sql/postgresql/ext/plv8.nix
parentd5c902b1316a2c5cfe65112a7f99df1e2093489d (diff)
downloadnixpkgs-ec53e861f4facab24083d1d16427847e2e9ad1db.tar
nixpkgs-ec53e861f4facab24083d1d16427847e2e9ad1db.tar.gz
nixpkgs-ec53e861f4facab24083d1d16427847e2e9ad1db.tar.bz2
nixpkgs-ec53e861f4facab24083d1d16427847e2e9ad1db.tar.lz
nixpkgs-ec53e861f4facab24083d1d16427847e2e9ad1db.tar.xz
nixpkgs-ec53e861f4facab24083d1d16427847e2e9ad1db.tar.zst
nixpkgs-ec53e861f4facab24083d1d16427847e2e9ad1db.zip
postgresqlPackages.plv8: 2.3.15 → 3.0.0
https://github.com/plv8/plv8/blob/v3.0.0/Changes
Diffstat (limited to 'pkgs/servers/sql/postgresql/ext/plv8.nix')
-rw-r--r--pkgs/servers/sql/postgresql/ext/plv8.nix16
1 files changed, 14 insertions, 2 deletions
diff --git a/pkgs/servers/sql/postgresql/ext/plv8.nix b/pkgs/servers/sql/postgresql/ext/plv8.nix
index a47ce613da6..6f5411340e4 100644
--- a/pkgs/servers/sql/postgresql/ext/plv8.nix
+++ b/pkgs/servers/sql/postgresql/ext/plv8.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   pname = "plv8";
-  version = "2.3.15";
+  version = "3.0.0";
 
   nativeBuildInputs = [ perl ];
   buildInputs = [ v8 postgresql ];
@@ -11,13 +11,18 @@ stdenv.mkDerivation rec {
     owner = "plv8";
     repo = "plv8";
     rev = "v${version}";
-    sha256 = "1cv94n49gq2b377gqyq7pjjzw98czv4mwl3sx97y18c20zwp6rk3";
+    sha256 = "KJz8wnGcTXnVn6umpP+UquuJTtQrkBTJ33rB/JIH4kU=";
   };
 
   makefile = "Makefile.shared";
 
   buildFlags = [ "all" ];
 
+  makeFlags = [
+    # Nixpkgs build a v8 monolith instead of separate v8_libplatform.
+    "V8_OUTDIR=${v8}/lib"
+  ];
+
   installFlags = [
     # PGXS only supports installing to postgresql prefix so we need to redirect this
     "DESTDIR=${placeholder "out"}"
@@ -25,6 +30,8 @@ stdenv.mkDerivation rec {
 
   preConfigure = ''
     patchShebangs ./generate_upgrade.sh
+    substituteInPlace generate_upgrade.sh \
+      --replace " 2.3.10)" " 2.3.10 2.3.11 2.3.12 2.3.13 2.3.14 2.3.15)"
   '';
 
   postInstall = ''
@@ -35,6 +42,11 @@ stdenv.mkDerivation rec {
     rmdir "$out/nix/store"/* "$out/nix/store" "$out/nix"
   '';
 
+  # Without this, PostgreSQL will crash at runtime.
+  # The flags are only included in Makefile, not Makefile.shared.
+  # https://github.com/plv8/plv8/pull/469
+  NIX_CFLAGS_COMPILE = "-DJSONB_DIRECT_CONVERSION -DV8_COMPRESS_POINTERS=1 -DV8_31BIT_SMIS_ON_64BIT_ARCH=1";
+
   meta = with lib; {
     description = "V8 Engine Javascript Procedural Language add-on for PostgreSQL";
     homepage = "https://plv8.github.io/";