diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2011-02-11 22:53:43 -0500 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2011-02-11 22:53:43 -0500 |
commit | 24d1280c4d75038f130495a25844c60d6810faab (patch) | |
tree | c651beccc87a06729abe3c88c62a8f634d451bf9 /doc/src | |
parent | 1214749901fc3c66732cfd9f276b989635c01360 (diff) | |
download | postgresql-24d1280c4d75038f130495a25844c60d6810faab.tar.gz postgresql-24d1280c4d75038f130495a25844c60d6810faab.zip |
Clean up installation directory choices for extensions.
Arrange for the control files to be in $SHAREDIR/extension not
$SHAREDIR/contrib, since we're generally trying to deprecate the term
"contrib" and this is a once-in-many-moons opportunity to get rid of it in
install paths. Fix PGXS to install the $EXTENSION file into that directory
no matter what MODULEDIR is set to; a nondefault MODULEDIR should only
affect the script and secondary extension files. Fix the control file
directory parameter to be interpreted relative to $SHAREDIR, to avoid a
surprising disconnect between how you specify that and what you set
MODULEDIR to.
Per discussion with David Wheeler.
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/extend.sgml | 27 | ||||
-rw-r--r-- | doc/src/sgml/ref/create_extension.sgml | 2 |
2 files changed, 17 insertions, 12 deletions
diff --git a/doc/src/sgml/extend.sgml b/doc/src/sgml/extend.sgml index 93bcba9a10c..90248e59e78 100644 --- a/doc/src/sgml/extend.sgml +++ b/doc/src/sgml/extend.sgml @@ -365,13 +365,13 @@ The <xref linkend="sql-createextension"> command relies on a control file for each extension, which must be named the same as the extension with a suffix of <literal>.control</>, and must be placed in the - installation's <literal>SHAREDIR/contrib</literal> directory. There + installation's <literal>SHAREDIR/extension</literal> directory. There must also be at least one <acronym>SQL</> script file, which follows the naming pattern <literal><replaceable>extension</>-<replaceable>version</>.sql</literal> (for example, <literal>foo-1.0.sql</> for version <literal>1.0</> of extension <literal>foo</>). By default, the script file(s) are also - placed in the <literal>SHAREDIR/contrib</literal> directory; but the + placed in the <literal>SHAREDIR/extension</literal> directory; but the control file can specify a different directory for the script file(s). </para> @@ -395,7 +395,9 @@ <para> The directory containing the extension's <acronym>SQL</> script file(s). Unless an absolute path is given, the name is relative to - the <literal>SHAREDIR/contrib</literal> directory. + the installation's <literal>SHAREDIR</literal> directory. The + default behavior is equivalent to specifying + <literal>directory = 'extension'</>. </para> </listitem> </varlistentry> @@ -905,23 +907,26 @@ include $(PGXS) <variablelist> <varlistentry> - <term><varname>MODULEDIR</varname></term> + <term><varname>EXTENSION</varname></term> <listitem> <para> - subdirectory into which EXTENSION, DATA and DOCS files should be - installed (if not set, default is <literal>contrib</literal>) + extension name(s); for each name you must provide an + <literal><replaceable>extension</replaceable>.control</literal> file, + which will be installed into + <literal><replaceable>prefix</replaceable>/share/extension</literal> </para> </listitem> </varlistentry> <varlistentry> - <term><varname>EXTENSION</varname></term> + <term><varname>MODULEDIR</varname></term> <listitem> <para> - extension name(s); for each name you must provide an - <literal><replaceable>extension</replaceable>.control</literal> file, - which will be installed into - <literal><replaceable>prefix</replaceable>/share/$MODULEDIR</literal> + subdirectory of <literal><replaceable>prefix</>/share</literal> + into which DATA and DOCS files should be installed + (if not set, default is <literal>extension</literal> if + <varname>EXTENSION</varname> is set, + or <literal>contrib</literal> if not) </para> </listitem> </varlistentry> diff --git a/doc/src/sgml/ref/create_extension.sgml b/doc/src/sgml/ref/create_extension.sgml index 9e0e3c440b6..d3b5fb009b3 100644 --- a/doc/src/sgml/ref/create_extension.sgml +++ b/doc/src/sgml/ref/create_extension.sgml @@ -67,7 +67,7 @@ CREATE EXTENSION <replaceable class="parameter">extension_name</replaceable> The name of the extension to be installed. <productname>PostgreSQL</productname> will create the extension using details from the file - <literal>SHAREDIR/contrib/</literal><replaceable class="parameter">extension</replaceable><literal>.control</literal>. + <literal>SHAREDIR/extension/</literal><replaceable class="parameter">extension_name</replaceable><literal>.control</literal>. </para> </listitem> </varlistentry> |