nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchurl,
5 libpq,
6 openssl,
7 libxcrypt,
8 withPam ? stdenv.hostPlatform.isLinux,
9 pam,
10}:
11
12stdenv.mkDerivation rec {
13 pname = "pgpool-II";
14 version = "4.6.4";
15
16 src = fetchurl {
17 url = "https://www.pgpool.net/mediawiki/download.php?f=pgpool-II-${version}.tar.gz";
18 name = "pgpool-II-${version}.tar.gz";
19 hash = "sha256-7w0ukamhHXN8ZHYkchnmefcYvsU1UGRhiVlO+a79KY0=";
20 };
21
22 buildInputs = [
23 libpq
24 openssl
25 libxcrypt
26 ]
27 ++ lib.optional withPam pam;
28
29 configureFlags = [
30 "--sysconfdir=/etc"
31 "--localstatedir=/var"
32 "--with-openssl"
33 ]
34 ++ lib.optional withPam "--with-pam";
35
36 installFlags = [
37 "sysconfdir=\${out}/etc"
38 ];
39
40 patches = lib.optionals (stdenv.hostPlatform.isDarwin) [
41 # Build checks for strlcpy being available in the system, but doesn't
42 # actually exclude its own copy from being built
43 ./darwin-strlcpy.patch
44 ];
45
46 enableParallelBuilding = true;
47
48 meta = {
49 homepage = "https://www.pgpool.net/mediawiki/index.php/Main_Page";
50 description = "Middleware that works between PostgreSQL servers and PostgreSQL clients";
51 changelog = "https://www.pgpool.net/docs/latest/en/html/release-${
52 builtins.replaceStrings [ "." ] [ "-" ] version
53 }.html";
54 license = lib.licenses.free;
55 platforms = lib.platforms.unix;
56 maintainers = [ ];
57 };
58}