mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-06-18 19:29:21 +01:00
diffutils: Use an easier work around for the strcasecmp check and improve the explanation
This commit is contained in:
parent
cb6741b0fa
commit
abd4750c89
@ -43,21 +43,40 @@
|
|||||||
<sect2 role="installation">
|
<sect2 role="installation">
|
||||||
<title>Installation of Diffutils</title>
|
<title>Installation of Diffutils</title>
|
||||||
|
|
||||||
<para>When Diffutils is being configured, it checks to see if it is
|
|
||||||
being cross compiled. If it is, configuration fails. Since we are
|
|
||||||
cross compiling, comment out the specific lines that perform that
|
|
||||||
test now:</para>
|
|
||||||
|
|
||||||
<screen><userinput remap="pre">sed -e '46252,+3 s/^/#/' \
|
|
||||||
-e '46596,+3 s/^/#/' \
|
|
||||||
-i configure</userinput></screen>
|
|
||||||
|
|
||||||
<para>Prepare Diffutils for compilation:</para>
|
<para>Prepare Diffutils for compilation:</para>
|
||||||
|
|
||||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||||
--host=$LFS_TGT \
|
--host=$LFS_TGT \
|
||||||
|
gl_cv_func_strcasecmp_works=y \
|
||||||
--build=$(./build-aux/config.guess)</userinput></screen>
|
--build=$(./build-aux/config.guess)</userinput></screen>
|
||||||
|
|
||||||
|
<variablelist>
|
||||||
|
<title>The meaning of the configure options:</title>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<!-- https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=d9083a4cc638cf9c7dfc3cc534a7c6b4debf50ab -->
|
||||||
|
<term><parameter>gl_cv_func_strcasecmp_works=y</parameter></term>
|
||||||
|
<listitem>
|
||||||
|
<para>This option specify the result of a check for the
|
||||||
|
<function>strcasecmp</function>. The check requires running a
|
||||||
|
compiled C program, and this is impossible during
|
||||||
|
cross-compilation because in general a cross-compiled program
|
||||||
|
cannot run on the host distro. Normally for such a check the
|
||||||
|
<command>configure</command> script would use a fall-back value
|
||||||
|
for cross-compilation, but the fall-back value for this check is
|
||||||
|
absent and the <command>configure</command> script would have no
|
||||||
|
value to use and error out. The upstream has already fixed the
|
||||||
|
issue, but to apply the fix we'd need to run
|
||||||
|
<command>autoconf</command> that the host distro may lack. So
|
||||||
|
we just specify the check result (<literal>y</literal> as we know
|
||||||
|
the <function>strcasecmp</function> function in
|
||||||
|
Glibc-&glibc-version; works fine) instead, then
|
||||||
|
<command>configure</command> will just use the specified value and
|
||||||
|
skip the check.</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
|
|
||||||
<para>Compile the package:</para>
|
<para>Compile the package:</para>
|
||||||
|
|
||||||
<screen><userinput remap="make">make</userinput></screen>
|
<screen><userinput remap="make">make</userinput></screen>
|
||||||
|
Loading…
Reference in New Issue
Block a user