glfs/general/genlib/libatomic_ops.xml
Andrew Benton 9662c41677 libatomic_ops-7.2
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@10325 af4574ff-66df-0310-9fd7-8a98e5e911e0
2012-06-13 11:31:48 +00:00

151 lines
4.9 KiB
XML

<?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 libatomic_ops-download-http
"http://www.hpl.hp.com/research/linux/atomic_ops/download/libatomic_ops-&libatomic_ops-version;.tar.gz">
<!ENTITY libatomic_ops-download-ftp " ">
<!ENTITY libatomic_ops-md5sum "890acdc83a7cd10e2e9536062d3741c8">
<!ENTITY libatomic_ops-size "228 KB">
<!ENTITY libatomic_ops-buildsize "4.5 MB">
<!ENTITY libatomic_ops-time "0.1 SBU">
]>
<sect1 id="libatomic_ops" xreflabel="libatomic_ops-&libatomic_ops-version;">
<?dbhtml filename="libatomic_ops.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>libatomic_ops-&libatomic_ops-version;</title>
<indexterm zone="libatomic_ops">
<primary sortas="a-libatomic_ops">libatomic_ops</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to libatomic_ops</title>
<para>
<application>libatomic_ops</application> provides implementations for
atomic memory update operations on a number of architectures. This allows
direct use of these in reasonably portable code. Unlike earlier similar
packages, this one explicitly considers memory barrier semantics, and
allows the construction of code that involves minimum overhead across a
variety of architectures.
</para>
&lfs71_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>Download (HTTP): <ulink url="&libatomic_ops-download-http;"/></para>
</listitem>
<listitem>
<para>Download (FTP): <ulink url="&libatomic_ops-download-ftp;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &libatomic_ops-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &libatomic_ops-size;</para>
</listitem>
<listitem>
<para>Estimated disk space required: &libatomic_ops-buildsize;</para>
</listitem>
<listitem>
<para>Estimated build time: &libatomic_ops-time;</para>
</listitem>
</itemizedlist>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/libatomic_ops"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of libatomic_ops</title>
<para>
Install <application>libatomic_ops</application> by running the following
commands:
</para>
<screen><userinput>sed -i 's#AC_PROG_RANLIB#AC_LIBTOOL_DLOPEN\nAC_PROG_LIBTOOL#' configure.ac &amp;&amp;
sed -i 's#b_L#b_LTL#;s#\.a#.la#g;s#_a_#_la_#' src/Makefile.am &amp;&amp;
sed -i 's#\.a#.so#g;s#\.\./src/#../src/.libs/#g' tests/Makefile.am &amp;&amp;
autoreconf -i &amp;&amp;
./configure --prefix=/usr --disable-static \
--docdir=/usr/share/doc/libatomic_ops-&libatomic_ops-version; &amp;&amp;
make</userinput></screen>
<para>To check the results, issue <command>make check</command>.</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<command>sed -i 's#AC_PROG_RANLIB ...</command>: These seds massage the
autotool files so that a shared library is built and the tests pass.
</para>
<para>
<command>autoreconf -i</command>: This regenerates the configure script
and the Makefile.in files and installs a missing file.
</para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/static-libraries.xml"/>
<para>
<option>--docdir=/usr/share/doc/libatomic_ops-&libatomic_ops-version;</option>:
This option installs the documentation in a versioned directory.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directory</segtitle>
<seglistitem>
<seg>
libatomic_ops.so and
libatomic_ops_gpl.so
</seg>
<seg>/usr/include/libatomic_ops</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="libatomic_ops-lib">
<term><filename class='libraryfile'>libatomic_ops{,_gpl}.so</filename></term>
<listitem>
<para>contain functions for atomic memory operations.</para>
<indexterm zone="libatomic_ops libatomic_ops-lib">
<primary sortas="c-libatomic_ops">libatomic_ops.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>