mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-06-18 19:29:21 +01:00
Compare commits
204 Commits
r12.2-rc1-
...
trunk
Author | SHA1 | Date | |
---|---|---|---|
|
ec7e850bd0 | ||
|
8d7dc4ebea | ||
|
5e4ff8cb2e | ||
|
5544caf28e | ||
|
7eb51d8123 | ||
|
0eaba084ff | ||
|
61d0fb219d | ||
|
e481799cdf | ||
|
c24d5641af | ||
|
1b223fbe43 | ||
|
455724dc34 | ||
|
208415b81b | ||
|
30ec5ae0ea | ||
|
6c311ec76f | ||
|
3975ea8c7e | ||
|
eb4213206a | ||
|
a6bc44cc0f | ||
|
14b85031e4 | ||
|
6a04e2420d | ||
|
722ec5bf97 | ||
|
a45bbbc391 | ||
|
37c303637d | ||
|
68528292e6 | ||
|
fd69440977 | ||
|
de932d6de5 | ||
|
ac5a955c84 | ||
|
3dc11a77cf | ||
|
cbdfdd32fd | ||
|
7a6cafbe95 | ||
|
9056a5ccae | ||
|
86d976a38c | ||
|
f6dbeeb1d3 | ||
|
a9138980ac | ||
|
88ee06773d | ||
|
679cc02c59 | ||
|
cc36837f7e | ||
|
3d1e81b5a8 | ||
|
134786bcb7 | ||
|
97aaa219af | ||
|
c63e26b296 | ||
|
1a2d3f5588 | ||
|
fb602744bb | ||
|
abd4750c89 | ||
|
cb6741b0fa | ||
|
9103be9005 | ||
|
d470cdb21c | ||
|
f3e6b8964f | ||
|
32a9d4b35b | ||
|
780e368072 | ||
|
7ea7a3b3d3 | ||
|
c53c0efa0a | ||
|
9bad19ff57 | ||
|
d116c1bdb0 | ||
|
a05804f155 | ||
|
73733138d7 | ||
|
8cd3ab533d | ||
|
576a368232 | ||
|
e55a481032 | ||
|
87e90fb633 | ||
|
7e4fd2e198 | ||
|
5e3bef69d1 | ||
|
7cd3a3fec1 | ||
|
a4b4001f03 | ||
|
d85559a14e | ||
|
461741b243 | ||
|
42eaacedbc | ||
|
e2789b4c66 | ||
|
a2bf74a9b5 | ||
|
ed2611fa6f | ||
|
8145eff136 | ||
|
4200e09617 | ||
|
cbe6deea00 | ||
|
aa990ecf0a | ||
|
00d6cce3cd | ||
|
e9c3828c53 | ||
|
d35857c7bb | ||
|
49b6a5ff00 | ||
|
2b2e9cddbc | ||
|
514c9e71b0 | ||
|
378b51e18e | ||
|
65f0a28feb | ||
|
28a01fdcab | ||
|
6f76f192b9 | ||
|
5616cb8ee9 | ||
|
79fccff18f | ||
|
613790d1fa | ||
|
5ba41a882b | ||
|
34202ef44a | ||
|
36f2a2dd53 | ||
|
dfd69d56e7 | ||
|
4bc4b26d5a | ||
|
df98180f35 | ||
|
d3abecc973 | ||
|
fd0a944d6d | ||
|
581ee1a9e8 | ||
|
611c87328f | ||
|
cb1b56efce | ||
|
3f2235c907 | ||
|
94dc9c26d2 | ||
|
40ca48d44f | ||
|
5112b5ee91 | ||
|
4f401fb372 | ||
|
aef7c6efd6 | ||
|
ce20367007 | ||
|
50a0916dea | ||
|
b05b2270d3 | ||
|
9eccb6170d | ||
|
ff4a32ec01 | ||
|
2aaea1389b | ||
|
59cc122efa | ||
|
ea9df10321 | ||
|
7622257836 | ||
|
bb5bf3b9d8 | ||
|
016ba17be9 | ||
|
39679232f7 | ||
|
625969c2de | ||
|
68b56a3c33 | ||
|
cacb470c97 | ||
|
389d8f53db | ||
|
d11e5762bc | ||
|
6528f75720 | ||
|
8e8be5f129 | ||
|
f1a5ce3860 | ||
|
7822686752 | ||
|
93d4efbcd6 | ||
|
c1a3c0292a | ||
|
7a01f6150f | ||
|
bfb0cbae18 | ||
|
6913a42bff | ||
|
86a50f243a | ||
|
33b3a04e4e | ||
|
8f493a6377 | ||
|
e5955cd62a | ||
|
f8bdaa6ff3 | ||
|
8f5b4a7910 | ||
|
72fae0d02c | ||
|
fba6f0643d | ||
|
1b69877bc4 | ||
|
4fd0680ccf | ||
|
d095cba8b6 | ||
|
71df0cfa0f | ||
|
6d36d72175 | ||
|
eb35057724 | ||
|
6fa6a4f3ce | ||
|
cefff0ec14 | ||
|
a44b23f7a4 | ||
|
c87106896c | ||
|
79648bf770 | ||
|
5ee35073fb | ||
|
2349341e3e | ||
|
33c17d128b | ||
|
fdf21dccba | ||
|
ea48456403 | ||
|
e5cc8213aa | ||
|
e5338216f0 | ||
|
410e400a79 | ||
|
d5d6ec44ea | ||
|
4660ec224b | ||
|
eca8b13b59 | ||
|
78914d4af6 | ||
|
505b6b1581 | ||
|
ac024e87c3 | ||
|
39c800d18c | ||
|
a9517d383c | ||
|
08620feaa1 | ||
|
8a0ae36a91 | ||
|
52104e05f0 | ||
|
33ec8810ee | ||
|
d26d12f45c | ||
|
8d5a2a12e9 | ||
|
ae191ad78e | ||
|
fc3eddd130 | ||
|
ebeebc26b2 | ||
|
5607053b5a | ||
|
8a9d779178 | ||
|
d77b09e5d0 | ||
|
2a2b22823c | ||
|
2fe2d58620 | ||
|
984e1f1068 | ||
|
c080648959 | ||
|
92bb02a329 | ||
|
75c9760329 | ||
|
c5fbd9da12 | ||
|
e4b4449d11 | ||
|
39dca771d7 | ||
|
f2c8c6e025 | ||
|
4b8c6b4f61 | ||
|
2e3aaf8b43 | ||
|
67056c18a5 | ||
|
73f24adb27 | ||
|
2b76c898f5 | ||
|
2ca7fca799 | ||
|
68c63ae3af | ||
|
eae9237225 | ||
|
04befc5e3c | ||
|
948cd148be | ||
|
6e99fa99c7 | ||
|
7779960772 | ||
|
872a378f5e | ||
|
54c0a86cd0 | ||
|
db7bf1f8e9 | ||
|
d1ccec207f | ||
|
217802b9c0 | ||
|
837731717d |
@ -4,8 +4,7 @@
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
<!-- Convenient entity for "Systemd" or "Udev" -->
|
||||
<!ENTITY systemd-udev "<phrase revision='systemd'>Systemd</phrase>
|
||||
<phrase revision='sysv'>Udev</phrase>">
|
||||
<!ENTITY systemd-udev "<phrase revision='systemd'>Systemd</phrase><phrase revision='sysv'>Udev</phrase>">
|
||||
<!ENTITY bdb "<ulink url='https://www.oracle.com/database/technologies/related/berkeleydb.html'>Berkeley DB</ulink>">
|
||||
]>
|
||||
|
||||
@ -45,7 +44,7 @@
|
||||
<segmentedlist id="acl-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Attr, Bash, Binutils, Coreutils, GCC, Gettext, Grep, M4, Make,
|
||||
<seg>Attr, Bash, Binutils, Coreutils, GCC, Gettext, Grep, M4, Make,
|
||||
Perl, Sed, and Texinfo</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
@ -400,49 +399,6 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Check dependency info -->
|
||||
<bridgehead renderas="sect2" id="check-dep">Check</bridgehead>
|
||||
|
||||
<segmentedlist id="check-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Gawk, GCC, Grep, Make, Sed, and Texinfo</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="check-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash and Gawk</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="check-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="check-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="check-optdeps">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>
|
||||
<ulink url='&github;/testing-cabal/subunit'>libsubunit</ulink>
|
||||
and
|
||||
<ulink url='http://cyberelk.net/tim/software/patchutils/'>
|
||||
patchutils</ulink>
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Coreutils dependency info -->
|
||||
<bridgehead renderas="sect2" id="coreutils-dep">Coreutils</bridgehead>
|
||||
|
||||
@ -872,7 +828,7 @@
|
||||
<segmentedlist id="flit-core-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Wheel</seg>
|
||||
<seg>Packaging and Wheel</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1240,7 +1196,7 @@
|
||||
<segmentedlist id="groff-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>No test suite available</seg>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1276,7 +1232,7 @@
|
||||
<segmentedlist id="grub-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, GCC, Gettext, Glibc, Xz, and Sed.</seg>
|
||||
<seg>Bash, GCC, Gettext, Glibc, Xz, and Sed</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1545,7 +1501,7 @@
|
||||
<segmentedlist id="kbd-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Bison, Check, Coreutils, Flex, GCC, Gettext,
|
||||
<seg>Bash, Binutils, Bison, Coreutils, Flex, GCC, Gettext,
|
||||
Glibc, Gzip, Make, Patch, and Sed</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
@ -1642,7 +1598,7 @@
|
||||
<segmentedlist id="less-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>No test suite available</seg>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2460,6 +2416,46 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Packaging dependency info -->
|
||||
<bridgehead renderas="sect2" id="Packaging-dep">Packaging</bridgehead>
|
||||
|
||||
<segmentedlist id="packaging-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Flit-core and Python</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="packaging-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Python</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="packaging-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>No test suite available</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="packaging-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Wheel</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="packaging-optdeps">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>
|
||||
<ulink url='&blfs-book;general/python-modules.html#pytest'>pytest</ulink>
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Patch dependency info -->
|
||||
<bridgehead renderas="sect2" id="patch-dep">Patch</bridgehead>
|
||||
|
||||
@ -2571,9 +2567,10 @@
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Binutils,
|
||||
<phrase revision='systemd'>D-Bus, </phrase>E2fsprogs,
|
||||
IProute2, Kmod, Man-DB, Procps-ng, Python,
|
||||
&systemd-udev;, and Util-linux</seg>
|
||||
<phrase revision='systemd'>D-Bus, </phrase>
|
||||
E2fsprogs, IProute2, Kmod, Man-DB, Procps-ng, Python,
|
||||
&systemd-udev;,
|
||||
and Util-linux</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2650,7 +2647,7 @@
|
||||
<segmentedlist id="psmisc-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>No test suite available</seg>
|
||||
<seg>Expect</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -3312,7 +3309,7 @@
|
||||
<segmentedlist id="wheel-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Python and Flit-core</seg>
|
||||
<seg>Python, Flit-core, and packaging</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
|
@ -15,7 +15,7 @@ base=$(basename $bootscripts .tar.xz)
|
||||
bootsize=$(ls -l --block-size=1024 $bootscripts | cut -f5 -d" ")
|
||||
bootmd5=$(md5sum $bootscripts | cut -f1 -d" ")
|
||||
|
||||
# Figure intalled size of bootscripts
|
||||
# Figure installed size of bootscripts
|
||||
TOPDIR=$(pwd)
|
||||
TMP_DIR=$(mktemp -d /tmp/lfsbootfiles.XXXXXX)
|
||||
pushd $TMP_DIR > /dev/null
|
||||
|
@ -1,3 +1,16 @@
|
||||
2024-08-25 Xi Ruoyao <xry111@xry111.site>
|
||||
* Remove an empty line and an outdated comment (not valid anymore after
|
||||
/usr merge) from init-functions.
|
||||
|
||||
2024-08-24 Andrew Kreimer <algonell@gmail.com>
|
||||
* Fix typos.
|
||||
|
||||
2024-08-23 Xi Ruoyao <xry111@xry111.site>
|
||||
* In console, detect FB console by checking /sys/class/graphics/fbcon
|
||||
instead of fb0. The latter does not exist if CONFIG_FB=n, but
|
||||
CONFIG_DRM_FBDEV_EMULATION=y can support a FB console without
|
||||
CONFIG_FB.
|
||||
|
||||
2024-07-12 Xi Ruoyao <xry111@xry111.site>
|
||||
* In mountvirtfs, recreate /dev/fd correctly if it's already created
|
||||
by the initramfs.
|
||||
|
@ -47,7 +47,7 @@ case "${1}" in
|
||||
log_info_msg "Setting up Linux console..."
|
||||
|
||||
# Figure out if a framebuffer console is used
|
||||
[ -d /sys/class/graphics/fb0 ] && use_fb=1 || use_fb=0
|
||||
[ -d /sys/class/graphics/fbcon ] && use_fb=1 || use_fb=0
|
||||
|
||||
# Figure out the command to set the console into the
|
||||
# desired mode
|
||||
|
@ -457,11 +457,8 @@ pidofproc()
|
||||
|
||||
# If a PID file is set and exists, use it.
|
||||
if [ -n "${pidfile}" -a -e "${pidfile}" ]; then
|
||||
|
||||
# Use the value in the first line of the pidfile
|
||||
pidlist=`/bin/head -n1 "${pidfile}"`
|
||||
# This can optionally be written as 'sed 1q' to repalce 'head -n1'
|
||||
# should LFS move /bin/head to /usr/bin/head
|
||||
else
|
||||
# Use pidof
|
||||
pidlist=`pidof "${program}"`
|
||||
|
@ -94,7 +94,7 @@ NOTES
|
||||
compound device such as a bridge.
|
||||
|
||||
ONBOOT - If set to 'yes', the specified interface is
|
||||
configured by the netowrk boot script.
|
||||
configured by the network boot script.
|
||||
|
||||
GATEWAY - The default IP address to use for routing if
|
||||
the destination IP address is not in a static
|
||||
@ -112,7 +112,7 @@ NOTES
|
||||
This list is normally a single value, e.g. eth0,
|
||||
for use with a virtual host such as kvm.
|
||||
|
||||
Other paramters that are service specific include:
|
||||
Other parameters that are service specific include:
|
||||
|
||||
ipv4-static
|
||||
|
||||
@ -128,7 +128,7 @@ NOTES
|
||||
additional IP addresses to a network
|
||||
device. Example: eth0:2 (optional)
|
||||
|
||||
BROADCAST - The brodcast address for this interface,
|
||||
BROADCAST - The broadcast address for this interface,
|
||||
e.g 192.168.1.255. If not specified,
|
||||
the broadcast address will be calculated
|
||||
from the IP and PREFIX.
|
||||
@ -154,7 +154,7 @@ NOTES
|
||||
DHCP_START - Optional parameters to pass to the dhcp client
|
||||
at startup.
|
||||
|
||||
DHCP_STOP - Optional paremeters to pass to the dhcp client
|
||||
DHCP_STOP - Optional parameters to pass to the dhcp client
|
||||
at shutdown.
|
||||
|
||||
PRINTIP - Flag to print the dhcp address to stdout
|
||||
|
@ -39,595 +39,371 @@
|
||||
<listitem revision="sysv"> or <listitem revision="systemd"> as
|
||||
appropriate for the entry or if needed the entire day's listitem.
|
||||
-->
|
||||
|
||||
<listitem>
|
||||
<para>2024-08-17</para>
|
||||
<para>2025-06-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-72.2.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5542'>#5542</ulink>.</para>
|
||||
<para>[bdubbs] - Update to meson-1.8.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5743'>#5743</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to kmod-33. Fixes
|
||||
<ulink url='&lfs-ticket-root;5540'>#5540</ulink>.</para>
|
||||
<para>[bdubbs] - Update to linux-6.15.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5725'>#5725</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to binutils-2.43.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5543'>#5543</ulink>.</para>
|
||||
<para>[bdubbs] - Update to libffi-3.5.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5741'>#5741</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.10.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5541'>#5541</ulink>.</para>
|
||||
<para>[bdubbs] - Update to iproute2-6.15.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5732'>#5732</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to Python-3.13.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5743'>#6743</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-08-15</para>
|
||||
<para>2025-06-04</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240806. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
<para>[bdubbs] - Update to ncurses-6.5-20250531. Fixes
|
||||
<ulink url='&lfs-ticket-root;5737'>#5737</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to pkgconf-2.3.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5537'>#5537</ulink>.</para>
|
||||
<para>[bdubbs] - Update to readline-8.3-rc2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5738'>#5738</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to python3-3.12.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5538'>#5538</ulink>.</para>
|
||||
<para>[bdubbs] - Update to bash-5.3-rc2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5738'>#5738</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.10.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5539'>#5539</ulink>.</para>
|
||||
<para>[bdubbs] - Update to Python-3.13.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5739'>#6739</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-08-05</para>
|
||||
<para>2025-06-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to bash-5.2.32. Fixes
|
||||
<ulink url='&lfs-ticket-root;5532'>#5532</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240801. Addresses
|
||||
<para>[bdubbs] - Update to iana-etc-20250519. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.1.0660. Addresses
|
||||
<para>[bdubbs] - Update to vim-9.1.1418. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to binutils-2.43. Fixes
|
||||
<ulink url='&lfs-ticket-root;5535'>#5535</ulink>.</para>
|
||||
<para>[bdubbs] - Update to kbd-2.8.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5736'>#5736</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.10.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5534'>#5534</ulink>.</para>
|
||||
<para>[bdubbs] - Update to systemd-257.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5674'>#5674</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to readline-8.2.13. Fixes
|
||||
<ulink url='&lfs-ticket-root;5533'>#5533</ulink>.</para>
|
||||
<para>[bdubbs] - Update to setuptools-80.9.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5728'>#5728</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to wheel-0.44.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5536'>#5536</ulink>.</para>
|
||||
<para>[bdubbs] - Update to meson-1.8.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5731'>#5731</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to automake-1.18. Fixes
|
||||
<ulink url='&lfs-ticket-root;5734'>#5734</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update build instructions to accommodate
|
||||
gcc-15 for bc, expect, ncurses, and gmp.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gcc-15.1.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5707'>#5707</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to less-678. Fixes
|
||||
<ulink url='&lfs-ticket-root;5724'>#5724</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to readline-8.3-rc1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5726'>#5726</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to bash-5.3-rc1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5714'>#5714</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2025-05-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-80.7.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5715'>#5715</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to man-pages-6.14. Fixes
|
||||
<ulink url='&lfs-ticket-root;5720'>#5720</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to man-db-2.13.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5719'>#5719</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to m4-1.4.20. Fixes
|
||||
<ulink url='&lfs-ticket-root;5722'>#5722</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.14.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5717'>#5717</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gettext-0.25. Fixes
|
||||
<ulink url='&lfs-ticket-root;5718'>#5718</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-08-01</para>
|
||||
<para>2025-05-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gcc-14.2.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5530'>#5530</ulink>.</para>
|
||||
<para>[bdubbs] - Update to vim-9.1.1353. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240723. Addresses
|
||||
<para>[bdubbs] - Update to setuptools-80.0.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5710'>#5710</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to packaging-25.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5706'>#5706</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.8.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5713'>#5713</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.14.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5709'>#5709</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20250407. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to glibc-2.40. Fixes
|
||||
<ulink url='&lfs-ticket-root;5529'>#5529</ulink>.</para>
|
||||
<para>[bdubbs] - Update to gperf-3.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5708'>#5708</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iproute2-6.10.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5523'>#5523</ulink>.</para>
|
||||
<para>[bdubbs] - Update to elfutils-0.193. Fixes
|
||||
<ulink url='&lfs-ticket-root;5711'>#5711</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2025-04-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to libcap-2.76. Fixes
|
||||
<ulink url='&lfs-ticket-root;5704'>#5704</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.10.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5521'>#5521</ulink>.</para>
|
||||
<para>[bdubbs] - Update to perl-5.40.2 (Security update). Fixes
|
||||
<ulink url='&lfs-ticket-root;5703'>#5703</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to lz4-1.10.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5528'>#5526</ulink>.</para>
|
||||
<para>[bdubbs] - Add packaging-24.2 (Python module). Needed for wheel.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.5.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5527'>#5527</ulink>.</para>
|
||||
<para>[bdubbs] - Update to xz-5.8.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5694'>#5694</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-72.1.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5531'>#5531</ulink>.</para>
|
||||
<para>[bdubbs] - Update to wheel-0.46.1 (Python Module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5693'>#5693</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to sysklogd-2.6.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5522'>#5522</ulink>.</para>
|
||||
<para>[bdubbs] - Update to sysklogd-2.7.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5690'>#5690</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to systemd-256.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5518'>#5518</ulink>.</para>
|
||||
<para>[bdubbs] - Update to Python3-3.13.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5697'>#5697</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to openssl-3.5.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5701'>#5701</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.7.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5691'>#5691</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.14.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5680'>#5680</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem revision='sysv'>
|
||||
<para>[bdubbs] - Update to sysvinit-3.10. Fixes
|
||||
<ulink url='&lfs-ticket-root;5528'>#5528</ulink>.</para>
|
||||
<para>[bdubbs] - Update to libffi-3.4.8. Fixes
|
||||
<ulink url='&lfs-ticket-root;5700'>#5700</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iproute2-6.14.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5682'>#5682</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gzip-1.14. Fixes
|
||||
<ulink url='&lfs-ticket-root;5699'>#5699</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to grep-3.12. Fixes
|
||||
<ulink url='&lfs-ticket-root;5702'>#5702</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gperf-3.2.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5695'>#5695</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gawk-5.3.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5692'>#5692</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to diffutils-3.12. Fixes
|
||||
<ulink url='&lfs-ticket-root;5696'>#5696</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to coreutils-9.7. Fixes
|
||||
<ulink url='&lfs-ticket-root;5698'>#5698</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-07-15</para>
|
||||
<para>2025-04-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240701. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.1.0580. Addresses
|
||||
<para>[bdubbs] - Update to vim-9.1.1263. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to automake-1.17. Fixes
|
||||
<ulink url='&lfs-ticket-root;5520'>#5520</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gdbm-1.24. Fixes
|
||||
<ulink url='&lfs-ticket-root;5515'>#5515</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.9.9. Fixes
|
||||
<ulink url='&lfs-ticket-root;5517'>#5517</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to less-661. Fixes
|
||||
<ulink url='&lfs-ticket-root;5513'>#5513</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.5.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5519'>#5519</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-70.3.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5514'>#5514</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to util-linux-2.40.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5516'>#5516</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-07-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update lfs-bootscripts to only output
|
||||
escape sequences to a terminal. </para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-07-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240612. Addresses
|
||||
<para>[bdubbs] - Update to iana-etc-20250328. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to bc-6.7.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5506'>#5506</ulink>.</para>
|
||||
<para>[bdubbs] - Update to xz-5.8.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5684'>#5684</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to man-pages-6.9.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5507'>#5507</ulink>.</para>
|
||||
<para>[bdubbs] - Update to util-linux-2.41. Fixes
|
||||
<ulink url='&lfs-ticket-root;5648'>#5648</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.9.7. Fixes
|
||||
<ulink url='&lfs-ticket-root;5508'>#5508</ulink>.</para>
|
||||
<para>[bdubbs] - Update to tzdata-2025b. Fixes
|
||||
<ulink url='&lfs-ticket-root;5681'>#5681</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem revision='sysv'>
|
||||
<para>[bdubbs] - Update to shadow-4.17.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5678'>#5678</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to sysklogd-2.5.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5509'>#5509</ulink>.</para>
|
||||
<para>[bdubbs] - Update to setuptools-78.1.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5676'>#5676</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to shadow-4.16.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5510'>#5510</ulink>.</para>
|
||||
<para>[bdubbs] - Update to patch-2.8. Fixes
|
||||
<ulink url='&lfs-ticket-root;5689'>#5689</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to systemd-256.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5511'>#5511</ulink>.</para>
|
||||
<para>[bdubbs] - Update to mpfr-4.2.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5677'>#5677</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-70.1.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5512'>#5512</ulink>.</para>
|
||||
<para>[bdubbs] - Update to kmod-34.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5688'>#5688</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gdbm-1.25. Fixes
|
||||
<ulink url='&lfs-ticket-root;5679'>#5679</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to flit_core-3.12.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5683'>#5683</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to expat-2.7.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5685'>#5685</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-06-15</para>
|
||||
<para>2025-03-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.1.0478. Addresses
|
||||
<para>[bdubbs] - Update to vim-9.1.1202. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240607. Addresses
|
||||
<para>[bdubbs] - Update to iana-etc-20250304. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to systemd-256. Fixes
|
||||
<ulink url='&lfs-ticket-root;5504'>#5504</ulink>.</para>
|
||||
<listitem revision='sysv'>
|
||||
<para>[bdubbs] - Update to sysklogd-2.7.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5668'>#5668</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to python3-3.12.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5502'>#5502</ulink>.</para>
|
||||
<para>[bdubbs] - Update to setuptools-76.0.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5665'>#5665</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to perl-5.40.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5503'>#5503</ulink>.</para>
|
||||
<para>[bdubbs] - Update to pkgconf-2.4.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5672'>#5672</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to openssl-3.3.1 (Security fix). Fixes
|
||||
<ulink url='&lfs-ticket-root;5500'>#5500</ulink>.</para>
|
||||
<para>[bdubbs] - Update to man-pages-6.13. Fixes
|
||||
<ulink url='&lfs-ticket-root;5673'>#5673</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.9.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5505'>#5505</ulink>.</para>
|
||||
<para>[bdubbs] - Update to linux-6.13.7. Fixes
|
||||
<ulink url='&lfs-ticket-root;5664'>#5664</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to findutils-4.10.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5499'>#5499</ulink>.</para>
|
||||
<para>[bdubbs] - Update to libcap-2.75. Fixes
|
||||
<ulink url='&lfs-ticket-root;5667'>#5667</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to kmod-34.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5671'>#5671</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to jinja2-3.1.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5670'>#5670</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to expat-2.7.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5675'>#5675</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem revision='systemd'>
|
||||
<para>[bdubbs] - Update to dbus-1.16.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5663'>#5663</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-05-31</para>
|
||||
<para>2025-03-05</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.4.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5498'>#5498</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to xz-5.6.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5471'>#5471</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Add linux-6.9.x compatibility instructions to
|
||||
<phrase revision="systemd">systemd</phrase>
|
||||
<phrase revision="sysv">udev</phrase>.
|
||||
Fixes <ulink url='&lfs-ticket-root;5496'>#5496</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-70.0.0 (python module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5491'>#5491</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to ninja-1.12.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5489'>#5489</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to man-pages-6.8. Fixes
|
||||
<ulink url='&lfs-ticket-root;5494'>#5494</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.9.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5491'>#5491</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to libcap-2.70. Fixes
|
||||
<ulink url='&lfs-ticket-root;5493'>#5493</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iproute2-6.9.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5492'>#5492</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to e2fsprogs-1.47.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5495'>#5495</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-05-13</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Synchronize coreutils i18n patch from Fedora
|
||||
to fix a build failure on 32-bit x86 and an alarming compiler
|
||||
warning on both 32-bit x86 and x86_64 with GCC 14.1 or
|
||||
later.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-05-11</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.1.0405. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to util-linux-2.40.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5482'>#5482</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.8.9. Fixes
|
||||
<ulink url='&lfs-ticket-root;5484'>#5484</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to jinja2-3.1.4 (Python module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5485'>#5485</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240502. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gcc-14.1.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5486'>#5486</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-05-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Add security fix to glibc. Fixes
|
||||
<ulink url='&lfs-ticket-root;5481'>#5481</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.8.8. Fixes
|
||||
<ulink url='&lfs-ticket-root;5480'>#5480</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to ncurses-6.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5483'>#5483</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-04-16</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Make minor change to ifup script output text.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-04-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-69.5.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5478'>#5478</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to python3-3.12.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5476'>#5476</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to openssl-3.3.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5475'>#5475</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to ninja-1.12.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5477'>#5477</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to man-db-2.12.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5474'>#5474</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.8.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5472'>#5472</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240412. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.1.0330. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-03-31</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240318. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to zstd-1.5.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5468'>#5468</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to util-linux-2.40. Fixes
|
||||
<ulink url='&lfs-ticket-root;5430'>#5430</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to shadow-4.15.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5465'>#5465</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to pkgconf-2.2.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5469'>#5469</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.8.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5467'>#5467</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to coreutils-9.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5470'>#5470</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-03-29</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Revert to xz-5.4.6 due to upstream
|
||||
compromise.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem revision='sysv'>
|
||||
<para>2024-03-25</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[timtas] - Update to sysvinit-3.09. Fixes
|
||||
<ulink url="&lfs-ticket-root;5466">#5466</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-03-19</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[renodr] - Update to iproute2-6.8.0. Fixes
|
||||
<ulink url="&lfs-ticket-root;5458">#5458</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[renodr] - Update to man-pages-6.7. Fixes
|
||||
<ulink url="&lfs-ticket-root;5464">#5464</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[renodr] - Update to Linux-6.8.1. Fixes
|
||||
<ulink url="&lfs-ticket-root;5453">#5453</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[renodr] - Added LZ4 to the book. Fixes
|
||||
<ulink url="&lfs-ticket-root;5463">#5463</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-03-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to wheel-0.43.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5459'>#5459</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-69.2.0 (Python module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5462'>#5462</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.4.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5460'>#5460</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to expat-2.6.2 (Security fix). Fixes
|
||||
<ulink url='&lfs-ticket-root;5461'>#5461</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240305. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.1.0161. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to xz-5.6.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5457'>#5457</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to shadow-4.15.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5456'>#5456</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to psmisc-23.7. Fixes
|
||||
<ulink url='&lfs-ticket-root;5454'>#5454</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to kmod-32. Fixes
|
||||
<ulink url='&lfs-ticket-root;5455'>#5455</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to elfutils-0.191. Fixes
|
||||
<ulink url='&lfs-ticket-root;5451'>#5451</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-03-02</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240222. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.1.0145. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to xz-5.6.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5447'>#5447</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to tcl-8.6.14. Fixes
|
||||
<ulink url='&lfs-ticket-root;5448'>#5448</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to shadow-4.14.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5450'>#5450</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-69.1.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5446'>#5446</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.7.7. Fixes
|
||||
<ulink url='&lfs-ticket-root;5444'>#5444</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to libffi-3.4.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5443'>#5443</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gettext-0.22.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5445'>#5445</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to expat-2.6.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5449'>#5449</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-03-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - LFS-12.1 released.</para>
|
||||
<para>[bdubbs] - LFS-12.3 released.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
@ -41,36 +41,33 @@
|
||||
<listitem>
|
||||
<para>Bash-&bash-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Bc-&bc-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Binutils-&binutils-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Bison-&bison-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Bzip2-&bzip2-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Check-&check-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Coreutils-&coreutils-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>DejaGNU-&dejagnu-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem revision="systemd">
|
||||
<listitem revision="systemd">
|
||||
<para>D-Bus-&dbus-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Diffutils-&diffutils-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>E2fsprogs-&e2fsprogs-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Diffutils-&diffutils-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>E2fsprogs-&e2fsprogs-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Expat-&expat-version;</para>
|
||||
</listitem>
|
||||
@ -80,18 +77,18 @@
|
||||
<!--<listitem>
|
||||
<para>File-&file-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Findutils-&findutils-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Flex-&flex-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Flit-core-&flit-core-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Flit-Core-&flit-core-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Gawk-&gawk-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>GCC-&gcc-version;</para>
|
||||
</listitem>
|
||||
@ -101,27 +98,27 @@
|
||||
<listitem>
|
||||
<para>Gettext-&gettext-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Glibc-&glibc-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>GMP-&gmp-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Gperf-&gperf-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Grep-&grep-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Groff-&groff-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>GRUB-&grub-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Gzip-&gzip-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Iana-Etc-&iana-etc-version;</para>
|
||||
</listitem>
|
||||
@ -137,9 +134,9 @@
|
||||
<listitem>
|
||||
<para>Jinja2-&jinja2-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Kbd-&kbd-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Kmod-&kmod-version;</para>
|
||||
</listitem>
|
||||
@ -164,15 +161,18 @@
|
||||
<!--<listitem>
|
||||
<para>Libtool-&libtool-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Libxcrypt-&libxcrypt-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Linux-&linux-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Lz4-&lz4-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>M4-&m4-version;</para>
|
||||
<para>Lz4-&lz4-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>M4-&m4-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Make-&make-version;</para>
|
||||
</listitem>-->
|
||||
@ -191,21 +191,21 @@
|
||||
<!--<listitem>
|
||||
<para>MPC-&mpc-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>MPFR-&mpfr-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Ncurses-&ncurses-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Ninja-&ninja-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>OpenSSL-&openssl-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Patch-&patch-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Perl-&perl-version;</para>
|
||||
</listitem>
|
||||
@ -215,9 +215,9 @@
|
||||
<!--<listitem>
|
||||
<para>Procps-ng-&procps-ng-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Psmisc-&psmisc-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Python-&python-version;</para>
|
||||
</listitem>
|
||||
@ -239,24 +239,24 @@
|
||||
<listitem>
|
||||
<para>Systemd-&systemd-version;</para>
|
||||
</listitem>
|
||||
<listitem revision="sysv">
|
||||
<!--<listitem revision="sysv">
|
||||
<para>SysVinit-&sysvinit-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Tar-&tar-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Tcl-&tcl-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Texinfo-&texinfo-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Tzdata-&tzdata-version;</para>
|
||||
</listitem>-->
|
||||
<listitem revision="sysv">
|
||||
<para>Udev from Systemd-&systemd-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem revision="sysv">
|
||||
<para>Udev from Systemd-&systemd-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Util-linux-&util-linux-version;</para>
|
||||
</listitem>
|
||||
@ -275,9 +275,9 @@
|
||||
<!--<listitem>
|
||||
<para>Zlib-&zlib-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Zstd-&zstd-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
</itemizedlist>
|
||||
|
||||
<!--<itemizedlist>
|
||||
@ -291,22 +291,26 @@
|
||||
|
||||
<itemizedlist>
|
||||
<title>Added:</title>
|
||||
<listitem><para></para></listitem> <!-- satisfy build -->
|
||||
|
||||
<listitem>
|
||||
<para>Lz4-&lz4-version;</para>
|
||||
<para>Packaging-&packaging-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>coreutils-9.7-upstream_fix-1.patch</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>perl-5.40.2-upstream_fix-1.patch</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
<itemizedlist>
|
||||
<title>Removed:</title>
|
||||
<listitem><para></para></listitem> <!-- satisfy build -->
|
||||
<listitem>
|
||||
<para>bash-5.2.21-upstream_fixes-1.patch</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>glibc-2.39-upstream_fix-1.patch</para>
|
||||
<para>Check-0.15.2</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>readline-8.2-upstream_fixes-3.patch</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
</sect1>
|
||||
|
@ -8,7 +8,7 @@
|
||||
<sect1 id="ch-partitioning-aboutlfs">
|
||||
<?dbhtml filename="aboutlfs.html"?>
|
||||
|
||||
<title>Setting The $LFS Variable</title>
|
||||
<title>Setting the $LFS Variable and the Umask</title>
|
||||
|
||||
<para>Throughout this book, the environment variable <envar>LFS</envar> will
|
||||
be used several times. You should ensure that this variable is always defined
|
||||
@ -28,8 +28,24 @@
|
||||
<quote>/mnt/lfs</quote> (or whatever value the variable was set to) when it
|
||||
processes the command line.</para>
|
||||
|
||||
<para>Now set the file mode creation mask (umask) to
|
||||
<literal>022</literal> in case the host distro uses a different
|
||||
default:</para>
|
||||
|
||||
<screen role="nodump"><userinput>umask 022</userinput></screen>
|
||||
|
||||
<para>Setting the umask to 022 ensures that newly created files and
|
||||
directories are only writable by their owner, but are readable and
|
||||
searchable (only for directories) by anyone (assuming default modes are
|
||||
used by the <ulink role='man' url='&man;open.2'>open(2)</ulink> system
|
||||
call, new files will end up with permission mode 644 and directories with
|
||||
mode 755). An overly-permissive default can leave security holes in the
|
||||
LFS system, and an overly-restrictive default can cause strange issues
|
||||
building or using the LFS system.</para>
|
||||
|
||||
<caution>
|
||||
<para>Do not forget to check that <envar>LFS</envar> is set whenever
|
||||
<para>Do not forget to check that <envar>LFS</envar> is set and the
|
||||
umask is set to <literal>022</literal> whenever
|
||||
you leave and reenter the current working environment (such as when doing a
|
||||
<command>su</command> to <systemitem class="username">root</systemitem> or
|
||||
another user). Check that the <envar>LFS</envar> variable is set up
|
||||
@ -39,29 +55,40 @@
|
||||
|
||||
<para>Make sure the output shows the path to your LFS system's build
|
||||
location, which is <filename class="directory">/mnt/lfs</filename> if the
|
||||
provided example was followed. If the output is incorrect, use the command
|
||||
given earlier on this page to set <envar>$LFS</envar> to the correct
|
||||
directory name.</para>
|
||||
</caution>
|
||||
provided example was followed.</para>
|
||||
|
||||
<note><para>One way to ensure that the <envar>LFS</envar> variable is always
|
||||
set is to edit the <filename>.bash_profile</filename> file in both your
|
||||
personal home directory and in <filename>/root/.bash_profile</filename> and
|
||||
enter the export command above. In addition, the shell specified in the
|
||||
<para>Check that the umask is set up properly with:</para>
|
||||
|
||||
<screen role="nodump"><userinput>umask</userinput></screen>
|
||||
|
||||
<para>The output may be <computeroutput>0022</computeroutput> or
|
||||
<computeroutput>022</computeroutput> (the number of leading zeros depends
|
||||
on the host distro).</para>
|
||||
|
||||
<para>If any output of these two commands is incorrect, use the command
|
||||
given earlier on this page to set <envar>$LFS</envar> to the correct
|
||||
directory name and set umask to <literal>022</literal>.</para></caution>
|
||||
|
||||
<note><para>One way to ensure that the <envar>LFS</envar> variable and the
|
||||
umask are always set properly is to edit the
|
||||
<filename>.bash_profile</filename> file in both your personal home
|
||||
directory and in <filename>/root/.bash_profile</filename> and
|
||||
enter the <command>export</command> and <command>umask</command> commands
|
||||
above. In addition, the shell specified in the
|
||||
<filename>/etc/passwd</filename> file for all users that need the
|
||||
<envar>LFS</envar> variable must be bash to ensure that the
|
||||
<filename>/root/.bash_profile</filename> file is incorporated as a part of
|
||||
<filename>.bash_profile</filename> file is incorporated as a part of
|
||||
the login process.</para>
|
||||
|
||||
<para>Another consideration is the method that is used to log into the
|
||||
host system. If logging in through a graphical display manager, the
|
||||
user's <filename>.bash_profile</filename> is not normally used when
|
||||
a virtual terminal is started. In this case, add the export command to
|
||||
a virtual terminal is started. In this case, add the commands to
|
||||
the <filename>.bashrc</filename> file for the user and
|
||||
<systemitem class="username">root</systemitem>. In addition,
|
||||
some distributions use an "if" test, and do not run the remaining <filename>.bashrc</filename>
|
||||
instructions for a non-interactive bash invocation. Be sure to place the
|
||||
export command ahead of the test for non-interactive use.</para>
|
||||
commands ahead of the test for non-interactive use.</para>
|
||||
|
||||
</note>
|
||||
|
||||
|
@ -100,7 +100,7 @@
|
||||
<xref linkend="chapter-building-system"/>, so the workarounds for
|
||||
older kernels are not enabled and the compiled
|
||||
<application>glibc</application> is slightly faster and smaller.
|
||||
As at Feb 2024, &min-kernel; is the oldest kernel release still
|
||||
As at Dec 2024, &min-kernel; is the oldest kernel release still
|
||||
supported by the kernel developers. Some kernel releases older than
|
||||
&min-kernel; may be still supported by third-party teams, but they
|
||||
are not considered official upstream kernel releases; read
|
||||
|
@ -42,6 +42,15 @@ mount -v -t ext4 /dev/<replaceable><yyy></replaceable> $LFS/home</userinpu
|
||||
<replaceable><yyy></replaceable> with the appropriate partition
|
||||
names.</para>
|
||||
|
||||
<para>Set the owner and permission mode of the
|
||||
<filename class='directory'>$LFS</filename> directory (i.e. the root
|
||||
directory in the newly created file system for the LFS system) to
|
||||
&root; and <literal>755</literal> in case the host distro has been
|
||||
configured to use a different default for <command>mkfs</command>:</para>
|
||||
|
||||
<screen role='nodump'><userinput>chown root:root $LFS
|
||||
chmod 755 $LFS</userinput></screen>
|
||||
|
||||
<para>Ensure that this new partition is not mounted with permissions that are
|
||||
too restrictive (such as the <option>nosuid</option> or
|
||||
<option>nodev</option> options). Run the <command>mount</command> command
|
||||
|
@ -68,7 +68,8 @@
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>A few operations, from <quote>Changing Ownership</quote> to
|
||||
<para>A few operations, from <quote>Preparing Virtual Kernel File
|
||||
Systems</quote> to
|
||||
<quote>Entering the Chroot Environment,</quote> must be done as the
|
||||
<systemitem class="username">root</systemitem> user, with the LFS
|
||||
environment variable set for the &root; user.</para>
|
||||
|
@ -22,8 +22,9 @@
|
||||
|
||||
<para>For some packages, the release tarball and the (Git or SVN)
|
||||
repository snapshot tarball for that release may be published with
|
||||
similar file names. A release tarball contains generated files (for
|
||||
example, a <command>configure</command> script generated by
|
||||
similar or even identical file names. But the release tarball may contain
|
||||
some files which are essential despite not stored in the repository
|
||||
(for example, a <command>configure</command> script generated by
|
||||
<command>autoconf</command>), in addition to the contents of the
|
||||
corresponding repository snapshot. The book uses release tarballs
|
||||
whenever possible. Using a repository snapshot instead of a release
|
||||
|
@ -110,15 +110,6 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Check (&check-version;) - <token>&check-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&check-home;"/></para>
|
||||
<para>Download: <ulink url="&check-url;"/></para>
|
||||
<para>MD5 sum: <literal>&check-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Coreutils (&coreutils-version;) - <token>&coreutils-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -597,6 +588,15 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Packaging (&packaging-version;) - <token>&packaging-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&packaging-home;"/></para>
|
||||
<para>Download: <ulink url="&packaging-url;"/></para>
|
||||
<para>MD5 sum: <literal>&packaging-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Patch (&patch-version;) - <token>&patch-size;</token>:</term>
|
||||
<listitem>
|
||||
|
@ -25,22 +25,21 @@
|
||||
<para>MD5 sum: <literal>&autoconf-fixes-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
<!--
|
||||
|
||||
<varlistentry>
|
||||
<term>Bash Upstream Fixes Patch - <token>&bash-upstream-fixes-patch-size;</token>:</term>
|
||||
<term>Bash Cross Compile Fix Patch - <token>&bash-crosscompile-fix-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&bash-upstream-fixes-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&bash-upstream-fixes-patch-md5;</literal></para>
|
||||
<para>Download: <ulink url="&patches-root;&bash-crosscompile-fix-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&bash-crosscompile-fix-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Binutils LTO Fix Patch - <token>&binutils-lto-patch-size;</token>:</term>
|
||||
<term>Binutils Upstream Fixes Patch - <token>&binutils-upstream-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&binutils-lto-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&binutils-lto-patch-md5;</literal></para>
|
||||
<para>Download: <ulink url="&patches-root;&binutils-upstream-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&binutils-upstream-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
@ -52,6 +51,14 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Coreutils Upstream Fix Patch - <token>&coreutils-upstream-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&coreutils-upstream-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&coreutils-upstream-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Coreutils Internationalization Fixes Patch - <token>&coreutils-i18n-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -61,10 +68,10 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Expect GCC14 Patch - <token>&expect-gcc14-patch-size;</token>:</term>
|
||||
<term>Expect GCC15 Patch - <token>&expect-gcc15-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&expect-gcc14-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&expect-gcc14-patch-md5;</literal></para>
|
||||
<para>Download: <ulink url="&patches-root;&expect-gcc15-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&expect-gcc15-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -118,24 +125,25 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
|
||||
<varlistentry>
|
||||
<term>Perl Upstream Fix Patch - <token>&perl-upstream-fix-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&perl-upstream-fix-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&perl-upstream-fix-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Pkgconf Upstream Fix Patch - <token>&pkgconf-upstream-fix-patch-size;</token>:</term>
|
||||
<term>Python Security Fix Patch - <token>&python-security-fixes-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&pkgconf-upstream-fix-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&pkgconf-upstream-fix-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Readline Upstream Fix Patch - <token>&readline-fixes-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&readline-fixes-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&readline-fixes-patch-md5;</literal></para>
|
||||
<para>Download: <ulink url="&patches-root;&python-security-fixes-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&python-security-fixes-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
|
||||
<varlistentry revision="sysv">
|
||||
<term>SysVinit Consolidated Patch - <token>&sysvinit-consolidated-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
|
@ -26,9 +26,9 @@
|
||||
unit of time.</para>
|
||||
|
||||
<para>For example, consider a package whose compilation time is 4.5
|
||||
SBUs. This means that if your system took 10 minutes to compile and
|
||||
SBUs. This means that if your system took 4 minutes to compile and
|
||||
install the first pass of binutils, it will take
|
||||
<emphasis>approximately</emphasis> 45 minutes to build the example package.
|
||||
<emphasis>approximately</emphasis> 18 minutes to build the example package.
|
||||
Fortunately, most build times are shorter than one SBU.</para>
|
||||
|
||||
<para>SBUs are not entirely accurate because they depend on many
|
||||
@ -36,6 +36,36 @@
|
||||
to give an estimate of how long it might take to install a package, but the
|
||||
numbers can vary by as much as dozens of minutes in some cases.</para>
|
||||
|
||||
<para>On some newer systems, the motherboard is capable of controlling
|
||||
the system clock speed. This can be controlled with a command such as
|
||||
<command>powerprofilesctl</command>. This is not available in LFS, but
|
||||
may be available on the host distro. After LFS is complete, it can be
|
||||
added to a system with the procedures at the
|
||||
<ulink url='&blfs-book;sysutils/power-profiles-daemon.html'>
|
||||
BLFS power-profiles-daemon</ulink> page.
|
||||
|
||||
Before measuring the build time of any package it is advisable to use a
|
||||
system power profile set for maximum performance (and maximum power
|
||||
consumption).
|
||||
|
||||
Otherwise the measured SBU value may be inaccurate because the
|
||||
system may react differently when building <xref linkend='ch-tools-binutils-pass1'/>
|
||||
or other packages.
|
||||
|
||||
Be aware that a significant inaccuracy can still show up even if the same
|
||||
profile is used for both packages because the system may respond slower if
|
||||
the system is idle when starting the build procedure. Setting the power
|
||||
profile to <quote>performance</quote> will minimize this problem. And
|
||||
obviously doing so will also make the system build LFS faster.</para>
|
||||
|
||||
<para>If <command>powerprofilesctl</command> is available, issue the
|
||||
<command>powerprofilesctl set performance</command> command to select
|
||||
the <literal>performance</literal> profile. Some distros provides the
|
||||
<command>tuned-adm</command> command for managing the profiles instead of
|
||||
<command>powerprofilesctl</command>, on these distros issue the
|
||||
<command>tuned-adm profile throughput-performance</command> command to
|
||||
select the <literal>throughput-performance</literal> profile.</para>
|
||||
|
||||
<note>
|
||||
<para>When multiple processors are used in this way, the SBU units in the
|
||||
book will vary even more than they normally would. In some cases, the make
|
||||
@ -44,10 +74,11 @@
|
||||
interleaved. If you run into a problem with a build step, revert to a
|
||||
single processor build to properly analyze the error messages.</para>
|
||||
|
||||
<para>The times presented here are based upon using four cores (-j4). The
|
||||
<para>The times presented here for all packages
|
||||
(except <xref linkend='ch-tools-binutils-pass1'/> which is based on one core)
|
||||
are based upon using four cores (-j4). The
|
||||
times in Chapter 8 also include the time to run the regression tests for
|
||||
the package unless specified otherwise.</para>
|
||||
|
||||
</note>
|
||||
|
||||
</sect1>
|
||||
|
@ -20,8 +20,8 @@
|
||||
the installation process. As <systemitem class="username">root</systemitem>,
|
||||
issue the following commands to add the new user:</para>
|
||||
|
||||
<screen><userinput>groupadd lfs
|
||||
useradd -s /bin/bash -g lfs -m -k /dev/null lfs</userinput></screen>
|
||||
<screen><userinput>groupadd &lfs-groupname;
|
||||
useradd -s /bin/bash -g &lfs-groupname; -m -k /dev/null &lfs-username;</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>This is what the command line options mean:</title>
|
||||
@ -74,15 +74,15 @@ useradd -s /bin/bash -g lfs -m -k /dev/null lfs</userinput></screen>
|
||||
have a password), you need to set a password for &lfs-user;. Issue the
|
||||
following command as the &root; user to set the password:</para>
|
||||
|
||||
<screen role="nodump"><userinput>passwd lfs</userinput></screen>
|
||||
<screen role="nodump"><userinput>passwd &lfs-username;</userinput></screen>
|
||||
|
||||
<para>Grant <systemitem class="username">lfs</systemitem> full access to
|
||||
all the directories under <filename class="directory">$LFS</filename> by making
|
||||
<systemitem class="username">lfs</systemitem> the owner:</para>
|
||||
|
||||
<screen><userinput>chown -v lfs $LFS/{usr{,/*},lib,var,etc,bin,sbin,tools}
|
||||
<screen><userinput>chown -v &lfs-username; $LFS/{usr{,/*},var,etc,tools}
|
||||
case $(uname -m) in
|
||||
x86_64) chown -v lfs $LFS/lib64 ;;
|
||||
x86_64) chown -v &lfs-username; $LFS/lib64 ;;
|
||||
esac</userinput></screen>
|
||||
|
||||
<note><para>In some host systems, the following <command>su</command> command does not complete
|
||||
@ -94,7 +94,7 @@ esac</userinput></screen>
|
||||
logging in as &lfs-user; on a virtual console, or with the following
|
||||
substitute/switch user command:</para>
|
||||
|
||||
<screen role="nodump"><userinput>su - lfs</userinput></screen>
|
||||
<screen role="nodump"><userinput>su - &lfs-username;</userinput></screen>
|
||||
|
||||
<para>The <quote><parameter>-</parameter></quote> instructs
|
||||
<command>su</command> to start a login shell as opposed to a non-login shell.
|
||||
|
@ -76,11 +76,8 @@ EOF</userinput></screen>
|
||||
<varlistentry>
|
||||
<term><parameter>umask 022</parameter></term>
|
||||
<listitem>
|
||||
<para>Setting the user file-creation mask (umask) to 022 ensures that newly
|
||||
created files and directories are only writable by their owner, but are
|
||||
readable and executable by anyone (assuming default modes are used by the
|
||||
<ulink role='man' url='&man;open.2'>open(2)</ulink> system call, new files
|
||||
will end up with permission mode 644 and directories with mode 755).</para>
|
||||
<para>Setting the umask as we've already explained in
|
||||
<xref linkend='ch-partitioning-aboutlfs' role='.'/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
@ -5,7 +5,7 @@
|
||||
%general-entities;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-tools-binutils-pass1" role="wrap">
|
||||
<sect1 id="ch-tools-binutils-pass1" role="wrap" xreflabel="binutils-pass1">
|
||||
<?dbhtml filename="binutils-pass1.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
|
@ -90,10 +90,9 @@ cd build</userinput></screen>
|
||||
--prefix=/usr \
|
||||
--host=$LFS_TGT \
|
||||
--build=$(../scripts/config.guess) \
|
||||
--enable-kernel=&min-kernel; \
|
||||
--with-headers=$LFS/usr/include \
|
||||
--disable-nscd \
|
||||
libc_cv_slibdir=/usr/lib</userinput></screen>
|
||||
libc_cv_slibdir=/usr/lib \
|
||||
--enable-kernel=&min-kernel;</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
@ -116,16 +115,6 @@ cd build</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--with-headers=$LFS/usr/include</parameter></term>
|
||||
<listitem>
|
||||
<para>This tells Glibc to compile itself against the headers
|
||||
recently installed to the $LFS/usr/include directory, so that
|
||||
it knows exactly what features the kernel has and can optimize
|
||||
itself accordingly.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>libc_cv_slibdir=/usr/lib</parameter></term>
|
||||
<listitem>
|
||||
@ -187,9 +176,9 @@ cd build</userinput></screen>
|
||||
packages to define the location where the package should be
|
||||
installed. If it is not set, it defaults to the root (<filename
|
||||
class="directory">/</filename>) directory. Here we specify that
|
||||
the package is installed in <filename class="directory">$LFS
|
||||
</filename>, which will become the root directory in <xref linkend=
|
||||
"ch-tools-chroot"/>.</para>
|
||||
the package is installed in <filename class="directory">
|
||||
$LFS</filename>, which will become the root directory in <xref linkend=
|
||||
"ch-tools-chroot" role='.'/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -200,32 +189,98 @@ cd build</userinput></screen>
|
||||
|
||||
<screen><userinput remap="install">sed '/RTLDLIST=/s@/usr@@g' -i $LFS/usr/bin/ldd</userinput></screen>
|
||||
|
||||
<caution>
|
||||
<para>At this point, it is imperative to stop and ensure that the basic
|
||||
functions (compiling and linking) of the new toolchain are working as
|
||||
expected. To perform a sanity check, run the following commands:</para>
|
||||
<para>Now that our cross toolchain is in place, it is important to ensure
|
||||
that compiling and linking will work as expected. We do this by performing
|
||||
some sanity checks:</para>
|
||||
|
||||
<screen><userinput>echo 'int main(){}' | $LFS_TGT-gcc -xc -
|
||||
readelf -l a.out | grep ld-linux</userinput></screen>
|
||||
<screen><userinput>echo 'int main(){}' | $LFS_TGT-gcc -x c - -v -Wl,--verbose &> dummy.log
|
||||
readelf -l a.out | grep ': /lib'</userinput></screen>
|
||||
|
||||
<para>If everything is working correctly, there should be no errors,
|
||||
and the output of the last command will be of the form:</para>
|
||||
<para>There should be no errors,
|
||||
and the output of the last command will be (allowing for
|
||||
platform-specific differences in the dynamic linker name):</para>
|
||||
|
||||
<screen><computeroutput>[Requesting program interpreter: /lib64/ld-linux-x86-64.so.2]</computeroutput></screen>
|
||||
|
||||
<para>Note that for 32-bit machines, the interpreter name will be
|
||||
<filename>/lib/ld-linux.so.2</filename>.</para>
|
||||
<para>Note that this path should not contain
|
||||
<filename class='directory'>/mnt/lfs</filename> (or the value of
|
||||
the <envar>LFS</envar> variable if you used a different one). The path is
|
||||
resolved when the compiled program is executed, and that should only happen
|
||||
after we enter the chroot environment where the kernel would consider
|
||||
<filename class='directory'>$LFS</filename> as the root directory
|
||||
(<filename class='directory'>/</filename>).</para>
|
||||
|
||||
<para>If the output is not as shown above, or there is no output at all,
|
||||
then something is wrong. Investigate and retrace the steps to find out
|
||||
where the problem is and correct it. This issue must be resolved before
|
||||
continuing.</para>
|
||||
<para>Now make sure that we're set up to use the correct start files:</para>
|
||||
|
||||
<para>Once all is well, clean up the test file:</para>
|
||||
<screen><userinput>grep -E -o "$LFS/lib.*/S?crt[1in].*succeeded" dummy.log</userinput></screen>
|
||||
|
||||
<screen><userinput>rm -v a.out</userinput></screen>
|
||||
<para>The output of the last command should be:</para>
|
||||
|
||||
</caution>
|
||||
<screen><computeroutput>/mnt/lfs/lib/../lib/Scrt1.o succeeded
|
||||
/mnt/lfs/lib/../lib/crti.o succeeded
|
||||
/mnt/lfs/lib/../lib/crtn.o succeeded</computeroutput></screen>
|
||||
|
||||
<para>Verify that the compiler is searching for the correct header
|
||||
files:</para>
|
||||
|
||||
<screen><userinput>grep -B3 "^ $LFS/usr/include" dummy.log</userinput></screen>
|
||||
|
||||
<para>This command should return the following output:</para>
|
||||
|
||||
<screen><computeroutput>#include <...> search starts here:
|
||||
/mnt/lfs/tools/lib/gcc/x86_64-lfs-linux-gnu/&gcc-version;/include
|
||||
/mnt/lfs/tools/lib/gcc/x86_64-lfs-linux-gnu/&gcc-version;/include-fixed
|
||||
/mnt/lfs/usr/include</computeroutput></screen>
|
||||
|
||||
<para>Again, the directory named after your target triplet may be
|
||||
different than the above, depending on your system architecture.</para>
|
||||
|
||||
<para>Next, verify that the new linker is being used with the correct search paths:</para>
|
||||
|
||||
<screen><userinput>grep 'SEARCH.*/usr/lib' dummy.log |sed 's|; |\n|g'</userinput></screen>
|
||||
|
||||
<para>References to paths that have components with '-linux-gnu' should
|
||||
be ignored, but otherwise the output of the last command should be:</para>
|
||||
|
||||
<screen><computeroutput>SEARCH_DIR("=/mnt/lfs/tools/x86_64-lfs-linux-gnu/lib64")
|
||||
SEARCH_DIR("=/usr/local/lib64")
|
||||
SEARCH_DIR("=/lib64")
|
||||
SEARCH_DIR("=/usr/lib64")
|
||||
SEARCH_DIR("=/mnt/lfs/tools/x86_64-lfs-linux-gnu/lib")
|
||||
SEARCH_DIR("=/usr/local/lib")
|
||||
SEARCH_DIR("=/lib")
|
||||
SEARCH_DIR("=/usr/lib");</computeroutput></screen>
|
||||
|
||||
<para>A 32-bit system may use a few other directories, but anyway
|
||||
the important facet here is all the paths should begin with an equal sign
|
||||
(<literal>=</literal>), which would be replaced with the sysroot
|
||||
directory that we've configured for the linker.</para>
|
||||
|
||||
<para>Next make sure that we're using the correct libc:</para>
|
||||
|
||||
<screen><userinput>grep "/lib.*/libc.so.6 " dummy.log</userinput></screen>
|
||||
|
||||
<para>The output of the last command should be:</para>
|
||||
|
||||
<screen><computeroutput>attempt to open /mnt/lfs/usr/lib/libc.so.6 succeeded</computeroutput></screen>
|
||||
|
||||
<para>Make sure GCC is using the correct dynamic linker:</para>
|
||||
|
||||
<screen><userinput>grep found dummy.log</userinput></screen>
|
||||
|
||||
<para>The output of the last command should be (allowing for
|
||||
platform-specific differences in dynamic linker name):</para>
|
||||
|
||||
<screen><computeroutput>found ld-linux-x86-64.so.2 at /mnt/lfs/usr/lib/ld-linux-x86-64.so.2</computeroutput></screen>
|
||||
|
||||
<para>If the output does not appear as shown above or is not received
|
||||
at all, then something is seriously wrong. Investigate and retrace the
|
||||
steps to find out where the problem is and correct it. Any
|
||||
issues should be resolved before continuing with the process.</para>
|
||||
|
||||
<para>Once everything is working correctly, clean up the test files:</para>
|
||||
|
||||
<screen><userinput>rm -v a.out dummy.log</userinput></screen>
|
||||
|
||||
<note><para>Building the packages in the next chapter will serve as an
|
||||
additional check that the toolchain has been built properly. If some
|
||||
|
@ -60,13 +60,13 @@ cd build</userinput></screen>
|
||||
|
||||
<para>Prepare Libstdc++ for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">../libstdc++-v3/configure \
|
||||
--host=$LFS_TGT \
|
||||
--build=$(../config.guess) \
|
||||
--prefix=/usr \
|
||||
--disable-multilib \
|
||||
--disable-nls \
|
||||
--disable-libstdcxx-pch \
|
||||
<screen><userinput remap="configure">../libstdc++-v3/configure \
|
||||
--host=$LFS_TGT \
|
||||
--build=$(../config.guess) \
|
||||
--prefix=/usr \
|
||||
--disable-multilib \
|
||||
--disable-nls \
|
||||
--disable-libstdcxx-pch \
|
||||
--with-gxx-include-dir=/tools/$LFS_TGT/include/c++/&gcc-version;</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
|
@ -42,14 +42,17 @@
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Bash</title>
|
||||
<!--
|
||||
<para>First, fix a problem related to cross compilation and gcc-15:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&bash-crosscompile-fix-patch;</userinput></screen>
|
||||
-->
|
||||
<para>Prepare Bash for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--build=$(sh support/config.guess) \
|
||||
--host=$LFS_TGT \
|
||||
--without-bash-malloc \
|
||||
bash_cv_strtold_broken=no</userinput></screen>
|
||||
--without-bash-malloc</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
|
@ -55,7 +55,7 @@
|
||||
produced binaries mistakenly linked against libraries from the host
|
||||
distro. Work around this issue:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed '6009s/$add_dir//' -i ltmain.sh</userinput></screen>
|
||||
<screen><userinput remap="pre">sed '6031s/$add_dir//' -i ltmain.sh</userinput></screen>
|
||||
|
||||
<para>Create a separate build directory again:</para>
|
||||
|
||||
|
@ -47,8 +47,36 @@
|
||||
|
||||
<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>
|
||||
|
@ -83,24 +83,24 @@ cd build</userinput></screen>
|
||||
|
||||
<para>Now prepare GCC for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">../configure \
|
||||
--build=$(../config.guess) \
|
||||
--host=$LFS_TGT \
|
||||
--target=$LFS_TGT \
|
||||
LDFLAGS_FOR_TARGET=-L$PWD/$LFS_TGT/libgcc \
|
||||
--prefix=/usr \
|
||||
--with-build-sysroot=$LFS \
|
||||
--enable-default-pie \
|
||||
--enable-default-ssp \
|
||||
--disable-nls \
|
||||
--disable-multilib \
|
||||
--disable-libatomic \
|
||||
--disable-libgomp \
|
||||
--disable-libquadmath \
|
||||
--disable-libsanitizer \
|
||||
--disable-libssp \
|
||||
--disable-libvtv \
|
||||
--enable-languages=c,c++</userinput></screen>
|
||||
<screen><userinput remap="configure">../configure \
|
||||
--build=$(../config.guess) \
|
||||
--host=$LFS_TGT \
|
||||
--target=$LFS_TGT \
|
||||
--prefix=/usr \
|
||||
--with-build-sysroot=$LFS \
|
||||
--enable-default-pie \
|
||||
--enable-default-ssp \
|
||||
--disable-nls \
|
||||
--disable-multilib \
|
||||
--disable-libatomic \
|
||||
--disable-libgomp \
|
||||
--disable-libquadmath \
|
||||
--disable-libsanitizer \
|
||||
--disable-libssp \
|
||||
--disable-libvtv \
|
||||
--enable-languages=c,c++ \
|
||||
LDFLAGS_FOR_TARGET=-L$PWD/$LFS_TGT/libgcc</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the new configure options:</title><!-- WIP -->
|
||||
@ -138,10 +138,11 @@ cd build</userinput></screen>
|
||||
<term><parameter>LDFLAGS_FOR_TARGET=...</parameter></term>
|
||||
<listitem>
|
||||
<para>Allow <filename class="libraryfile">libstdc++</filename> to
|
||||
use the shared <filename class="libraryfile">libgcc</filename> being
|
||||
built in this pass, instead of the static version that was built in GCC
|
||||
pass 1. This is necessary to support C++ exception
|
||||
handling.</para>
|
||||
use the <filename class="libraryfile">libgcc</filename> being
|
||||
built in this pass, instead of the previous version built in
|
||||
<xref linkend='ch-tools-gcc-pass1'/>. The previous version cannot
|
||||
properly support C++ exception handling because it was built
|
||||
without libc support.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
@ -45,23 +45,9 @@
|
||||
<para>Prepare Make for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--without-guile \
|
||||
--host=$LFS_TGT \
|
||||
--build=$(build-aux/config.guess)</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the new configure option:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--without-guile</parameter></term>
|
||||
<listitem>
|
||||
<para>Although we are cross-compiling, configure tries to use
|
||||
guile from the build host if it finds it. This makes compilation
|
||||
fail, so this switch prevents using it.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
@ -43,18 +43,17 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Ncurses</title>
|
||||
|
||||
<para>First, ensure that <command>gawk</command> is found first during configuration:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i s/mawk// configure</userinput></screen>
|
||||
|
||||
<para>Then, run the following commands to build the <quote>tic</quote>
|
||||
program on the build host:</para>
|
||||
<para>First, run the following commands to build the <quote>tic</quote>
|
||||
program on the build host. We install it in
|
||||
<filename class="directory">$LFS/tools</filename>, so that it is found
|
||||
in the <envar>PATH</envar> when needed:</para>
|
||||
|
||||
<screen><userinput remap="pre">mkdir build
|
||||
pushd build
|
||||
../configure
|
||||
../configure --prefix=$LFS/tools AWK=gawk
|
||||
make -C include
|
||||
make -C progs tic
|
||||
install progs/tic $LFS/tools/bin
|
||||
popd</userinput></screen>
|
||||
|
||||
<para>Prepare Ncurses for compilation:</para>
|
||||
@ -69,7 +68,8 @@ popd</userinput></screen>
|
||||
--with-cxx-shared \
|
||||
--without-debug \
|
||||
--without-ada \
|
||||
--disable-stripping</userinput></screen>
|
||||
--disable-stripping \
|
||||
AWK=gawk</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the new configure options:</title>
|
||||
@ -131,21 +131,17 @@ popd</userinput></screen>
|
||||
Using host tools on cross-compiled programs can cause failure.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<!-- this is the default >= 6.5
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>- -enable-widec</parameter></term>
|
||||
<term><parameter>AWK=gawk</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch causes wide-character libraries (e.g., <filename
|
||||
class="libraryfile">libncursesw.so.&ncurses-version;</filename>)
|
||||
to be built instead of normal ones (e.g., <filename
|
||||
class="libraryfile">libncurses.so.&ncurses-version;</filename>).
|
||||
These wide-character libraries are usable in both multibyte and
|
||||
traditional 8-bit locales, while normal libraries work properly
|
||||
only in 8-bit locales. Wide-character and normal libraries are
|
||||
source-compatible, but not binary-compatible.</para>
|
||||
<para>This switch prevents the building system from using the
|
||||
<command>mawk</command> program from the host.
|
||||
Some<!-- FIXME vauge --> versions of <command>mawk</command> can
|
||||
cause this package to fail to build. <!-- It seems happened in 2015,
|
||||
is there any updated into? --></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
@ -154,28 +150,14 @@ popd</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install
|
||||
<screen><userinput remap="install">make DESTDIR=$LFS install
|
||||
ln -sv libncursesw.so $LFS/usr/lib/libncurses.so
|
||||
sed -e 's/^#if.*XOPEN.*$/#if 1/' \
|
||||
-i $LFS/usr/include/curses.h</userinput></screen>
|
||||
<!--
|
||||
<para>Remove an unneeded static library not handled by
|
||||
<command>configure</command>:</para>
|
||||
|
||||
<screen><userinput remap="install">rm -v $LFS/usr/lib/libncurses++w.a</userinput></screen>
|
||||
-->
|
||||
<variablelist>
|
||||
<title>The meaning of the install options:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>TIC_PATH=$(pwd)/build/progs/tic</parameter></term>
|
||||
<listitem>
|
||||
<para>We need to pass the path of the newly built
|
||||
<command>tic</command> program that runs on the building machine, so
|
||||
the terminal database can be created without errors.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>ln -sv libncursesw.so $LFS/usr/lib/libncurses.so</command></term>
|
||||
<listitem>
|
||||
|
@ -45,8 +45,8 @@
|
||||
|
||||
<para>Prepare Tar for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--host=$LFS_TGT \
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--host=$LFS_TGT \
|
||||
--build=$(build-aux/config.guess)</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
@ -33,9 +33,9 @@
|
||||
user <systemitem class="username">root</systemitem> by running the following
|
||||
command:</para>
|
||||
|
||||
<screen><userinput>chown --from lfs -R root:root $LFS/{usr,lib,var,etc,bin,sbin,tools}
|
||||
<screen><userinput>chown --from &lfs-username; -R root:root $LFS/{usr,var,etc,tools}
|
||||
case $(uname -m) in
|
||||
x86_64) chown --from lfs -R root:root $LFS/lib64 ;;
|
||||
x86_64) chown --from &lfs-username; -R root:root $LFS/lib64 ;;
|
||||
esac</userinput></screen>
|
||||
|
||||
</sect1>
|
||||
|
@ -180,11 +180,11 @@ EOF</userinput></screen>
|
||||
<systemitem class="groupname">nogroup</systemitem> to avoid an
|
||||
unnamed ID. But other distros may treat this ID differently, so any
|
||||
portable program should not depend on this assignment.</para>
|
||||
|
||||
<!--
|
||||
<para>Some packages need a locale.</para>
|
||||
|
||||
<screen><userinput>localedef -i C -f UTF-8 C.UTF-8</userinput></screen>
|
||||
|
||||
-->
|
||||
<para>Some tests in <xref linkend="chapter-building-system"/> need a regular
|
||||
user. We add this user here and delete this account at the end of that
|
||||
chapter.</para>
|
||||
|
@ -52,9 +52,10 @@
|
||||
|
||||
<para>Prepare Python for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--enable-shared \
|
||||
--without-ensurepip</userinput></screen>
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--enable-shared \
|
||||
--without-ensurepip \
|
||||
--without-static-libpython</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure option:</title>
|
||||
@ -74,6 +75,13 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--without-static-libpython</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch prevents building a large, but unneeded, static
|
||||
library.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
@ -44,8 +44,8 @@
|
||||
|
||||
<para>Prepare Acl for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--disable-static \
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--disable-static \
|
||||
--docdir=/usr/share/doc/acl-&acl-version;</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
@ -53,10 +53,13 @@
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>The Acl tests must be run on a filesystem that supports access
|
||||
controls, but not until the <application>Coreutils</application> package has been built,
|
||||
using the <application>Acl</application> libraries. If desired, return to this package
|
||||
and run <command>make check</command> after the <application>Coreutils</application>
|
||||
package has been built.</para>
|
||||
controls. To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<para>One test named <filename>test/cp.test</filename> is known to
|
||||
fail because <application>Coreutils</application> is not built with
|
||||
the <application>Acl</application> support yet.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -45,7 +45,6 @@
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--without-bash-malloc \
|
||||
--with-installed-readline \
|
||||
bash_cv_strtold_broken=no \
|
||||
--docdir=/usr/share/doc/bash-&bash-version;</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
|
@ -43,15 +43,15 @@
|
||||
|
||||
<para>Prepare Bc for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">CC=gcc ./configure --prefix=/usr -G -O3 -r</userinput></screen>
|
||||
<screen><userinput remap="configure">CC='gcc -std=c99' ./configure --prefix=/usr -G -O3 -r</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>CC=gcc</parameter></term>
|
||||
<term><parameter>CC=gcc -std=c99</parameter></term>
|
||||
<listitem>
|
||||
<para>This parameter specifies the compiler to use.</para>
|
||||
<para>This parameter specifies the compiler and C standard to use.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
@ -51,7 +51,6 @@ cd build</userinput></screen>
|
||||
|
||||
<screen><userinput remap="configure">../configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--enable-gold \
|
||||
--enable-ld=default \
|
||||
--enable-plugins \
|
||||
--enable-shared \
|
||||
@ -64,14 +63,6 @@ cd build</userinput></screen>
|
||||
<variablelist>
|
||||
<title>The meaning of the new configure parameters:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-gold</parameter></term>
|
||||
<listitem>
|
||||
<para>Build the gold linker and install it as ld.gold (alongside the
|
||||
default linker).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-ld=default</parameter></term>
|
||||
<listitem>
|
||||
@ -136,19 +127,14 @@ cd build</userinput></screen>
|
||||
|
||||
<screen><userinput remap="test">grep '^FAIL:' $(find -name '*.log')</userinput></screen>
|
||||
|
||||
<para>Twelve tests fail in the gold test suite when the
|
||||
<option>--enable-default-pie</option> and
|
||||
<option>--enable-default-ssp</option> options are passed to GCC.</para>
|
||||
|
||||
<!-- <para>Three tests in the gprofng suite are also known to fail.</para>-->
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make tooldir=/usr install</userinput></screen>
|
||||
|
||||
<para>Remove useless static libraries:</para>
|
||||
<para>Remove useless static libraries and other files:</para>
|
||||
|
||||
<screen><userinput remap="install">rm -fv /usr/lib/lib{bfd,ctf,ctf-nobfd,gprofng,opcodes,sframe}.a</userinput></screen>
|
||||
<screen><userinput remap="install">rm -rfv /usr/lib/lib{bfd,ctf,ctf-nobfd,gprofng,opcodes,sframe}.a \
|
||||
/usr/share/doc/gprofng/</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -161,7 +147,7 @@ cd build</userinput></screen>
|
||||
<segtitle>Installed directory</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>addr2line, ar, as, c++filt, dwp, elfedit, gprof, gprofng, ld, ld.bfd, ld.gold, nm,
|
||||
<seg>addr2line, ar, as, c++filt, dwp, elfedit, gprof, gprofng, ld, ld.bfd, nm,
|
||||
objcopy, objdump, ranlib, readelf, size, strings, and strip</seg>
|
||||
<seg>libbfd.so, libctf.so, libctf-nobfd.so, libgprofng.so,
|
||||
libopcodes.so, and libsframe.so</seg>
|
||||
@ -271,17 +257,6 @@ cd build</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="ld.gold">
|
||||
<term><command>ld.gold</command></term>
|
||||
<listitem>
|
||||
<para>A cut down version of ld that only supports the
|
||||
elf object file format</para>
|
||||
<indexterm zone="ch-system-binutils ld.gold">
|
||||
<primary sortas="b-ld.gold">ld.gold</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="ld.bfd">
|
||||
<term><command>ld.bfd</command></term>
|
||||
<listitem>
|
||||
|
@ -48,7 +48,7 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>To test the results (about 5.5 SBU), issue:</para>
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
|
@ -60,17 +60,17 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="autoconf.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="automake.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="openssl.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="kmod.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libelf.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libffi.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="python.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="flit-core.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="packaging.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="wheel.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="setuptools.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ninja.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="meson.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="kmod.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="coreutils.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="check.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="diffutils.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gawk.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="findutils.xml"/>
|
||||
|
@ -1,109 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-system-check" role="wrap">
|
||||
<?dbhtml filename="check.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
<productname>check</productname>
|
||||
<productnumber>&check-version;</productnumber>
|
||||
<address>&check-url;</address>
|
||||
</sect1info>
|
||||
|
||||
<title>Check-&check-version;</title>
|
||||
|
||||
<indexterm zone="ch-system-check">
|
||||
<primary sortas="a-Check">Check</primary>
|
||||
</indexterm>
|
||||
|
||||
<sect2 role="package">
|
||||
<title/>
|
||||
|
||||
<para>Check is a unit testing framework for C.</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>&check-fin-sbu;</seg>
|
||||
<seg>&check-fin-du;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Check</title>
|
||||
|
||||
<para>Prepare Check for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr --disable-static</userinput></screen>
|
||||
|
||||
<para>Build the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Compilation is now complete. To run the Check test suite, issue the
|
||||
following command:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<!-- <para>Note that the Check test suite may take a relatively long
|
||||
(up to 4 SBU) time.</para>
|
||||
-->
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make docdir=/usr/share/doc/check-&check-version; install</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-check" role="content">
|
||||
<title>Contents of Check</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed program</segtitle>
|
||||
<segtitle>Installed library</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>checkmk</seg>
|
||||
<seg>libcheck.so</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist>
|
||||
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
<varlistentry id="checkmk">
|
||||
<term><command>checkmk</command></term>
|
||||
<listitem>
|
||||
<para>Awk script for generating C unit tests for use with the Check
|
||||
unit testing framework</para>
|
||||
<indexterm zone="ch-system-check checkmk">
|
||||
<primary sortas="b-checmk">checkmk</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libcheck">
|
||||
<term><filename class="libraryfile">libcheck.so</filename></term>
|
||||
<listitem>
|
||||
<para>Contains functions that allow Check to be called from a test
|
||||
program</para>
|
||||
<indexterm zone="ch-system-check libcheck">
|
||||
<primary sortas="c-libcheck">libcheck</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
@ -41,6 +41,10 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Coreutils</title>
|
||||
|
||||
<para>First, apply a patch for a security problem identified upstream:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&coreutils-upstream-patch;</userinput></screen>
|
||||
|
||||
<para>POSIX requires that programs from Coreutils recognize character
|
||||
boundaries correctly even in multibyte locales. The following patch fixes
|
||||
this non-compliance and other internationalization-related bugs.</para>
|
||||
@ -55,20 +59,35 @@
|
||||
|
||||
<para>Now prepare Coreutils for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">autoreconf -fiv
|
||||
<screen><userinput remap="configure">autoreconf -fv
|
||||
automake -af
|
||||
FORCE_UNSAFE_CONFIGURE=1 ./configure \
|
||||
--prefix=/usr \
|
||||
--enable-no-install-program=kill,uptime</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
<title>The meaning of the commands and configure options:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>autoreconf</command></term>
|
||||
<term><command>autoreconf -fv</command></term>
|
||||
<listitem>
|
||||
<para>The patch for internationalization has modified the
|
||||
build system, so the configuration files must
|
||||
be regenerated.</para>
|
||||
be regenerated. Normally we would use the
|
||||
<parameter>-i</parameter> option to update the standard
|
||||
auxiliary files, but for this package it does not work because
|
||||
<filename>configure.ac</filename> specified an old gettext
|
||||
version.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>automake -af</command></term>
|
||||
<listitem>
|
||||
<para>The automake auxiliary files were not updated by
|
||||
<command>autoreconf</command> due to the missing
|
||||
<parameter>-i</parameter> option. This command updates them
|
||||
to prevent a build failure.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -134,12 +153,6 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \
|
||||
|
||||
<screen><userinput remap="test">groupdel dummy</userinput></screen>
|
||||
|
||||
<para>
|
||||
Two tests, <filename>tests/cp/preserve-mode.sh</filename> and
|
||||
<filename>tests/mv/acl.sh</filename>, are known to
|
||||
fail in the chroot environment, but pass in a complete system.
|
||||
</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
@ -48,41 +48,21 @@
|
||||
|
||||
<para>Prepare D-Bus for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--localstatedir=/var \
|
||||
--runstatedir=/run \
|
||||
--enable-user-session \
|
||||
--disable-static \
|
||||
--disable-doxygen-docs \
|
||||
--disable-xml-docs \
|
||||
--docdir=/usr/share/doc/dbus-&dbus-version; \
|
||||
--with-system-socket=/run/dbus/system_bus_socket</userinput></screen>
|
||||
<screen><userinput remap="configure">mkdir build
|
||||
cd build
|
||||
|
||||
meson setup --prefix=/usr --buildtype=release --wrap-mode=nofallback ..</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
<title>The meaning of the meson options:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>--runstatedir=/run</parameter> and
|
||||
<parameter>--with-system-socket=/run/dbus/system_bus_socket</parameter>
|
||||
<parameter>--wrap-mode=nofallback</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>These cause the PID file and the system bus socket
|
||||
to be in <filename class="directory">/run</filename>, instead of
|
||||
the deprecated <filename class="directory">/var/run</filename>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>--enable-user-session</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>This ensures the D-Bus per-user service and socket unit
|
||||
files are installed for Systemd. They are not useful (but
|
||||
harmless) in a base LFS installation, however they can be used
|
||||
once systemd is rebuilt with PAM support in BLFS.</para>
|
||||
<para>This switch prevents meson from attempting to download a copy
|
||||
of the Glib package for the tests.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -90,11 +70,11 @@
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
<screen><userinput remap="make">ninja</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
<screen><userinput remap="test">ninja test</userinput></screen>
|
||||
|
||||
<para>Many tests are disabled because they require additional
|
||||
packages that are not included in LFS. Instructions for running the
|
||||
@ -103,7 +83,7 @@
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
<screen><userinput remap="install">ninja install</userinput></screen>
|
||||
|
||||
<para>Create a symlink so that D-Bus and systemd can use the same
|
||||
<filename>machine-id</filename> file:</para>
|
||||
@ -149,7 +129,7 @@
|
||||
<varlistentry id="dbus-daemon">
|
||||
<term><command>dbus-daemon</command></term>
|
||||
<listitem>
|
||||
<para>Is the D-Bus message bus daemon</para>
|
||||
<para>is the D-Bus message bus daemon</para>
|
||||
<indexterm zone="ch-system-dbus dbus-daemon">
|
||||
<primary sortas="b-dbus-daemon">dbus-daemon</primary>
|
||||
</indexterm>
|
||||
@ -159,7 +139,7 @@
|
||||
<varlistentry id="dbus-launch">
|
||||
<term><command>dbus-launch</command></term>
|
||||
<listitem>
|
||||
<para>Starts <command>dbus-daemon</command> from a shell
|
||||
<para>starts <command>dbus-daemon</command> from a shell
|
||||
script</para>
|
||||
<indexterm zone="ch-system-dbus dbus-launch">
|
||||
<primary sortas="b-dbus-launch">dbus-launch</primary>
|
||||
@ -170,7 +150,7 @@
|
||||
<varlistentry id="dbus-monitor">
|
||||
<term><command>dbus-monitor</command></term>
|
||||
<listitem>
|
||||
<para>Monitors messages passing through a D-Bus message bus</para>
|
||||
<para>monitors messages passing through a D-Bus message bus</para>
|
||||
<indexterm zone="ch-system-dbus dbus-monitor">
|
||||
<primary sortas="b-dbus-monitor">dbus-monitor</primary>
|
||||
</indexterm>
|
||||
@ -180,7 +160,7 @@
|
||||
<varlistentry id="dbus-run-session">
|
||||
<term><command>dbus-run-session</command></term>
|
||||
<listitem>
|
||||
<para>Starts a session bus instance of <command>dbus-daemon</command>
|
||||
<para>starts a session bus instance of <command>dbus-daemon</command>
|
||||
from a shell script and starts a specified program in that
|
||||
session</para>
|
||||
<indexterm zone="ch-system-dbus dbus-run-session">
|
||||
@ -192,7 +172,7 @@
|
||||
<varlistentry id="dbus-send">
|
||||
<term><command>dbus-send</command></term>
|
||||
<listitem>
|
||||
<para>Sends a message to a D-Bus message bus</para>
|
||||
<para>sends a message to a D-Bus message bus</para>
|
||||
<indexterm zone="ch-system-dbus dbus-send">
|
||||
<primary sortas="b-dbus-send">dbus-send</primary>
|
||||
</indexterm>
|
||||
@ -202,7 +182,7 @@
|
||||
<varlistentry id="dbus-test-tool">
|
||||
<term><command>dbus-test-tool</command></term>
|
||||
<listitem>
|
||||
<para>Is a tool to help packages test
|
||||
<para>is a tool to help packages test
|
||||
<application>D-Bus</application></para>
|
||||
<indexterm zone="ch-system-dbus dbus-test-tool">
|
||||
<primary sortas="b-dbus-test-tool">dbus-test-tool</primary>
|
||||
@ -214,7 +194,7 @@
|
||||
<varlistentry id="dbus-update-activation-environment">
|
||||
<term><command>dbus-update-activation-environment</command></term>
|
||||
<listitem>
|
||||
<para>Updates environment variables that will be set for
|
||||
<para>updates environment variables that will be set for
|
||||
<application>D-Bus</application> session services</para>
|
||||
<indexterm zone="ch-system-dbus dbus-update-activation-environment">
|
||||
<primary sortas="b-dbus-update-activation-environment">dbus-update-activation-environment</primary>
|
||||
|
@ -52,12 +52,12 @@ cd build</userinput></screen>
|
||||
|
||||
<para>Prepare E2fsprogs for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">../configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--enable-elf-shlibs \
|
||||
--disable-libblkid \
|
||||
--disable-libuuid \
|
||||
--disable-uuidd \
|
||||
<screen><userinput remap="configure">../configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--enable-elf-shlibs \
|
||||
--disable-libblkid \
|
||||
--disable-libuuid \
|
||||
--disable-uuidd \
|
||||
--disable-fsck</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
@ -93,9 +93,12 @@ cd build</userinput></screen>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<!-- https://github.com/tytso/e2fsprogs/issues/134 -->
|
||||
<!-- https://github.com/tytso/e2fsprogs/issues/134
|
||||
https://github.com/tytso/e2fsprogs/issues/158 -->
|
||||
<para>One test named <filename>m_assume_storage_prezeroed</filename>
|
||||
is known to fail.</para>
|
||||
is known to fail. Another test named <filename>m_rootdir_acl</filename>
|
||||
is known to fail if the file system used for the LFS system is not
|
||||
<systemitem class='filesystem'>ext4</systemitem>.</para>
|
||||
|
||||
<!-- This is a ridiculous amount now! And is it still true?
|
||||
Does not appear to be true for version 1.46.3. Time with tests
|
||||
@ -146,7 +149,7 @@ install-info --dir-file=/usr/share/info/dir /usr/share/info/com_err.info</userin
|
||||
<para>
|
||||
<filename>/etc/mke2fs.conf</filename> contains the default value of
|
||||
various command line options of <command>mke2fs</command>. You may
|
||||
edit the file to make the default values suitable for your need.
|
||||
edit the file to make the default values suitable for your needs.
|
||||
For example, some utilities (not in LFS or BLFS) cannot recognize a
|
||||
<systemitem class='filesystem'>ext4</systemitem> file system with
|
||||
<literal>metadata_csum_seed</literal> feature enabled.
|
||||
|
@ -67,9 +67,9 @@
|
||||
GDBM, and of course Expect itself) will fail catastrophically, and other
|
||||
subtle breakages may also happen.</para>
|
||||
|
||||
<para>Now, make some changes to allow the package with gcc-14.1 or later:</para>
|
||||
<para>Now, make some changes to allow the package with gcc-15.1 or later:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../expect-&expect-version;-gcc14-1.patch</userinput></screen>
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&expect-gcc15-patch;</userinput></screen>
|
||||
|
||||
<para>Prepare Expect for compilation:</para>
|
||||
|
||||
|
@ -61,7 +61,7 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>To test the results (about 0.5 SBU), issue:</para>
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
|
@ -42,11 +42,11 @@
|
||||
|
||||
<para>Build the package:</para>
|
||||
|
||||
<screen><userinput remap="install">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
|
||||
<screen><userinput remap="make">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">pip3 install --no-index --no-user --find-links dist flit_core</userinput></screen>
|
||||
<screen><userinput remap="install">pip3 install --no-index --find-links dist flit_core</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the pip3 configuration options and commands:</title>
|
||||
|
@ -84,8 +84,7 @@ make install</userinput></screen>
|
||||
|
||||
<para>If desired, install the documentation:</para>
|
||||
|
||||
<screen><userinput remap="install">mkdir -pv /usr/share/doc/gawk-&gawk-version;
|
||||
cp -v doc/{awkforai.txt,*.{eps,pdf,jpg}} /usr/share/doc/gawk-&gawk-version;</userinput></screen>
|
||||
<screen><userinput remap="install">install -vDm644 doc/{awkforai.txt,*.{eps,pdf,jpg}} -t /usr/share/doc/gawk-&gawk-version;</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -139,10 +139,16 @@ cd build</userinput></screen>
|
||||
command below, where x is the number of CPU cores on your system.</para>
|
||||
</important>
|
||||
|
||||
<para>One set of tests in the GCC test suite is known to exhaust the default
|
||||
stack, so increase the stack size prior to running the tests:</para>
|
||||
<para>GCC may need more stack space compiling some extremely complex
|
||||
code patterns. As a precaution for the host distros with a tight stack
|
||||
limit, explicitly set the stack size hard limit to infinite.
|
||||
On most host distros (and the final LFS system) the hard limit is
|
||||
infinite by default, but there is no harm done by setting it explicitly.
|
||||
It's not necessary to change the stack size soft limit because GCC will
|
||||
automatically set it to an appropriate value, as long as the value does
|
||||
not exceed the hard limit:</para>
|
||||
|
||||
<screen><userinput remap="test">ulimit -s 32768</userinput></screen>
|
||||
<screen><userinput remap="test">ulimit -s -H unlimited</userinput></screen>
|
||||
|
||||
<para>Now remove/fix several known test failures:</para>
|
||||
|
||||
@ -167,26 +173,15 @@ su tester -c "PATH=$PATH make -k check"</userinput></screen>
|
||||
<para>Results can be compared with those located at <ulink
|
||||
url="&test-results;"/> and
|
||||
<ulink url="https://gcc.gnu.org/ml/gcc-testresults/"/>.</para>
|
||||
<!--
|
||||
<para>
|
||||
Eight gcc tests (out of over 185,000):
|
||||
<!- - https://gcc.gnu.org/PR106375 - -><filename>pr56837.c</filename>
|
||||
and seven tests in the <filename class='directory'>analyzer</filename>
|
||||
directory are known to fail.
|
||||
|
||||
<!- - https://gcc.gnu.org/PR109353 - ->
|
||||
One libstdc++ test (out of over 15000), <filename>copy.cc</filename>, is
|
||||
known to fail.
|
||||
<!-- https://github.com/google/sanitizers/issues/1716
|
||||
Affecting any host distro with a large vm.mmap_rnd_bits.
|
||||
The fix is https://github.com/llvm/llvm-project/commit/0784b1eefa36
|
||||
but it's not in GCC 14. TODO retry with
|
||||
sudo sysctl vm.mmap_rnd_bits=32
|
||||
on the host distro when we update to GCC 15. -->
|
||||
<para>The tsan tests are known to fail on some host distros.</para>
|
||||
|
||||
For g++, 21 tests (out of approximately 250,000): 14
|
||||
<quote>AddressSanitizer*</quote>
|
||||
tests and 7 <filename>interception-malloc-test-1.C</filename> tests, are
|
||||
known to fail.
|
||||
|
||||
Additionally, several tests in the
|
||||
<filename class='directory'>vect</filename> directory are known to fail
|
||||
if the hardware does not support AVX.</para>
|
||||
-->
|
||||
<para>A few unexpected failures cannot always be avoided. In some cases
|
||||
test failures depend on the specific hardware of the system.<!--The GCC developers
|
||||
are usually aware of these issues, but have not resolved them yet.-->
|
||||
@ -228,8 +223,7 @@ su tester -c "PATH=$PATH make -k check"</userinput></screen>
|
||||
that compiling and linking will work as expected. We do this by performing
|
||||
some sanity checks:</para>
|
||||
|
||||
<screen><userinput>echo 'int main(){}' > dummy.c
|
||||
cc dummy.c -v -Wl,--verbose &> dummy.log
|
||||
<screen><userinput>echo 'int main(){}' | cc -x c - -v -Wl,--verbose &> dummy.log
|
||||
readelf -l a.out | grep ': /lib'</userinput></screen>
|
||||
|
||||
<para>There should be no errors,
|
||||
@ -324,7 +318,7 @@ SEARCH_DIR("/usr/lib");</computeroutput></screen>
|
||||
|
||||
<para>Once everything is working correctly, clean up the test files:</para>
|
||||
|
||||
<screen><userinput>rm -v dummy.c a.out dummy.log</userinput></screen>
|
||||
<screen><userinput>rm -v a.out dummy.log</userinput></screen>
|
||||
|
||||
<para>Finally, move a misplaced file:</para>
|
||||
|
||||
|
@ -42,7 +42,15 @@
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Gettext</title>
|
||||
<!--
|
||||
<para>At first, fix an issue causing the package fail to build with
|
||||
libxml-2.12 or later. The fix is optional for building LFS, but
|
||||
required if rebuilding this package in BLFS with libxml
|
||||
installed:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -e '/^structured/s/xmlError \*/typeof(xmlCtxtGetLastError(NULL)) /' \
|
||||
-i gettext-tools/src/its.c</userinput></screen>
|
||||
-->
|
||||
<para>Prepare Gettext for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
@ -69,8 +77,7 @@
|
||||
|
||||
</variablelist>
|
||||
-->
|
||||
<para>To test the results (this takes a long time, around 3 SBUs),
|
||||
issue:</para>
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
|
@ -68,12 +68,12 @@ cd build</userinput></screen>
|
||||
|
||||
<para>Prepare Glibc for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">../configure --prefix=/usr \
|
||||
--disable-werror \
|
||||
--enable-kernel=&min-kernel; \
|
||||
--enable-stack-protector=strong \
|
||||
--disable-nscd \
|
||||
libc_cv_slibdir=/usr/lib</userinput></screen>
|
||||
<screen><userinput remap="configure">../configure --prefix=/usr \
|
||||
--disable-werror \
|
||||
--disable-nscd \
|
||||
libc_cv_slibdir=/usr/lib \
|
||||
--enable-stack-protector=strong \
|
||||
--enable-kernel=&min-kernel;</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
@ -152,7 +152,7 @@ esac</userinput></screen>
|
||||
|
||||
<para>You may see some test failures. The Glibc test suite is
|
||||
somewhat dependent on the host system. A few failures out of
|
||||
over 5000 tests can generally be ignored. This is a list of the
|
||||
over 6000 tests can generally be ignored. This is a list of the
|
||||
most common issues seen for recent versions of LFS:</para>
|
||||
|
||||
<itemizedlist>
|
||||
@ -317,6 +317,20 @@ install -vm755 dest/usr/lib/*.so.* /usr/lib</userinput></screen>
|
||||
the locales. Once they are finished, reboot the system
|
||||
immediately.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
When the system has successfully rebooted, if you are running
|
||||
a LFS system prior to 12.0 (exclusive) where GCC was not built
|
||||
with the <parameter>--disable-fixincludes</parameter> option,
|
||||
move two GCC headers into a better location and
|
||||
remove the stale <quote>fixed</quote> copies of the Glibc headers:
|
||||
</para>
|
||||
|
||||
<screen role='nodump'><userinput>DIR=$(dirname $(gcc -print-libgcc-file-name))
|
||||
[ -e $DIR/include/limits.h ] || mv $DIR/include{-fixed,}/limits.h
|
||||
[ -e $DIR/include/syslimits.h ] || mv $DIR/include{-fixed,}/syslimits.h
|
||||
rm -rfv $DIR/include-fixed/*
|
||||
unset DIR</userinput></screen>
|
||||
</important>
|
||||
|
||||
<para>Install the package:</para>
|
||||
@ -380,7 +394,6 @@ localedef -i it_IT -f ISO-8859-1 it_IT
|
||||
localedef -i it_IT -f ISO-8859-15 it_IT@euro
|
||||
localedef -i it_IT -f UTF-8 it_IT.UTF-8
|
||||
localedef -i ja_JP -f EUC-JP ja_JP
|
||||
localedef -i ja_JP -f SHIFT_JIS ja_JP.SJIS 2> /dev/null || true
|
||||
localedef -i ja_JP -f UTF-8 ja_JP.UTF-8
|
||||
localedef -i nl_NL@euro -f ISO-8859-15 nl_NL@euro
|
||||
localedef -i ru_RU -f KOI8-R ru_RU.KOI8-R
|
||||
@ -402,15 +415,6 @@ localedef -i zh_TW -f UTF-8 zh_TW.UTF-8</userinput></screen>
|
||||
|
||||
<screen><userinput remap="locale-full">make localedata/install-locales</userinput></screen>
|
||||
|
||||
<para>Then use the <command>localedef</command> command to create and
|
||||
install locales not listed in the
|
||||
<filename>glibc-&glibc-version;/localedata/SUPPORTED</filename> file
|
||||
when you need them. For instance, the following two locales are
|
||||
needed for some tests later in this chapter:</para>
|
||||
|
||||
<screen role="nodump"><userinput remap="locale-full">localedef -i C -f UTF-8 C.UTF-8
|
||||
localedef -i ja_JP -f SHIFT_JIS ja_JP.SJIS 2> /dev/null || true</userinput></screen>
|
||||
|
||||
<note><para>Glibc now uses libidn2 when resolving internationalized
|
||||
domain names. This is a run time dependency. If this capability
|
||||
is needed, the instructions for installing libidn2 are in the
|
||||
@ -496,7 +500,7 @@ done
|
||||
|
||||
cp -v zone.tab zone1970.tab iso3166.tab $ZONEINFO
|
||||
zic -d $ZONEINFO -p America/New_York
|
||||
unset ZONEINFO</userinput></screen>
|
||||
unset ZONEINFO tz</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the zic commands:</title>
|
||||
|
@ -62,6 +62,10 @@
|
||||
CFLAGS is still automatically set to -march=something. -->
|
||||
</note>
|
||||
|
||||
<para>First, make an adjustment for compatibility with gcc-15 and later:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i '/long long t1;/,+1s/()/(...)/' configure</userinput></screen>
|
||||
|
||||
<para>Prepare GMP for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
|
@ -48,11 +48,9 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>The tests are known to fail if running multiple
|
||||
simultaneous tests (-j option greater than 1). To test
|
||||
the results, issue:</para>
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make -j1 check</userinput></screen>
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -71,9 +71,9 @@
|
||||
|
||||
<para>Prepare GRUB for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--disable-efiemu \
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--disable-efiemu \
|
||||
--disable-werror</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
@ -105,7 +105,8 @@
|
||||
the tests depend on packages that are not available in the limited
|
||||
LFS environment. To run the tests anyway, run <command>make check</command>.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
<para>Install the package, and move the Bash completion support file to
|
||||
the location recommended by the Bash completion maintainers:</para>
|
||||
|
||||
<screen><userinput remap="install">make install
|
||||
mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions</userinput></screen>
|
||||
@ -176,7 +177,7 @@ mv -v /etc/bash_completion.d/grub /usr/share/bash-completion/completions</userin
|
||||
<varlistentry id="grub-fstest">
|
||||
<term><command>grub-fstest</command></term>
|
||||
<listitem>
|
||||
<para>Is a tool to debug the filesystem driver</para>
|
||||
<para>Is a tool to debug the file system driver</para>
|
||||
<indexterm zone="ch-system-grub grub-fstest">
|
||||
<primary sortas="b-grub-fstest">grub-fstest</primary>
|
||||
</indexterm>
|
||||
|
@ -40,7 +40,7 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Inetutils</title>
|
||||
|
||||
<para>First, make the package build with gcc-14.1 or later::</para>
|
||||
<para>First, make the package build with gcc-14.1 or later:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i 's/def HAVE_TERMCAP_TGETENT/ 1/' telnet/telnet.c</userinput></screen>
|
||||
|
||||
|
@ -77,8 +77,7 @@ rm -fv man/man8/arpd.8</userinput></screen>
|
||||
|
||||
<para>If desired, install the documentation:</para>
|
||||
|
||||
<screen><userinput remap="install">mkdir -pv /usr/share/doc/iproute2-&iproute2-version;
|
||||
cp -v COPYING README* /usr/share/doc/iproute2-&iproute2-version;</userinput></screen>
|
||||
<screen><userinput remap="install">install -vDm644 COPYING README* -t /usr/share/doc/iproute2-&iproute2-version;</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -278,7 +277,7 @@ cp -v COPYING README* /usr/share/doc/iproute2-&iproute2-version;</userinput></sc
|
||||
discipline</para>
|
||||
|
||||
<para><command>tc class</command> allows users to set up classes based
|
||||
on the queuing discipline scheduling</para>
|
||||
on the queueing discipline scheduling</para>
|
||||
|
||||
<para><command>tc filter</command> allows users to set up the QoS/CoS
|
||||
packet filtering</para>
|
||||
|
@ -42,11 +42,11 @@
|
||||
|
||||
<para>Build the package:</para>
|
||||
|
||||
<screen><userinput remap="install">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
|
||||
<screen><userinput remap="make">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">pip3 install --no-index --no-user --find-links dist Jinja2</userinput></screen>
|
||||
<screen><userinput remap="install">pip3 install --no-index --find-links dist Jinja2</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -80,9 +80,14 @@ sed -i 's/resizecons.8 //' docs/man/man8/Makefile.in</userinput></screen>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<para>The tests for this package will all fail in the chroot environment
|
||||
because they require <application>valgrind</application>. In addition
|
||||
on a full system with <application>valgrind</application>, several
|
||||
tests still fail in a graphical environment. The tests pass in
|
||||
a non-graphical environment.</para>
|
||||
<!--
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
-->
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -43,44 +43,22 @@
|
||||
|
||||
<para>Prepare Kmod for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--with-openssl \
|
||||
--with-xz \
|
||||
--with-zstd \
|
||||
--with-zlib \
|
||||
--disable-manpages</userinput></screen>
|
||||
<screen><userinput remap="configure">mkdir -p build
|
||||
cd build
|
||||
|
||||
meson setup --prefix=/usr .. \
|
||||
--buildtype=release \
|
||||
-D manpages=false</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>--with-openssl</parameter>
|
||||
<parameter>-D manpages=false</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>This option enables Kmod to handle PKCS7 signatures for
|
||||
kernel modules.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>--with-xz</parameter>,
|
||||
<parameter>--with-zlib</parameter>, and
|
||||
<parameter>--with-zstd</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>These options enable Kmod to handle compressed kernel modules.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>--disable-manpages</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>This option disables generating the manpages which
|
||||
<para>This option disables generating the man pages which
|
||||
requires an external program.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -89,25 +67,15 @@
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
<screen><userinput remap="make">ninja</userinput></screen>
|
||||
|
||||
<para>The test suite of this package requires raw kernel headers
|
||||
(not the <quote>sanitized</quote> kernel headers installed earlier),
|
||||
which are beyond the scope of LFS.</para>
|
||||
|
||||
<para>Install the package and recreate some symlinks for
|
||||
compatibility with Module-Init-Tools (the package that previously handled
|
||||
Linux kernel modules). The building system will create all these
|
||||
symlinks in <filename class='directory'>/usr/bin</filename>, but we
|
||||
only want <command>lsmod</command> there and all other symlinks in
|
||||
<filename class='directory'>/usr/sbin</filename> instead:</para>
|
||||
<para>Now install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install
|
||||
|
||||
for target in depmod insmod modinfo modprobe rmmod; do
|
||||
ln -sfv ../bin/kmod /usr/sbin/$target
|
||||
rm -fv /usr/bin/$target
|
||||
done</userinput></screen>
|
||||
<screen><userinput remap="install">ninja install</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -46,8 +46,8 @@
|
||||
|
||||
<para>Prepare Libelf for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--disable-debuginfod \
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--disable-debuginfod \
|
||||
--enable-libdebuginfod=dummy</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
@ -58,6 +58,9 @@
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<para>Two tests are known to fail, dwarf_srclang_check and
|
||||
run-backtrace-native-core.sh.</para>
|
||||
|
||||
<para>Install only Libelf:</para>
|
||||
|
||||
<screen><userinput remap="install">make -C libelf install
|
||||
|
@ -51,17 +51,20 @@
|
||||
<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
|
||||
following command to an architecture name fully implemented by
|
||||
<emphasis role='bold'>both</emphasis> the host CPU and the
|
||||
CPU on that system.
|
||||
If this is not done, all applications that link to
|
||||
<filename class='libraryfile'>libffi</filename> will trigger
|
||||
Illegal Operation Errors.</para>
|
||||
Illegal Operation Errors. If you cannot figure out a value
|
||||
safe for both the CPUs, replace the parameter with
|
||||
<option>--without-gcc-arch</option> to produce a generic library.</para>
|
||||
</note>
|
||||
|
||||
<para>Prepare Libffi for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--disable-static \
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--disable-static \
|
||||
--with-gcc-arch=native</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
|
@ -49,9 +49,8 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
<para>The tests require the <application>Check</application> library
|
||||
that we've removed from LFS.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -50,15 +50,9 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>To test the results<!--(about 11.0 SBU)-->, issue:</para>
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">make -k check</userinput></screen>
|
||||
|
||||
<para>Five tests are known to fail in the LFS build environment due
|
||||
to a circular dependency, but these tests pass if rechecked after
|
||||
automake has been installed. Additionally, with grep-3.8 or newer,
|
||||
two tests will trigger a warning for non-POSIX regular expressions and
|
||||
fail.</para>
|
||||
<screen><userinput remap="test">make check</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -48,7 +48,32 @@
|
||||
|
||||
<para>Install Man-pages by running:</para>
|
||||
|
||||
<screen><userinput remap="install">make prefix=/usr install</userinput></screen>
|
||||
<screen><userinput remap="install">make -R GIT=false prefix=/usr install</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the options:</title>
|
||||
|
||||
<!-- TODO: Try if we can remove this when we update make. -->
|
||||
<varlistentry>
|
||||
<term><parameter>-R</parameter></term>
|
||||
<listitem>
|
||||
<para>This prevents <command>make</command> from setting any
|
||||
built-in variables. The building system of man-pages does not
|
||||
work well with built-in variables, but currently there is no way
|
||||
to disable them except passing <parameter>-R</parameter>
|
||||
explicitly via the command line.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>GIT=false</parameter></term>
|
||||
<listitem>
|
||||
<para>This prevents the building system from emitting many
|
||||
<computeroutput>git: command not found</computeroutput>
|
||||
warnings lines.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -48,7 +48,7 @@
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">pip3 install --no-index --no-user --find-links dist Markupsafe</userinput></screen>
|
||||
<screen><userinput remap="install">pip3 install --no-index --find-links dist Markupsafe</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -127,7 +127,7 @@
|
||||
make will spawn new shell processes during "make install". -->
|
||||
|
||||
<para>The installation of this package will overwrite
|
||||
<filename class="libraryfile">libncursesw.so.&ncurses-version;</filename>
|
||||
<filename class="libraryfile">libncursesw.so.&ncurses-base-version;</filename>
|
||||
in-place. It may crash the shell process which is using code and data
|
||||
from the library file. Install the package with
|
||||
<literal>DESTDIR</literal>, and replace the library file correctly using
|
||||
@ -137,8 +137,8 @@
|
||||
<xref linkend='ch-tools-ncurses'/>):</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/dest install
|
||||
install -vm755 dest/usr/lib/libncursesw.so.&ncurses-version; /usr/lib
|
||||
rm -v dest/usr/lib/libncursesw.so.&ncurses-version;
|
||||
install -vm755 dest/usr/lib/libncursesw.so.&ncurses-base-version; /usr/lib
|
||||
rm -v dest/usr/lib/libncursesw.so.&ncurses-base-version;
|
||||
sed -e 's/^#if.*XOPEN.*$/#if 1/' \
|
||||
-i dest/usr/include/curses.h
|
||||
cp -av dest/* /</userinput></screen>
|
||||
|
@ -67,7 +67,7 @@
|
||||
|
||||
<para>Build Ninja with:</para>
|
||||
|
||||
<screen><userinput remap="configure">python3 configure.py --bootstrap</userinput></screen>
|
||||
<screen><userinput remap="configure">python3 configure.py --bootstrap --verbose</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the build option:</title>
|
||||
@ -80,10 +80,20 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--verbose</parameter></term>
|
||||
<listitem>
|
||||
<para>This parameter makes <command>configure.py</command> show
|
||||
the progress building Ninja.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>The package tests cannot run in the chroot environment. They require
|
||||
<ulink url="&blfs-book;general/cmake.html">cmake</ulink>.</para>
|
||||
<ulink url="&blfs-book;general/cmake.html">cmake</ulink>. But the basic
|
||||
function of this package is already tested by rebuilding itself
|
||||
(with the <parameter>--bootstrap</parameter> option) anyway.</para>
|
||||
<!--
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
|
75
chapter08/packaging.xml
Normal file
75
chapter08/packaging.xml
Normal file
@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
]>
|
||||
|
||||
<sect1 id="ch-system-packaging" role="wrap">
|
||||
<?dbhtml filename="packaging.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
<productname>packaging</productname>
|
||||
<productnumber>&packaging-version;</productnumber>
|
||||
<address>&packaging-url;</address>
|
||||
</sect1info>
|
||||
|
||||
<title>Packaging-&packaging-version;</title>
|
||||
|
||||
<indexterm zone="ch-system-packaging">
|
||||
<primary sortas="a-packaging">packaging</primary>
|
||||
</indexterm>
|
||||
|
||||
<sect2 role="package">
|
||||
<title/>
|
||||
|
||||
<para>
|
||||
The packaging module is a Python library that provides utilities that
|
||||
implement the interoperability specifications which have clearly one
|
||||
correct behaviour (PEP440) or benefit greatly from having a single shared
|
||||
implementation (PEP425). This includes utilities for version handling,
|
||||
specifiers, markers, tags, and requirements.
|
||||
</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>&packaging-fin-sbu;</seg>
|
||||
<seg>&packaging-fin-du;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Packaging</title>
|
||||
|
||||
<para>Compile packaging with the following command:</para>
|
||||
|
||||
<screen><userinput remap="make">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
|
||||
|
||||
<para>Install packaging with the following command:</para>
|
||||
|
||||
<screen><userinput remap="install">pip3 install --no-index --find-links dist packaging</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-packaging" role="content">
|
||||
<title>Contents of Packaging</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed directories</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>
|
||||
/usr/lib/python&python-minor;/site-packages/packaging and
|
||||
/usr/lib/python&python-minor;/site-packages/packaging-&packaging-version;.dist-info
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
|
@ -40,12 +40,11 @@
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Perl</title>
|
||||
<!--
|
||||
<para>First, apply a patch that fixes an issue highlighted by recent
|
||||
versions of gdbm:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&perl-fix-patch;</userinput></screen>
|
||||
-->
|
||||
<para>First, apply a security patch identified upstream:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&perl-upstream-fix-patch;</userinput></screen>
|
||||
|
||||
<para>This version of Perl builds the Compress::Raw::Zlib and
|
||||
Compress::Raw::BZip2 modules. By
|
||||
default Perl will use an internal copy of the sources for the build.
|
||||
@ -109,7 +108,7 @@ export BUILD_BZIP2=0</userinput></screen>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>To test the results (approximately 11 SBU), issue:</para>
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">TEST_JOBS=$(nproc) make test_harness</userinput></screen>
|
||||
|
||||
|
@ -46,8 +46,8 @@
|
||||
|
||||
<para>Prepare Pkgconf for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--disable-static \
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--disable-static \
|
||||
--docdir=/usr/share/doc/pkgconf-&pkgconf-version;</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
@ -69,10 +69,25 @@
|
||||
</listitem>
|
||||
|
||||
<listitem> <para>If a package containing a shared library is updated, and
|
||||
if the name of the library changes, then any packages dynamically
|
||||
if the name of the library<footnote><para>The name of a shared library is
|
||||
the string coded in the <constant>DT_SONAME</constant> entry of its
|
||||
ELF dynamic section. You can get it with the
|
||||
<command>readelf -d <replaceable><library file></replaceable>
|
||||
| grep SONAME</command> command. In most cases it's suffixed with
|
||||
<literal>.so.<replaceable><a version
|
||||
number></replaceable></literal>, but there are some cases where
|
||||
it contains multiple numbers for versioning (like
|
||||
<filename>libbz2.so.1.0</filename>), contains the version number
|
||||
before the <filename class='extension'>.so</filename> suffix (like
|
||||
<filename>libbfd-&binutils-version;</filename>), or does not contain
|
||||
any version number at all (for example
|
||||
<filename>libmemusage.so</filename>).
|
||||
Generally there is no correlation between the package version and the
|
||||
version number(s) in the library name.</para></footnote>
|
||||
changes, then any packages dynamically
|
||||
linked to the library must be recompiled, to link against the
|
||||
newer library. (Note that there is no correlation between the package
|
||||
version and the name of the library.) For example, consider a package
|
||||
newer library.
|
||||
For example, consider a package
|
||||
foo-1.2.3 that installs a shared library with the name <filename
|
||||
class='libraryfile'>libfoo.so.1</filename>. Suppose you upgrade the package to
|
||||
a newer version foo-1.2.4 that installs a shared library with the name
|
||||
@ -370,11 +385,13 @@ make DESTDIR=/usr/pkg/libfoo/1.1 install</userinput></screen>
|
||||
differences in system hardware and the original kernel
|
||||
configuration.</para>
|
||||
|
||||
<note><para>There have been some reports of issues when copying between
|
||||
similar but not identical architectures. For instance, the instruction set
|
||||
for an Intel system is not identical with the AMD processor's instructions, and later
|
||||
versions of some processors may provide instructions that are unavailable with
|
||||
earlier versions.</para></note>
|
||||
<important><para>If you want to deploy the LFS system onto a system
|
||||
with a different CPU, when you build <xref linkend='ch-system-gmp'/> and
|
||||
<xref linkend='ch-system-libffi'/> you must follow the notes about
|
||||
overriding the architecture-specific optimization to produce libraries
|
||||
suitable for both the host system and the system(s) where you'll deploy
|
||||
the LFS system. Otherwise you'll get <computeroutput>Illegal
|
||||
Instruction</computeroutput> errors running LFS.</para></important>
|
||||
|
||||
<para>Finally, the new system has to be made bootable via <xref
|
||||
linkend="ch-bootable-grub"/>.</para>
|
||||
|
@ -45,12 +45,14 @@
|
||||
<screen revision="sysv"><userinput remap="configure">./configure --prefix=/usr \
|
||||
--docdir=/usr/share/doc/procps-ng-&procps-ng-version; \
|
||||
--disable-static \
|
||||
--disable-kill</userinput></screen>
|
||||
--disable-kill \
|
||||
--enable-watch8bit</userinput></screen>
|
||||
|
||||
<screen revision="systemd"><userinput remap="configure">./configure --prefix=/usr \
|
||||
--docdir=/usr/share/doc/procps-ng-&procps-ng-version; \
|
||||
--disable-static \
|
||||
--disable-kill \
|
||||
--enable-watch8bit \
|
||||
--with-systemd</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
@ -63,12 +65,20 @@
|
||||
command; it will be installed from the Util-linux package.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-watch8bit</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch enables the ncursesw support for the
|
||||
<command>watch</command> command, so it can handle 8-bit
|
||||
characters.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen revision='sysv'><userinput remap="make">make</userinput></screen>
|
||||
<screen revision='systemd'><userinput remap="make">make src_w_LDADD='$(LDADD) -lsystemd'</userinput></screen>
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<!-- To editors: "pmap {X,XX} with unreachable process" tests don't work
|
||||
as root. They may seem to pass due to some Tcl/Expect/DejaGNU
|
||||
@ -81,7 +91,8 @@ su tester -c "PATH=$PATH make check"</userinput></screen>
|
||||
<para>One test named
|
||||
<literal>ps with output flag bsdtime,cputime,etime,etimes</literal>
|
||||
is known to fail if the host kernel is not built with
|
||||
<literal>CONFIG_BSD_PROCESS_ACCT</literal> enabled.</para>
|
||||
<literal>CONFIG_BSD_PROCESS_ACCT</literal> enabled. In
|
||||
addition, one pgrep test may fail in the chroot environment.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -42,13 +42,18 @@
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Python 3</title>
|
||||
<!--
|
||||
<para>First, apply a security patch to the current package:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&python-security-fixes-patch;</userinput></screen>
|
||||
-->
|
||||
<para>Prepare Python for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--enable-shared \
|
||||
--with-system-expat \
|
||||
--enable-optimizations</userinput></screen>
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--enable-shared \
|
||||
--with-system-expat \
|
||||
--enable-optimizations \
|
||||
--without-static-libpython</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the configure options:</title>
|
||||
@ -88,7 +93,8 @@
|
||||
limit and 1 SBU (measured when building Binutils pass 1 with one CPU
|
||||
core) should be enough. Some tests are flaky, so the test suite will
|
||||
automatically re-run failed tests. If a test failed but then passed
|
||||
when re-run, it should be considered as passed.</para>
|
||||
when re-run, it should be considered as passed. One test, test_ssl,
|
||||
is known to fail in the chroot environment.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
@ -161,21 +167,21 @@ EOF
|
||||
|
||||
<screen><userinput remap="install">install -v -dm755 /usr/share/doc/python-&python-version;/html
|
||||
|
||||
tar --no-same-owner \
|
||||
-xvf ../python-&python-version;-docs-html.tar.bz2
|
||||
cp -R --no-preserve=mode python-&python-version;-docs-html/* \
|
||||
/usr/share/doc/python-&python-version;/html</userinput></screen>
|
||||
tar --strip-components=1 \
|
||||
--no-same-owner \
|
||||
--no-same-permissions \
|
||||
-C /usr/share/doc/python-&python-version;/html \
|
||||
-xvf ../python-&python-version;-docs-html.tar.bz2</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the documentation install commands:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--no-same-owner</option> (tar) and <option>--no-preserve=mode</option> (cp)</term>
|
||||
<term><option>--no-same-owner</option> and <option>--no-same-permissions</option></term>
|
||||
<listitem>
|
||||
<para>Ensure the installed files have the correct ownership and
|
||||
permissions. Without these options, <application>tar</application>
|
||||
will install the package files with the upstream creator's values
|
||||
and files would have restrictive permissions.
|
||||
will install the package files with the upstream creator's values.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
@ -89,7 +89,9 @@ sed -i '/{OLDSUFF}/c:' support/shlib-install</userinput></screen>
|
||||
<term><parameter>SHLIB_LIBS="-lncursesw"</parameter></term>
|
||||
<listitem>
|
||||
<para>This option forces Readline to link against the
|
||||
<filename class="libraryfile">libncursesw</filename> library.</para>
|
||||
<filename class="libraryfile">libncursesw</filename> library.
|
||||
For details see the <quote>Shared Libraries</quote> section in the
|
||||
package's <filename>README</filename> file.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -99,7 +101,7 @@ sed -i '/{OLDSUFF}/c:' support/shlib-install</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make SHLIB_LIBS="-lncursesw" install</userinput></screen>
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
||||
<para>If desired, install the documentation:</para>
|
||||
|
||||
|
@ -42,7 +42,7 @@
|
||||
|
||||
<para>Build the package:</para>
|
||||
|
||||
<screen><userinput remap="install">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
|
||||
<screen><userinput remap="make">pip3 wheel -w dist --no-cache-dir --no-build-isolation --no-deps $PWD</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
|
@ -44,18 +44,20 @@
|
||||
<important>
|
||||
<para>
|
||||
If you've installed Linux-PAM, you should follow
|
||||
<ulink url='&blfs-book;postlfs/shadow.xml'>the BLFS shadow
|
||||
page</ulink> instead of this page to build (or, rebuild or upgrade)
|
||||
shadow.
|
||||
<ulink url='&blfs-book;postlfs/shadow.html'>the BLFS
|
||||
instruction</ulink> instead of this page to build (or, rebuild or
|
||||
upgrade) shadow.
|
||||
</para>
|
||||
</important>
|
||||
|
||||
<note>
|
||||
<para>If you would like to enforce the use of strong passwords, refer to
|
||||
<ulink url="&blfs-book;postlfs/cracklib.html"/> for installing
|
||||
CrackLib prior to building Shadow. Then add
|
||||
<parameter>--with-libcrack</parameter> to the <command>configure</command>
|
||||
command below.</para>
|
||||
<para>If you would like to enforce the use of strong passwords,
|
||||
<ulink url='&blfs-book;postlfs/linux-pam.html'>install and configure
|
||||
Linux-PAM</ulink> first. Then
|
||||
<ulink url='&blfs-book;postlfs/shadow.html'>install and configure
|
||||
shadow with the PAM support</ulink>. Finally
|
||||
<ulink url='&blfs-book;postlfs/libpwquality.html'>install
|
||||
libpwquality and configure PAM to use it</ulink>.</para>
|
||||
</note>
|
||||
|
||||
<para>Disable the installation of the <command>groups</command> program
|
||||
@ -81,24 +83,19 @@ find man -name Makefile.in -exec sed -i 's/passwd\.5 / /' {} \;</userinput></s
|
||||
since they are simply symlinks to their counterparts in
|
||||
<filename class="directory">/usr</filename>.</para>
|
||||
|
||||
<note>
|
||||
<para>If you wish to include <filename class="directory">/bin</filename>
|
||||
and/or <filename class="directory">/sbin</filename> in the <envar>PATH</envar>
|
||||
for some reason, modify the
|
||||
<envar>PATH</envar> in <filename>.bashrc</filename> after LFS has been
|
||||
built.</para>
|
||||
</note>
|
||||
<warning>
|
||||
<para>Including <filename class="directory">/bin</filename>
|
||||
and/or <filename class="directory">/sbin</filename> in
|
||||
the <envar>PATH</envar> variable may cause some BLFS packages fail to
|
||||
build,<!-- known example: SPIRV-LLVM-Translator --> so don't do that
|
||||
in the <filename>.bashrc</filename> file or anywhere else.</para>
|
||||
</warning>
|
||||
|
||||
<screen><userinput remap="pre">sed -e 's:#ENCRYPT_METHOD DES:ENCRYPT_METHOD YESCRYPT:' \
|
||||
-e 's:/var/spool/mail:/var/mail:' \
|
||||
-e '/PATH=/{s@/sbin:@@;s@/bin:@@}' \
|
||||
-i etc/login.defs</userinput></screen>
|
||||
|
||||
<note>
|
||||
<para>If you chose to build Shadow with Cracklib support, issue this command:</para>
|
||||
|
||||
<screen role="nodump"><userinput>sed -i 's:DICTPATH.*:DICTPATH\t/lib/cracklib/pw_dict:' etc/login.defs</userinput></screen>
|
||||
</note>
|
||||
<!--
|
||||
<para>Make a minor change to make the first group number generated
|
||||
by useradd 1000:</para>
|
||||
|
@ -24,16 +24,20 @@
|
||||
backup of the LFS system in its current state.</para>
|
||||
|
||||
<para>A <command>strip</command> command with the
|
||||
<parameter>--strip-unneeded</parameter> option removes all debug symbols
|
||||
from a binary or library. It also removes all symbol table entries not
|
||||
<parameter>--strip-unneeded</parameter> option removes all debug symbols from
|
||||
a binary or library. It also removes all symbol table entries not normally
|
||||
needed by the linker (for static libraries) or dynamic linker (for
|
||||
dynamically linked binaries and shared libraries).</para>
|
||||
dynamically linked binaries and shared libraries). Using
|
||||
<parameter>--strip-debug</parameter> does not remove symbol table entries
|
||||
that may be needed by some applications. The difference between
|
||||
<literal>unneeded</literal> and <literal>debug</literal> is very small.
|
||||
For example, an unstripped <filename class='libraryfile'>libc.a</filename>
|
||||
is 22.4 MB. After stripping with <parameter>--strip-debug</parameter> it
|
||||
is 5.9 MB. Using <parameter>--strip-unneeded</parameter> only reduces the
|
||||
size further to 5.8 MB.</para>
|
||||
|
||||
<!-- TODO: Zstd is better than Zlib for both speed and size.
|
||||
Unfortunately Valgrind does not support Zstd-compressed debug
|
||||
info yet: https://bugs.kde.org/show_bug.cgi?id=469782 -->
|
||||
<para>The debugging symbols from selected libraries are compressed with
|
||||
<application>Zlib</application> and preserved in separate files. That
|
||||
<application>Zstd</application> and preserved in separate files. That
|
||||
debugging information is needed to run regression tests with <ulink
|
||||
url='&blfs-book;/general/valgrind.html'>valgrind</ulink> or <ulink
|
||||
url='&blfs-book;/general/gdb.html'>gdb</ulink> later, in BLFS.
|
||||
@ -81,9 +85,9 @@
|
||||
cd /usr/lib
|
||||
|
||||
for LIB in $save_usrlib; do
|
||||
objcopy --only-keep-debug --compress-debug-sections=zlib $LIB $LIB.dbg
|
||||
objcopy --only-keep-debug --compress-debug-sections=zstd $LIB $LIB.dbg
|
||||
cp $LIB /tmp/$LIB
|
||||
strip --strip-unneeded /tmp/$LIB
|
||||
strip --strip-debug /tmp/$LIB
|
||||
objcopy --add-gnu-debuglink=$LIB.dbg /tmp/$LIB
|
||||
install -vm755 /tmp/$LIB /usr/lib
|
||||
rm /tmp/$LIB
|
||||
@ -102,14 +106,14 @@ online_usrlib="libbfd-&binutils-version;.so
|
||||
|
||||
for BIN in $online_usrbin; do
|
||||
cp /usr/bin/$BIN /tmp/$BIN
|
||||
strip --strip-unneeded /tmp/$BIN
|
||||
strip --strip-debug /tmp/$BIN
|
||||
install -vm755 /tmp/$BIN /usr/bin
|
||||
rm /tmp/$BIN
|
||||
done
|
||||
|
||||
for LIB in $online_usrlib; do
|
||||
cp /usr/lib/$LIB /tmp/$LIB
|
||||
strip --strip-unneeded /tmp/$LIB
|
||||
strip --strip-debug /tmp/$LIB
|
||||
install -vm755 /tmp/$LIB /usr/lib
|
||||
rm /tmp/$LIB
|
||||
done
|
||||
@ -120,7 +124,7 @@ for i in $(find /usr/lib -type f -name \*.so* ! -name \*dbg) \
|
||||
case "$online_usrbin $online_usrlib $save_usrlib" in
|
||||
*$(basename $i)* )
|
||||
;;
|
||||
* ) strip --strip-unneeded $i
|
||||
* ) strip --strip-debug $i
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
@ -46,7 +46,9 @@
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--runstatedir=/run \
|
||||
--without-logger</userinput></screen>
|
||||
--without-logger \
|
||||
--disable-static \
|
||||
--docdir=/usr/share/doc/sysklogd-&sysklogd-version;</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
@ -86,6 +88,9 @@ mail.* -/var/log/mail.log
|
||||
user.* -/var/log/user.log
|
||||
*.emerg *
|
||||
|
||||
# Do not open any internet ports.
|
||||
secure_mode 2
|
||||
|
||||
# End /etc/syslog.conf</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
|
@ -45,8 +45,9 @@
|
||||
<systemitem class="groupname">sgx</systemitem>, from the default udev
|
||||
rules:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i -e 's/GROUP="render"/GROUP="video"/' \
|
||||
-e 's/GROUP="sgx", //' rules.d/50-udev-default.rules.in</userinput></screen>
|
||||
<screen><userinput remap="pre">sed -e 's/GROUP="render"/GROUP="video"/' \
|
||||
-e 's/GROUP="sgx", //' \
|
||||
-i rules.d/50-udev-default.rules.in</userinput></screen>
|
||||
|
||||
<para>Prepare systemd for compilation:</para>
|
||||
|
||||
@ -227,7 +228,11 @@ ninja test</userinput></screen>
|
||||
after initializing the system with systemd. -->
|
||||
<para>One test named <literal>systemd:core / test-namespace</literal>
|
||||
is known to fail in the LFS chroot environment. Some other tests may
|
||||
fail because they depend on various kernel configuration options.</para>
|
||||
fail because they depend on various kernel configuration options.
|
||||
The test named <literal>systemd:test / test-copy</literal> may time out
|
||||
due to an I/O congestion with a large parallel job number, but it
|
||||
would pass if running alone with
|
||||
<command>meson test test-copy</command>.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
@ -238,7 +243,7 @@ ninja test</userinput></screen>
|
||||
<!-- Please make sure systemd man pages tarball has a common leading
|
||||
component in the path. -->
|
||||
<screen><userinput remap="install">tar -xf ../../systemd-man-pages-&systemd-man-version;.tar.xz \
|
||||
--no-same-owner --strip-components=1 \
|
||||
--no-same-owner --strip-components=1 \
|
||||
-C /usr/share/man</userinput></screen>
|
||||
|
||||
<para>Create the <filename>/etc/machine-id</filename> file needed by
|
||||
|
@ -3,8 +3,8 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
<!ENTITY tdbc-ver "1.1.7">
|
||||
<!ENTITY itcl-ver "4.2.4">
|
||||
<!ENTITY tdbc-ver "1.1.10">
|
||||
<!ENTITY itcl-ver "4.3.2">
|
||||
]>
|
||||
|
||||
<sect1 id="ch-system-tcl" role="wrap">
|
||||
@ -82,9 +82,9 @@ sed -e "s|$SRCDIR/unix|/usr/lib|" \
|
||||
-i tclConfig.sh
|
||||
|
||||
sed -e "s|$SRCDIR/unix/pkgs/tdbc&tdbc-ver;|/usr/lib/tdbc&tdbc-ver;|" \
|
||||
-e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;/generic|/usr/include|" \
|
||||
-e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;/library|/usr/lib/tcl8.6|" \
|
||||
-e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;|/usr/include|" \
|
||||
-e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;/generic|/usr/include|" \
|
||||
-e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;/library|/usr/lib/tcl8.6|" \
|
||||
-e "s|$SRCDIR/pkgs/tdbc&tdbc-ver;|/usr/include|" \
|
||||
-i pkgs/tdbc&tdbc-ver;/tdbcConfig.sh
|
||||
|
||||
sed -e "s|$SRCDIR/unix/pkgs/itcl&itcl-ver;|/usr/lib/itcl&itcl-ver;|" \
|
||||
|
@ -48,17 +48,19 @@
|
||||
<systemitem class="groupname">sgx</systemitem>, from the default udev
|
||||
rules:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i -e 's/GROUP="render"/GROUP="video"/' \
|
||||
-e 's/GROUP="sgx", //' rules.d/50-udev-default.rules.in</userinput></screen>
|
||||
<screen><userinput remap="pre">sed -e 's/GROUP="render"/GROUP="video"/' \
|
||||
-e 's/GROUP="sgx", //' \
|
||||
-i rules.d/50-udev-default.rules.in</userinput></screen>
|
||||
|
||||
<para>Remove one udev rule requiring a full Systemd installation:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed '/systemd-sysctl/s/^/#/' -i rules.d/99-systemd.rules.in</userinput></screen>
|
||||
<screen><userinput remap="pre">sed -i '/systemd-sysctl/s/^/#/' rules.d/99-systemd.rules.in</userinput></screen>
|
||||
|
||||
<para>Adjust the hardcoded paths to network configuration files for the
|
||||
standalone udev installation:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed '/NETWORK_DIRS/s/systemd/udev/' -i src/basic/path-lookup.h</userinput></screen>
|
||||
<screen><userinput remap="pre">sed -e '/NETWORK_DIRS/s/systemd/udev/' \
|
||||
-i src/libsystemd/sd-network/network-util.h</userinput></screen>
|
||||
|
||||
<para>Prepare Udev for compilation:</para>
|
||||
|
||||
|
@ -128,6 +128,11 @@ su tester -c "make -k check"</userinput></screen>
|
||||
enabled.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Two other tests, lsfd: SOURCE column and utmp: last, are known to
|
||||
fail in the chroot environment.
|
||||
</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
@ -64,9 +64,11 @@
|
||||
|
||||
<para>To prepare the tests, ensure that user
|
||||
<systemitem class="username">tester</systemitem> can write
|
||||
to the source tree:</para>
|
||||
to the source tree and exclude one file containing tests requiring
|
||||
<command>curl</command> or <command>wget</command>:</para>
|
||||
|
||||
<screen><userinput remap="test">chown -R tester .</userinput></screen>
|
||||
<screen><userinput remap="test">chown -R tester .
|
||||
sed '/test_plugin_glvs/d' -i src/testdir/Make_all.mak</userinput></screen>
|
||||
|
||||
<para>Now run the tests as user <systemitem
|
||||
class="username">tester</systemitem>:</para>
|
||||
|
@ -46,7 +46,7 @@
|
||||
|
||||
<para>Install Wheel with the following command:</para>
|
||||
|
||||
<screen><userinput remap="install">pip3 install --no-index --find-links=dist wheel</userinput></screen>
|
||||
<screen><userinput remap="install">pip3 install --no-index --find-links dist wheel</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -198,7 +198,7 @@ EOF</userinput></screen>
|
||||
<para>x can be any number in the range 16-31. y can be any number in the
|
||||
range 0-255.</para>
|
||||
|
||||
<para>A valid private IP address could be 192.168.1.1.</para>
|
||||
<para>A valid private IP address could be 192.168.1.2.</para>
|
||||
|
||||
<para>If the computer is to be visible to the Internet, a valid FQDN
|
||||
can be the domain name itself, or a string resulted by concatenating a
|
||||
@ -218,7 +218,7 @@ EOF</userinput></screen>
|
||||
|
||||
127.0.0.1 localhost.localdomain localhost
|
||||
127.0.1.1 <replaceable><FQDN></replaceable> <replaceable><HOSTNAME></replaceable>
|
||||
<replaceable><192.168.1.1></replaceable> <replaceable><FQDN></replaceable> <replaceable><HOSTNAME></replaceable> <replaceable>[alias1] [alias2 ...]</replaceable>
|
||||
<replaceable><192.168.1.2></replaceable> <replaceable><FQDN></replaceable> <replaceable><HOSTNAME></replaceable> <replaceable>[alias1] [alias2 ...]</replaceable>
|
||||
::1 localhost ip6-localhost ip6-loopback
|
||||
ff02::1 ip6-allnodes
|
||||
ff02::2 ip6-allrouters
|
||||
@ -226,7 +226,7 @@ ff02::2 ip6-allrouters
|
||||
# End /etc/hosts</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>The <replaceable><192.168.1.1></replaceable>,
|
||||
<para>The <replaceable><192.168.1.2></replaceable>,
|
||||
<replaceable><FQDN></replaceable>, and
|
||||
<replaceable><HOSTNAME></replaceable> values need to be
|
||||
changed for specific uses or requirements (if assigned an IP address by a
|
||||
|
@ -102,7 +102,7 @@ EOF</userinput></screen>
|
||||
|
||||
<screen role="nodump">q /tmp 1777 root root 10d</screen>
|
||||
|
||||
The type field, q, discusses creating a subvolume with quotas which
|
||||
The type field, q, indicates the creation of a subvolume with quotas which
|
||||
is really only applicable to btrfs filesystems. It references type v
|
||||
which in turn references type d (directory). This then creates the
|
||||
specified directory if it is not present and adjusts the permissions
|
||||
|
@ -108,6 +108,8 @@ EOF</userinput></screen>
|
||||
<quote>Default iocharset for FAT</quote> (<option>CONFIG_FAT_DEFAULT_IOCHARSET</option>).
|
||||
There is no way to specify these settings for the
|
||||
ntfs filesystem at kernel compilation time.</para>
|
||||
<!--
|
||||
Obsolete since 2011. barrier is the default for both ext3 and ext4.
|
||||
|
||||
<para>It is possible to make the ext3 filesystem reliable across power
|
||||
failures for some hard disk types. To do this, add the
|
||||
@ -123,5 +125,5 @@ EOF</userinput></screen>
|
||||
|
||||
<para>Note: Logical Volume Management (LVM) based partitions cannot use the
|
||||
<option>barrier</option> option.</para>
|
||||
|
||||
-->
|
||||
</sect1>
|
||||
|
@ -135,6 +135,7 @@ set timeout=5
|
||||
insmod part_gpt
|
||||
insmod ext2
|
||||
set root=(hd0,2)
|
||||
set gfxpayload=1024x768x32
|
||||
|
||||
menuentry "GNU/Linux, Linux &linux-version;-lfs-&version;" {
|
||||
linux /boot/vmlinuz-&linux-version;-lfs-&version; root=/dev/sda2 ro
|
||||
@ -159,6 +160,14 @@ EOF</userinput></screen>
|
||||
be needed with some rare configurations.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The <command>set gfxpayload=1024x768x32</command> command sets the
|
||||
resolution and color depth of the VESA framebuffer to be passed to the
|
||||
kernel. It's necessary for the kernel SimpleDRM driver to use the
|
||||
VESA framebuffer. You can use a different resolution or color depth
|
||||
value which better suits for your monitor.
|
||||
</para>
|
||||
|
||||
<note><para>From <application>GRUB</application>'s perspective, the
|
||||
kernel files are relative to the partition used. If you
|
||||
used a separate /boot partition, remove /boot from the above
|
||||
|
@ -272,6 +272,71 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>
|
||||
Display a user-friendly message when a kernel panic occurs
|
||||
</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>This will make the kernel correctly display the message
|
||||
in case a kernel panic happens and a running DRM driver
|
||||
supports to do so. Without this, it would be more
|
||||
difficult to diagnose a panic: if no DRM driver is running,
|
||||
we'd be on the VGA console which can only hold 24 lines and
|
||||
the relevant kernel message is often flushed away; if a DRM
|
||||
driver is running, the display is often completely messed up
|
||||
on panic. As of Linux-6.12, none of the dedicated drivers for
|
||||
mainstream GPU models really supports this, but it's supported by
|
||||
the <quote>Simple framebuffer driver</quote> which runs on the
|
||||
VESA (or EFI) framebuffer before the dedicated GPU driver is
|
||||
loaded. If the dedicated GPU driver is built as a module
|
||||
(instead of a part of the kernel image) and no initramfs is
|
||||
used, this functionality will work just fine before the root
|
||||
file system is mounted and it's already enough for providing
|
||||
information about most LFS configuration errors causing a
|
||||
panic (for example, an incorrect <parameter>root=</parameter>
|
||||
setting in <xref linkend='ch-bootable-grub'/>).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>
|
||||
Panic screen formatter
|
||||
</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>Set this <literal>kmsg</literal> to make sure the last
|
||||
kernel messages lines are displayed when a kernel panic happens.
|
||||
The default, <literal>user</literal>, would make the kernel show
|
||||
only a <quote>user friendly</quote> panic message which is not
|
||||
helpful on diagnostic. The third choice,
|
||||
<literal>qr_code</literal>, would make the kernel to compress
|
||||
the last kernel message lines into a QR code and display it.
|
||||
The QR code can hold more message lines than plain text and it
|
||||
can be decoded with an external device (like a smart phone).
|
||||
But it requires a Rust compiler that LFS does not provide.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>
|
||||
Mark VGA/VBE/EFI FB as generic system framebuffer
|
||||
</parameter> and
|
||||
<parameter>Simple framebuffer driver</parameter>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>These allow to use the VESA framebuffer (or the EFI
|
||||
framebuffer if booting the LFS system via UEFI) as a DRM device.
|
||||
The VESA framebuffer will be set up by GRUB (or the EFI
|
||||
framebuffer will be set up by the UEFI firmware), so the DRM panic
|
||||
handler can function before the GPU-specific DRM driver is
|
||||
loaded.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<parameter>
|
||||
@ -282,8 +347,8 @@
|
||||
<listitem>
|
||||
<para>These are needed to display the Linux console on a
|
||||
GPU driven by a DRI (Direct Rendering Infrastructure) driver.
|
||||
If <option>CONFIG_DRM</option> (Direct Rendering Manager) is
|
||||
enabled, you should enable these two options as well or you'll see
|
||||
As <option>CONFIG_DRM</option> (Direct Rendering Manager) is
|
||||
enabled, we should enable these two options as well or we'll see
|
||||
a blank screen once the DRI driver is loaded.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -339,7 +404,7 @@
|
||||
<caution>
|
||||
<para>If you've decided to use a separate &boot-dir; partition for the
|
||||
LFS system (maybe sharing a &boot-dir; partition with the host
|
||||
distro) , the files copied below should go there. The easiest way to
|
||||
distro), the files copied below should go there. The easiest way to
|
||||
do that is to create the entry for &boot-dir; in &fstab; first (read
|
||||
the previous section for details), then issue the following command
|
||||
as the &root; user in the
|
||||
@ -401,6 +466,26 @@
|
||||
<command>chown -R 0:0</command> on the <filename
|
||||
class="directory">linux-&linux-version;</filename> directory to ensure
|
||||
all files are owned by user <emphasis>root</emphasis>.</para>
|
||||
|
||||
<para>If you are updating the configuration and rebuilding the kernel
|
||||
from a retained kernel source tree, normally you should
|
||||
<emphasis role='bold'>not</emphasis> run the
|
||||
<command>make mrproper</command> command. The command would purge
|
||||
the <filename>.config</filename> file and all the
|
||||
<filename class='extension'>.o</filename> files from the previous
|
||||
build. Despite it's easy to restore <filename>.config</filename> from
|
||||
the copy in <filename class='directory'>/boot</filename>, purging all
|
||||
the <filename class='extension'>.o</filename> files is still a waste:
|
||||
for a simple configuration change, often only a few
|
||||
<filename class='extension'>.o</filename> files need to be (re)built
|
||||
and the kernel build system will correctly skip other
|
||||
<filename class='extension'>.o</filename> files if they are not
|
||||
purged.</para>
|
||||
|
||||
<para>On the other hand, if you've upgraded GCC, you should run
|
||||
<command>make clean</command> to purge all the
|
||||
<filename class='extension'>.o</filename> files from the previous
|
||||
build, or the new build may fail.</para>
|
||||
</note>
|
||||
|
||||
<warning>
|
||||
@ -412,17 +497,6 @@
|
||||
complete.</para>
|
||||
</warning>
|
||||
|
||||
<warning>
|
||||
<para>The headers in the system's <filename
|
||||
class="directory">include</filename> directory (<filename
|
||||
class="directory">/usr/include</filename>) should
|
||||
<emphasis>always</emphasis> be the ones against which Glibc was compiled,
|
||||
that is, the sanitised headers installed in <xref
|
||||
linkend="ch-tools-linux-headers"/>. Therefore, they should
|
||||
<emphasis>never</emphasis> be replaced by either the raw kernel headers
|
||||
or any other kernel sanitized headers.</para>
|
||||
</warning>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="conf-modprobe" role="configuration">
|
||||
|
@ -1 +1 @@
|
||||
6.10.2
|
||||
6.13.1
|
||||
|
@ -13,7 +13,13 @@ STACKPROTECTOR_STRONG='*'
|
||||
UEVENT_HELPER=' '
|
||||
DEVTMPFS='*'
|
||||
DEVTMPFS_MOUNT='*'
|
||||
DRM=' *M'
|
||||
SYSFB_SIMPLEFB='*'
|
||||
DRM='*'
|
||||
DRM_PANIC='*'
|
||||
DRM_PANIC_SCREEN='kmsg'
|
||||
DRM_FBDEV_EMULATION='*'
|
||||
DRM_SIMPLEDRM='*'
|
||||
FRAMEBUFFER_CONSOLE='*'
|
||||
NET='*'
|
||||
INET='*'
|
||||
IPV6='*'
|
||||
@ -30,11 +36,3 @@ revision='systemd'
|
||||
[RT_GROUP_SCHED]
|
||||
value = ' '
|
||||
comment = 'This may cause some systemd features malfunction'
|
||||
|
||||
[DRM_FBDEV_EMULATION]
|
||||
value = ' *'
|
||||
comment = 'If [DRM] is selected as * or M, this must be selected'
|
||||
|
||||
[FRAMEBUFFER_CONSOLE]
|
||||
value = ' *'
|
||||
comment = 'If [DRM] is selected as * or M, this must be selected'
|
||||
|
@ -42,15 +42,19 @@
|
||||
... [FW_LOADER_USER_HELPER]
|
||||
<emphasis role='blue'>F</emphasis>irmware Drivers --->
|
||||
[*] <emphasis role='blue'>E</emphasis>xport DMI identification via sysfs to userspace [DMIID]
|
||||
[*] M<emphasis role='blue'>a</emphasis>rk VGA/VBE/EFI FB as generic system framebuffer [SYSFB_SIMPLEFB]
|
||||
<emphasis role='blue'>G</emphasis>raphics support --->
|
||||
< /*/M> <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
|
||||
<*> <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
|
||||
... [DRM]
|
||||
# If [DRM] is selected as * or M, this must be selected:
|
||||
[ /*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
|
||||
[*] <emphasis role='blue'>D</emphasis>isplay a user-friendly message when a kernel panic occurs
|
||||
... [DRM_PANIC]
|
||||
(kmsg) <emphasis role='blue'>P</emphasis>anic screen formatter [DRM_PANIC_SCREEN]
|
||||
<emphasis role='blue'>S</emphasis>upported DRM clients --->
|
||||
[*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
|
||||
... [DRM_FBDEV_EMULATION]
|
||||
<*> <emphasis role='blue'>S</emphasis>imple framebuffer driver [DRM_SIMPLEDRM]
|
||||
<emphasis role='blue'>C</emphasis>onsole display driver support --->
|
||||
# If [DRM] is selected as * or M, this must be selected:
|
||||
[ /*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]
|
||||
[*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]
|
||||
|
||||
<emphasis role='blue'>F</emphasis>ile systems --->
|
||||
[*] <emphasis role='blue'>I</emphasis>notify support for userspace [INOTIFY_USER]
|
||||
|
@ -12,14 +12,12 @@ STACKPROTECTOR_STRONG='*'
|
||||
UEVENT_HELPER=' '
|
||||
DEVTMPFS='*'
|
||||
DEVTMPFS_MOUNT='*'
|
||||
DRM=' *M'
|
||||
SYSFB_SIMPLEFB='*'
|
||||
DRM='*'
|
||||
DRM_PANIC='*'
|
||||
DRM_PANIC_SCREEN='kmsg'
|
||||
DRM_FBDEV_EMULATION='*'
|
||||
DRM_SIMPLEDRM='*'
|
||||
FRAMEBUFFER_CONSOLE='*'
|
||||
|
||||
revision='sysv'
|
||||
|
||||
[DRM_FBDEV_EMULATION]
|
||||
value = ' *'
|
||||
comment = 'If [DRM] is selected as * or M, this must be selected'
|
||||
|
||||
[FRAMEBUFFER_CONSOLE]
|
||||
value = ' *'
|
||||
comment = 'If [DRM] is selected as * or M, this must be selected'
|
||||
|
@ -28,12 +28,17 @@
|
||||
[*] M<emphasis role='blue'>a</emphasis>intain a devtmpfs filesystem to mount at /dev [DEVTMPFS]
|
||||
[*] <emphasis role='blue'>A</emphasis>utomount devtmpfs at /dev, after the kernel mounted the rootfs
|
||||
... [DEVTMPFS_MOUNT]
|
||||
<emphasis role='blue'>F</emphasis>irmware Drivers --->
|
||||
[*] M<emphasis role='blue'>a</emphasis>rk VGA/VBE/EFI FB as generic system framebuffer [SYSFB_SIMPLEFB]
|
||||
<emphasis role='blue'>G</emphasis>raphics support --->
|
||||
< /*/M> <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
|
||||
<*> <emphasis role='blue'>D</emphasis>irect Rendering Manager (XFree86 4.1.0 and higher DRI support) --->
|
||||
... [DRM]
|
||||
# If [DRM] is selected as * or M, this must be selected:
|
||||
[ /*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
|
||||
[*] <emphasis role='blue'>D</emphasis>isplay a user-friendly message when a kernel panic occurs
|
||||
... [DRM_PANIC]
|
||||
(kmsg) <emphasis role='blue'>P</emphasis>anic screen formatter [DRM_PANIC_SCREEN]
|
||||
<emphasis role='blue'>S</emphasis>upported DRM clients --->
|
||||
[*] <emphasis role='blue'>E</emphasis>nable legacy fbdev support for your modesetting driver
|
||||
... [DRM_FBDEV_EMULATION]
|
||||
<*> <emphasis role='blue'>S</emphasis>imple framebuffer driver [DRM_SIMPLEDRM]
|
||||
<emphasis role='blue'>C</emphasis>onsole display driver support --->
|
||||
# If [DRM] is selected as * or M, this must be selected:
|
||||
[ /*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]</screen>
|
||||
[*] <emphasis role='blue'>F</emphasis>ramebuffer Console support [FRAMEBUFFER_CONSOLE]</screen>
|
||||
|
@ -54,7 +54,7 @@
|
||||
<para>
|
||||
In addition to the above, there is a set of applications for system
|
||||
management for all kinds of systems. These applications are all in the
|
||||
BLFS book. Not all packages are needed in every environments. For
|
||||
BLFS book. Not all packages are needed in every environment. For
|
||||
example <ulink url="&blfs-book;basicnet/dhcpcd.html">dhcpcd</ulink>, is
|
||||
not normally appropriate for a server and <ulink
|
||||
url="&blfs-book;basicnet/wireless_tools.html">wireless_tools</ulink>,
|
||||
@ -168,7 +168,7 @@ EOF</command></screen>
|
||||
</para>
|
||||
|
||||
<screen><command>alias lfs='sudo /usr/sbin/chroot /mnt/lfs /usr/bin/env -i HOME=/root TERM="$TERM" PS1="\u:\w\\\\$ "
|
||||
PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/bash --login'</command></screen>
|
||||
PATH=/usr/bin:/usr/sbin /bin/bash --login'</command></screen>
|
||||
|
||||
<para>
|
||||
This alias is a little tricky because of the quoting and levels of
|
||||
|
@ -88,17 +88,14 @@
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>/etc/bashrc </para></listitem>
|
||||
<listitem><para>/etc/dircolors </para></listitem>
|
||||
<listitem><para>/etc/fstab </para></listitem>
|
||||
<listitem><para>/etc/hosts </para></listitem>
|
||||
<listitem><para>/etc/inputrc </para></listitem>
|
||||
<listitem><para>/etc/profile </para></listitem>
|
||||
<listitem><para>/etc/resolv.conf </para></listitem>
|
||||
<listitem><para>/etc/resolv.conf
|
||||
<phrase revision='systemd'>(optional)</phrase></para></listitem>
|
||||
<listitem><para>/etc/vimrc </para></listitem>
|
||||
<listitem><para>/root/.bash_profile </para></listitem>
|
||||
<listitem><para>/root/.bashrc </para></listitem>
|
||||
<listitem revision="sysv"><para>/etc/sysconfig/ifconfig.eth0 </para></listitem>
|
||||
<listitem revision="sysv"><para>/etc/sysconfig/ifconfig.eth0</para></listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
@ -59,6 +59,7 @@ ID=lfs
|
||||
PRETTY_NAME="Linux From Scratch &version;"
|
||||
VERSION_CODENAME="<your name here>"
|
||||
HOME_URL="&lfs-root;lfs/"
|
||||
RELEASE_TYPE="&os-release-type;"
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>Be sure to customize the fields 'DISTRIB_CODENAME' and
|
||||
|
@ -62,7 +62,7 @@ rem = rem.symmetric_difference(upd)
|
||||
|
||||
ticket = {}
|
||||
security = set()
|
||||
url = 'https://wiki.linuxfromscratch.org/lfs/report/1?format=tab'
|
||||
url = 'https://wiki.linuxfromscratch.org/lfs/query?status=!closed&order=priority&format=tab'
|
||||
tsv = urlopen(url)
|
||||
for i in tsv:
|
||||
fields = i.decode().split('\t')
|
||||
|
19
general.ent
19
general.ent
@ -7,9 +7,9 @@
|
||||
<!ENTITY % rc "IGNORE"> <!-- set to INCLUDE for rc,
|
||||
set to IGNORE for development or
|
||||
release -->
|
||||
<!ENTITY % relnum "11.3"><!-- must be given for release or rc -->
|
||||
<!ENTITY % reldate "March 1st, 2023"><!-- must ve given for release or rc -->
|
||||
<!ENTITY % crdate "1999-2022"><!-- must ve given for release or rc -->
|
||||
<!ENTITY % relnum "12.3"><!-- must be given for release or rc -->
|
||||
<!ENTITY % reldate "March 5th, 2025"><!-- must ve given for release or rc -->
|
||||
<!ENTITY % crdate "1999-2025"><!-- must ve given for release or rc -->
|
||||
<!ENTITY % rcnum "0"><!-- must be given only for rc -->
|
||||
<!-- ================================================================== -->
|
||||
<!-- Do not change anything below unless the www or book layouts change -->
|
||||
@ -34,6 +34,7 @@
|
||||
&patches-root;,
|
||||
&donwloads-root;, and
|
||||
&test-results; -->
|
||||
<!ENTITY os-release-type "development"> <!-- used by /etc/os-release -->
|
||||
]]><!-- End %development -->
|
||||
|
||||
<![ %release; [
|
||||
@ -43,7 +44,7 @@
|
||||
]]>
|
||||
<![ %systemd; [
|
||||
<!ENTITY version "%relnum;-systemd">
|
||||
<!ENTITY short-version "stable-systemd"> <!-- Used below in &blfs-book; -->
|
||||
<!ENTITY short-version "%relnum;-systemd"> <!-- Used below in &blfs-book; -->
|
||||
]]>
|
||||
<!ENTITY errata "&lfs-root;lfs/errata/&version;/">
|
||||
<!ENTITY generic-version "%relnum;"> <!-- Used below in
|
||||
@ -52,6 +53,7 @@
|
||||
&test-results; -->
|
||||
<!ENTITY releasedate "%reldate;">
|
||||
<!ENTITY copyrightdate "%crdate;">
|
||||
<!ENTITY os-release-type "stable"> <!-- used by /etc/os-release -->
|
||||
]]>
|
||||
|
||||
<![ %rc; [
|
||||
@ -70,6 +72,7 @@
|
||||
&test-results; -->
|
||||
<!ENTITY releasedate "%reldate;">
|
||||
<!ENTITY copyrightdate "%crdate;">
|
||||
<!ENTITY os-release-type "development"> <!-- used by /etc/os-release -->
|
||||
]]>
|
||||
|
||||
<![ %sysv; [
|
||||
@ -92,9 +95,9 @@
|
||||
<!ENTITY test-results "&lfs-root;lfs/build-logs/&generic-version;/">
|
||||
<!ENTITY secadv "&lfs-root;lfs/advisories/">
|
||||
|
||||
<!-- 4.19 EOL is Dec 2024
|
||||
so for LFS 12.3 we may consider moving to 5.4 -->
|
||||
<!ENTITY min-kernel "4.19">
|
||||
<!-- 5.4 EOL is Dec 2025
|
||||
so for LFS 12.5 we may consider moving to 5.10. -->
|
||||
<!ENTITY min-kernel "5.4">
|
||||
|
||||
<!--
|
||||
<!ENTITY patches-rootd "&lfs-root;patches/lfs/&generic-versiond;/">
|
||||
@ -129,6 +132,8 @@
|
||||
|
||||
<!ENTITY root "<systemitem class='username'>root</systemitem>">
|
||||
<!ENTITY lfs-user "<systemitem class='username'>lfs</systemitem>">
|
||||
<!ENTITY lfs-username "<userinput remap='user'>lfs</userinput>">
|
||||
<!ENTITY lfs-groupname "<userinput remap='group'>lfs</userinput>">
|
||||
<!ENTITY devtmpfs "<systemitem class='filesystem'>devtmpfs</systemitem>">
|
||||
<!ENTITY fstab "<filename>/etc/fstab</filename>">
|
||||
<!ENTITY boot-dir "<filename class='directory'>/boot</filename>">
|
||||
|
@ -19,7 +19,7 @@ if [ -e LFS-RELEASE ]; then
|
||||
fi
|
||||
|
||||
if ! git status > /dev/null; then
|
||||
# Either it's not a git repository, or git is unavaliable.
|
||||
# Either it's not a git repository or git is unavailable.
|
||||
# Just workaround.
|
||||
echo "<![ %sysv; [" > version.ent
|
||||
echo "<!ENTITY version \"unknown\">" >> version.ent
|
||||
|
@ -11,12 +11,9 @@ $exceptions = array();
|
||||
//$exceptions[ 'gmp' ] = "UPDIR=/.*(gmp-\d[\d\.-]*\d).*/:DOWNDIR=";
|
||||
|
||||
$regex = array();
|
||||
//$regex[ 'bzip2' ] = "/^.*current version is ([\d\.]+).*$/";
|
||||
$regex[ 'intltool' ] = "/^.*Latest version is (\d[\d\.]+\d).*$/";
|
||||
$regex[ 'less' ] = "/^.*current released version is less-(\d+).*$/";
|
||||
$regex[ 'mpfr' ] = "/^mpfr-([\d\.]+)\.tar.*$/";
|
||||
//$regex[ 'Python' ] = "/^.*Latest Python 3.*Python (3[\d\.]+\d).*$/";
|
||||
//$regex[ 'sysvinit' ] = "/^.*sysvinit-([\d\.]+)dsf\.tar.*$/";
|
||||
$regex[ 'tzdata' ] = "/^.*tzdata([\d]+[a-z]).*$/";
|
||||
$regex[ 'xz' ] = "/^.*xz-([\d\.]*\d).*$/";
|
||||
$regex[ 'zlib' ] = "/^.*zlib ([\d\.]*\d).*$/";
|
||||
@ -118,44 +115,43 @@ function get_packages( $package, $dirpath )
|
||||
global $exceptions;
|
||||
global $regex;
|
||||
|
||||
//if ( $package != "psmisc" ) return 0; // debug
|
||||
//if ( $package != "wheel" ) return 0; // debug
|
||||
|
||||
if ( $package == "bc" ) $dirpath = github("gavinhoward/bc");
|
||||
if ( $package == "check" ) $dirpath = github("libcheck/check");
|
||||
if ( $package == "e2fsprogs" ) $dirpath = "https://sourceforge.net/projects/e2fsprogs/files/e2fsprogs";
|
||||
if ( $package == "expat" ) $dirpath = "https://sourceforge.net/projects/expat/files";
|
||||
if ( $package == "elfutils" ) $dirpath = "https://sourceware.org/ftp/elfutils";
|
||||
if ( $package == "expect" ) $dirpath = "https://sourceforge.net/projects/expect/files";
|
||||
if ( $package == "file" ) $dirpath = "https://github.com/file/file/tags";
|
||||
if ( $package == "flex" ) $dirpath = github("westes/flex");
|
||||
if ( $package == "flit_core" ) $dirpath = "https://pypi.org/project/flit-core/";
|
||||
if ( $package == "setuptools" ) $dirpath = "https://pypi.org/project/setuptools/";
|
||||
if ( $package == "flit_core" ) $dirpath = "https://pypi.org/rss/project/flit-core/releases.xml";
|
||||
if ( $package == "gcc" ) $dirpath = max_parent( $dirpath, "gcc-" );
|
||||
if ( $package == "iana-etc" ) $dirpath = github("Mic92/iana-etc");
|
||||
if ( $package == "intltool" ) $dirpath = "https://launchpad.net/intltool/trunk";
|
||||
if ( $package == "jinja" ) $dirpath = "https://pypi.org/rss/project/jinja2/releases.xml";
|
||||
if ( $package == "libffi" ) $dirpath = github("libffi/libffi");
|
||||
if ( $package == "libxcrypt" ) $dirpath = github("besser82/libxcrypt");
|
||||
if ( $package == "lz4" ) $dirpath = github("lz4/lz4");
|
||||
if ( $package == "markupsafe" ) $dirpath = "https://pypi.org/rss/project/markupsafe/releases.xml";
|
||||
if ( $package == "meson" ) $dirpath = github("mesonbuild/meson");
|
||||
if ( $package == "mpc" ) $dirpath = "https://ftp.gnu.org/gnu/mpc";
|
||||
if ( $package == "mpfr" ) $dirpath = "https://mpfr.loria.fr/mpfr-current";
|
||||
if ( $package == "ncurses" ) $dirpath = "https://invisible-mirror.net/archives/ncurses";
|
||||
if ( $package == "ninja" ) $dirpath = github("ninja-build/ninja");
|
||||
if ( $package == "openssl" ) $dirpath = github("openssl/openssl");
|
||||
if ( $package == "packaging" ) $dirpath = "https://pypi.org/rss/project/packaging/releases.xml";
|
||||
if ( $package == "procps-ng" ) $dirpath = "https://gitlab.com/procps-ng/procps/-/tags";
|
||||
if ( $package == "psmisc" ) $dirpath = "https://gitlab.com/psmisc/psmisc/-/tags";
|
||||
if ( $package == "Python" ) $dirpath = "https://www.python.org/downloads/source/";
|
||||
if ( $package == "setuptools" ) $dirpath = "https://pypi.org/rss/project/setuptools/releases.xml";
|
||||
if ( $package == "shadow" ) $dirpath = github("shadow-maint/shadow");
|
||||
if ( $package == "sysvinit" ) $dirpath = github("slicer69/sysvinit");
|
||||
if ( $package == "MarkupSafe" ) $dirpath = "https://pypi.python.org/pypi/MarkupSafe/";
|
||||
if ( $package == "jinja" ) $dirpath = "https://pypi.python.org/pypi/Jinja2/";
|
||||
if ( $package == "sysklogd" ) $dirpath = github("troglobit/sysklogd");
|
||||
if ( $package == "systemd" ) $dirpath = github("systemd/systemd");
|
||||
//if ( $package == "tcl" ) $dirpath = "https://sourceforge.net/projects/tcl/files";
|
||||
if ( $package == "tcl" ) $dirpath = "https://www.tcl.tk/software/tcltk/download.html";
|
||||
if ( $package == "util-linux" ) $dirpath = max_parent( $dirpath, "v." );
|
||||
if ( $package == "vim" ) $dirpath = "https://github.com/vim/vim/tags";
|
||||
if ( $package == "wheel" ) $dirpath = "https://pypi.org/project/wheel/#files";
|
||||
if ( $package == "wheel" ) $dirpath = "https://pypi.org/rss/project/wheel/releases.xml";
|
||||
if ( $package == "xz" ) $dirpath = github("tukaani-project/xz");
|
||||
if ( $package == "zlib" ) $dirpath = "https://www.zlib.net";
|
||||
if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
|
||||
@ -236,7 +232,7 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
|
||||
}
|
||||
|
||||
if ( $package == "tcl" )
|
||||
return find_max( $lines, "/tcl\d/", "/^.*tcl(\d\.[\d\.]*\d)-src.*$/" );
|
||||
return find_max( $lines, "/tcl8/", "/^.*tcl(\d\.[\d\.]*\d)-src.*$/" );
|
||||
|
||||
if ( $package == "gmp" )
|
||||
return find_max( $lines, "/$package/", "/^.*$package-([\d\._]*\d[a-z]?).tar.*$/" );
|
||||
@ -250,11 +246,25 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
|
||||
return str_replace( "_", ".", $max );
|
||||
}
|
||||
|
||||
# Python modules
|
||||
if ( $package == "flit_core" )
|
||||
return find_max( $lines, "/flit-core /", "/^.*flit-core ([\d\.]+)$/" );
|
||||
return find_max( $lines, "/flit-core\/\d/", "/^.*flit-core\/([\d\.]+).*$/" );
|
||||
|
||||
if ( $package == "setuptools" )
|
||||
return find_max( $lines, "/setuptools /", "/^.*setuptools ([\d\.]+)$/" );
|
||||
return find_max( $lines, "/setuptools\/\d/", "/^.*setuptools\/([\d\.]+).*$/" );
|
||||
|
||||
if ( $package == "markupsafe" )
|
||||
return find_max( $lines, "/markupsafe\/\d/", "/^.*markupsafe\/([\d\.]+).*$/" );
|
||||
|
||||
if ( $package == "jinja" )
|
||||
return find_max( $lines, "/jinja2\/\d/", "/^.*jinja2\/([\d\.]+).*$/" );
|
||||
|
||||
if ( $package == "wheel" )
|
||||
return find_max( $lines, "/wheel\/\d/", "/^.*wheel\/([\d\.]+).*$/" );
|
||||
# End Python modules
|
||||
|
||||
if ( $package == "packaging" )
|
||||
return find_max( $lines, "/packaging/", "/^.*^.*packaging.([\d\.]+\d)\/.*$/" );
|
||||
|
||||
if ( $package == "procps-ng" )
|
||||
return find_max( $lines, "/v\d/", "/^.*v([\d\.]+)$/" );
|
||||
@ -265,9 +275,6 @@ if ( $package == "zstd" ) $dirpath = github("facebook/zstd");
|
||||
if ( $package == "grub" )
|
||||
return find_max( $lines, "/grub/", "/^.*grub-([\d\.]+).tar.xz.*$/" );
|
||||
|
||||
if ( $package == "jinja" )
|
||||
return find_max( $lines, "/Jinja/", "/^.*Jinja2 ([\d\.]+).*$/" );
|
||||
|
||||
if ( $package == "lz4" )
|
||||
return find_max( $lines, "/tag_name/", '/^.*v([\d\.]+).*$/' );
|
||||
|
||||
@ -322,7 +329,7 @@ function get_current()
|
||||
$file = basename( $line ) . "\n";
|
||||
if ( preg_match( "/patch$/", $file ) ) { continue; } // Skip patches
|
||||
|
||||
$file = preg_replace( "/bz2/", '', $file ); // The 2 confusses the regex
|
||||
$file = preg_replace( "/bz2/", '', $file ); // The 2 confuses the regex
|
||||
|
||||
$file = rtrim( $file );
|
||||
$pkg_pattern = "/(\D*).*/";
|
||||
|
558
packages.ent
558
packages.ent
@ -2,7 +2,7 @@
|
||||
|
||||
<!-- Notes:
|
||||
For empty *-home entities use " " not ""
|
||||
Packages sizes allways in KB
|
||||
Packages sizes always in KB
|
||||
Allowed deviation in SBUs : 10%
|
||||
Allowed deviation in disk usage : 2%
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
<!ENTITY acl-url "&savannah;/releases/acl/acl-&acl-version;.tar.xz">
|
||||
<!ENTITY acl-md5 "590765dee95907dbc3c856f7255bd669">
|
||||
<!ENTITY acl-home "&savannah-nongnu;/projects/acl">
|
||||
<!ENTITY acl-fin-du "6.3 MB">
|
||||
<!ENTITY acl-fin-du "6.5 MB">
|
||||
<!ENTITY acl-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY attr-version "2.5.2">
|
||||
@ -35,47 +35,47 @@
|
||||
<!ENTITY autoconf-md5 "1be79f7106ab6767f18391c5e22be701">
|
||||
<!ENTITY autoconf-home "&gnu-software;autoconf/">
|
||||
<!ENTITY autoconf-fin-du "25 MB">
|
||||
<!ENTITY autoconf-fin-sbu-tests "1.8">
|
||||
<!ENTITY autoconf-fin-sbu-tests "0.4">
|
||||
<!ENTITY autoconf-fin-sbu "less than 0.1 SBU (about &autoconf-fin-sbu-tests; SBU with tests)">
|
||||
|
||||
<!ENTITY automake-version "1.17">
|
||||
<!ENTITY am-minor-version "1.17">
|
||||
<!ENTITY automake-version "1.18">
|
||||
<!ENTITY am-minor-version "1.18">
|
||||
<!ENTITY automake-size "1,614 KB">
|
||||
<!ENTITY automake-url "&gnu;automake/automake-&automake-version;.tar.xz">
|
||||
<!ENTITY automake-md5 "7ab3a02318fee6f5bd42adfc369abf10">
|
||||
<!ENTITY automake-md5 "1320dd6a6aae0d97668daa089086c083">
|
||||
<!ENTITY automake-home "&gnu-software;automake/">
|
||||
<!ENTITY automake-fin-du "121 MB">
|
||||
<!ENTITY automake-fin-sbu "less than 0.1 SBU (about 1.1 SBU with tests)">
|
||||
|
||||
<!ENTITY bash-version "5.2.32">
|
||||
<!ENTITY bash-size "10,697 KB">
|
||||
<!ENTITY bash-version "5.3-rc2">
|
||||
<!ENTITY bash-size "10,774 KB">
|
||||
<!ENTITY bash-url "&gnu;bash/bash-&bash-version;.tar.gz">
|
||||
<!ENTITY bash-md5 "f204835b2e06c06e37b5ad776ff907f4">
|
||||
<!ENTITY bash-md5 "9c440d7c5ca37433e496c5e22f8918c6">
|
||||
<!ENTITY bash-home "&gnu-software;bash/">
|
||||
<!ENTITY bash-tmp-du "67 MB">
|
||||
<!ENTITY bash-tmp-du "68 MB">
|
||||
<!ENTITY bash-tmp-sbu "0.2 SBU">
|
||||
<!ENTITY bash-fin-du "52 MB">
|
||||
<!ENTITY bash-fin-du "53 MB">
|
||||
<!ENTITY bash-fin-sbu "1.4 SBU">
|
||||
|
||||
<!ENTITY bc-version "6.7.6">
|
||||
<!ENTITY bc-size "463 KB">
|
||||
<!ENTITY bc-version "7.0.3">
|
||||
<!ENTITY bc-size "464 KB">
|
||||
<!ENTITY bc-url "https://github.com/gavinhoward/bc/releases/download/&bc-version;/bc-&bc-version;.tar.xz">
|
||||
<!ENTITY bc-md5 "a47aa5e4e7395fbcd159a9228613b97b">
|
||||
<!ENTITY bc-home "https://git.gavinhoward.com/gavin/bc">
|
||||
<!ENTITY bc-md5 "ad4db5a0eb4fdbb3f6813be4b6b3da74">
|
||||
<!ENTITY bc-home "https://github.com/gavinhoward">
|
||||
<!ENTITY bc-fin-du "7.8 MB">
|
||||
<!ENTITY bc-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY binutils-version "2.43.1">
|
||||
<!ENTITY binutils-size "27,514 KB">
|
||||
<!ENTITY binutils-version "2.44">
|
||||
<!ENTITY binutils-size "26,647 KB">
|
||||
<!ENTITY binutils-url "https://sourceware.org/pub/binutils/releases/binutils-&binutils-version;.tar.xz">
|
||||
<!ENTITY binutils-md5 "9202d02925c30969d1917e4bad5a2320">
|
||||
<!ENTITY binutils-md5 "49912ce774666a30806141f106124294">
|
||||
<!ENTITY binutils-home "&gnu-software;binutils/">
|
||||
<!ENTITY binutils-tmpp1-du "677 MB">
|
||||
<!ENTITY binutils-tmpp1-sbu "1 SBU">
|
||||
<!ENTITY binutils-tmpp2-du "549 MB">
|
||||
<!ENTITY binutils-tmpp2-du "539 MB">
|
||||
<!ENTITY binutils-tmpp2-sbu "0.4 SBU">
|
||||
<!ENTITY binutils-fin-du "2.7 GB">
|
||||
<!ENTITY binutils-fin-sbu "2.0 SBU">
|
||||
<!ENTITY binutils-fin-du "819 MB">
|
||||
<!ENTITY binutils-fin-sbu "1.6 SBU">
|
||||
<!ENTITY libsframe-version "1.0.0">
|
||||
|
||||
<!ENTITY bison-version "3.8.2">
|
||||
@ -83,10 +83,10 @@
|
||||
<!ENTITY bison-url "&gnu;bison/bison-&bison-version;.tar.xz">
|
||||
<!ENTITY bison-md5 "c28f119f405a2304ff0a7ccdcc629713">
|
||||
<!ENTITY bison-home "&gnu-software;bison/">
|
||||
<!ENTITY bison-tmp-du "57 MB">
|
||||
<!ENTITY bison-tmp-du "58 MB">
|
||||
<!ENTITY bison-tmp-sbu "0.2 SBU">
|
||||
<!ENTITY bison-fin-du "62 MB">
|
||||
<!ENTITY bison-fin-sbu "2.2 SBU">
|
||||
<!ENTITY bison-fin-sbu "2.1 SBU">
|
||||
|
||||
<!ENTITY bzip2-version "1.0.8">
|
||||
<!ENTITY bzip2-size "792 KB">
|
||||
@ -96,30 +96,22 @@
|
||||
<!ENTITY bzip2-fin-du "7.2 MB">
|
||||
<!ENTITY bzip2-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY check-version "0.15.2">
|
||||
<!ENTITY check-size "760 KB">
|
||||
<!ENTITY check-url "&github;/libcheck/check/releases/download/&check-version;/check-&check-version;.tar.gz">
|
||||
<!ENTITY check-md5 "50fcafcecde5a380415b12e9c574e0b2">
|
||||
<!ENTITY check-home "https://libcheck.github.io/check">
|
||||
<!ENTITY check-fin-du "11 MB">
|
||||
<!ENTITY check-fin-sbu "0.1 SBU (about 2.1 SBU with tests)">
|
||||
|
||||
<!ENTITY coreutils-version "9.5">
|
||||
<!ENTITY coreutils-size "5,867 KB">
|
||||
<!ENTITY coreutils-version "9.7">
|
||||
<!ENTITY coreutils-size "6,015 KB">
|
||||
<!ENTITY coreutils-url "&gnu;coreutils/coreutils-&coreutils-version;.tar.xz">
|
||||
<!ENTITY coreutils-md5 "e99adfa059a63db3503cc71f3d151e31">
|
||||
<!ENTITY coreutils-md5 "6b7285faf7d5eb91592bdd689270d3f1">
|
||||
<!ENTITY coreutils-home "&gnu-software;coreutils/">
|
||||
<!ENTITY coreutils-tmp-du "175 MB">
|
||||
<!ENTITY coreutils-tmp-du "181 MB">
|
||||
<!ENTITY coreutils-tmp-sbu "0.3 SBU">
|
||||
<!ENTITY coreutils-fin-du "173 MB">
|
||||
<!ENTITY coreutils-fin-sbu "1.1 SBU">
|
||||
<!ENTITY coreutils-fin-du "182 MB">
|
||||
<!ENTITY coreutils-fin-sbu "1.2 SBU">
|
||||
|
||||
<!ENTITY dbus-version "1.14.10">
|
||||
<!ENTITY dbus-size "1,344 KB">
|
||||
<!ENTITY dbus-version "1.16.2">
|
||||
<!ENTITY dbus-size "1,090 KB">
|
||||
<!ENTITY dbus-url "https://dbus.freedesktop.org/releases/dbus/dbus-&dbus-version;.tar.xz">
|
||||
<!ENTITY dbus-md5 "46070a3487817ff690981f8cd2ba9376">
|
||||
<!ENTITY dbus-md5 "97832e6f0a260936d28536e5349c22e5">
|
||||
<!ENTITY dbus-home "https://www.freedesktop.org/wiki/Software/dbus">
|
||||
<!ENTITY dbus-fin-du "19 MB">
|
||||
<!ENTITY dbus-fin-du "17 MB">
|
||||
<!ENTITY dbus-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY dejagnu-version "1.6.3">
|
||||
@ -130,38 +122,38 @@
|
||||
<!ENTITY dejagnu-tmp-du "6.9 MB">
|
||||
<!ENTITY dejagnu-tmp-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY diffutils-version "3.10">
|
||||
<!ENTITY diffutils-size "1,587 KB">
|
||||
<!ENTITY diffutils-version "3.12">
|
||||
<!ENTITY diffutils-size "1,894 KB">
|
||||
<!ENTITY diffutils-url "&gnu;diffutils/diffutils-&diffutils-version;.tar.xz">
|
||||
<!ENTITY diffutils-md5 "2745c50f6f4e395e7b7d52f902d075bf">
|
||||
<!ENTITY diffutils-md5 "d1b18b20868fb561f77861cd90b05de4">
|
||||
<!ENTITY diffutils-home "&gnu-software;diffutils/">
|
||||
<!ENTITY diffutils-tmp-du "29 MB">
|
||||
<!ENTITY diffutils-tmp-du "35 MB">
|
||||
<!ENTITY diffutils-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY diffutils-fin-du "42 MB">
|
||||
<!ENTITY diffutils-fin-sbu "0.3 SBU">
|
||||
<!ENTITY diffutils-fin-du "50 MB">
|
||||
<!ENTITY diffutils-fin-sbu "0.4 SBU">
|
||||
|
||||
<!ENTITY e2fsprogs-version "1.47.1">
|
||||
<!ENTITY e2fsprogs-size "9,720 KB">
|
||||
<!ENTITY e2fsprogs-version "1.47.2">
|
||||
<!ENTITY e2fsprogs-size "9,763 KB">
|
||||
<!ENTITY e2fsprogs-url "https://downloads.sourceforge.net/project/e2fsprogs/e2fsprogs/v&e2fsprogs-version;/e2fsprogs-&e2fsprogs-version;.tar.gz">
|
||||
<!ENTITY e2fsprogs-md5 "75e6d1353cbe6d5728a98fb0267206cb">
|
||||
<!ENTITY e2fsprogs-md5 "752e5a3ce19aea060d8a203f2fae9baa">
|
||||
<!ENTITY e2fsprogs-home "https://e2fsprogs.sourceforge.net/">
|
||||
<!ENTITY e2fsprogs-fin-du "98 MB">
|
||||
<!ENTITY e2fsprogs-fin-du "99 MB">
|
||||
<!ENTITY e2fsprogs-fin-sbu "2.4 SBU on a spinning disk, 0.5 SBU on an SSD">
|
||||
|
||||
<!ENTITY elfutils-version "0.191"> <!-- libelf -->
|
||||
<!ENTITY elfutils-size "9,092 KB">
|
||||
<!ENTITY elfutils-version "0.193"> <!-- libelf -->
|
||||
<!ENTITY elfutils-size "11,695 KB">
|
||||
<!ENTITY elfutils-url "https://sourceware.org/ftp/elfutils/&elfutils-version;/elfutils-&elfutils-version;.tar.bz2">
|
||||
<!ENTITY elfutils-md5 "636547248fb3fae58ec48030298d3ef7">
|
||||
<!ENTITY elfutils-md5 "ceefa052ded950a4c523688799193a44">
|
||||
<!ENTITY elfutils-home "https://sourceware.org/elfutils/">
|
||||
<!ENTITY elfutils-fin-du "127 MB">
|
||||
<!ENTITY elfutils-fin-du "135 MB">
|
||||
<!ENTITY elfutils-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY expat-version "2.6.2">
|
||||
<!ENTITY expat-size "474 KB">
|
||||
<!ENTITY expat-url "&sourceforge;expat/expat-&expat-version;.tar.xz">
|
||||
<!ENTITY expat-md5 "0cb75c8feb842c0794ba89666b762a2d">
|
||||
<!ENTITY expat-version "2.7.1">
|
||||
<!ENTITY expat-size "485 KB">
|
||||
<!ENTITY expat-url "&github;/libexpat/libexpat/releases/download/R_2_7_1/expat-&expat-version;.tar.xz">
|
||||
<!ENTITY expat-md5 "9f0c266ff4b9720beae0c6bd53ae4469">
|
||||
<!ENTITY expat-home "https://libexpat.github.io/">
|
||||
<!ENTITY expat-fin-du "13 MB">
|
||||
<!ENTITY expat-fin-du "14 MB">
|
||||
<!ENTITY expat-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY expect-version "5.45.4">
|
||||
@ -172,14 +164,14 @@
|
||||
<!ENTITY expect-tmp-du "3.9 MB">
|
||||
<!ENTITY expect-tmp-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY file-version "5.45">
|
||||
<!ENTITY file-size "1,218 KB">
|
||||
<!ENTITY file-version "5.46">
|
||||
<!ENTITY file-size "1,283 KB">
|
||||
<!ENTITY file-url "https://astron.com/pub/file/file-&file-version;.tar.gz">
|
||||
<!ENTITY file-md5 "26b2a96d4e3a8938827a1e572afd527a">
|
||||
<!ENTITY file-md5 "459da2d4b534801e2e2861611d823864">
|
||||
<!ENTITY file-home "https://www.darwinsys.com/file/">
|
||||
<!ENTITY file-tmp-du "37 MB">
|
||||
<!ENTITY file-tmp-du "42 MB">
|
||||
<!ENTITY file-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY file-fin-du "17 MB">
|
||||
<!ENTITY file-fin-du "19 MB">
|
||||
<!ENTITY file-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY findutils-version "4.10.0">
|
||||
@ -189,7 +181,7 @@
|
||||
<!ENTITY findutils-home "&gnu-software;findutils/">
|
||||
<!ENTITY findutils-tmp-du "48 MB">
|
||||
<!ENTITY findutils-tmp-sbu "0.2 SBU">
|
||||
<!ENTITY findutils-fin-du "62 MB">
|
||||
<!ENTITY findutils-fin-du "63 MB">
|
||||
<!ENTITY findutils-fin-sbu "0.7 SBU">
|
||||
|
||||
<!ENTITY flex-version "2.6.4">
|
||||
@ -200,33 +192,33 @@
|
||||
<!ENTITY flex-fin-du "33 MB">
|
||||
<!ENTITY flex-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY flit-core-version "3.9.0">
|
||||
<!ENTITY flit-core-size "41 KB">
|
||||
<!ENTITY flit-core-version "3.12.0">
|
||||
<!ENTITY flit-core-size "53 KB">
|
||||
<!ENTITY flit-core-url "&pypi-src;/f/flit-core/flit_core-&flit-core-version;.tar.gz">
|
||||
<!ENTITY flit-core-md5 "3bc52f1952b9a78361114147da63c35b">
|
||||
<!ENTITY flit-core-md5 "c538415c1f27bd69cbbbf3cdd5135d39">
|
||||
<!ENTITY flit-core-home "&pypi-home;/flit-core/">
|
||||
<!ENTITY flit-core-fin-du "1.6 MB">
|
||||
<!ENTITY flit-core-fin-du "1.0 MB">
|
||||
<!ENTITY flit-core-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY gawk-version "5.3.0">
|
||||
<!ENTITY gawk-size "3,356 KB">
|
||||
<!ENTITY gawk-version "5.3.2">
|
||||
<!ENTITY gawk-size "3,662 KB">
|
||||
<!ENTITY gawk-url "&gnu;gawk/gawk-&gawk-version;.tar.xz">
|
||||
<!ENTITY gawk-md5 "97c5a7d83f91a7e1b2035ebbe6ac7abd">
|
||||
<!ENTITY gawk-md5 "b7014650c5f45e5d4837c31209dc0037">
|
||||
<!ENTITY gawk-home "&gnu-software;gawk/">
|
||||
<!ENTITY gawk-tmp-du "47 MB">
|
||||
<!ENTITY gawk-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY gawk-fin-du "42 MB">
|
||||
<!ENTITY gawk-fin-du "43 MB">
|
||||
<!ENTITY gawk-fin-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY gcc-version "14.2.0">
|
||||
<!ENTITY gcc-size "90,144 KB">
|
||||
<!ENTITY gcc-version "15.1.0">
|
||||
<!ENTITY gcc-size "95,966 KB">
|
||||
<!ENTITY gcc-url "&gnu;gcc/gcc-&gcc-version;/gcc-&gcc-version;.tar.xz">
|
||||
<!ENTITY gcc-md5 "2268420ba02dc01821960e274711bde0">
|
||||
<!ENTITY gcc-md5 "e55d13c55428bca27b4d2ea02f883135">
|
||||
<!ENTITY gcc-home "https://gcc.gnu.org/">
|
||||
<!ENTITY gcc-tmpp1-du "4.9 GB">
|
||||
<!ENTITY gcc-tmpp1-du "4.8 GB">
|
||||
<!ENTITY gcc-tmpp1-sbu "3.2 SBU">
|
||||
<!ENTITY gcc-tmpp2-du "5.5 GB">
|
||||
<!ENTITY gcc-tmpp2-sbu "4.2 SBU">
|
||||
<!ENTITY gcc-tmpp2-sbu "4.1 SBU">
|
||||
<!ENTITY gcc-fin-du "6.3 GB ">
|
||||
<!ENTITY gcc-fin-sbu "46 SBU (with tests)">
|
||||
<!ENTITY libquadmath-version "0.0.0">
|
||||
@ -234,35 +226,35 @@
|
||||
<!ENTITY libitm-version "1.0.0">
|
||||
<!ENTITY libatomic-version "1.2.0">
|
||||
|
||||
<!ENTITY libstdcpp-tmpp1-du "1.2 GB">
|
||||
<!ENTITY libstdcpp-tmpp1-du "850 MB">
|
||||
<!ENTITY libstdcpp-tmpp1-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY gdbm-version "1.24">
|
||||
<!ENTITY gdbm-size "1,168 KB">
|
||||
<!ENTITY gdbm-version "1.25">
|
||||
<!ENTITY gdbm-size "1,196 KB">
|
||||
<!ENTITY gdbm-url "&gnu;gdbm/gdbm-&gdbm-version;.tar.gz">
|
||||
<!ENTITY gdbm-md5 "c780815649e52317be48331c1773e987">
|
||||
<!ENTITY gdbm-md5 "46266720c7980b75f29e3554aeaeb7a8">
|
||||
<!ENTITY gdbm-home "&gnu-software;gdbm/">
|
||||
<!ENTITY gdbm-fin-du "13 MB">
|
||||
<!ENTITY gdbm-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY gettext-version "0.22.5">
|
||||
<!ENTITY gettext-size "10,031 KB">
|
||||
<!ENTITY gettext-version "0.25">
|
||||
<!ENTITY gettext-size "9,701 KB">
|
||||
<!ENTITY gettext-url "&gnu;gettext/gettext-&gettext-version;.tar.xz">
|
||||
<!ENTITY gettext-md5 "3ae5580599d84be93e6213930facb2db">
|
||||
<!ENTITY gettext-md5 "355a09fa53ae2e87dd493e040d437874">
|
||||
<!ENTITY gettext-home "&gnu-software;gettext/">
|
||||
<!ENTITY gettext-tmp-du "321 MB">
|
||||
<!ENTITY gettext-tmp-sbu "1.1 SBU">
|
||||
<!ENTITY gettext-fin-du "260 MB">
|
||||
<!ENTITY gettext-fin-sbu "1.6 SBU">
|
||||
<!ENTITY gettext-tmp-du "349 MB">
|
||||
<!ENTITY gettext-tmp-sbu "1.3 SBU">
|
||||
<!ENTITY gettext-fin-du "290 MB">
|
||||
<!ENTITY gettext-fin-sbu "1.7 SBU">
|
||||
|
||||
<!ENTITY glibc-version "2.40">
|
||||
<!ENTITY glibc-size "18,313 KB">
|
||||
<!ENTITY glibc-version "2.41">
|
||||
<!ENTITY glibc-size "18,892 KB">
|
||||
<!ENTITY glibc-url "&gnu;glibc/glibc-&glibc-version;.tar.xz">
|
||||
<!ENTITY glibc-md5 "b390feef233022114950317f10c4fa97">
|
||||
<!ENTITY glibc-md5 "19862601af60f73ac69e067d3e9267d4">
|
||||
<!ENTITY glibc-home "&gnu-software;libc/">
|
||||
<!ENTITY glibc-tmp-du "828 MB">
|
||||
<!ENTITY glibc-tmp-sbu "1.3 SBU">
|
||||
<!ENTITY glibc-fin-du "3.1 GB">
|
||||
<!ENTITY glibc-tmp-du "850 MB">
|
||||
<!ENTITY glibc-tmp-sbu "1.4 SBU">
|
||||
<!ENTITY glibc-fin-du "3.2 GB">
|
||||
<!ENTITY glibc-fin-sbu "12 SBU">
|
||||
|
||||
<!ENTITY gmp-version "6.3.0">
|
||||
@ -273,18 +265,18 @@
|
||||
<!ENTITY gmp-fin-du "54 MB">
|
||||
<!ENTITY gmp-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY gperf-version "3.1">
|
||||
<!ENTITY gperf-size "1,188 KB">
|
||||
<!ENTITY gperf-version "3.3">
|
||||
<!ENTITY gperf-size "1,789 KB">
|
||||
<!ENTITY gperf-url "&gnu;gperf/gperf-&gperf-version;.tar.gz">
|
||||
<!ENTITY gperf-md5 "9e251c0a618ad0824b51117d5d9db87e">
|
||||
<!ENTITY gperf-md5 "31753b021ea78a21f154bf9eecb8b079">
|
||||
<!ENTITY gperf-home "&gnu-software;gperf/">
|
||||
<!ENTITY gperf-fin-du "6.1 MB">
|
||||
<!ENTITY gperf-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY grep-version "3.11">
|
||||
<!ENTITY grep-size "1,664 KB">
|
||||
<!ENTITY grep-version "3.12">
|
||||
<!ENTITY grep-size "1,874 KB">
|
||||
<!ENTITY grep-url "&gnu;grep/grep-&grep-version;.tar.xz">
|
||||
<!ENTITY grep-md5 "7c9bbd74492131245f7cdb291fa142c0">
|
||||
<!ENTITY grep-md5 "5d9301ed9d209c4a88c8d3a6fd08b9ac">
|
||||
<!ENTITY grep-home "&gnu-software;grep/">
|
||||
<!ENTITY grep-tmp-du "27 MB">
|
||||
<!ENTITY grep-tmp-sbu "0.1 SBU">
|
||||
@ -296,7 +288,7 @@
|
||||
<!ENTITY groff-url "&gnu;groff/groff-&groff-version;.tar.gz">
|
||||
<!ENTITY groff-md5 "5e4f40315a22bb8a158748e7d5094c7d">
|
||||
<!ENTITY groff-home "&gnu-software;groff/">
|
||||
<!ENTITY groff-fin-du "107 MB">
|
||||
<!ENTITY groff-fin-du "108 MB">
|
||||
<!ENTITY groff-fin-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY grub-version "2.12">
|
||||
@ -307,28 +299,28 @@
|
||||
<!ENTITY grub-fin-du "166 MB">
|
||||
<!ENTITY grub-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY gzip-version "1.13">
|
||||
<!ENTITY gzip-size "819 KB">
|
||||
<!ENTITY gzip-version "1.14">
|
||||
<!ENTITY gzip-size "865 KB">
|
||||
<!ENTITY gzip-url "&gnu;gzip/gzip-&gzip-version;.tar.xz">
|
||||
<!ENTITY gzip-md5 "d5c9fc9441288817a4a0be2da0249e29">
|
||||
<!ENTITY gzip-md5 "4bf5a10f287501ee8e8ebe00ef62b2c2">
|
||||
<!ENTITY gzip-home "&gnu-software;gzip/">
|
||||
<!ENTITY gzip-tmp-du "11 MB">
|
||||
<!ENTITY gzip-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY gzip-fin-du "21 MB">
|
||||
<!ENTITY gzip-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY iana-etc-version "20240806">
|
||||
<!ENTITY iana-etc-size "590 KB">
|
||||
<!ENTITY iana-etc-version "20250519">
|
||||
<!ENTITY iana-etc-size "592 KB">
|
||||
<!ENTITY iana-etc-url "https://github.com/Mic92/iana-etc/releases/download/&iana-etc-version;/iana-etc-&iana-etc-version;.tar.gz">
|
||||
<!ENTITY iana-etc-md5 "ea3c37c00d22f1159fc3b7d988de8476">
|
||||
<!ENTITY iana-etc-md5 "45778351c7eda633946a777cd8e24eb8">
|
||||
<!ENTITY iana-etc-home "https://www.iana.org/protocols">
|
||||
<!ENTITY iana-etc-fin-du "4.8 MB">
|
||||
<!ENTITY iana-etc-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY inetutils-version "2.5">
|
||||
<!ENTITY inetutils-size "1,632 KB">
|
||||
<!ENTITY inetutils-version "2.6">
|
||||
<!ENTITY inetutils-size "1,724 KB">
|
||||
<!ENTITY inetutils-url "&gnu;inetutils/inetutils-&inetutils-version;.tar.xz">
|
||||
<!ENTITY inetutils-md5 "9e5a6dfd2d794dc056a770e8ad4a9263">
|
||||
<!ENTITY inetutils-md5 "401d7d07682a193960bcdecafd03de94">
|
||||
<!ENTITY inetutils-home "&gnu-software;inetutils/">
|
||||
<!ENTITY inetutils-fin-du "35 MB">
|
||||
<!ENTITY inetutils-fin-sbu "0.2 SBU">
|
||||
@ -341,47 +333,47 @@
|
||||
<!ENTITY intltool-fin-du "1.5 MB">
|
||||
<!ENTITY intltool-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY iproute2-version "6.10.0">
|
||||
<!ENTITY iproute2-size "900 KB">
|
||||
<!ENTITY iproute2-version "6.15.0">
|
||||
<!ENTITY iproute2-size "910 KB">
|
||||
<!ENTITY iproute2-url "&kernel;linux/utils/net/iproute2/iproute2-&iproute2-version;.tar.xz">
|
||||
<!ENTITY iproute2-md5 "6282e47de9c5b230e83537fba7181c9c">
|
||||
<!ENTITY iproute2-md5 "d85d77deed57e055cb2d1409595a6348">
|
||||
<!ENTITY iproute2-home "&kernel;linux/utils/net/iproute2/">
|
||||
<!ENTITY iproute2-fin-du "17 MB">
|
||||
<!ENTITY iproute2-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY jinja2-version "3.1.4">
|
||||
<!ENTITY jinja2-size "235 KB">
|
||||
<!ENTITY jinja2-version "3.1.6">
|
||||
<!ENTITY jinja2-size "240 KB">
|
||||
<!ENTITY jinja2-url "&pypi-src;/J/Jinja2/jinja2-&jinja2-version;.tar.gz">
|
||||
<!ENTITY jinja2-md5 "02ca9a6364c92e83d14b037bef4732bc">
|
||||
<!ENTITY jinja2-md5 "66d4c25ff43d1deaf9637ccda523dec8">
|
||||
<!ENTITY jinja2-home "https://jinja.palletsprojects.com/en/3.1.x/">
|
||||
<!ENTITY jinja2-fin-du "2.5 MB">
|
||||
<!ENTITY jinja2-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY kbd-version "2.6.4">
|
||||
<!ENTITY kbd-size "1,470 KB">
|
||||
<!ENTITY kbd-version "2.8.0">
|
||||
<!ENTITY kbd-size "1,448 KB">
|
||||
<!ENTITY kbd-url "https://www.kernel.org/pub/linux/utils/kbd/kbd-&kbd-version;.tar.xz">
|
||||
<!ENTITY kbd-md5 "e2fd7adccf6b1e98eb1ae8d5a1ce5762">
|
||||
<!ENTITY kbd-md5 "24b5d24f7483726b88f214dc6c77aa41">
|
||||
<!ENTITY kbd-home "https://kbd-project.org/">
|
||||
<!ENTITY kbd-fin-du "34 MB">
|
||||
<!ENTITY kbd-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY kmod-version "33">
|
||||
<!ENTITY kmod-size "503 KB">
|
||||
<!ENTITY kmod-version "34.2">
|
||||
<!ENTITY kmod-size "434 KB">
|
||||
<!ENTITY kmod-url "&kernel;linux/utils/kernel/kmod/kmod-&kmod-version;.tar.xz">
|
||||
<!ENTITY kmod-md5 "c451c4aa61521adbe8af147f498046f8">
|
||||
<!ENTITY kmod-md5 "36f2cc483745e81ede3406fa55e1065a">
|
||||
<!ENTITY kmod-home "https://github.com/kmod-project/kmod">
|
||||
<!ENTITY kmod-fin-du "11 MB">
|
||||
<!ENTITY kmod-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY less-version "661">
|
||||
<!ENTITY less-size "634 KB">
|
||||
<!ENTITY less-version "678">
|
||||
<!ENTITY less-size "857 KB">
|
||||
<!ENTITY less-url "https://www.greenwoodsoftware.com/less/less-&less-version;.tar.gz">
|
||||
<!ENTITY less-md5 "44f54b6313c5d71fa1ac224d8d84766a">
|
||||
<!ENTITY less-md5 "19b055a2ee7db1bf910380fd04c41ffc">
|
||||
<!ENTITY less-home "https://www.greenwoodsoftware.com/less/">
|
||||
<!ENTITY less-fin-du "14 MB">
|
||||
<!ENTITY less-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY lfs-bootscripts-version "20240717"> <!-- Scripts depend on this format -->
|
||||
<!ENTITY lfs-bootscripts-version "20240825"> <!-- Scripts depend on this format -->
|
||||
<!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE KB">
|
||||
<!ENTITY lfs-bootscripts-url "&downloads-root;lfs-bootscripts-&lfs-bootscripts-version;.tar.xz">
|
||||
<!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM">
|
||||
@ -389,54 +381,54 @@
|
||||
<!ENTITY lfs-bootscripts-cfg-du "BOOTSCRIPTS-INSTALL-KB KB">
|
||||
<!ENTITY lfs-bootscripts-cfg-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY libcap-version "2.70">
|
||||
<!ENTITY libcap-size "187 KB">
|
||||
<!ENTITY libcap-version "2.76">
|
||||
<!ENTITY libcap-size "195 KB">
|
||||
<!ENTITY libcap-url "&kernel;linux/libs/security/linux-privs/libcap2/libcap-&libcap-version;.tar.xz">
|
||||
<!ENTITY libcap-md5 "df0e20c6eeca849347b87d5d6a8870c0">
|
||||
<!ENTITY libcap-md5 "449ade7d620b5c4eeb15a632fbaa4f74">
|
||||
<!ENTITY libcap-home "https://sites.google.com/site/fullycapable/">
|
||||
<!ENTITY libcap-fin-du "2.9 MB">
|
||||
<!ENTITY libcap-fin-du "3.0 MB">
|
||||
<!ENTITY libcap-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY libffi-version "3.4.6">
|
||||
<!ENTITY libffi-size "1,360 KB">
|
||||
<!ENTITY libffi-version "3.5.1">
|
||||
<!ENTITY libffi-size "1,387 KB">
|
||||
<!ENTITY libffi-url "https://github.com/libffi/libffi/releases/download/v&libffi-version;/libffi-&libffi-version;.tar.gz">
|
||||
<!ENTITY libffi-md5 "b9cac6c5997dca2b3787a59ede34e0eb">
|
||||
<!ENTITY libffi-md5 "a67b82e7ec069f15cd81c23ced5049f4">
|
||||
<!ENTITY libffi-home "https://sourceware.org/libffi/">
|
||||
<!ENTITY libffi-fin-du "11 MB">
|
||||
<!ENTITY libffi-fin-sbu "1.7 SBU">
|
||||
|
||||
<!ENTITY libpipeline-version "1.5.7">
|
||||
<!ENTITY libpipeline-size "956 KB">
|
||||
<!ENTITY libpipeline-version "1.5.8">
|
||||
<!ENTITY libpipeline-size "1046 KB">
|
||||
<!ENTITY libpipeline-url "&savannah;/releases/libpipeline/libpipeline-&libpipeline-version;.tar.gz">
|
||||
<!ENTITY libpipeline-md5 "1a48b5771b9f6c790fb4efdb1ac71342">
|
||||
<!ENTITY libpipeline-md5 "17ac6969b2015386bcb5d278a08a40b5">
|
||||
<!ENTITY libpipeline-home "https://libpipeline.nongnu.org/">
|
||||
<!ENTITY libpipeline-fin-du "9.7 MB">
|
||||
<!ENTITY libpipeline-fin-du "11 MB">
|
||||
<!ENTITY libpipeline-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY libtool-version "2.4.7">
|
||||
<!ENTITY libtool-size "996 KB">
|
||||
<!ENTITY libtool-version "2.5.4">
|
||||
<!ENTITY libtool-size "1,033 KB">
|
||||
<!ENTITY libtool-url "&gnu;libtool/libtool-&libtool-version;.tar.xz">
|
||||
<!ENTITY libtool-md5 "2fc0b6ddcd66a89ed6e45db28fa44232">
|
||||
<!ENTITY libtool-md5 "22e0a29df8af5fdde276ea3a7d351d30">
|
||||
<!ENTITY libtool-home "&gnu-software;libtool/">
|
||||
<!ENTITY libtool-fin-du "45 MB">
|
||||
<!ENTITY libtool-fin-sbu "0.8 SBU">
|
||||
<!ENTITY libtool-fin-du "44 MB">
|
||||
<!ENTITY libtool-fin-sbu "0.6 SBU">
|
||||
|
||||
<!ENTITY libxcrypt-version "4.4.36">
|
||||
<!ENTITY libxcrypt-size "610 KB">
|
||||
<!ENTITY libxcrypt-version "4.4.38">
|
||||
<!ENTITY libxcrypt-size "612 KB">
|
||||
<!ENTITY libxcrypt-url "&github;/besser82/libxcrypt/releases/download/v&libxcrypt-version;/libxcrypt-&libxcrypt-version;.tar.xz">
|
||||
<!ENTITY libxcrypt-md5 "b84cd4104e08c975063ec6c4d0372446">
|
||||
<!ENTITY libxcrypt-md5 "1796a5d20098e9dd9e3f576803c83000">
|
||||
<!ENTITY libxcrypt-home "&github;/besser82/libxcrypt/">
|
||||
<!ENTITY libxcrypt-fin-du "12 MB">
|
||||
<!ENTITY libxcrypt-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY linux-major-version "6">
|
||||
<!ENTITY linux-minor-version "10">
|
||||
<!ENTITY linux-patch-version "5">
|
||||
<!ENTITY linux-minor-version "15">
|
||||
<!ENTITY linux-patch-version "2">
|
||||
<!--<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;">-->
|
||||
<!ENTITY linux-version "&linux-major-version;.&linux-minor-version;.&linux-patch-version;">
|
||||
<!ENTITY linux-size "141,739 KB">
|
||||
<!ENTITY linux-size "147,636 KB">
|
||||
<!ENTITY linux-url "&kernel;linux/kernel/v&linux-major-version;.x/linux-&linux-version;.tar.xz">
|
||||
<!ENTITY linux-md5 "276ef1f11ed3713ec5d6f506ff55ac12">
|
||||
<!ENTITY linux-md5 "adb5495ce6e317091541057344fcf0a6">
|
||||
<!ENTITY linux-home "https://www.kernel.org/">
|
||||
<!-- measured for 6.10.1 / gcc-14.1.0 on x86_64 with -j4 :
|
||||
minimum is allnoconfig
|
||||
@ -459,14 +451,14 @@
|
||||
<!ENTITY lz4-fin-du "4.2 MB">
|
||||
<!ENTITY lz4-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY m4-version "1.4.19">
|
||||
<!ENTITY m4-size "1,617 KB">
|
||||
<!ENTITY m4-version "1.4.20">
|
||||
<!ENTITY m4-size "1,997 KB">
|
||||
<!ENTITY m4-url "&gnu;m4/m4-&m4-version;.tar.xz">
|
||||
<!ENTITY m4-md5 "0d90823e1426f1da2fd872df0311298d">
|
||||
<!ENTITY m4-md5 "6eb2ebed5b24e74b6e890919331d2132">
|
||||
<!ENTITY m4-home "&gnu-software;m4/">
|
||||
<!ENTITY m4-tmp-du "31 MB">
|
||||
<!ENTITY m4-tmp-du "32 MB">
|
||||
<!ENTITY m4-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY m4-fin-du "48 MB">
|
||||
<!ENTITY m4-fin-du "49 MB">
|
||||
<!ENTITY m4-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY make-version "4.4.1">
|
||||
@ -479,36 +471,36 @@
|
||||
<!ENTITY make-fin-du "13 MB">
|
||||
<!ENTITY make-fin-sbu "0.7 SBU">
|
||||
|
||||
<!ENTITY man-db-version "2.12.1">
|
||||
<!ENTITY man-db-size "1,994 KB">
|
||||
<!ENTITY man-db-version "2.13.1">
|
||||
<!ENTITY man-db-size "2,061 KB">
|
||||
<!ENTITY man-db-url "&savannah;/releases/man-db/man-db-&man-db-version;.tar.xz">
|
||||
<!ENTITY man-db-md5 "7b044e5020aab89db41ac7ee59d6d84a">
|
||||
<!ENTITY man-db-md5 "b6335533cbeac3b24cd7be31fdee8c83">
|
||||
<!ENTITY man-db-home "https://www.nongnu.org/man-db/">
|
||||
<!ENTITY man-db-fin-du "43 MB">
|
||||
<!ENTITY man-db-fin-du "44 MB">
|
||||
<!ENTITY man-db-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY man-pages-version "6.9.1">
|
||||
<!ENTITY man-pages-size "1,821 KB">
|
||||
<!ENTITY man-pages-version "6.14">
|
||||
<!ENTITY man-pages-size "1,814 KB">
|
||||
<!ENTITY man-pages-url "&kernel;linux/docs/man-pages/man-pages-&man-pages-version;.tar.xz">
|
||||
<!ENTITY man-pages-md5 "4d56775b6cce4edf1e496249e7c01c1a">
|
||||
<!ENTITY man-pages-md5 "d0c9b48d6c4b4c26ec580970c461ebfa">
|
||||
<!ENTITY man-pages-home "https://www.kernel.org/doc/man-pages/">
|
||||
<!ENTITY man-pages-fin-du "52 MB">
|
||||
<!ENTITY man-pages-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY markupsafe-version "2.1.5">
|
||||
<!ENTITY markupsafe-size "19 KB">
|
||||
<!ENTITY markupsafe-url "&pypi-src;/M/MarkupSafe/MarkupSafe-&markupsafe-version;.tar.gz">
|
||||
<!ENTITY markupsafe-md5 "8fe7227653f2fb9b1ffe7f9f2058998a">
|
||||
<!ENTITY markupsafe-version "3.0.2">
|
||||
<!ENTITY markupsafe-size "21 KB">
|
||||
<!ENTITY markupsafe-url "&pypi-src;/M/MarkupSafe/markupsafe-&markupsafe-version;.tar.gz">
|
||||
<!ENTITY markupsafe-md5 "cb0071711b573b155cc8f86e1de72167">
|
||||
<!ENTITY markupsafe-home "https://palletsprojects.com/p/markupsafe/">
|
||||
<!ENTITY markupsafe-fin-du "508 KB">
|
||||
<!ENTITY markupsafe-fin-du "500 KB">
|
||||
<!ENTITY markupsafe-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY meson-version "1.5.1">
|
||||
<!ENTITY meson-size "2,205 KB">
|
||||
<!ENTITY meson-version "1.8.2">
|
||||
<!ENTITY meson-size "2,281 KB">
|
||||
<!ENTITY meson-url "&github;/mesonbuild/meson/releases/download/&meson-version;/meson-&meson-version;.tar.gz">
|
||||
<!ENTITY meson-md5 "c4f2b3e5ea632685f61ba1b833c4905c">
|
||||
<!ENTITY meson-md5 "677d8dfec2a8c25bcc4de4227403fe0a">
|
||||
<!ENTITY meson-home "https://mesonbuild.com">
|
||||
<!ENTITY meson-fin-du "43 MB">
|
||||
<!ENTITY meson-fin-du "44 MB">
|
||||
<!ENTITY meson-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY mpc-version "1.3.1">
|
||||
@ -519,18 +511,19 @@
|
||||
<!ENTITY mpc-fin-du "22 MB">
|
||||
<!ENTITY mpc-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY mpfr-version "4.2.1">
|
||||
<!ENTITY mpfr-size "1,459 KB">
|
||||
<!ENTITY mpfr-version "4.2.2">
|
||||
<!ENTITY mpfr-size "1,471 KB">
|
||||
<!ENTITY mpfr-url "https://ftp.gnu.org/gnu/mpfr/mpfr-&mpfr-version;.tar.xz">
|
||||
<!ENTITY mpfr-md5 "523c50c6318dde6f9dc523bc0244690a">
|
||||
<!ENTITY mpfr-md5 "7c32c39b8b6e3ae85f25156228156061">
|
||||
<!ENTITY mpfr-home "https://www.mpfr.org/">
|
||||
<!ENTITY mpfr-fin-du "43 MB">
|
||||
<!ENTITY mpfr-fin-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY ncurses-version "6.5">
|
||||
<!ENTITY ncurses-size "2,156 KB">
|
||||
<!ENTITY ncurses-url "https://invisible-mirror.net/archives/ncurses/ncurses-&ncurses-version;.tar.gz">
|
||||
<!ENTITY ncurses-md5 "ac2d2629296f04c8537ca706b6977687">
|
||||
<!ENTITY ncurses-version "6.5-20250531">
|
||||
<!ENTITY ncurses-base-version "6.5">
|
||||
<!ENTITY ncurses-size "3,700 KB">
|
||||
<!ENTITY ncurses-url "https://invisible-mirror.net/archives/ncurses/current/ncurses-&ncurses-version;.tgz">
|
||||
<!ENTITY ncurses-md5 "5104913b6dc4804c45442b710c9ae912">
|
||||
<!ENTITY ncurses-home "&gnu-software;ncurses/">
|
||||
<!ENTITY ncurses-tmp-du "53 MB">
|
||||
<!ENTITY ncurses-tmp-sbu "0.4 SBU">
|
||||
@ -545,18 +538,26 @@
|
||||
<!ENTITY ninja-fin-du "37 MB">
|
||||
<!ENTITY ninja-fin-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY openssl-version "3.3.1">
|
||||
<!ENTITY openssl-size "17,633 KB">
|
||||
<!ENTITY openssl-url "https://www.openssl.org/source/openssl-&openssl-version;.tar.gz">
|
||||
<!ENTITY openssl-md5 "8a4342b399c18f870ca6186299195984">
|
||||
<!ENTITY openssl-home "https://www.openssl.org/">
|
||||
<!ENTITY openssl-fin-du "883 MB">
|
||||
<!ENTITY openssl-fin-sbu "1.7 SBU">
|
||||
<!ENTITY openssl-version "3.5.0">
|
||||
<!ENTITY openssl-size "51,892 KB">
|
||||
<!ENTITY openssl-url "&github;/openssl/openssl/releases/download/openssl-&openssl-version;/openssl-&openssl-version;.tar.gz">
|
||||
<!ENTITY openssl-md5 "51da7d2bdf7f4f508cb024f562eb9b03">
|
||||
<!ENTITY openssl-home "https://www.openssl-library.org/">
|
||||
<!ENTITY openssl-fin-du "920 MB">
|
||||
<!ENTITY openssl-fin-sbu "1.8 SBU">
|
||||
|
||||
<!ENTITY patch-version "2.7.6">
|
||||
<!ENTITY patch-size "766 KB">
|
||||
<!ENTITY packaging-version "25.0">
|
||||
<!ENTITY packaging-size "162 KB">
|
||||
<!ENTITY packaging-url "https://files.pythonhosted.org/packages/source/p/packaging/packaging-&packaging-version;.tar.gz">
|
||||
<!ENTITY packaging-md5 "ab0ef21ddebe09d1803575120d3f99f8">
|
||||
<!ENTITY packaging-home "&pypi-home;/packaging/">
|
||||
<!ENTITY packaging-fin-du "2.7 MB">
|
||||
<!ENTITY packaging-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY patch-version "2.8">
|
||||
<!ENTITY patch-size "886 KB">
|
||||
<!ENTITY patch-url "&gnu;patch/patch-&patch-version;.tar.xz">
|
||||
<!ENTITY patch-md5 "78ad9937e4caadcba1526ef1853730d5">
|
||||
<!ENTITY patch-md5 "149327a021d41c8f88d034eab41c039f">
|
||||
<!ENTITY patch-home "https://savannah.gnu.org/projects/patch/">
|
||||
<!ENTITY patch-tmp-du "12 MB">
|
||||
<!ENTITY patch-tmp-sbu "0.1 SBU">
|
||||
@ -565,32 +566,32 @@
|
||||
|
||||
<!ENTITY perl-version-major "5">
|
||||
<!ENTITY perl-version-minor "40">
|
||||
<!ENTITY perl-version-patch "0">
|
||||
<!ENTITY perl-version-patch "2">
|
||||
<!ENTITY perl-version-min "&perl-version-major;.&perl-version-minor;">
|
||||
<!ENTITY perl-version "&perl-version-major;.&perl-version-minor;.&perl-version-patch;">
|
||||
<!ENTITY perl-size "13,481 KB">
|
||||
<!ENTITY perl-size "13,598 KB">
|
||||
<!ENTITY perl-url "https://www.cpan.org/src/5.0/perl-&perl-version;.tar.xz">
|
||||
<!ENTITY perl-md5 "cfe14ef0709b9687f9c514042e8e1e82">
|
||||
<!ENTITY perl-md5 "9ad7a269dc4053cdbeecd4fde444291b">
|
||||
<!ENTITY perl-home "https://www.perl.org/">
|
||||
<!ENTITY perl-tmp-du "285 MB">
|
||||
<!ENTITY perl-tmp-sbu "0.6 SBU">
|
||||
<!ENTITY perl-fin-du "245 MB">
|
||||
<!ENTITY perl-fin-sbu "1.4 SBU">
|
||||
<!ENTITY perl-fin-sbu "1.3 SBU">
|
||||
|
||||
<!ENTITY pkgconf-version "2.3.0">
|
||||
<!ENTITY pkgconf-size "309 KB">
|
||||
<!ENTITY pkgconf-version "2.4.3">
|
||||
<!ENTITY pkgconf-size "314 KB">
|
||||
<!ENTITY pkgconf-url "https://distfiles.ariadne.space/pkgconf/pkgconf-&pkgconf-version;.tar.xz">
|
||||
<!ENTITY pkgconf-md5 "833363e77b5bed0131c7bc4cc6f7747b">
|
||||
<!ENTITY pkgconf-md5 "781a513f4ca3d068155482a37986d594">
|
||||
<!ENTITY pkgconf-home "https://github.com/pkgconf/pkgconf">
|
||||
<!ENTITY pkgconf-fin-du "4.7 MB">
|
||||
<!ENTITY pkgconf-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY procps-ng-version "4.0.4">
|
||||
<!ENTITY procps-ng-size "1,369 KB">
|
||||
<!ENTITY procps-ng-version "4.0.5">
|
||||
<!ENTITY procps-ng-size "1,483 KB">
|
||||
<!ENTITY procps-ng-url "https://sourceforge.net/projects/procps-ng/files/Production/procps-ng-&procps-ng-version;.tar.xz">
|
||||
<!ENTITY procps-ng-md5 "2f747fc7df8ccf402d03e375c565cf96">
|
||||
<!ENTITY procps-ng-md5 "90803e64f51f192f3325d25c3335d057">
|
||||
<!ENTITY procps-ng-home "https://gitlab.com/procps-ng/procps/">
|
||||
<!ENTITY procps-ng-fin-du "26 MB">
|
||||
<!ENTITY procps-ng-fin-du "28 MB">
|
||||
<!ENTITY procps-ng-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY psmisc-version "23.7">
|
||||
@ -604,25 +605,25 @@
|
||||
<!-- If python minor version changes, updates in python and
|
||||
meson pages will be needed: python3.6 and python3.6m -->
|
||||
|
||||
<!ENTITY python-version "3.12.5">
|
||||
<!ENTITY python-minor "3.12">
|
||||
<!ENTITY python-size "19,944 KB">
|
||||
<!ENTITY python-version "3.13.5">
|
||||
<!ENTITY python-minor "3.13">
|
||||
<!ENTITY python-size "22,321 KB">
|
||||
<!ENTITY python-url "https://www.python.org/ftp/python/&python-version;/Python-&python-version;.tar.xz">
|
||||
<!ENTITY python-md5 "02c7d269e077f4034963bba6befdc715">
|
||||
<!ENTITY python-md5 "dbaa8833aa736eddbb18a6a6ae0c10fa">
|
||||
<!ENTITY python-home "https://www.python.org/">
|
||||
<!ENTITY python-tmp-du "603 MB">
|
||||
<!ENTITY python-tmp-sbu "0.4 SBU">
|
||||
<!ENTITY python-fin-du "530 MB">
|
||||
<!ENTITY python-fin-sbu "2.2 SBU">
|
||||
<!ENTITY python-tmp-du "634 MB">
|
||||
<!ENTITY python-tmp-sbu "0.5 SBU">
|
||||
<!ENTITY python-fin-du "501 MB">
|
||||
<!ENTITY python-fin-sbu "2.1 SBU">
|
||||
<!ENTITY python-docs-url "https://www.python.org/ftp/python/doc/&python-version;/python-&python-version;-docs-html.tar.bz2">
|
||||
<!ENTITY python-docs-md5 "52274d813236ca4a972fb6988480dc56">
|
||||
<!ENTITY python-docs-size "8,188 KB">
|
||||
<!ENTITY python-docs-md5 "8f34b29779cc1d5d1e8c0a913c307129">
|
||||
<!ENTITY python-docs-size "10,130 KB">
|
||||
|
||||
<!ENTITY readline-version "8.2.13">
|
||||
<!ENTITY readline-soversion "8.2"><!-- used for stripping -->
|
||||
<!ENTITY readline-size "2,974 KB">
|
||||
<!ENTITY readline-version "8.3-rc2">
|
||||
<!ENTITY readline-soversion "8.3"><!-- used for stripping -->
|
||||
<!ENTITY readline-size "3,338 KB">
|
||||
<!ENTITY readline-url "&gnu;readline/readline-&readline-version;.tar.gz">
|
||||
<!ENTITY readline-md5 "05080bf3801e6874bb115cd6700b708f">
|
||||
<!ENTITY readline-md5 "d580a2ab42aa69d09c237b1e2058914d">
|
||||
<!ENTITY readline-home "https://tiswww.case.edu/php/chet/readline/rltop.html">
|
||||
<!ENTITY readline-fin-du "16 MB">
|
||||
<!ENTITY readline-fin-sbu "less than 0.1 SBU">
|
||||
@ -637,54 +638,54 @@
|
||||
<!ENTITY sed-fin-du "30 MB">
|
||||
<!ENTITY sed-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY setuptools-version "72.2.0">
|
||||
<!ENTITY setuptools-size "2,363 KB">
|
||||
<!ENTITY setuptools-version "80.9.0">
|
||||
<!ENTITY setuptools-size "1,290 KB">
|
||||
<!ENTITY setuptools-url "&pypi-src;/s/setuptools/setuptools-&setuptools-version;.tar.gz">
|
||||
<!ENTITY setuptools-md5 "2e0ffd0f6fc632a11442b79d9b1c68bd">
|
||||
<!ENTITY setuptools-md5 "82e1d67883b713f9493659b50d13b436">
|
||||
<!ENTITY setuptools-home "&pypi-home;/setuptools/">
|
||||
<!ENTITY setuptools-fin-du "35 MB">
|
||||
<!ENTITY setuptools-fin-du "26 MB">
|
||||
<!ENTITY setuptools-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY shadow-version "4.16.0">
|
||||
<!ENTITY shadow-size "2,154 KB">
|
||||
<!ENTITY shadow-version "4.17.4">
|
||||
<!ENTITY shadow-size "2,273 KB">
|
||||
<!ENTITY shadow-url "&github;/shadow-maint/shadow/releases/download/&shadow-version;/shadow-&shadow-version;.tar.xz">
|
||||
<!ENTITY shadow-md5 "eb70bad3316d08f0d3bb3d4bbeccb3b4">
|
||||
<!ENTITY shadow-md5 "469666ea82c203ce5b0116d26b3793a9">
|
||||
<!ENTITY shadow-home "&github;/shadow-maint/shadow/">
|
||||
<!ENTITY shadow-fin-du "112 MB">
|
||||
<!ENTITY shadow-fin-du "114 MB">
|
||||
<!ENTITY shadow-fin-sbu "0.1 SBU">
|
||||
|
||||
<!ENTITY sysklogd-version "2.6.1">
|
||||
<!ENTITY sysklogd-size "452 KB">
|
||||
<!ENTITY sysklogd-version "2.7.2">
|
||||
<!ENTITY sysklogd-size "474 KB">
|
||||
<!ENTITY sysklogd-url "https://github.com/troglobit/sysklogd/releases/download/v&sysklogd-version;/sysklogd-&sysklogd-version;.tar.gz">
|
||||
<!ENTITY sysklogd-md5 "dcf0836a0fcc6568efaad230850d9c86">
|
||||
<!ENTITY sysklogd-md5 "af60786956a2dc84054fbf46652e515e">
|
||||
<!ENTITY sysklogd-home "https://www.infodrom.org/projects/sysklogd/">
|
||||
<!ENTITY sysklogd-fin-du "3.9 MB">
|
||||
<!ENTITY sysklogd-fin-du "4.1 MB">
|
||||
<!ENTITY sysklogd-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY systemd-version "256.4">
|
||||
<!ENTITY systemd-version "257.6">
|
||||
<!--<!ENTITY systemd-stable "6b4878d">-->
|
||||
<!-- The above entity is used whenever we move to a stable backport branch.
|
||||
In the event of a critical problem or kernel change that is incompatible,
|
||||
we will switch to the backport branch until the next stable release. -->
|
||||
<!ENTITY systemd-size "15,291 KB">
|
||||
<!ENTITY systemd-size "15,940 KB">
|
||||
<!ENTITY systemd-url "&github;/systemd/systemd/archive/v&systemd-version;/systemd-&systemd-version;.tar.gz">
|
||||
<!--<!ENTITY systemd-url "&anduin-sources;/systemd-&systemd-version;-&systemd-stable;.tar.xz">-->
|
||||
<!ENTITY systemd-md5 "03bd1ff158ec0bc55428c77a8f8495bd">
|
||||
<!ENTITY systemd-md5 "458b07e140cd65d25baf7752398c5d13">
|
||||
<!ENTITY systemd-home "https://www.freedesktop.org/wiki/Software/systemd/">
|
||||
<!ENTITY systemd-man-version "256.4">
|
||||
<!ENTITY systemd-man-size "676 KB">
|
||||
<!ENTITY systemd-man-version "257.6">
|
||||
<!ENTITY systemd-man-size "736 KB">
|
||||
<!--<!ENTITY systemd-man-url "&anduin-sources;/systemd-man-pages-&systemd-version;-&systemd-stable;.tar.xz">-->
|
||||
<!ENTITY systemd-man-url "&anduin-sources;/systemd-man-pages-&systemd-man-version;.tar.xz">
|
||||
<!ENTITY systemd-man-md5 "8dbcf0ff0d8e5e9d3565f9d2fc153310">
|
||||
<!ENTITY systemd-fin-du "267 MB">
|
||||
<!ENTITY systemd-fin-sbu "0.8 SBU">
|
||||
<!ENTITY systemd-man-md5 "d06eb41840ab4c6138e30ba78387ef4e">
|
||||
<!ENTITY systemd-fin-du "307 MB">
|
||||
<!ENTITY systemd-fin-sbu "1.1 SBU">
|
||||
|
||||
<!ENTITY sysvinit-version "3.10">
|
||||
<!ENTITY sysvinit-size "235 KB">
|
||||
<!ENTITY sysvinit-version "3.14">
|
||||
<!ENTITY sysvinit-size "236 KB">
|
||||
<!ENTITY sysvinit-url "&github;/slicer69/sysvinit/releases/download/&sysvinit-version;/sysvinit-&sysvinit-version;.tar.xz">
|
||||
<!ENTITY sysvinit-md5 "b8fbe11062cf16d3b6a3709b7f6978d2">
|
||||
<!ENTITY sysvinit-md5 "bc6890b975d19dc9db42d0c7364dd092">
|
||||
<!ENTITY sysvinit-home "&savannah-nongnu;/projects/sysvinit">
|
||||
<!ENTITY sysvinit-fin-du "2.8 MB">
|
||||
<!ENTITY sysvinit-fin-du "2.9 MB">
|
||||
<!ENTITY sysvinit-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY tar-version "1.35">
|
||||
@ -695,60 +696,59 @@
|
||||
<!ENTITY tar-tmp-du "42 MB">
|
||||
<!ENTITY tar-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY tar-fin-du "43 MB">
|
||||
<!ENTITY tar-fin-sbu "0.7 SBU">
|
||||
<!ENTITY tar-fin-sbu "0.6 SBU">
|
||||
|
||||
<!ENTITY tcl-version "8.6.14">
|
||||
<!ENTITY tcl-version "8.6.16">
|
||||
<!ENTITY tcl-major-version "8.6">
|
||||
<!ENTITY tcl-size "11,355 KB">
|
||||
<!ENTITY tcl-size "11,406 KB">
|
||||
<!ENTITY tcl-url "https://downloads.sourceforge.net/tcl/tcl&tcl-version;-src.tar.gz">
|
||||
<!ENTITY tcl-md5 "c30b57c6051be28fa928d09aca82841e">
|
||||
<!ENTITY tcl-md5 "eaef5d0a27239fb840f04af8ec608242">
|
||||
<!ENTITY tcl-home "https://tcl.sourceforge.net/">
|
||||
<!ENTITY tcl-docs-url "https://downloads.sourceforge.net/tcl/tcl&tcl-version;-html.tar.gz">
|
||||
<!ENTITY tcl-docs-md5 "5467198f8d57c54835bf80b98ffb0170">
|
||||
<!ENTITY tcl-docs-size "1,167 KB">
|
||||
<!ENTITY tcl-docs-md5 "750c221bcb6f8737a6791c1fbe98b684">
|
||||
<!ENTITY tcl-docs-size "1,169 KB">
|
||||
<!ENTITY tcl-tmp-du "91 MB">
|
||||
<!ENTITY tcl-tmp-sbu "3.2 SBU">
|
||||
<!ENTITY tcl-tmp-sbu "3.1 SBU">
|
||||
|
||||
<!ENTITY texinfo-version "7.1">
|
||||
<!ENTITY texinfo-size "5,416 KB">
|
||||
<!ENTITY texinfo-version "7.2">
|
||||
<!ENTITY texinfo-size "6,259 KB">
|
||||
<!ENTITY texinfo-url "&gnu;texinfo/texinfo-&texinfo-version;.tar.xz">
|
||||
<!ENTITY texinfo-md5 "edd9928b4a3f82674bcc3551616eef3b">
|
||||
<!ENTITY texinfo-md5 "11939a7624572814912a18e76c8d8972">
|
||||
<!ENTITY texinfo-home "&gnu-software;texinfo/">
|
||||
<!ENTITY texinfo-tmp-du "130 MB">
|
||||
<!ENTITY texinfo-tmp-du "152 MB">
|
||||
<!ENTITY texinfo-tmp-sbu "0.2 SBU">
|
||||
<!ENTITY texinfo-fin-du "139 MB">
|
||||
<!ENTITY texinfo-fin-du "160 MB">
|
||||
<!ENTITY texinfo-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY tzdata-version "2024a">
|
||||
<!ENTITY tzdata-size "444 KB">
|
||||
<!ENTITY tzdata-version "2025b">
|
||||
<!ENTITY tzdata-size "454 KB">
|
||||
<!ENTITY tzdata-url "https://www.iana.org/time-zones/repository/releases/tzdata&tzdata-version;.tar.gz">
|
||||
<!ENTITY tzdata-md5 "2349edd8335245525cc082f2755d5bf4">
|
||||
<!ENTITY tzdata-md5 "ad65154c48c74a9b311fe84778c5434f">
|
||||
<!ENTITY tzdata-home "https://www.iana.org/time-zones">
|
||||
|
||||
<!ENTITY udev-fin-du "144 MB">
|
||||
<!ENTITY udev-fin-sbu "0.2 SBU">
|
||||
|
||||
<!ENTITY udev-lfs-version "udev-lfs-20230818">
|
||||
<!ENTITY udev-lfs-size "10 KB">
|
||||
<!ENTITY udev-lfs-url "&anduin-sources;/&udev-lfs-version;.tar.xz">
|
||||
<!ENTITY udev-lfs-md5 "acd4360d8a5c3ef320b9db88d275dae6">
|
||||
<!ENTITY udev-lfs-home " ">
|
||||
<!ENTITY udev-fin-du "161 MB">
|
||||
<!ENTITY udev-fin-sbu "0.3 SBU">
|
||||
|
||||
<!ENTITY util-linux-minor "2.40">
|
||||
<!ENTITY util-linux-version "2.40.2"> <!-- 2.33.x -->
|
||||
<!ENTITY util-linux-size "8,648 KB">
|
||||
<!ENTITY util-linux-minor "2.41">
|
||||
<!ENTITY util-linux-version "2.41"> <!-- 2.33.x -->
|
||||
<!ENTITY util-linux-size "9,313 KB">
|
||||
<!ENTITY util-linux-url "&kernel;linux/utils/util-linux/v&util-linux-minor;/util-linux-&util-linux-version;.tar.xz">
|
||||
<!ENTITY util-linux-md5 "88faefc8fefced097e58142077a3d14e">
|
||||
<!ENTITY util-linux-md5 "e666a34b03554c18a1073347b16661ce">
|
||||
<!ENTITY util-linux-home "https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/">
|
||||
<!ENTITY util-linux-tmp-du "180 MB">
|
||||
<!ENTITY util-linux-tmp-du "182 MB">
|
||||
<!ENTITY util-linux-tmp-sbu "0.2 SBU">
|
||||
<!ENTITY util-linux-fin-du "315 MB">
|
||||
<!ENTITY util-linux-fin-du "316 MB">
|
||||
<!ENTITY util-linux-fin-sbu "0.5 SBU">
|
||||
|
||||
<!ENTITY vim-version "9.1.0660">
|
||||
<!ENTITY vim-version "9.1.1418">
|
||||
<!-- <!ENTITY vim-majmin "90"> -->
|
||||
<!ENTITY vim-docdir "vim/vim91">
|
||||
<!ENTITY vim-size "17,629 KB">
|
||||
<!ENTITY vim-size "18,414 KB">
|
||||
<!ENTITY vim-url "https://github.com/vim/vim/archive/v&vim-version;/vim-&vim-version;.tar.gz">
|
||||
<!-- N.B. LFS 9.0 uses
|
||||
https://github.com/vim/vim/archive/v8.1.1846/vim-8.1.1846.tar.gz
|
||||
@ -762,17 +762,17 @@
|
||||
example, https://github.com/vim/vim/tags?after=v8.1.1847 will show
|
||||
us v8.1.1846. -->
|
||||
<!--<!ENTITY vim-url "&anduin-sources;/vim-&vim-version;.tar.gz">-->
|
||||
<!ENTITY vim-md5 "c512a99b3704f193be1a181cc644b2b2">
|
||||
<!ENTITY vim-md5 "a39c2c90361a39f2206302bb64f51022">
|
||||
<!ENTITY vim-home "https://www.vim.org">
|
||||
<!ENTITY vim-fin-du "245 MB">
|
||||
<!ENTITY vim-fin-sbu "2.9 SBU">
|
||||
<!ENTITY vim-fin-du "251 MB">
|
||||
<!ENTITY vim-fin-sbu "3.4 SBU">
|
||||
|
||||
<!ENTITY wheel-version "0.44.0">
|
||||
<!ENTITY wheel-size "99 KB">
|
||||
<!ENTITY wheel-version "0.46.1">
|
||||
<!ENTITY wheel-size "54 KB">
|
||||
<!ENTITY wheel-url "&pypi-src;/w/wheel/wheel-&wheel-version;.tar.gz">
|
||||
<!ENTITY wheel-md5 "440ff4fe51579b7ed16f02af8f8d9494">
|
||||
<!ENTITY wheel-md5 "65e09ee84af36821e3b1e9564aa91bd5">
|
||||
<!ENTITY wheel-home "&pypi-home;/wheel/">
|
||||
<!ENTITY wheel-fin-du "1.5 MB">
|
||||
<!ENTITY wheel-fin-du "1.6 MB">
|
||||
<!ENTITY wheel-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY xml-parser-version "2.47">
|
||||
@ -783,12 +783,12 @@
|
||||
<!ENTITY xml-parser-fin-du "2.4 MB">
|
||||
<!ENTITY xml-parser-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY xz-version "5.6.2">
|
||||
<!ENTITY xz-size "1,277 KB">
|
||||
<!ENTITY xz-version "5.8.1">
|
||||
<!ENTITY xz-size "1,428 KB">
|
||||
<!ENTITY xz-url "https://github.com//tukaani-project/xz/releases/download/v&xz-version;/xz-&xz-version;.tar.xz">
|
||||
<!ENTITY xz-md5 "bbf73fb28425cebb854328599f85c4cf">
|
||||
<!ENTITY xz-md5 "cf5e1feb023d22c6bdaa30e84ef3abe3">
|
||||
<!ENTITY xz-home "https://tukaani.org/xz">
|
||||
<!ENTITY xz-tmp-du "20 MB">
|
||||
<!ENTITY xz-tmp-du "21 MB">
|
||||
<!ENTITY xz-tmp-sbu "0.1 SBU">
|
||||
<!ENTITY xz-fin-du "21 MB">
|
||||
<!ENTITY xz-fin-sbu "0.1 SBU">
|
||||
@ -805,11 +805,11 @@
|
||||
<!ENTITY zlib-fin-du "6.4 MB">
|
||||
<!ENTITY zlib-fin-sbu "less than 0.1 SBU">
|
||||
|
||||
<!ENTITY zstd-version "1.5.6">
|
||||
<!ENTITY zstd-size "2,351 KB">
|
||||
<!ENTITY zstd-version "1.5.7">
|
||||
<!ENTITY zstd-size "2,378 KB">
|
||||
<!ENTITY zstd-url "https://github.com/facebook/zstd/releases/download/v&zstd-version;/zstd-&zstd-version;.tar.gz">
|
||||
<!ENTITY zstd-md5 "5a473726b3445d0e5d6296afd1ab6854">
|
||||
<!ENTITY zstd-md5 "780fc1896922b1bc52a4e90980cdda48">
|
||||
<!ENTITY zstd-home "https://facebook.github.io/zstd/">
|
||||
<!ENTITY zstd-fin-du "84 MB">
|
||||
<!ENTITY zstd-fin-du "85 MB">
|
||||
<!ENTITY zstd-fin-sbu "0.4 SBU">
|
||||
|
||||
|
@ -3,6 +3,9 @@
|
||||
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
|
||||
<!ENTITY host-triplet
|
||||
"<replaceable><the host triplet></replaceable>">
|
||||
]>
|
||||
|
||||
<sect1 id="ch-tools-toolchaintechnotes" xreflabel="Toolchain Technical Notes">
|
||||
@ -44,6 +47,14 @@
|
||||
book for a cross-toolchain for some purpose other
|
||||
than building LFS, unless you really understand what you are doing.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
It's known installing GCC pass 2 will break the cross-toolchain.
|
||||
We don't consider it a bug because GCC pass 2 is the last package
|
||||
to be cross-compiled in the book, and we won't <quote>fix</quote>
|
||||
it until we really need to cross-compile some package after GCC
|
||||
pass 2 in the future.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<para>Cross-compilation involves some concepts that deserve a section of
|
||||
@ -197,14 +208,105 @@
|
||||
page</ulink>.</para>
|
||||
</note>
|
||||
|
||||
<para>In order to fake a cross-compilation in LFS, the name of the host triplet
|
||||
is slightly adjusted by changing the "vendor" field in the
|
||||
<envar>LFS_TGT</envar> variable so it says "lfs". We also use the
|
||||
<parameter>--with-sysroot</parameter> option when building the cross-linker and
|
||||
cross-compiler, to tell them where to find the needed host files. This
|
||||
ensures that none of the other programs built in <xref
|
||||
linkend="chapter-temporary-tools"/> can link to libraries on the build
|
||||
machine. Only two stages are mandatory, plus one more for tests.</para>
|
||||
<para>
|
||||
There are two key points for a cross-compilation:
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
When producing and processing the machine code supposed to be
|
||||
executed on <quote>the host,</quote> the cross-toolchain must be
|
||||
used. Note that the native toolchain from <quote>the build</quote>
|
||||
may be still invoked to generate machine code supposed to be
|
||||
executed on <quote>the build.</quote> For example, the build system
|
||||
may compile a generator with the native toolchain, then generate
|
||||
a C source file with the generator, and finally compile the C
|
||||
source file with the cross-toolchain so the generated code will
|
||||
be able to run on <quote>the host.</quote>
|
||||
</para>
|
||||
<para>
|
||||
With an autoconf-based build system, this requirement is ensured
|
||||
by using the <parameter>--host</parameter> switch to specify
|
||||
<quote>the host</quote> triplet. With this switch the build
|
||||
system will use the toolchain components prefixed
|
||||
with <literal>&host-triplet;</literal>
|
||||
for generating and processing the machine code for
|
||||
<quote>the host</quote>; e.g. the compiler will be
|
||||
<command>&host-triplet;-gcc</command> and the
|
||||
<command>readelf</command> tool will be
|
||||
<command>&host-triplet;-readelf</command>.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
The build system should not attempt to run any generated machine
|
||||
code supposed to be executed on <quote>the host.</quote> For
|
||||
example, when building a utility natively, its man page can be
|
||||
generated by running the utility with the
|
||||
<parameter>--help</parameter> switch and processing the output,
|
||||
but generally it's not possible to do so for a cross-compilation
|
||||
as the utility may fail
|
||||
to run on <quote>the build</quote>: it's obviously impossible to
|
||||
run ARM64 machine code on a x86 CPU (without an emulator).
|
||||
</para>
|
||||
<para>
|
||||
With an autoconf-based build system, this requirement is
|
||||
satisfied in <quote>the cross-compilation mode</quote> where
|
||||
the optional features requiring to run machine code for
|
||||
<quote>the host</quote> during the build time are disabled. When <quote>the
|
||||
host</quote> triplet is explicitly specified, <quote>the
|
||||
cross-compilation mode</quote> is enabled if and only if either
|
||||
the <command>configure</command> script fails to run a dummy
|
||||
program compiled into <quote>the host</quote> machine code, or
|
||||
<quote>the build</quote> triplet is explicitly specified via the
|
||||
<parameter>--build</parameter> switch and it's different from
|
||||
<quote>the host</quote> triplet.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>In order to cross-compile a package for the LFS temporary system,
|
||||
the name of the system triplet is slightly adjusted by changing the
|
||||
"vendor" field in the <envar>LFS_TGT</envar> variable so it
|
||||
says "lfs" and <envar>LFS_TGT</envar> is then specified as
|
||||
<quote>the host</quote> triplet via <parameter>--host</parameter>, so
|
||||
the cross-toolchain will be used for generating and processing the
|
||||
machine code running as a part of the LFS temporary system. And, we
|
||||
also need to enable <quote>the cross-compilation mode</quote>: despite
|
||||
<quote>the host</quote> machine code, i.e. the machine code for the LFS
|
||||
temporary system, is able to execute on the current CPU, it may refer
|
||||
to a library not available on the <quote>the build</quote> (the host
|
||||
distro), or some code or data non-exist or defined differently in the
|
||||
library even if it happens to be available. When cross-compiling a
|
||||
package for the LFS temporary system, we cannot rely on the
|
||||
<command>configure</command> script to detect this issue with the
|
||||
dummy program: the dummy only uses a few components in
|
||||
<systemitem class='library'>libc</systemitem> that the host distro
|
||||
<systemitem class='library'>libc</systemitem> likely provides (unless,
|
||||
maybe the host distro uses a different
|
||||
<systemitem class='library'>libc</systemitem> implementation like Musl),
|
||||
so it won't fail like how the really useful programs would likely.
|
||||
Thus we must explicitly specify <quote>the build</quote> triplet to
|
||||
enable <quote>the cross-compilation mode.</quote> The value we use is
|
||||
just the default, i.e. the original system triplet from
|
||||
<command>config.guess</command> output, but <quote>the cross-compilation
|
||||
mode</quote> depends on an explicit specification as we've
|
||||
discussed.</para>
|
||||
|
||||
<para>We use the <parameter>--with-sysroot</parameter> option when
|
||||
building the cross-linker and cross-compiler, to tell them where to find
|
||||
the needed files for <quote>the host.</quote> This nearly ensures that
|
||||
none of the other programs built in
|
||||
<xref linkend="chapter-temporary-tools"/> can link to libraries on
|
||||
<quote>the build.</quote> The word <quote>nearly</quote> is used because
|
||||
<command>libtool</command>, a <quote>compatibility</quote> wrapper of
|
||||
the compiler and the linker for autoconf-based build systems,
|
||||
can try to be too clever and mistakenly pass options allowing the linker
|
||||
to find libraries of <quote>the build.</quote>
|
||||
To prevent this fallout, we need to delete the libtool archive
|
||||
(<filename class='extension'>.la</filename>) files and fix up an
|
||||
outdated libtool copy shipped with the Binutils code.</para>
|
||||
|
||||
<informaltable align="center">
|
||||
<tgroup cols="5">
|
||||
@ -228,7 +330,7 @@
|
||||
</row>
|
||||
<row>
|
||||
<entry>3</entry><entry>lfs</entry><entry>lfs</entry><entry>lfs</entry>
|
||||
<entry>Rebuild and test cc-lfs using cc-lfs on lfs.</entry>
|
||||
<entry>Rebuild (and maybe test) cc-lfs using cc-lfs on lfs.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
@ -256,30 +358,11 @@
|
||||
<para>The upshot of the preceding paragraph is that cc1 is unable to
|
||||
build a fully functional libstdc++ with the degraded libgcc, but cc1
|
||||
is the only compiler available for building the C/C++ libraries
|
||||
during stage 2. There are two reasons we don't immediately use the
|
||||
compiler built in stage 2, cc-lfs, to build those libraries.</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
Generally speaking, cc-lfs cannot run on pc (the host system). Even though the
|
||||
triplets for pc and lfs are compatible with each other, an executable
|
||||
for lfs must depend on glibc-&glibc-version;; the host distro
|
||||
may utilize either a different implementation of libc (for example, musl), or
|
||||
a previous release of glibc (for example, glibc-2.13).
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Even if cc-lfs can run on pc, using it on pc would create
|
||||
a risk of linking to the pc libraries, since cc-lfs is a native
|
||||
compiler.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>So when we build gcc stage 2, we instruct the building system to
|
||||
rebuild libgcc and libstdc++ with cc1, but we link libstdc++ to the newly
|
||||
during stage 2. As we've discussed, we cannot run cc-lfs on pc (the
|
||||
host distro) because it may require some library, code, or data not
|
||||
available on <quote>the build</quote> (the host distro).
|
||||
So when we build gcc stage 2, we override the library
|
||||
search path to link libstdc++ against the newly
|
||||
rebuilt libgcc instead of the old, degraded build. This makes the rebuilt
|
||||
libstdc++ fully functional.</para>
|
||||
|
||||
@ -290,12 +373,11 @@
|
||||
package on a completed LFS system, the reinstalled content of the package
|
||||
should be the same as the content of the same package when first installed in
|
||||
&ch-final;. The temporary packages installed in &ch-tmp-cross; or
|
||||
&ch-tmp-chroot; cannot satisfy this requirement, because some of them
|
||||
are built without optional dependencies, and autoconf cannot
|
||||
perform some feature checks in &ch-tmp-cross; because of cross-compilation,
|
||||
causing the temporary packages to lack optional features,
|
||||
or use suboptimal code routines. Additionally, a minor reason for
|
||||
rebuilding the packages is to run the test suites.</para>
|
||||
&ch-tmp-chroot; cannot satisfy this requirement, because some optional
|
||||
features of them are disabled because of either the missing
|
||||
dependencies or the <quote>cross-compilation mode.</quote>
|
||||
Additionally, a minor reason for rebuilding the packages is to run the
|
||||
test suites.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -357,39 +439,25 @@ checking what linker to use... /mnt/lfs/tools/i686-lfs-linux-gnu/bin/ld</compute
|
||||
standard C library (glibc) to interface with features that the Linux
|
||||
kernel will provide.</para>
|
||||
|
||||
<para>Next comes glibc. The most important
|
||||
considerations for building glibc are the compiler, binary tools, and
|
||||
kernel headers. The compiler and binary tools are generally not an issue
|
||||
since glibc will always those relating to the <parameter>--host</parameter>
|
||||
parameter passed to its configure script; e.g., in our case, the compiler
|
||||
will be <command>$LFS_TGT-gcc</command> and the <command>readelf</command>
|
||||
tool will be <command>$LFS_TGT-readelf</command>. The kernel headers can
|
||||
be a bit more complicated. Therefore, we take no risks and use
|
||||
the available configure switch to enforce the correct selection. After
|
||||
the run of <command>configure</command>, check the contents of the
|
||||
<filename>config.make</filename> file in the <filename
|
||||
class="directory">build</filename> directory for all important details.
|
||||
These items highlight an important aspect of the glibc
|
||||
package—it is very self-sufficient in terms of its build machinery,
|
||||
and generally does not rely on toolchain defaults.</para>
|
||||
<para>Next comes glibc. This is the first package that we cross-compile.
|
||||
We use the <parameter>--host=$LFS_TGT</parameter> option to make
|
||||
the build system to use those tools prefixed with
|
||||
<literal>$LFS_TGT-</literal>, and the
|
||||
<parameter>--build=$(../scripts/config.guess)</parameter> option to
|
||||
enable <quote>the cross-compilation mode</quote> as we've discussed.
|
||||
The <envar>DESTDIR</envar> variable is used to force installation into
|
||||
the LFS file system.</para>
|
||||
|
||||
<para>As mentioned above, the standard C++ library is compiled next, followed in
|
||||
<xref linkend="chapter-temporary-tools"/> by other programs that must
|
||||
be cross-compiled to break circular dependencies at build time.
|
||||
The install step of all those packages uses the
|
||||
<envar>DESTDIR</envar> variable to force installation
|
||||
in the LFS filesystem.</para>
|
||||
The steps for those packages are similar to the steps for glibc.</para>
|
||||
|
||||
<para>At the end of <xref linkend="chapter-temporary-tools"/> the native
|
||||
LFS compiler is installed. First binutils-pass2 is built,
|
||||
in the same <envar>DESTDIR</envar> directory as the other programs,
|
||||
then the second pass of gcc is constructed, omitting some
|
||||
non-critical libraries. Due to some weird logic in gcc's
|
||||
configure script, <envar>CC_FOR_TARGET</envar> ends up as
|
||||
<command>cc</command> when the host is the same as the target, but
|
||||
different from the build system. This is why
|
||||
<parameter>CC_FOR_TARGET=$LFS_TGT-gcc</parameter> is declared explicitly
|
||||
as one of the configuration options.</para>
|
||||
non-critical libraries.</para>
|
||||
|
||||
<para>Upon entering the chroot environment in <xref
|
||||
linkend="chapter-chroot-temporary-tools"/>,
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user