aboutsummaryrefslogtreecommitdiffstats
path: root/chapter08/libffi.xml
diff options
context:
space:
mode:
Diffstat (limited to 'chapter08/libffi.xml')
-rw-r--r--chapter08/libffi.xml20
1 files changed, 13 insertions, 7 deletions
diff --git a/chapter08/libffi.xml b/chapter08/libffi.xml
index 4f778961d..579bb6315 100644
--- a/chapter08/libffi.xml
+++ b/chapter08/libffi.xml
@@ -26,6 +26,11 @@
<para>The Libffi library provides a portable, high level programming
interface to various calling conventions. This allows a programmer to call
any function specified by a call interface description at run time.</para>
+
+ <para>FFI stands for Foreign Function Interface. An FFI allows a program written
+ in one language to call a program written in another language. Specifically,
+ Libffi can provide a bridge between an interpreter like Perl, or Python, and
+ shared library subroutines written in C, or C++.</para>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
@@ -43,16 +48,17 @@
<title>Installation of Libffi</title>
<note>
- <para>Similar to GMP, libffi builds with optimizations specific
+ <para>Like GMP, Libffi builds with optimizations specific
to the processor in use. If building for another system, change the
value of the <parameter>--with-gcc-arch=</parameter> parameter in the
following command to an architecture name fully implemented by the
CPU on that system.
- If this is not done, all applications that link to libffi will trigger
+ If this is not done, all applications that link to
+ <filename class='libraryfile'>libffi</filename> will trigger
Illegal Operation Errors.</para>
</note>
- <para>Prepare libffi for compilation:</para>
+ <para>Prepare Libffi for compilation:</para>
<screen><userinput remap="configure">./configure --prefix=/usr \
--disable-static \
@@ -67,7 +73,7 @@
<listitem>
<para>Ensure GCC optimizes for the current system. If this
is not specified, the system is guessed and the code generated
- may not be correct for some systems. If the generated code
+ may not be correct. If the generated code
will be copied from the native system to a less capable
system, use the less capable system as a parameter. For details
about alternative system types, see <ulink
@@ -80,8 +86,8 @@
<!-- To editors: try to remove it once GJS fixed (at GNOME 43) -->
<term><parameter>--disable-exec-static-tramp</parameter></term>
<listitem>
- <para>Disable static trampoline support. It's a new security
- feature in libffi, but some BLFS packages (notably
+ <para>Disable static trampoline support, a new security
+ feature in Libffi. Some BLFS packages (notably
<application>GJS</application>) have not been adapted for it.</para>
</listitem>
</varlistentry>
@@ -121,7 +127,7 @@
<varlistentry id="libffi">
<term><filename class="libraryfile">libffi</filename></term>
<listitem>
- <para>contains the foreign function interface API functions</para>
+ <para>Contains the foreign function interface API functions</para>
<indexterm zone="ch-system-libffi">
<primary sortas="c-libffi">libffi</primary>
</indexterm>