summary refs log tree commit diff
path: root/pkgs/development/php-packages/couchbase
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2021-08-04 10:43:07 +0000
committerAlyssa Ross <hi@alyssa.is>2021-08-04 10:43:07 +0000
commit62614cbef7da005c1eda8c9400160f6bcd6546b8 (patch)
treec2630f69080637987b68acb1ee8676d2681fe304 /pkgs/development/php-packages/couchbase
parentd9c82ed3044c72cecf01c6ea042489d30914577c (diff)
parente24069138dfec3ef94f211f1da005bb5395adc11 (diff)
downloadnixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar
nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.gz
nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.bz2
nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.lz
nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.xz
nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.tar.zst
nixpkgs-62614cbef7da005c1eda8c9400160f6bcd6546b8.zip
Merge branch 'nixpkgs-update' into master
Diffstat (limited to 'pkgs/development/php-packages/couchbase')
-rw-r--r--pkgs/development/php-packages/couchbase/default.nix34
-rw-r--r--pkgs/development/php-packages/couchbase/libcouchbase.patch11
2 files changed, 45 insertions, 0 deletions
diff --git a/pkgs/development/php-packages/couchbase/default.nix b/pkgs/development/php-packages/couchbase/default.nix
new file mode 100644
index 00000000000..7e72af65a30
--- /dev/null
+++ b/pkgs/development/php-packages/couchbase/default.nix
@@ -0,0 +1,34 @@
+{ lib, buildPecl, fetchFromGitHub, writeText, libcouchbase, zlib, php, substituteAll }:
+let
+  pname = "couchbase";
+  version = "3.1.2";
+in
+buildPecl {
+  inherit pname version;
+
+  src = fetchFromGitHub {
+    owner = "couchbase";
+    repo = "php-couchbase";
+    rev = "v${version}";
+    sha256 = "0zm2jm5lzjjqlhkiivm4v5gr4286pwqaf5nar1ga816hhwnyhj42";
+  };
+
+  configureFlags = [ "--with-couchbase" ];
+
+  buildInputs = [ libcouchbase zlib ];
+  internalDeps = lib.optionals (lib.versionOlder php.version "8.0") [ php.extensions.json ];
+
+  patches = [
+    (substituteAll {
+      src = ./libcouchbase.patch;
+      inherit libcouchbase;
+    })
+  ];
+
+  meta = with lib; {
+    description = "Couchbase Server PHP extension";
+    license = licenses.asl20;
+    homepage = "https://docs.couchbase.com/php-sdk/current/project-docs/sdk-release-notes.html";
+    maintainers = teams.php.members;
+  };
+}
diff --git a/pkgs/development/php-packages/couchbase/libcouchbase.patch b/pkgs/development/php-packages/couchbase/libcouchbase.patch
new file mode 100644
index 00000000000..cd08da781a2
--- /dev/null
+++ b/pkgs/development/php-packages/couchbase/libcouchbase.patch
@@ -0,0 +1,11 @@
+--- a/config.m4
++++ b/config.m4
+@@ -28,7 +28,7 @@ if test "$PHP_COUCHBASE" != "no"; then
+
+   dnl fallback on standard directory
+   else
+-    for i in /usr/local /usr; do
++    for i in @libcouchbase@; do
+       if test -r $i/include/libcouchbase/couchbase.h; then
+         LIBCOUCHBASE_DIR=$i
+         AC_MSG_RESULT(found in $i)