summaryrefslogtreecommitdiffstats
path: root/pkgs/servers/sql
diff options
context:
space:
mode:
authorThomas Gerbet <thomas@gerbet.me>2024-05-25 13:24:45 +0200
committerThomas Gerbet <thomas@gerbet.me>2024-05-30 11:30:47 +0200
commit773c17e75258d2aa44dcef17123f129447f0ea11 (patch)
tree0ffa55565f763f2ee256d1f7b741446891e6ede8 /pkgs/servers/sql
parentc2df15249734e49735e579090e7218bd2221d0ba (diff)
postgresqlPackages.plv8: 3.1.10 -> 3.2.2
Changes: https://github.com/plv8/plv8/blob/v3.2.2/Changes
Diffstat (limited to 'pkgs/servers/sql')
-rw-r--r--pkgs/servers/sql/postgresql/ext/plv8/0001-build-Allow-using-V8-from-system.patch55
-rw-r--r--pkgs/servers/sql/postgresql/ext/plv8/default.nix17
2 files changed, 34 insertions, 38 deletions
diff --git a/pkgs/servers/sql/postgresql/ext/plv8/0001-build-Allow-using-V8-from-system.patch b/pkgs/servers/sql/postgresql/ext/plv8/0001-build-Allow-using-V8-from-system.patch
index 05f607911f20..e6099771ea1a 100644
--- a/pkgs/servers/sql/postgresql/ext/plv8/0001-build-Allow-using-V8-from-system.patch
+++ b/pkgs/servers/sql/postgresql/ext/plv8/0001-build-Allow-using-V8-from-system.patch
@@ -1,47 +1,44 @@
diff --git a/Makefile b/Makefile
-index 38879cc..6e78eeb 100644
+index a705c11..08b952b 100644
--- a/Makefile
+++ b/Makefile
-@@ -20,6 +20,7 @@ OBJS = $(SRCS:.cc=.o)
+@@ -13,11 +13,14 @@ OBJS = $(SRCS:.cc=.o)
MODULE_big = plv8-$(PLV8_VERSION)
EXTENSION = plv8
PLV8_DATA = plv8.control plv8--$(PLV8_VERSION).sql
+USE_SYSTEM_V8 = 0
-
- # Platform detection
-@@ -41,6 +42,7 @@ PGXS := $(shell $(PG_CONFIG) --pgxs)
- PG_VERSION_NUM := $(shell cat `$(PG_CONFIG) --includedir-server`/pg_config*.h \
- | perl -ne 'print $$1 and exit if /PG_VERSION_NUM\s+(\d+)/')
+ ifeq ($(OS),Windows_NT)
+ # noop for now
+ else
++ ifeq ($(USE_SYSTEM_V8),0)
+ SHLIB_LINK += -Ldeps/v8-cmake/build
++ endif
+ UNAME_S := $(shell uname -s)
+ ifeq ($(UNAME_S),Darwin)
+ CCFLAGS += -stdlib=libc++
+@@ -34,6 +37,7 @@ ifeq ($(NUMPROC),0)
+ NUMPROC = 1
+ endif
+ifeq ($(USE_SYSTEM_V8),0)
- AUTOV8_DIR = build/v8
- AUTOV8_OUT = build/v8/out.gn/obj
- AUTOV8_STATIC_LIBS = -lv8_libplatform -lv8_libbase
-@@ -66,6 +68,7 @@ v8:
- make -f Makefiles/Makefile.macos v8
- endif
- endif
+ SHLIB_LINK += -Ldeps/v8-cmake/build
+
+ all: v8 $(OBJS)
+@@ -46,11 +50,16 @@ deps/v8-cmake/build/libv8_libbase.a:
+ @cd deps/v8-cmake && mkdir -p build && cd build && cmake -Denable-fPIC=ON -DCMAKE_BUILD_TYPE=Release ../ && make -j $(NUMPROC)
+
+ v8: deps/v8-cmake/build/libv8_libbase.a
++else
++all: $(OBJS)
+endif
# enable direct jsonb conversion by default
CCFLAGS += -DJSONB_DIRECT_CONVERSION
-@@ -83,6 +86,7 @@ ifdef BIGINT_GRACEFUL
- endif
-
+ifeq ($(USE_SYSTEM_V8),0)
- # We're gonna build static link. Rip it out after include Makefile
- SHLIB_LINK := $(filter-out -lv8, $(SHLIB_LINK))
-
-@@ -101,6 +105,7 @@ else
- SHLIB_LINK += -lrt -std=c++14
- endif
- endif
+ CCFLAGS += -Ideps/v8-cmake/v8/include -std=c++17
+endif
- DATA = $(PLV8_DATA)
- ifndef DISABLE_DIALECT
---
-2.37.3
-
+ ifdef EXECUTION_TIMEOUT
+ CCFLAGS += -DEXECUTION_TIMEOUT
diff --git a/pkgs/servers/sql/postgresql/ext/plv8/default.nix b/pkgs/servers/sql/postgresql/ext/plv8/default.nix
index 2e8ac591a2dd..615dcb3a80ae 100644
--- a/pkgs/servers/sql/postgresql/ext/plv8/default.nix
+++ b/pkgs/servers/sql/postgresql/ext/plv8/default.nix
@@ -1,7 +1,7 @@
{ stdenv
, lib
, fetchFromGitHub
-, v8
+, nodejs_20
, perl
, postgresql
, jitSupport
@@ -11,15 +11,17 @@
, gnugrep
}:
-stdenv.mkDerivation (finalAttrs: {
+let
+ libv8 = nodejs_20.libv8;
+in stdenv.mkDerivation (finalAttrs: {
pname = "plv8";
- version = "3.1.10";
+ version = "3.2.2";
src = fetchFromGitHub {
owner = "plv8";
repo = "plv8";
rev = "v${finalAttrs.version}";
- hash = "sha256-g1A/XPC0dX2360Gzvmo9/FSQnM6Wt2K4eR0pH0p9fz4=";
+ hash = "sha256-azO33v22EF+/sTNmwswxyDR0PhrvWfTENuLu6JgSGJ0=";
};
patches = [
@@ -33,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
- v8
+ libv8
postgresql
];
@@ -43,7 +45,7 @@ stdenv.mkDerivation (finalAttrs: {
# Nixpkgs build a v8 monolith instead of separate v8_libplatform.
"USE_SYSTEM_V8=1"
"SHLIB_LINK=-lv8"
- "V8_OUTDIR=${v8}/lib"
+ "V8_OUTDIR=${libv8}/lib"
];
installFlags = [
@@ -56,9 +58,6 @@ stdenv.mkDerivation (finalAttrs: {
postPatch = ''
patchShebangs ./generate_upgrade.sh
- # https://github.com/plv8/plv8/pull/506
- 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 = ''