dynamically loadable modules.
</para>
</note>
</sect3>
<sect3 id="configure-options-features">
<title><productname>PostgreSQL</productname> Features</title>
<para>
The options described in this section enable building of
various <productname>PostgreSQL</productname> features that are not
built by default. Most of these are non-default only because they
require additional software, as described in
<xref linkend="install-requirements"/>.
</para>
<variablelist>
<varlistentry id="configure-option-enable-nls">
<term><option>--enable-nls<optional>=<replaceable>LANGUAGES</replaceable></optional></option></term>
<listitem>
<para>
Enables Native Language Support (<acronym>NLS</acronym>),
that is, the ability to display a program's messages in a
language other than English.
<replaceable>LANGUAGES</replaceable> is an optional space-separated
list of codes of the languages that you want supported, for
example <literal>--enable-nls='de fr'</literal>. (The intersection
between your list and the set of actually provided
translations will be computed automatically.) If you do not
specify a list, then all available translations are
installed.
</para>
<para>
To use this option, you will need an implementation of the
<application>Gettext</application> API.
</para>
</listitem>
</varlistentry>
<varlistentry id="configure-option-with-perl">
<term><option>--with-perl</option></term>
<listitem>
<para>
Build the <application>PL/Perl</application> server-side language.
</para>
</listitem>
</varlistentry>
<varlistentry id="configure-option-with-python">
<term><option>--with-python</option></term>
<listitem>
<para>
Build the <application>PL/Python</application> server-side language.
</para>
</listitem>
</varlistentry>
<varlistentry id="configure-option-with-tcl">
<term><option>--with-tcl</option></term>
<listitem>
<para>
Build the <application>PL/Tcl</application> server-side language.
</para>
</listitem>
</varlistentry>
<varlistentry id="configure-option-with-tclconfig">
<term><option>--with-tclconfig=<replaceable>DIRECTORY</replaceable></option></term>
<listitem>
<para>
Tcl installs the file <filename>tclConfig.sh</filename>, which
contains configuration information needed to build modules
interfacing to Tcl. This file is normally found automatically
at a well-known location, but if you want to use a different
version of Tcl you can specify the directory in which to look
for <filename>tclConfig.sh</filename>.
</para>
</listitem>
</varlistentry>
<varlistentry id="configure-with-llvm">
<term><option>--with-llvm</option></term>
<listitem>
<para>
Build with support for <productname>LLVM</productname> based
<acronym>JIT</acronym> compilation (see <xref linkend="jit"/>). This
requires the <productname>LLVM</productname> library to be installed.
The minimum required version of <productname>LLVM</productname> is
currently 14.
</para>
<para>
<command>llvm-config</command><indexterm><primary>llvm-config</primary></indexterm>
will be used to find the required compilation options.
<command>llvm-config</command> will be searched for in your
<envar>PATH</envar>. If that would not yield the desired program,
use <envar>LLVM_CONFIG</envar> to specify a path to the correct
<command>llvm-config</command>. For example
<programlisting>
./configure ... --with-llvm LLVM_CONFIG='/path/to/llvm/bin/llvm-config'
</programlisting>