Home Explore Blog CI



postgresql

34th chunk of `doc/src/sgml/installation.sgml`
e26b2af8f9bb229f572908fb78f4025c62e886cd09c6978b0000000100000faa
 OpenBSD.)  Defaults to auto.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry id="configure-with-systemd-meson">
      <term><option>-Dsystemd={ auto | enabled | disabled }</option></term>
      <listitem>
       <para>
        Build with support for
        <application>systemd</application><indexterm><primary>systemd</primary></indexterm>
        service notifications.  This improves integration if the server is
        started under <application>systemd</application> but has no impact
        otherwise; see <xref
        linkend="server-start"/> for more information.  Defaults to
        auto.  <application>libsystemd</application> and the associated header
        files need to be installed to use this option.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry id="configure-with-bonjour-meson">
      <term><option>-Dbonjour={ auto | enabled | disabled }</option></term>
      <listitem>
       <para>
        Build with support for Bonjour automatic service discovery.  Defaults
        to auto and requires Bonjour support in your operating system.
        Recommended on macOS.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry id="configure-with-uuid-meson">
      <term><option>-Duuid=<replaceable>LIBRARY</replaceable></option></term>
      <listitem>
       <para>
        Build the <xref linkend="uuid-ossp"/> module
        (which provides functions to generate UUIDs), using the specified
        UUID library.<indexterm><primary>UUID</primary></indexterm>
        <replaceable>LIBRARY</replaceable> must be one of:
       </para>
       <itemizedlist>
        <listitem>
         <para>
          <option>none</option> to not build the uuid module. This is the default.
         </para>
        </listitem>
        <listitem>
         <para>
          <option>bsd</option> to use the UUID functions found in FreeBSD,
          and some other BSD-derived systems
         </para>
        </listitem>
        <listitem>
         <para>
          <option>e2fs</option> to use the UUID library created by
          the <literal>e2fsprogs</literal> project; this library is present in most
          Linux systems and in macOS, and can be obtained for other
          platforms as well
         </para>
        </listitem>
        <listitem>
         <para>
          <option>ossp</option> to use the <ulink
          url="http://www.ossp.org/pkg/lib/uuid/">OSSP UUID library</ulink>
         </para>
        </listitem>
       </itemizedlist>
      </listitem>
     </varlistentry>

     <varlistentry id="configure-with-libcurl-meson">
      <term><option>-Dlibcurl={ auto | enabled | disabled }</option></term>
      <listitem>
       <para>
        Build with libcurl support for OAuth 2.0 client flows.
        Libcurl version 7.61.0 or later is required for this feature.
        Building with this will check for the required header files
        and libraries to make sure that your <productname>Curl</productname>
        installation is sufficient before proceeding. The default for this
        option is auto.
       </para>
      </listitem>
     </varlistentry>

     <varlistentry id="configure-with-liburing-meson">
      <term><option>-Dliburing={ auto | enabled | disabled }</option></term>
      <listitem>
       <para>
        Build with liburing, enabling io_uring support for asynchronous I/O.
        Defaults to auto.
       </para>

       <para>
        To use a liburing installation that is in an unusual location, you
        can set <command>pkg-config</command>-related environment
        variables (see its documentation).
       </para>
      </listitem>
     </varlistentry>

     <varlistentry id="configure-with-libnuma-meson">
      <term><option>-Dlibnuma={ auto | enabled | disabled }</option></term>
      <listitem>
       <para>
        Build with libnuma support for basic NUMA support.
        Only supported on platforms for which the <productname>libnuma</productname>

Title: PostgreSQL Configuration Options for Libraries and Services
Summary
This section describes various configuration options for building PostgreSQL, including support for systemd, Bonjour, UUID, libcurl, liburing, and libnuma, which can be enabled or disabled using meson options, with some options requiring additional software packages to be installed and defaulting to auto-enable if the required software is found.