aboutsummaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2011-02-11 22:53:43 -0500
committerTom Lane <tgl@sss.pgh.pa.us>2011-02-11 22:53:43 -0500
commit24d1280c4d75038f130495a25844c60d6810faab (patch)
treec651beccc87a06729abe3c88c62a8f634d451bf9 /doc/src
parent1214749901fc3c66732cfd9f276b989635c01360 (diff)
downloadpostgresql-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.sgml27
-rw-r--r--doc/src/sgml/ref/create_extension.sgml2
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>