[lfs] branch multilib updated: *-ML: Use Meson cross/native files by default.

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

git pushed a commit to branch multilib
in repository lfs.

The following commit(s) were added to refs/heads/multilib by this push:
     new 275c95da9 *-ML: Use Meson cross/native files by default.
275c95da9 is described below

commit 275c95da96a962c200b7d08dcb95de292996b179
Author: Zeckmathederg <[email protected]>
AuthorDate: Tue Feb 24 14:54:01 2026 -0700

    *-ML: Use Meson cross/native files by default.
    
    This help ensures that several issues don't prop up when upgrading LFS
    or a change in a package causes Meson to be stubborn and causes an
    architecture-related build issue from mismatch in byte sizes, for
    example.
---
 chapter08/dbus.xml    | 18 +++++-----
 chapter08/kmod.xml    | 24 ++++++--------
 chapter08/meson.xml   |  5 +++
 chapter08/systemd.xml | 92 ++++++++++++++++-----------------------------------
 chapter08/udev.xml    | 43 ++++++++++--------------
 5 files changed, 71 insertions(+), 111 deletions(-)

diff --git a/chapter08/dbus.xml b/chapter08/dbus.xml
index 2c72821f6..378a42f2d 100644
--- a/chapter08/dbus.xml
+++ b/chapter08/dbus.xml
@@ -105,10 +105,11 @@ meson setup --prefix=/usr --buildtype=release --wrap-mode=nofallback ..</userinp
 
     <para>Prepare dbus for compilation:</para>
 
-<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
-CC="gcc -m32 -march=i686"              \
-CXX="g++ -m32 -march=i686"             \
-meson setup --prefix=/usr --libdir=/usr/lib32 --buildtype=release --wrap-mode=nofallback ..</userinput></screen>
+<screen><userinput remap="configure">meson setup --prefix=/usr          \
+            --buildtype=release    \
+            --cross-file=lib32     \
+            --wrap-mode=nofallback \
+            ..</userinput></screen>
 
     <para>Compile the package:</para>
 
@@ -137,10 +138,11 @@ cp -v  $(pwd)/destdir/usr/lib32/pkgconfig/dbus-1.pc /usr/lib32/pkgconfig/</useri
 
     <para>Prepare dbus for compilation:</para>
 
-<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/libx32/pkgconfig" \
-CC="gcc -mx32"                          \
-CXX="g++ -mx32"                         \
-meson setup --prefix=/usr --libdir=/usr/libx32 --buildtype=release --wrap-mode=nofallback ..</userinput></screen>
+<screen><userinput remap="configure">meson setup --prefix=/usr          \
+            --buildtype=release    \
+            --cross-file=libx32    \
+            --wrap-mode=nofallback \
+            ..</userinput></screen>
 
     <para>Compile the package:</para>
 
diff --git a/chapter08/kmod.xml b/chapter08/kmod.xml
index ca413fc4e..fcabe27c0 100644
--- a/chapter08/kmod.xml
+++ b/chapter08/kmod.xml
@@ -92,13 +92,11 @@ meson setup --prefix=/usr ..    \
 
     <para>Prepare Kmod for compilation:</para>
 
-<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
-CC="gcc -m32 -march=i686"              \
-CXX="g++ -m32 -march=i686"             \
-meson setup --prefix=/usr ..           \
-            --libdir=/usr/lib32        \
-            --buildtype=release        \
-            -D manpages=false</userinput></screen>
+<screen><userinput remap="configure">meson setup --prefix=/usr       \
+            --buildtype=release \
+            --cross-file=lib32  \
+            -D manpages=false   \
+            ..</userinput></screen>
 
     <para>Compile the package:</para>
 
@@ -125,13 +123,11 @@ rm -rf DESTDIR</userinput></screen>
 
     <para>Prepare Kmod for compilation:</para>
 
