<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../../general.ent">
  %general-entities;

  <!ENTITY systemd-download-http "http://www.freedesktop.org/wiki/Software/systemd/">
  <!ENTITY systemd-download-ftp  " ">
  <!-- <!ENTITY udev-md5sum        " "> -->
  <!ENTITY systemd-size          "1.3 MB">
  <!ENTITY systemd-buildsize     "314 MB">
  <!ENTITY systemd-time          "3.5 SBU">
]>

<sect1 id="udev-extras" xreflabel="udev-extras (from systemd)">
  <?dbhtml filename="udev-extras.html"?>

  <sect1info>
    <othername>$LastChangedBy: bdubbs $</othername>
    <date>$Date: 2014-05-12 19:11:37 -0400 (Mon, 12 May 2014) $</date>
  </sect1info>

  <title>Udev Extras (from systemd)</title>

  <indexterm zone="udev-extras">
    <primary sortas="a-udev-extras">udev extras (from systemd)</primary>
  </indexterm>

  <sect2 role="package">
    <title>Introduction to Udev Extras</title>

    <para>Udev was installed as a part of systemd in LFS. However, not
    all components were installed due to dependencies that were unavailable.
    This procedure adds those missing components.</para>

    <!-- &lfs75_checked; -->

    <bridgehead renderas="sect3">Package Information</bridgehead>
    <itemizedlist spacing="compact">
      <listitem>
        <para>Download (HTTP): <ulink url="&systemd-download-http;"/></para>
      </listitem>
      <listitem>
        <para>Download (FTP): <ulink url="&systemd-download-ftp;"/></para>
      </listitem>
      <!-- <listitem>
        <para>Download MD5 sum: &systemd-md5sum;</para>
      </listitem> -->
      <listitem>
        <para>Download size: &systemd-size;</para>
      </listitem>
      <listitem>
        <para>Estimated disk space required: &systemd-buildsize;</para>
      </listitem>
      <listitem>
        <para>Estimated build time: &systemd-time;</para>
      </listitem>
    </itemizedlist>

    <bridgehead renderas="sect3">Udev Extras Dependencies</bridgehead>

    <bridgehead renderas="sect4">Required</bridgehead>
    <para role="required">
      <xref linkend="glib2"/> (for the gudev library)
    </para>

    <bridgehead renderas="sect4">Optional Dependencies</bridgehead>
    <para role="optional">
      <xref linkend="gobject-introspection"/> (for gir-data, needed for Gnome)
    </para>

    <bridgehead renderas="sect4">Optional Runtime Dependencies</bridgehead>
    <para role="optional">
      <xref linkend="pciutils"/> and
      <xref linkend="usbutils"/>
    </para>

    <para condition="html" role="usernotes">User Notes:
    <ulink url="&blfs-wiki;/udev-extras"/></para>

  </sect2>

  <sect2 role="installation">
    <title>Installation of Udev Extras</title>

    <para>First, build systemd:</para>

<screen><userinput>./configure --disable-tests &amp;&amp;
make</userinput></screen>

   <caution><para>If you maintained the default System V/systemd 
   installation in LFS, do not run <userinput>make install</userinput>.
   It will overwrite the symbolic links needed to switch boot 
   systems.</para></caution>

   <para>Now install gudev as the <systemitem class="username">root</systemitem> 
   user:</para>

<screen><userinput>mkdir -pv /usr/include/gudev-1.0/gudev /usr/share/gtk-doc/html/gudev &amp;&amp;

cp -v src/gudev/gudev.h             /usr/include/gudev-1.0/gudev &amp;&amp;
cp -v src/gudev/gudev[a-e,t]*.h     /usr/include/gudev-1.0/gudev &amp;&amp;
cp -v .libs/libgudev-1.0.so.0.2.0   /usr/lib                     &amp;&amp;

ln -svfn libgudev-1.0.so.0.2.0      /usr/lib/libgudev-1.0.so     &amp;&amp;
ln -svfn libgudev-1.0.so.0.2.0      /usr/lib/libgudev-1.0.so.0   &amp;&amp;

cp -v src/gudev/gudev-1.0.pc        /usr/lib/pkgconfig           &amp;&amp;
cp -v docs/gudev/html/*             /usr/share/gtk-doc/html/gudev</userinput></screen>

    <para>If the optional gobject-introspection package is available, install
    the gir-data files as the <systemitem class="username">root</systemitem>
    user:</para>

<screen><userinput>mkdir -pv /usr/lib/girepository-1.0 /usr/share/gir-1.0  &amp;&amp;

cp -v src/gudev/GUdev-1.0.typelib /usr/lib/girepository-1.0 &amp;&amp;
cp -v src/gudev/GUdev-1.0.gir     /usr/share/gir-1.0</userinput></screen>

  </sect2>

  <sect2 role="content">
    <title>Contents</title>

    <segmentedlist>
      <segtitle>Installed Programs</segtitle>
      <segtitle>Installed Library</segtitle>
      <segtitle>Installed Directories</segtitle>

      <seglistitem>
        <seg>None</seg>

        <seg>libgudev-1.0.so</seg>

        <seg>/usr/include/gudev-1.0/gudev,
             /usr/lib/girepository-1.0,
             /usr/share/gir-1.0, and
             /usr/share/gtk-doc/html/gudev</seg>
      </seglistitem>
    </segmentedlist>

    <variablelist>
      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
      <?dbfo list-presentation="list"?>
      <?dbhtml list-presentation="table"?>

      <varlistentry id="libgudev-1.0-systemd">
        <term><filename class='libraryfile'>libgudev-1.0.so</filename></term>
        <listitem>
          <para>is a GObject-based wrapper library for libudev.</para>
          <indexterm zone="udev-extras libgudev-1.0-systemd">
            <primary sortas="c-libgudev-1.0-systemd">libgudev-1.0.so</primary>
          </indexterm>
        </listitem>
      </varlistentry>

    </variablelist>

  </sect2>

</sect1>
