From 502a272ee78727712c53d316cacba1b416e37d5e Mon Sep 17 00:00:00 2001 From: Rodney Lorrimar Date: Sat, 15 Jul 2017 14:58:17 +0100 Subject: [PATCH] postgresql: enable XML functions I suspect these functions aren't widely used, but they are enabled in PostgreSQL on Ubuntu and Arch. --- nixos/tests/postgresql.nix | 3 +++ pkgs/servers/sql/postgresql/default.nix | 5 +++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/nixos/tests/postgresql.nix b/nixos/tests/postgresql.nix index b5f4e1a4c14..54e7ec9ba17 100644 --- a/nixos/tests/postgresql.nix +++ b/nixos/tests/postgresql.nix @@ -13,6 +13,8 @@ let INSERT INTO sth (id) VALUES (1); INSERT INTO sth (id) VALUES (1); INSERT INTO sth (id) VALUES (1); + CREATE TABLE xmltest ( doc xml ); + INSERT INTO xmltest (doc) VALUES ('ok'); -- check if libxml2 enabled ''; make-postgresql-test = postgresql-name: postgresql-package: makeTest { name = postgresql-name; @@ -41,6 +43,7 @@ let $machine->fail('test $(psql postgres -tAc "SELECT * FROM sth;"|wc -l) -eq 3'); $machine->succeed('test $(psql postgres -tAc "SELECT * FROM sth;"|wc -l) -eq 5'); $machine->fail('test $(psql postgres -tAc "SELECT * FROM sth;"|wc -l) -eq 4'); + $machine->succeed('test $(psql postgres -tAc "SELECT xpath(\'/test/text()\', doc) FROM xmltest;"|wc -l) -eq 1'); $machine->shutdown; ''; diff --git a/pkgs/servers/sql/postgresql/default.nix b/pkgs/servers/sql/postgresql/default.nix index 2362ee84329..363fbe51adf 100644 --- a/pkgs/servers/sql/postgresql/default.nix +++ b/pkgs/servers/sql/postgresql/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, glibc, fetchurl, zlib, readline, libossp_uuid, openssl, makeWrapper }: +{ lib, stdenv, glibc, fetchurl, zlib, readline, libossp_uuid, openssl, libxml2, makeWrapper }: let @@ -15,7 +15,7 @@ let setOutputFlags = false; # $out retains configureFlags :-/ buildInputs = - [ zlib readline openssl makeWrapper ] + [ zlib readline openssl libxml2 makeWrapper ] ++ lib.optionals (!stdenv.isDarwin) [ libossp_uuid ]; enableParallelBuilding = true; @@ -24,6 +24,7 @@ let configureFlags = [ "--with-openssl" + "--with-libxml" "--sysconfdir=/etc" "--libdir=$(lib)/lib" ]