-<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/libx32/pkgconfig" \
-CC="gcc -mx32"                          \
-CXX="g++ -mx32"                         \
-meson setup --prefix=/usr ..            \
-            --libdir=/usr/libx32        \
-            --buildtype=release         \
-            -D manpages=false</userinput></screen>
+<screen><userinput remap="configure">meson setup --prefix=/usr       \
+            --buildtype=release \
+            --cross-file=libx32 \
+            -D manpages=false   \
+            ..</userinput></screen>
 
     <para>Compile the package:</para>
 
diff --git a/chapter08/meson.xml b/chapter08/meson.xml
index ef9ac1dd6..d981b4188 100644
--- a/chapter08/meson.xml
+++ b/chapter08/meson.xml
@@ -159,6 +159,11 @@ endian = 'little'</literal>
 EOF
 done</userinput></screen>
 
+    <note arch="ml_32,ml_x32,ml_all"><para>
+      These files will be used by default in packages that will use Meson-based
+      build systems to reduce any architecture and upgrading issues.
+    </para></note>
+
   </sect2>
 
   <sect2 id="contents-meson" role="content">
diff --git a/chapter08/systemd.xml b/chapter08/systemd.xml
index 56e9d62a5..8d85befd6 100644
--- a/chapter08/systemd.xml
+++ b/chapter08/systemd.xml
@@ -280,49 +280,22 @@ unshare -m ninja test</userinput></screen>
 
 <screen><userinput remap="pre">rm -rf *</userinput></screen>
 
-<!-- Remove the symlink to work around missing xsltproc
-     Man page generation will be properly supressed in meson options -->
-
-    <!-- para>Create a symlink to work around missing xsltproc:</para -->
-
-<!-- screen><userinput remap="pre">ln -sf /tools/bin/true /usr/bin/xsltproc</userinput></screen -->
-<!-- screen><userinput remap="pre">ln -sf /bin/true /usr/bin/xsltproc</userinput></screen -->
-
-<!-- with cross-LFS we have util-linux in place:
-    <para>Because we have not yet installed the final version of Util-Linux,
-    create links to the libraries in the approprite location:</para>
-
-<screen><userinput remap="pre">for file in /tools/lib32/lib{blkid,mount,uuid}*; do
-    ln -sf $file /usr/lib32/
-done</userinput></screen>
--->
-
-<!-- Match config switch style (-Dxxx -> -D xxx) to initial build above
-     Properly supress man page generation (-D man=disabled)
-        (Removes need for xsltproc symlink)
-     Remove deprecated switches that are duplicates/not needed
-        (-Drootlibdir deprecated, covered by libdir= option)
-        (-Db_lto not found in meson-options.txt, lto handled by mode switch)
-        (-Dblkid deprecated) -->
     <para>Prepare systemd for compilation:</para>
 
-<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
-CC="gcc -m32"                          \
-CXX="g++ -m32"                         \
-LANG=en_US.UTF-8                       \
-meson setup --prefix=/usr              \
-            --libdir=/usr/lib32        \
-            --buildtype=release        \
-            -D default-dnssec=no       \
-            -D firstboot=false         \
-            -D install-tests=false     \
-            -D ldconfig=false          \
-            -D sysusers=false          \
-            -D rpmmacrosdir=no         \
-            -D homed=disabled          \
-            -D userdb=false            \
-            -D man=disabled            \
-            -D mode=release            \
+<screen><userinput remap="configure">LANG=en_US.UTF-8                   \
+meson setup --prefix=/usr          \
+            --buildtype=release    \
+            --cross-file=lib32     \
+            -D default-dnssec=no   \
+            -D firstboot=false     \
+            -D install-tests=false \
+            -D ldconfig=false      \
+            -D sysusers=false      \
+            -D rpmmacrosdir=no     \
+            -D homed=disabled      \
+            -D userdb=false        \
+            -D man=disabled        \
+            -D mode=release        \
             ..</userinput></screen>
 <!-- We still use -D userdb=false for m32 to prevent the utilities from being
      built. We only are interested in libraries here, and userdb has none.
@@ -357,31 +330,22 @@ rm -rf DESTDIR</userinput></screen>
 
 <screen><userinput remap="pre">rm -rf *</userinput></screen>
 
