[lfs] 02/02: diffutils: Use an easier work around for the strcasecmp check and improve the explanation

"Git Owner" ([email protected] via lfs-book Mailing List) <[email protected]>
Newsgroups gmane.linux.lfs.book
Message-ID <[email protected]>
This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch trunk
in repository lfs.

commit abd4750c893625d1944f621c827e5e7be677a660
Author: Xi Ruoyao <[email protected]>
AuthorDate: Tue Apr 15 18:05:26 2025 +0800

    diffutils: Use an easier work around for the strcasecmp check and improve the explanation
---
 chapter06/diffutils.xml | 37 ++++++++++++++++++++++++++++---------
 1 file changed, 28 insertions(+), 9 deletions(-)

diff --git a/chapter06/diffutils.xml b/chapter06/diffutils.xml
index 8738e32b0..404fe9b66 100644
--- a/chapter06/diffutils.xml
+++ b/chapter06/diffutils.xml
@@ -43,21 +43,40 @@
   <sect2 role="installation">
     <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>
 
     <screen><userinput remap="configure">./configure --prefix=/usr   \
             --host=$LFS_TGT \
+            gl_cv_func_strcasecmp_works=y \
             --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>
 
 <screen><userinput remap="make">make</userinput></screen>

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

-- 
http://lists.linuxfromscratch.org/sympa/info/lfs-book
Unsubscribe: See the above information page
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.