Merge #17838: postgresql: Fix use with extensions

This commit is contained in:
Vladimír Čunát
2016-09-02 20:09:40 +02:00
4 changed files with 63 additions and 1 deletions

View File

@@ -33,6 +33,7 @@ let
[ (if lib.versionAtLeast version "9.4" then ./disable-resolve_symlinks-94.patch else ./disable-resolve_symlinks.patch)
./less-is-more.patch
./hardcode-pgxs-path.patch
./specify_pkglibdir_at_runtime.patch
];
installTargets = [ "install-world" ];

View File

@@ -0,0 +1,29 @@
diff -ur postgresql-9.5.3-orig/src/port/path.c postgresql-9.5.3/src/port/path.c
--- postgresql-9.5.3-orig/src/port/path.c 2016-05-09 22:50:23.000000000 +0200
+++ postgresql-9.5.3/src/port/path.c 2016-08-29 22:44:10.507377613 +0200
@@ -714,7 +714,11 @@
void
get_lib_path(const char *my_exec_path, char *ret_path)
{
- make_relative_path(ret_path, LIBDIR, PGBINDIR, my_exec_path);
+ char const * const nix_pglibdir = getenv("NIX_PGLIBDIR");
+ if(nix_pglibdir == NULL)
+ make_relative_path(ret_path, LIBDIR, PGBINDIR, my_exec_path);
+ else
+ make_relative_path(ret_path, nix_pglibdir, PGBINDIR, my_exec_path);
}
/*
@@ -723,7 +727,11 @@
void
get_pkglib_path(const char *my_exec_path, char *ret_path)
{
- make_relative_path(ret_path, PKGLIBDIR, PGBINDIR, my_exec_path);
+ char const * const nix_pglibdir = getenv("NIX_PGLIBDIR");
+ if(nix_pglibdir == NULL)
+ make_relative_path(ret_path, PKGLIBDIR, PGBINDIR, my_exec_path);
+ else
+ make_relative_path(ret_path, nix_pglibdir, PGBINDIR, my_exec_path);
}
/*