-<!--
-    <para>Fix an issue on x32:</para>
-
-<screen><userinput remap="pre">sed '/log_debug/s@PRI_TIMEX@PRIi64@' -i src/timesync/timesyncd-manager.c
-sed '/long drift_freq;/s@long @int64_t @' -i src/timesync/timesyncd-manager.h</userinput></screen>
--->
     <para>Prepare systemd for compilation:</para>
 
-<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/libx32/pkgconfig" \
-CC="gcc -mx32"                          \
-CXX="g++ -mx32"                         \
-LANG=en_US.UTF-8                        \
-meson setup --prefix=/usr               \
-            --libdir=/usr/libx32        \
-            --buildtype=release         \
-            -D default-dnssec=no        \
-            -D firstboot=false          \
-            -D install-tests=false      \
-            -D ldconfig=false           \
-            -D sysusers=false           \
-            -D rpmmacrosdir=no          \
-            -D homed=false              \
-            -D userdb=false             \
-            -D man=disabled             \
-            -D mode=release             \
+<screen><userinput remap="configure">LANG=en_US.UTF-8                   \
+meson setup --prefix=/usr          \
+            --buildtype=release    \
+            --cross-file=libx32    \
+            -D default-dnssec=no   \
+            -D firstboot=false     \
+            -D install-tests=false \
+            -D ldconfig=false      \
+            -D sysusers=false      \
+            -D rpmmacrosdir=no     \
+            -D homed=false         \
+            -D userdb=false        \
+            -D man=disabled        \
+            -D mode=release        \
             ..</userinput></screen>
 <!-- We still use -D userdb=false for mx32 to prevent the utilities from being
      built. We only are interested in libraries here, and userdb has none.
diff --git a/chapter08/udev.xml b/chapter08/udev.xml
index b3db510dd..74db929a7 100644
--- a/chapter08/udev.xml
+++ b/chapter08/udev.xml
@@ -212,17 +212,15 @@ rm /usr/share/man/man*/systemd*</userinput></screen>
 
     <para>Prepare Udev for compilation:</para>
 
-<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
-CC="gcc -m32 -march=i686"              \
-CXX="g++ -m32 -march=i686"             \
-LANG=en_US.UTF-8                       \
-meson setup --prefix=/usr              \
-            --buildtype=release        \
-            -D mode=release            \
-            -D dev-kvm-mode=0660       \
-            -D link-udev-shared=false  \
-            -D logind=false            \
-            -D vconsole=false          \
+<screen><userinput remap="configure">LANG=en_US.UTF-8                      \
+meson setup --prefix=/usr             \
+            --buildtype=release       \
+            --cross-file=lib32        \
+            -D mode=release           \
+            -D dev-kvm-mode=0660      \
+            -D link-udev-shared=false \
+            -D logind=false           \
+            -D vconsole=false         \
             ..</userinput></screen>
 
     <para>Compile the package:</para>
@@ -250,20 +248,15 @@ sed -e "s;/usr/lib;&amp;32;g" src/libudev/libudev.pc > /usr/lib32/pkgconfig/libu
 
     <para>Prepare Udev for compilation:</para>
 
-<screen><userinput remap="configure">
-PKG_CONFIG_PATH="/usr/libx32/pkgconfig" \
-CC="gcc -mx32"                          \
-CXX="g++ -mx32"                         \
-CFLAGS+=" -Wno-error=shift-overflow"    \
-CXXFLAGS+=" -Wno-error=shift-overflow"  \
-LANG=en_US.UTF-8                        \
-meson setup --prefix=/usr               \
-            --buildtype=release         \
-            -D mode=release             \
-            -D dev-kvm-mode=0660        \
-            -D link-udev-shared=false   \
-            -D logind=false             \
-            -D vconsole=false           \
+<screen><userinput remap="configure">LANG=en_US.UTF-8                      \
+meson setup --prefix=/usr             \
+            --buildtype=release       \
+            --cross-file=libx32       \
+            -D mode=release           \
+            -D dev-kvm-mode=0660      \
+            -D link-udev-shared=false \
+            -D logind=false           \
+            -D vconsole=false         \
             ..</userinput></screen>
 
     <para>Compile the package:</para>

-- 
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.