summaryrefslogtreecommitdiff
path: root/src/include/commands
diff options
context:
space:
mode:
authorPeter Eisentraut2025-03-19 05:57:20 +0000
committerPeter Eisentraut2025-03-19 06:03:20 +0000
commit4f7f7b0375854e2f89876473405a8f21c95012af (patch)
treec413b2bd115ee78c960607db7986e206ddae96f1 /src/include/commands
parent2cce0fe440fb3f252a7be70a89298168009a2c15 (diff)
extension_control_path
The new GUC extension_control_path specifies a path to look for extension control files. The default value is $system, which looks in the compiled-in location, as before. The path search uses the same code and works in the same way as dynamic_library_path. Some use cases of this are: (1) testing extensions during package builds, (2) installing extensions outside security-restricted containers like Python.app (on macOS), (3) adding extensions to PostgreSQL running in a Kubernetes environment using operators such as CloudNativePG without having to rebuild the base image for each new extension. There is also a tweak in Makefile.global so that it is possible to install extensions using PGXS into an different directory than the default, using 'make install prefix=/else/where'. This previously only worked when specifying the subdirectories, like 'make install datadir=/else/where/share pkglibdir=/else/where/lib', for purely implementation reasons. (Of course, without the path feature, installing elsewhere was rarely useful.) Author: Peter Eisentraut <[email protected]> Co-authored-by: Matheus Alcantara <[email protected]> Reviewed-by: David E. Wheeler <[email protected]> Reviewed-by: Gabriele Bartolini <[email protected]> Reviewed-by: Marco Nenciarini <[email protected]> Reviewed-by: Niccolò Fei <[email protected]> Discussion: https://www.postgresql.org/message-id/flat/[email protected]
Diffstat (limited to 'src/include/commands')
-rw-r--r--src/include/commands/extension.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/include/commands/extension.h b/src/include/commands/extension.h
index 0b636405120..24419bfb5c9 100644
--- a/src/include/commands/extension.h
+++ b/src/include/commands/extension.h
@@ -17,6 +17,8 @@
#include "catalog/objectaddress.h"
#include "parser/parse_node.h"
+/* GUC */
+extern PGDLLIMPORT char *Extension_control_path;
/*
* creating_extension is only true while running a CREATE EXTENSION or ALTER