aboutsummaryrefslogtreecommitdiffstats
path: root/chapter08/glibc.xml
diff options
context:
space:
mode:
authorXi Ruoyao <xry111@xry111.site>2022-11-01 10:47:28 +0800
committerXi Ruoyao <xry111@xry111.site>2022-11-01 11:05:05 +0800
commitd45f50d26d9d0861d96f46d9cb5261f5a731d498 (patch)
tree5171d0a518c73935bf8751a8809cbd3a086e872d /chapter08/glibc.xml
parent3f4304998a76ef3bd6141cf7a32cb6740bf032a6 (diff)
glibc: fix parallel build issue with make-4.4
We only need a one-line change in upstream fix (because we don't use "make --shuffle"). Add it as a sed for both Chapter 5 and Chapter 8. Note that the "minimal" sed would be '/MAEKFLAGS :=/s/r/ -r/'. I included an additional ')' so it won't modify "-r" again to "- -r". Tested "make" and "make check" on a x86_64 with -j8 and an arm64 with -j24. Link: https://sourceware.org/git/?p=glibc.git;a=commit;h=2d7ed98add14
Diffstat (limited to 'chapter08/glibc.xml')
-rw-r--r--chapter08/glibc.xml14
1 files changed, 5 insertions, 9 deletions
diff --git a/chapter08/glibc.xml b/chapter08/glibc.xml
index fc7b96dfe..0bc9a5dcf 100644
--- a/chapter08/glibc.xml
+++ b/chapter08/glibc.xml
@@ -43,12 +43,11 @@
<sect2 role="installation">
<title>Installation of Glibc</title>
-<!-- applied in 2.35 (commit b805aebd42364fe696e417808a700fdb9800c9e8)
- <para>First, fix a security problem identified upstream:</para>
+ <para>First, fix an issue building Glibc with parallel jobs and make-4.4
+ or later:</para>
+
+<screen><userinput remap="pre">sed '/MAKEFLAGS :=/s/)r/) -r/' -i Makerules</userinput></screen>
- <screen><userinput remap="pre">sed -e '/NOTIFY_REMOVED)/s/)/ \&amp;\&amp; data.attr != NULL)/' \
- -i sysdeps/unix/sysv/linux/mq_notify.c</userinput></screen>
--->
<para>Some of the Glibc programs use the non-FHS compliant
<filename class="directory">/var/db</filename> directory to store
their runtime data. Apply the following patch to make such programs
@@ -127,10 +126,7 @@ cd build</userinput></screen>
<para>Compile the package:</para>
-<!-- With make-4.4, glibc consistently failed at -j22, but passed at -j1.
- I will inverstigate to see if I can find a better alternative.
- It seems like a race condition. -->
-<screen><userinput remap="make">make -j1</userinput></screen>
+<screen><userinput remap="make">make</userinput></screen>
<important>
<para>In this section, the test suite for Glibc is considered critical.