mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-06-18 19:29:21 +01:00
Compare commits
332 Commits
xry111/loo
...
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 | ||
|
10aa6482f7 | ||
|
fcbbf46ced | ||
|
4c522f3775 | ||
|
a1a1f9f4de | ||
|
1e2c41871f | ||
|
82711db81d | ||
|
aa00b47601 | ||
|
a18957940c | ||
|
93bffa3abf | ||
|
079ced733c | ||
|
dd151db302 | ||
|
653ead1781 | ||
|
678acc1775 | ||
|
7119cf2a83 | ||
|
175b2b6ab6 | ||
|
5ff15e6275 | ||
|
8aa80e434d | ||
|
5717a3d267 | ||
|
39bdcbafb2 | ||
|
f6eb3399d5 | ||
|
44c33588fd | ||
|
d2ac702634 | ||
|
0d6c94f1bf | ||
|
e148af0796 | ||
|
b56430b691 | ||
|
eeee074942 | ||
|
5b7b80511c | ||
|
86e276279a | ||
|
a7596d8cc0 | ||
|
0808f28619 | ||
|
6e6641f9b7 | ||
|
f105449724 | ||
|
e7b6af1037 | ||
|
e872712e9a | ||
|
6ee537a893 | ||
|
f01d1e3597 | ||
|
ba0723a402 | ||
|
e91edadd00 | ||
|
201aa93863 | ||
|
c04d98d038 | ||
|
9c7437f2fd | ||
|
cadbe55e4d | ||
|
58180415dd | ||
|
2ef9beaf92 | ||
|
4ef406e2fa | ||
|
e3f47a2f7a | ||
|
b3c50e06f6 | ||
|
464fd24324 | ||
|
6acfe2e81f | ||
|
8630ec385a | ||
|
32c050cb58 | ||
|
91c72232ac | ||
|
da1a07bdc1 | ||
|
87e5e08d34 | ||
|
923fb48548 | ||
|
5ff2f2e472 | ||
|
31c839da2d | ||
|
6a97bf00d7 | ||
|
74dfcff374 | ||
|
99056a6d69 | ||
|
f70694dce2 | ||
|
760d28c809 | ||
|
46e985d8af | ||
|
5d867ecc19 | ||
|
043e9bdb46 | ||
|
ddbe15d513 | ||
|
c7ed0b0fb8 | ||
|
340e17adc6 | ||
|
1a7ac41bcc | ||
|
6dfdf03699 | ||
|
c5a1240233 | ||
|
f65f3b993c | ||
|
1e7341fd35 | ||
|
a9cbf6ff0c | ||
|
9b39be4268 | ||
|
e1f27cd97b | ||
|
3abde5946b | ||
|
5a661c39b0 | ||
|
72108540d2 | ||
|
d0ca5ead46 | ||
|
6e179a9025 | ||
|
7db37658c2 | ||
|
ba1a9cf303 | ||
|
340891bca1 | ||
|
491de3316a | ||
|
185b763812 | ||
|
9317498c03 | ||
|
9bfd203fad | ||
|
6a75210c6d | ||
|
2f115238af | ||
|
9977b8f05b | ||
|
91cf49535a | ||
|
a093e70903 | ||
|
658401054a | ||
|
0dde2f570e | ||
|
ba64c50ecc | ||
|
7a8f589df1 | ||
|
9b01d1b4ba | ||
|
31336718bc | ||
|
1af9cd121d | ||
|
cbf19601bc | ||
|
ae4e8da2c3 | ||
|
23db3ee550 | ||
|
c3a956946d | ||
|
acaeb102ae | ||
|
3d50ab19d0 | ||
|
9694f4b6be | ||
|
4aa6ea3d1c | ||
|
ac593e8270 | ||
|
c5ae777ac2 | ||
|
e31b6c53cb | ||
|
e2d3b4b0bc | ||
|
68215a4ed7 | ||
|
98bdf39b6c | ||
|
e7231421fd | ||
|
9ac55efa5e | ||
|
dcf5543233 | ||
|
eb7223e804 | ||
|
37823511a6 | ||
|
c301941b9a | ||
|
e4bdd54756 | ||
|
0566a056ba | ||
|
0fd7f40bc7 | ||
|
a56a4fcd9c | ||
|
2001f5cd7e | ||
|
c2d820a770 | ||
|
887bf34f49 | ||
|
b570133fec |
2
Makefile
2
Makefile
@ -212,7 +212,7 @@ dist:
|
||||
$(Q)DIST=/tmp/LFS-RELEASE ./git-version.sh $(REV)
|
||||
$(Q)rm -f lfs-$$(</tmp/LFS-RELEASE).tar.xz
|
||||
$(Q)tar cJf lfs-$$(</tmp/LFS-RELEASE).tar.xz \
|
||||
$(shell git ls-tree HEAD . --name-only) version.ent \
|
||||
$(shell git ls-tree HEAD . --name-only -r) version.ent \
|
||||
-C /tmp LFS-RELEASE \
|
||||
--transform "s,^,lfs-$$(</tmp/LFS-RELEASE)/,"
|
||||
$(Q)echo "Generated XML tarball lfs-$$(</tmp/LFS-RELEASE).tar.xz"
|
||||
|
@ -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>
|
||||
@ -326,8 +325,8 @@
|
||||
<segmentedlist id="bison-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, GCC, Gettext, Glibc, Grep, M4, Make,
|
||||
Perl, and Sed</seg>
|
||||
<seg>Bash, Binutils, Coreutils, Diffutils, GCC, Gettext, Glibc,
|
||||
Grep, M4, Make, Perl, and Sed</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>
|
||||
|
||||
@ -935,7 +891,7 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, Diffutils, Findutils, Gawk, GCC,
|
||||
Gettext, Glibc, GMP, Grep, Libxcrypt, M4, Make, MPC, MPFR, Patch,
|
||||
Gettext, Glibc, GMP, Grep, M4, Make, MPC, MPFR, Patch,
|
||||
Perl, Sed, Tar, Texinfo, and Zstd</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>
|
||||
@ -1615,7 +1571,9 @@
|
||||
<segmentedlist id="kmod-optdeps">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
<seg>
|
||||
<ulink url="https://git.sr.ht/~sircmpwn/scdoc/">scdoc</ulink> (for man pages)
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1640,7 +1598,7 @@
|
||||
<segmentedlist id="less-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>No test suite available</seg>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1887,7 +1845,7 @@
|
||||
<segmentedlist id="libxcrypt-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>GCC, Perl, Python, Shadow, and &systemd-udev;</seg>
|
||||
<seg>Perl, Python, Shadow, and &systemd-udev;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -1934,9 +1892,11 @@
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>
|
||||
<ulink url="&blfs-book;general/cpio.html">cpio</ulink> and
|
||||
<ulink url="&blfs-book;general/cpio.html">cpio</ulink>,
|
||||
<ulink url="&blfs-book;general/llvm.html">LLVM</ulink>
|
||||
(with Clang)
|
||||
(with Clang), and
|
||||
<ulink
|
||||
url="&blfs-book;general/rust-bindgen.html">Rust-bindgen</ulink>
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
@ -1980,6 +1940,44 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin LZ4 dependency info -->
|
||||
<bridgehead renderas="sect2" id="lz4-dep">Lz4</bridgehead>
|
||||
|
||||
<segmentedlist id="lz4-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Binutils, Coreutils, GCC, Glibc, and Make</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="lz4-rundeps">
|
||||
<segtitle>&runtime;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Glibc</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="lz4-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Python</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="lz4-before">
|
||||
<segtitle>&before;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Zstd <phrase revision="systemd">and Systemd</phrase></seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist id="lz4-optdeps">
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin M4 dependency info -->
|
||||
<bridgehead renderas="sect2" id="m4-dep">M4</bridgehead>
|
||||
|
||||
@ -2111,7 +2109,7 @@
|
||||
<segmentedlist id="man-pages-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Bash, Coreutils, and Make</seg>
|
||||
<seg>Bash, Coreutils, Make, and Sed</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2357,7 +2355,7 @@
|
||||
<segmentedlist id="ninja-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>None</seg>
|
||||
<seg><ulink url="&blfs-book;general/cmake.html">cmake</ulink></seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2418,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>
|
||||
|
||||
@ -2529,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>
|
||||
|
||||
@ -2608,7 +2647,7 @@
|
||||
<segmentedlist id="psmisc-testdeps">
|
||||
<segtitle>&testsuites;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>No test suite available</seg>
|
||||
<seg>Expect</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -2876,7 +2915,7 @@
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Acl, Bash, Binutils, Coreutils, Diffutils, Gawk,
|
||||
GCC, Glibc, Gperf, Grep, Jinja2, Libcap, Libxcrypt, Meson,
|
||||
GCC, Glibc, Gperf, Grep, Jinja2, Libcap, Libxcrypt, Lz4, Meson,
|
||||
OpenSSL, Pkgconf, Sed, Util-linux, and Zstd</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
@ -2942,7 +2981,6 @@
|
||||
<ulink url="&blfs-book;postlfs/linux-pam.html">Linux-PAM</ulink>,
|
||||
<ulink
|
||||
url="&blfs-book;general/python-modules.html#lxml">lxml</ulink>,
|
||||
<ulink url="https://lz4.github.io/lz4/">LZ4</ulink>,
|
||||
<ulink url="&blfs-book;postlfs/make-ca.html">make-ca</ulink>,
|
||||
<ulink url="&blfs-book;postlfs/p11-kit.html">p11-kit</ulink>,
|
||||
<ulink url="&blfs-book;general/pcre2.html">PCRE2</ulink>,
|
||||
@ -2971,8 +3009,8 @@
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<!-- Begin Sysvinit dependency info -->
|
||||
<bridgehead renderas="sect2" id="sysvinit-dep" revision='sysv'>Sysvinit</bridgehead>
|
||||
<!-- Begin SysVinit dependency info -->
|
||||
<bridgehead renderas="sect2" id="sysvinit-dep" revision='sysv'>SysVinit</bridgehead>
|
||||
|
||||
<segmentedlist id="sysvinit-depends" revision='sysv'>
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
@ -3271,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>
|
||||
|
||||
@ -3426,7 +3464,7 @@
|
||||
<segmentedlist id="zstd-depends">
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>Binutils, Coreutils, GCC, Glibc, Gzip, Make, Xz, and Zlib</seg>
|
||||
<seg>Binutils, Coreutils, GCC, Glibc, Gzip, Lz4, Make, Xz, and Zlib</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -3455,7 +3493,7 @@
|
||||
<segtitle>&external;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>
|
||||
<ulink url="https://lz4.github.io/lz4/">LZ4</ulink>
|
||||
None
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
@ -13,7 +13,7 @@
|
||||
<title>Udev configuration rules</title>
|
||||
|
||||
<para>The rules in this appendix are listed for convenience. Installation is
|
||||
normally done via instructions in <xref linkend='ch-system-udev'/>. </para>
|
||||
normally done via instructions in <xref linkend='ch-system-udev' role='.'/> </para>
|
||||
|
||||
<sect1 id="lfsrules" role="wrap">
|
||||
<title>55-lfs.rules</title>
|
||||
|
@ -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,28 @@
|
||||
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.
|
||||
|
||||
2024-07-06 Bruce Dubbs <bdubbs@linuxfromscratch.org>
|
||||
* Add logic to init-functions to only print escape sequences
|
||||
if stdin and stdout are connected to a terminal.
|
||||
|
||||
2024-04-16 Bruce Dubbs <bdubbs@linuxfromscratch.org>
|
||||
* Remove blank output line generated in ifup script when bringing
|
||||
up wireless interface.
|
||||
|
||||
2023-10-04 Pierre Labastie <pierre.labastie@neuf.fr>
|
||||
* After the changes done on 2022-03-24, several "halt stop" should
|
||||
have been changed to "halt start". Done now. Fortunately, those
|
||||
|
@ -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
|
||||
|
@ -83,7 +83,7 @@ case "${1}" in
|
||||
ln -sf /proc/self/fd/2 /dev/stderr || failed=1
|
||||
|
||||
log_info_msg2 " ${INFO}/dev/fd"
|
||||
ln -sf /proc/self/fd /dev/fd || failed=1
|
||||
ln -sfn /proc/self/fd /dev/fd || failed=1
|
||||
|
||||
if [ -e /proc/kcore ]; then
|
||||
log_info_msg2 " ${INFO}/dev/core"
|
||||
|
@ -7,6 +7,9 @@
|
||||
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
|
||||
# DJ Lucas - dj@linuxfromscratch.org
|
||||
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
|
||||
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org LFS12.1
|
||||
# Remove kernel log daemon. The functionality has been
|
||||
# merged with syslogd.
|
||||
#
|
||||
# Version : LFS 7.0
|
||||
#
|
||||
@ -20,8 +23,8 @@
|
||||
# Should-Stop: sendsignals
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Starts kernel and system log daemons.
|
||||
# Description: Starts kernel and system log daemons.
|
||||
# Short-Description: Starts system log daemon.
|
||||
# Description: Starts system log daemon.
|
||||
# /etc/fstab.
|
||||
# X-LFS-Provided-By: LFS
|
||||
### END INIT INFO
|
||||
@ -34,17 +37,9 @@ case "${1}" in
|
||||
parms=${SYSKLOGD_PARMS-'-m 0'}
|
||||
start_daemon /sbin/syslogd $parms
|
||||
evaluate_retval
|
||||
|
||||
log_info_msg "Starting kernel log daemon..."
|
||||
start_daemon /sbin/klogd
|
||||
evaluate_retval
|
||||
;;
|
||||
|
||||
stop)
|
||||
log_info_msg "Stopping kernel log daemon..."
|
||||
killproc /sbin/klogd
|
||||
evaluate_retval
|
||||
|
||||
log_info_msg "Stopping system log daemon..."
|
||||
killproc /sbin/syslogd
|
||||
evaluate_retval
|
||||
@ -65,7 +60,6 @@ case "${1}" in
|
||||
|
||||
status)
|
||||
statusproc /sbin/syslogd
|
||||
statusproc klogd
|
||||
;;
|
||||
|
||||
*)
|
||||
|
@ -58,11 +58,21 @@ SCRIPT_STAT="0"
|
||||
# Set any user specified environment variables e.g. HEADLESS
|
||||
[ -r /etc/sysconfig/rc.site ] && . /etc/sysconfig/rc.site
|
||||
|
||||
## Screen Dimensions
|
||||
# Find current screen size
|
||||
if [ -z "${COLUMNS}" ]; then
|
||||
COLUMNS=$(stty size)
|
||||
COLUMNS=${COLUMNS##* }
|
||||
# If HEADLESS is set, use that.
|
||||
# If file descriptor 1 or 2 (stdout and stderr) is not open or
|
||||
# does not refer to a terminal, consider the script headless.
|
||||
[ ! -t 1 -o ! -t 2 ] && HEADLESS=${HEADLESS:-yes}
|
||||
|
||||
if [ "x$HEADLESS" != "xyes" ]
|
||||
then
|
||||
## Screen Dimensions
|
||||
# Find current screen size
|
||||
if [ -z "${COLUMNS}" ]; then
|
||||
COLUMNS=$(stty size)
|
||||
COLUMNS=${COLUMNS##* }
|
||||
fi
|
||||
else
|
||||
COLUMNS=80
|
||||
fi
|
||||
|
||||
# When using remote connections, such as a serial port, stty size returns 0
|
||||
@ -447,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}"`
|
||||
@ -575,9 +582,14 @@ timespec()
|
||||
################################################################################
|
||||
log_success_msg()
|
||||
{
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${SUCCESS_SUFFIX}"
|
||||
|
||||
if [ "x$HEADLESS" != "xyes" ]
|
||||
then
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${SUCCESS_SUFFIX}"
|
||||
else
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
/bin/echo -e "${logmessage} OK"
|
||||
fi
|
||||
# Strip non-printable characters from log file
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
|
||||
@ -589,8 +601,13 @@ log_success_msg()
|
||||
|
||||
log_success_msg2()
|
||||
{
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${SUCCESS_SUFFIX}"
|
||||
if [ "x$HEADLESS" != "xyes" ]
|
||||
then
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${SUCCESS_PREFIX}${SET_COL}${SUCCESS_SUFFIX}"
|
||||
else
|
||||
echo " OK"
|
||||
fi
|
||||
|
||||
echo " OK" >> ${BOOTLOG}
|
||||
|
||||
@ -610,8 +627,14 @@ log_success_msg2()
|
||||
################################################################################
|
||||
log_failure_msg()
|
||||
{
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${FAILURE_SUFFIX}"
|
||||
if [ "x$HEADLESS" != "xyes" ]
|
||||
then
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${FAILURE_SUFFIX}"
|
||||
else
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
/bin/echo -e "${logmessage} FAIL"
|
||||
fi
|
||||
|
||||
# Strip non-printable characters from log file
|
||||
|
||||
@ -624,8 +647,13 @@ log_failure_msg()
|
||||
|
||||
log_failure_msg2()
|
||||
{
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${FAILURE_SUFFIX}"
|
||||
if [ "x$HEADLESS" != "xyes" ]
|
||||
then
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${FAILURE_PREFIX}${SET_COL}${FAILURE_SUFFIX}"
|
||||
else
|
||||
echo "FAIL"
|
||||
fi
|
||||
|
||||
echo "FAIL" >> ${BOOTLOG}
|
||||
|
||||
@ -643,8 +671,14 @@ log_failure_msg2()
|
||||
################################################################################
|
||||
log_warning_msg()
|
||||
{
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${WARNING_PREFIX}${SET_COL}${WARNING_SUFFIX}"
|
||||
if [ "x$HEADLESS" != "xyes" ]
|
||||
then
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${WARNING_PREFIX}${SET_COL}${WARNING_SUFFIX}"
|
||||
else
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
/bin/echo -e "${logmessage} WARN"
|
||||
fi
|
||||
|
||||
# Strip non-printable characters from log file
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
@ -656,8 +690,14 @@ log_warning_msg()
|
||||
|
||||
log_skip_msg()
|
||||
{
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${SKIP_PREFIX}${SET_COL}${SKIP_SUFFIX}"
|
||||
if [ "x$HEADLESS" != "xyes" ]
|
||||
then
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
/bin/echo -e "${CURS_ZERO}${SKIP_PREFIX}${SET_COL}${SKIP_SUFFIX}"
|
||||
else
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
/bin/echo "SKIP"
|
||||
fi
|
||||
|
||||
# Strip non-printable characters from log file
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
@ -677,7 +717,13 @@ log_skip_msg()
|
||||
################################################################################
|
||||
log_info_msg()
|
||||
{
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
if [ "x$HEADLESS" != "xyes" ]
|
||||
then
|
||||
/bin/echo -n -e "${BMPREFIX}${@}"
|
||||
else
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
/bin/echo -n -e "${logmessage}"
|
||||
fi
|
||||
|
||||
# Strip non-printable characters from log file
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
@ -689,7 +735,13 @@ log_info_msg()
|
||||
|
||||
log_info_msg2()
|
||||
{
|
||||
/bin/echo -n -e "${@}"
|
||||
if [ "x$HEADLESS" != "xyes" ]
|
||||
then
|
||||
/bin/echo -n -e "${@}"
|
||||
else
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
/bin/echo -n -e "${logmessage}"
|
||||
fi
|
||||
|
||||
# Strip non-printable characters from log file
|
||||
logmessage=`echo "${@}" | sed 's/\\\033[^a-zA-Z]*.//g'`
|
||||
|
@ -110,7 +110,7 @@ for S in ${SERVICE}; do
|
||||
fi
|
||||
done
|
||||
|
||||
if [ "${SERVICE}" = "wpa" ]; then log_success_msg; fi
|
||||
#if [ "${SERVICE}" = "wpa" ]; then log_success_msg; fi
|
||||
|
||||
# Create/configure the interface
|
||||
for S in ${SERVICE}; do
|
||||
|
@ -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
|
||||
|
@ -15,7 +15,7 @@
|
||||
In case you've hit an issue building one package with the LFS
|
||||
instruction, we strongly discourage posting the issue directly onto
|
||||
the upstream support channel before discussing via a LFS support
|
||||
channel listed in <xref linkend="ch-intro-resources"/>.
|
||||
channel listed in <xref linkend="ch-intro-resources" role='.'/>
|
||||
Doing so is often quite inefficient because the upstream
|
||||
maintainers are rarely familiar with LFS building procedure. Even if
|
||||
you've really hit an upstream issue, the LFS community can still help
|
||||
@ -110,10 +110,10 @@
|
||||
type of information to include from the <command>make</command> screen
|
||||
output.</para>
|
||||
|
||||
<screen><computeroutput>gcc -DALIASPATH=\"/mnt/lfs/usr/share/locale:.\"
|
||||
-DLOCALEDIR=\"/mnt/lfs/usr/share/locale\"
|
||||
-DLIBDIR=\"/mnt/lfs/usr/lib\"
|
||||
-DINCLUDEDIR=\"/mnt/lfs/usr/include\" -DHAVE_CONFIG_H -I. -I.
|
||||
<screen><computeroutput>gcc -D ALIASPATH=\"/mnt/lfs/usr/share/locale:.\"
|
||||
-D LOCALEDIR=\"/mnt/lfs/usr/share/locale\"
|
||||
-D LIBDIR=\"/mnt/lfs/usr/lib\"
|
||||
-D INCLUDEDIR=\"/mnt/lfs/usr/include\" -D HAVE_CONFIG_H -I. -I.
|
||||
-g -O2 -c getopt1.c
|
||||
gcc -g -O2 -static -o make ar.o arscan.o commands.o dir.o
|
||||
expand.o file.o function.o getopt.o implicit.o job.o main.o
|
||||
|
@ -39,704 +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-02-14</para>
|
||||
<para>2025-06-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.3.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5442'>#5442</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 linux-6.15.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5725'>#5725</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to libffi-3.5.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5741'>#5741</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<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-02-12</para>
|
||||
<para>2025-06-04</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to shadow-4.14.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5437'>#5437</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 setuptools-69.1.0 (Python module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5439'>#5439</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 python-3.12.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5434'>#5434</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 pkgconf-2.1.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5432'>#5432</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to MarkupSafe-2.1.5 (Python module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5431'>#5431</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to man-pages-6.06. Fixes
|
||||
<ulink url='&lfs-ticket-root;5438'>#5438</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to expat-2.6.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5435'>#5435</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.7.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5433'>#5433</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem revision='systemd'>
|
||||
<para>2024-02-10</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Fix a bug in systemd breaking running
|
||||
systemd-analyze on an instantiated systemd unit.</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-02-02</para>
|
||||
<para>2025-06-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to tzdata-2024a. Fixes
|
||||
<ulink url='&lfs-ticket-root;5428'>#5428</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to glibc-2.39 (security fix). Fixes
|
||||
<ulink url='&lfs-ticket-root;5426'>#5426</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to linux-6.7.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5427'>#5427</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-02-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to openssl-3.2.1 (security fix). Fixes
|
||||
<ulink url='&lfs-ticket-root;5425'>#5425</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to zlib-1.3.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5419'>#5419</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to xz-5.4.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5423'>#5423</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.7.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5422'>#5422</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20240125. Addresses
|
||||
<para>[bdubbs] - Update to iana-etc-20250519. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to binutils-2.42. Fixes
|
||||
<ulink url='&lfs-ticket-root;5424'>#5424</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to acl-2.3.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5421'>#5421</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update upstream fixes for readline-8.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5420'>#5420</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Apply upstream fix for bash-5.2.21. Fixes
|
||||
<ulink url='&lfs-ticket-root;5420'>#5420</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-01-21</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Apply upstream fix for pkgconf-2.1.0 regression.
|
||||
Fixes <ulink url='&lfs-ticket-root;5414'>#5414</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to jinja2-3.1.3 (security fix). Fixes
|
||||
<ulink url='&lfs-ticket-root;5411'>#5411</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to bc-6.7.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5408'>#5408</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to attr-2.5.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5412'>#5412</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to ncurses-6.4-20230520 (security fix).
|
||||
Fixes <ulink url='&lfs-ticket-root;5416'>#5416</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to markupsafe-2.1.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5418'>#5418</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to linux-6.7.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5406'>#5406</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to iproute2-6.7.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5410'>#5410</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to vim-9.1.0041. Addresses
|
||||
<para>[bdubbs] - Update to vim-9.1.1418. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to iana-etc-20240117. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
<para>[bdubbs] - Update to kbd-2.8.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5736'>#5736</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to shadow-4.14.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5413'>#5413</ulink>.</para>
|
||||
<para>[bdubbs] - Update to systemd-257.6. Fixes
|
||||
<ulink url='&lfs-ticket-root;5674'>#5674</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Fix CVE-2024-0684 for coreutils-9.4. Fixes
|
||||
<ulink url="&lfs-ticket-root;5417">#5417</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 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-01-18</para>
|
||||
<para>2025-05-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Edit a ncurses header to always use the
|
||||
wide-character ABI compatible with libncursesw.so because we
|
||||
are faking the 8-bit libncurses.so with it. Fixes
|
||||
<ulink url="&lfs-ticket-root;5415">#5415</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2024-01-09</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[renodr] - Fix the definition of the C.UTF-8 locale. Fixes
|
||||
<ulink url="&lfs-ticket-root;5409">#5409</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-12-31</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Add --enable-default-hash-style=gnu configuring
|
||||
binutils. Fixes
|
||||
<ulink url='&lfs-ticket-root;5401'>#5401</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Fix CVE-2023-7008 for systemd-255. Fixes
|
||||
<ulink url='&lfs-ticket-root;5405'>#5405</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to iana-etc-20231205. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to tzdata-2023d. Fixes
|
||||
<ulink url='&lfs-ticket-root;5399'>#5399</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to linux-6.6.8. Fixes
|
||||
<ulink url='&lfs-ticket-root;5397'>#5397</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to meson-1.3.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5402'>#5402</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to grub-2.12. Fixes
|
||||
<ulink url='&lfs-ticket-root;5396'>#5396</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to inetutils-2.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5404'>#5404</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to setuptools-69.0.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5400'>#5400</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to xml-parser-2.47. Fixes
|
||||
<ulink url='&lfs-ticket-root;5403'>#5403</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to vim-9.0.2189. Addresses
|
||||
<para>[bdubbs] - Update to vim-9.1.1353. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to autoconf-2.72. Fixes
|
||||
<ulink url='&lfs-ticket-root;5398'>#5398</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-12-16</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to <phrase revision='sysv'>udev
|
||||
from </phrase>systemd-255. Fixes
|
||||
<ulink url='&lfs-ticket-root;5390'>#5390</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-12-14</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to util-linux v2.39.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5388'>#5388</ulink>.</para>
|
||||
<para>[bdubbs] - Update to setuptools-80.0.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5710'>#5710</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to python3-3.12.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5392'>#5392</ulink>.</para>
|
||||
<para>[bdubbs] - Update to packaging-25.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5706'>#5706</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.6.7. Fixes
|
||||
<ulink url='&lfs-ticket-root;5387'>#5387</ulink>.</para>
|
||||
<para>[bdubbs] - Update to meson-1.8.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5713'>#5713</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to kbd-2.6.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5393'>#5393</ulink>.</para>
|
||||
<para>[bdubbs] - Update to linux-6.14.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5709'>#5709</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to bc-6.7.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5389'>#5389</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Reformat util-linux configure parameters. Fixes
|
||||
<ulink url='&lfs-ticket-root;5395'>#5395</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-12-04</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[thomas] - Modify commands for install Python docs to avoid
|
||||
too restrictive permissions on the files and dirs.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem revision='sysv'>
|
||||
<para>2023-12-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Restore NIC naming based on physical system
|
||||
characteristics. Fixes
|
||||
<ulink url='&lfs-ticket-root;5386'>#5386</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-11-30</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.0.2136. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20231117. Addresses
|
||||
<para>[bdubbs] - Update to iana-etc-20250407. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to bc-6.7.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5385'>#5385</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 wheel-0.42.0 (Python Module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5384'>#5384</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to perl-5.38.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5383'>#5383</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to pkgconf-2.1.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5382'>#5382</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to readline patches 002 through 007. Fixes
|
||||
<ulink url='&lfs-ticket-root;5381'>#5381</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to openssl-3.2.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5380'>#5380</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to setuptools-69.0.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5379'>#5379</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.6.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5378'>#5378</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.3.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5377'>#5377</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gettext-0.22.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5376'>#5376</ulink>.</para>
|
||||
<para>[bdubbs] - Update to elfutils-0.193. Fixes
|
||||
<ulink url='&lfs-ticket-root;5711'>#5711</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-11-13</para>
|
||||
<para>2025-04-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to elfutils-0.190. Fixes
|
||||
<ulink url='&lfs-ticket-root;5373'>#5373</ulink>.</para>
|
||||
<para>[bdubbs] - Update to libcap-2.76. Fixes
|
||||
<ulink url='&lfs-ticket-root;5704'>#5704</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to vim-9.0.2103. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</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>[xry111] - Update to linux-6.6.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5369'>#5369</ulink>.</para>
|
||||
<para>[bdubbs] - Add packaging-24.2 (Python module). Needed for wheel.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to xz-5.4.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5371'>#5371</ulink>.</para>
|
||||
<para>[bdubbs] - Update to xz-5.8.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5694'>#5694</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to iana-etc-20231107. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</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>[xry111] - Update to gawk-5.3.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5372'>#5372</ulink>.</para>
|
||||
<para>[bdubbs] - Update to sysklogd-2.7.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5690'>#5690</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to bash-5.2.21. Fixes
|
||||
<ulink url='&lfs-ticket-root;5375'>#5375</ulink>.</para>
|
||||
<para>[bdubbs] - Update to Python3-3.13.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5697'>#5697</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to iproute2-6.6.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5374'>#5374</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-11-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20231019. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
<para>[bdubbs] - Update to openssl-3.5.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5701'>#5701</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to wheel-0.41.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5370'>#5370</ulink>.</para>
|
||||
<para>[bdubbs] - Update to meson-1.7.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5691'>#5691</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to shadow-4.14.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5368'>#5368</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to openssl-3.1.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5367'>#5367</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to texinfo-7.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5364'>#5364</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.2.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5366'>#5366</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to bc-6.7.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5363'>#5363</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.5.9. Fixes
|
||||
<ulink url='&lfs-ticket-root;5365'>#5365</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to Python-3.12.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5357'>#5357</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Add setuptools-68.2.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5358'>#5358</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-10-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.5.7. Fixes
|
||||
<ulink url='&lfs-ticket-root;5362'>#5362</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to shadow-4.14.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5361'>#5361</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gettext-0.22.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5359'>#5359</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-10-03</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Update Glibc upstream fixes patch to fix
|
||||
CVE-2023-4911.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-10-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Disable building nscd in glibc. Fixes
|
||||
<ulink url='&lfs-ticket-root;5349'>#5349</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20230929. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.0.1968. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to openssl-3.1.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5350'>#5350</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to meson-1.2.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5356'>#5356</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to man-db-2.12.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5354'>#5354</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to linux-6.5.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5352'>#5352</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to kmod-31. Fixes
|
||||
<ulink url='&lfs-ticket-root;5355'>#5355</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to kbd-2.6.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5351'>#5361</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gettext-0.22.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5348'>#5348</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to bc-6.7.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5353'>#5353</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-09-24</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Update Glibc upstream fixes patch to plug a
|
||||
memory leak introduced by the security fix.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-09-17</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to linux-6.5.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5343'>#5343</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to iana-etc-20230912. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to iproute2-6.5.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5342'>#5342</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-09-13</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Fix CVE-2023-4806 for Glibc-2.38. Fixes
|
||||
<ulink url='&lfs-ticket-root;5347'>#5347</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-09-12</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Fix CVE-2023-4527 for Glibc-2.38. Fixes
|
||||
<ulink url='&lfs-ticket-root;5346'>#5346</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-09-07</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Fix an issue in pkgconf-2.0.3 causing
|
||||
BLFS packages fail to build. Fixes
|
||||
<ulink url='&lfs-ticket-root;5341'>#5341</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-09-05</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Move pkgconf before binutils for binutils
|
||||
building system to detect zstd properly. Fixes
|
||||
<ulink url='&lfs-ticket-root;5340'>#5340</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to linux-6.5.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5332'>#5332</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to pkgconf-2.0.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5339'>#5339</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[xry111] - Update to dbus-1.14.10. Fixes
|
||||
<ulink url='&lfs-ticket-root;5337'>#5337</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-09-04</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Move caution regarding building by mixing
|
||||
different version of LFS to General Compilation Instructions. Fixes
|
||||
<ulink url='&lfs-ticket-root;5338'>#5338</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-09-02</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[xry111] - Add --no-cache-dir option for pip3 wheel
|
||||
commands. Addresses
|
||||
<ulink url='&blfs-ticket-root;18466'>BLFS #18466</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to vim-9.0.1837. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to zlib-1.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5324'>#5324</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to wheel-0.41.2 (Python Module). Fixes
|
||||
<ulink url='&lfs-ticket-root;5328'>#5328</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to util-linux-2.39.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5322'>#5322</ulink>.</para>
|
||||
<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.08. Fixes
|
||||
<ulink url='&lfs-ticket-root;5321'>#5321</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 shadow-4.14.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5319'>#5319</ulink>.</para>
|
||||
<para>[bdubbs] - Update to iproute2-6.14.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5682'>#5682</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to Python-3.11.5. Fixes
|
||||
<ulink url='&lfs-ticket-root;5330'>#5330</ulink>.</para>
|
||||
<para>[bdubbs] - Update to gzip-1.14. Fixes
|
||||
<ulink url='&lfs-ticket-root;5699'>#5699</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to procps-ng-4.0.4 (security fix
|
||||
for 32-bit systems). Fixes
|
||||
<ulink url='&lfs-ticket-root;5335'>#5335</ulink>.</para>
|
||||
<para>[bdubbs] - Update to grep-3.12. Fixes
|
||||
<ulink url='&lfs-ticket-root;5702'>#5702</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to pkgconf-2.0.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5323'>#5323</ulink>.</para>
|
||||
<para>[bdubbs] - Update to gperf-3.2.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5695'>#5695</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to mpfr-4.2.1. Fixes
|
||||
<ulink url='&lfs-ticket-root;5326'>#5326</ulink>.</para>
|
||||
<para>[bdubbs] - Update to gawk-5.3.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5692'>#5692</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to kbd-2.6.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5318'>#5318</ulink>.</para>
|
||||
<para>[bdubbs] - Update to diffutils-3.12. Fixes
|
||||
<ulink url='&lfs-ticket-root;5696'>#5696</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to gzip-1.13. Fixes
|
||||
<ulink url='&lfs-ticket-root;5325'>#5325</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to coreutils-9.4. Fixes
|
||||
<ulink url='&lfs-ticket-root;5334'>#5334</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem revision='systemd'>
|
||||
<para>[bdubbs] - Specify the 'nobody-group' for systemd. Fixes
|
||||
<ulink url='&lfs-ticket-root;5333'>#5333</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Remove unused usb group. Fixes
|
||||
<ulink url='&lfs-ticket-root;5331'>#5331</ulink>.</para>
|
||||
<para>[bdubbs] - Update to coreutils-9.7. Fixes
|
||||
<ulink url='&lfs-ticket-root;5698'>#5698</ulink>.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>2023-09-01</para>
|
||||
<para>2025-04-01</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - LFS-12.0 released.</para>
|
||||
<para>[bdubbs] - Update to vim-9.1.1263. Addresses
|
||||
<ulink url='&lfs-ticket-root;4500'>#4500</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to iana-etc-20250328. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to xz-5.8.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5684'>#5684</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to util-linux-2.41. Fixes
|
||||
<ulink url='&lfs-ticket-root;5648'>#5648</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<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 setuptools-78.1.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5676'>#5676</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to patch-2.8. Fixes
|
||||
<ulink url='&lfs-ticket-root;5689'>#5689</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to mpfr-4.2.2. Fixes
|
||||
<ulink url='&lfs-ticket-root;5677'>#5677</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<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>2025-03-15</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<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-20250304. Addresses
|
||||
<ulink url='&lfs-ticket-root;5006'>#5006</ulink>.</para>
|
||||
</listitem>
|
||||
<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 setuptools-76.0.0. Fixes
|
||||
<ulink url='&lfs-ticket-root;5665'>#5665</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>[bdubbs] - Update to pkgconf-2.4.3. Fixes
|
||||
<ulink url='&lfs-ticket-root;5672'>#5672</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<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.13.7. Fixes
|
||||
<ulink url='&lfs-ticket-root;5664'>#5664</ulink>.</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<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>2025-03-05</para>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>[bdubbs] - LFS-12.3 released.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
@ -26,36 +26,33 @@
|
||||
<!--<listitem>
|
||||
<para>None</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Acl-&acl-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Attr-&attr-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Autoconf-&autoconf-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Automake-&automake-version;</para>
|
||||
<para>Acl-&acl-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Attr-&attr-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Autoconf-&autoconf-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Automake-&automake-version;</para>
|
||||
</listitem>
|
||||
<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>
|
||||
@ -65,9 +62,9 @@
|
||||
<listitem revision="systemd">
|
||||
<para>D-Bus-&dbus-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Diffutils-&diffutils-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>E2fsprogs-&e2fsprogs-version;</para>
|
||||
</listitem>-->
|
||||
@ -86,48 +83,48 @@
|
||||
<!--<listitem>
|
||||
<para>Flex-&flex-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Flit-core-&flit-core-version;</para>
|
||||
</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>-->
|
||||
<!--<listitem>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>GDBM-&gdbm-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<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>
|
||||
<!--<listitem>
|
||||
<para>GRUB-&grub-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Gzip-&gzip-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Iana-Etc-&iana-etc-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Inetutils-&inetutils-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Intltool-&intltool-version;</para>
|
||||
</listitem>-->
|
||||
@ -143,33 +140,39 @@
|
||||
<listitem>
|
||||
<para>Kmod-&kmod-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Less-&less-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>LFS-Bootscripts-&lfs-bootscripts-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Libcap-&libcap-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Libelf from Elfutils-&elfutils-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Libffi-&libffi-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Libpipeline-&libpipeline-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Libtool-&libtool-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Libxcrypt-&libxcrypt-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Linux-&linux-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>-->
|
||||
@ -179,9 +182,9 @@
|
||||
<listitem>
|
||||
<para>Man-pages-&man-pages-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>MarkupSafe-&markupsafe-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Meson-&meson-version;</para>
|
||||
</listitem>
|
||||
@ -191,63 +194,63 @@
|
||||
<listitem>
|
||||
<para>MPFR-&mpfr-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Ncurses-&ncurses-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Ninja-&ninja-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>OpenSSL-&openssl-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Patch-&patch-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Perl-&perl-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Pkgconf-&pkgconf-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Procps-ng-&procps-ng-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Psmisc-&psmisc-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Python-&python-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<listitem>
|
||||
<para>Readline-&readline-version;</para>
|
||||
</listitem>-->
|
||||
</listitem>
|
||||
<!--<listitem>
|
||||
<para>Sed-&sed-version;</para>
|
||||
</listitem>-->
|
||||
<listitem> <!-- After version 12.1 release - see Added -->
|
||||
<listitem>
|
||||
<para>Setuptools-&setuptools-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Shadow-&shadow-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem revision="sysv">
|
||||
<para>Sysklogd-&sysklogd-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Systemd-&systemd-version;</para>
|
||||
</listitem>-->
|
||||
<listitem revision="sysv">
|
||||
<para>SysVinit-&sysvinit-version;</para>
|
||||
<para>Sysklogd-&sysklogd-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>Systemd-&systemd-version;</para>
|
||||
</listitem>
|
||||
<!--<listitem revision="sysv">
|
||||
<para>SysVinit-&sysvinit-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Tar-&tar-version;</para>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Tcl-&tcl-version;</para>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Texinfo-&texinfo-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Tzdata-&tzdata-version;</para>
|
||||
</listitem>
|
||||
@ -263,15 +266,15 @@
|
||||
<listitem>
|
||||
<para>Wheel-&wheel-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>XML::Parser-&xml-parser-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<listitem>
|
||||
<para>Xz-&xz-version;</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<!--<listitem>
|
||||
<para>Zlib-&zlib-version;</para>
|
||||
</listitem>
|
||||
</listitem>-->
|
||||
<!--<listitem>
|
||||
<para>Zstd-&zstd-version;</para>
|
||||
</listitem>-->
|
||||
@ -291,19 +294,13 @@
|
||||
<listitem><para></para></listitem> <!-- satisfy build -->
|
||||
|
||||
<listitem>
|
||||
<para>&bash-upstream-fixes-patch;</para>
|
||||
<para>Packaging-&packaging-version;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&readline-fixes-patch;</para>
|
||||
<para>coreutils-9.7-upstream_fix-1.patch</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>setuptools-&setuptools-version;</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>&systemd-upstream-patch;</para>
|
||||
<para>perl-5.40.2-upstream_fix-1.patch</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
@ -311,19 +308,9 @@
|
||||
<itemizedlist>
|
||||
<title>Removed:</title>
|
||||
<listitem><para></para></listitem> <!-- satisfy build -->
|
||||
|
||||
<listitem>
|
||||
<para>glibc-2.38-memalign_fix-1.patch</para>
|
||||
<para>Check-0.15.2</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>grub-2.06-upstream_fixes-1.patch</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>readline-8.2-upstream_fix-1.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>
|
||||
|
||||
|
@ -50,7 +50,7 @@
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Other file systems, including FAT32, NTFS, ReiserFS, JFS, and XFS are
|
||||
<para>Other file systems, including FAT32, NTFS, JFS, and XFS are
|
||||
useful for specialized purposes. More information about these file systems,
|
||||
and many others, can be found at <ulink
|
||||
url="https://en.wikipedia.org/wiki/Comparison_of_file_systems"/>.</para>
|
||||
|
@ -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>
|
||||
@ -86,7 +87,7 @@
|
||||
and, as <systemitem class="username">root</systemitem>, running the
|
||||
commands in
|
||||
<xref linkend='ch-tools-bindmount'/> and
|
||||
<xref linkend='ch-tools-kernfsmount'/>.</para>
|
||||
<xref linkend='ch-tools-kernfsmount' role='.'/></para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</sect2>
|
||||
|
@ -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>
|
||||
@ -489,6 +480,15 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Lz4 (&lz4-version;) - <token>&lz4-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&lz4-home;"/></para>
|
||||
<para>Download: <ulink url="&lz4-url;"/></para>
|
||||
<para>MD5 sum: <literal>&lz4-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>M4 (&m4-version;) - <token>&m4-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -588,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>
|
||||
@ -705,7 +714,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Systemd Man Pages(&systemd-version;) - <token>&systemd-man-size;</token>:</term>
|
||||
<term>Systemd Man Pages (&systemd-version;) - <token>&systemd-man-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&systemd-home;"/></para>
|
||||
<para>Download: <ulink url="&systemd-man-url;"/></para>
|
||||
@ -721,7 +730,7 @@
|
||||
|
||||
|
||||
<varlistentry revision="sysv">
|
||||
<term>Sysvinit (&sysvinit-version;) - <token>&sysvinit-size;</token>:</term>
|
||||
<term>SysVinit (&sysvinit-version;) - <token>&sysvinit-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Home page: <ulink url="&sysvinit-home;"/></para>
|
||||
<para>Download: <ulink url="&sysvinit-url;"/></para>
|
||||
@ -813,8 +822,7 @@
|
||||
<note>
|
||||
<para>
|
||||
The version of vim changes daily. To get the latest version, go to
|
||||
<ulink url="https://github.com/vim/vim/releases">
|
||||
https://github.com/vim/vim/tags</ulink>.
|
||||
<ulink url="https://github.com/vim/vim/tags"/>.
|
||||
</para>
|
||||
</note>
|
||||
</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>
|
||||
@ -59,15 +66,15 @@
|
||||
<para>MD5 sum: <literal>&coreutils-i18n-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<!--
|
||||
|
||||
<varlistentry>
|
||||
<term>Coreutils Chmod Fix Patch - <token>&coreutils-chmod-patch-size;</token>:</term>
|
||||
<term>Expect GCC15 Patch - <token>&expect-gcc15-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&coreutils-chmod-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&coreutils-chmod-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>
|
||||
-->
|
||||
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Gcc glibc-2.36 Fixes Patch - <token>&gcc-upstream-fixes-patch-size;</token>:</term>
|
||||
@ -76,12 +83,13 @@
|
||||
<para>MD5 sum: <literal>&gcc-upstream-fixes-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
-->
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Glibc Upstream Fixes Patch - <token>&glibc-upstream-fixes-patch-size;</token>:</term>
|
||||
<term>Glibc Upstream Fix Patch - <token>&glibc-upstream-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&glibc-upstream-fixes-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&glibc-upstream-fixes-patch-md5;</literal></para>
|
||||
<para>Download: <ulink url="&patches-root;&glibc-upstream-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&glibc-upstream-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
@ -117,31 +125,33 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
<!--
|
||||
|
||||
<varlistentry>
|
||||
<term>Pkgconf Upstream Fix Patch - <token>&pkgconf-upstream-fix-patch-size;</token>:</term>
|
||||
<term>Perl Upstream Fix Patch - <token>&perl-upstream-fix-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;&perl-upstream-fix-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&perl-upstream-fix-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Python Security Fix Patch - <token>&python-security-fixes-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<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>
|
||||
<term>SysVinit Consolidated Patch - <token>&sysvinit-consolidated-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
<para>Download: <ulink url="&patches-root;&sysvinit-consolidated-patch;"/></para>
|
||||
<para>MD5 sum: <literal>&sysvinit-consolidated-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<!--
|
||||
<varlistentry revision="systemd">
|
||||
<term>Systemd Upstream Fixes Patch - <token>&systemd-upstream-patch-size;</token>:</term>
|
||||
<listitem>
|
||||
@ -149,6 +159,7 @@
|
||||
<para>MD5 sum: <literal>&systemd-upstream-patch-md5;</literal></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Xz Upstream Fix Patch - <token>&xz-upstream-fix-patch-size;</token>:</term>
|
||||
|
@ -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">
|
||||
@ -76,6 +76,7 @@ cd build</userinput></screen>
|
||||
--disable-nls \
|
||||
--enable-gprofng=no \
|
||||
--disable-werror \
|
||||
--enable-new-dtags \
|
||||
--enable-default-hash-style=gnu</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
@ -133,6 +134,17 @@ cd build</userinput></screen>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-new-dtags</parameter></term>
|
||||
<listitem>
|
||||
<para>This makes the linker use the <quote>runpath</quote> tag for
|
||||
embedding library search paths into executables and shared libraries,
|
||||
instead of the traditional <quote>rpath</quote> tag. It makes
|
||||
debugging dynamically linked executables easier and works around
|
||||
potential issues in the test suite of some packages.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-default-hash-style=gnu</parameter></term>
|
||||
<listitem>
|
||||
|
@ -139,7 +139,7 @@ cd build</userinput></screen>
|
||||
<listitem>
|
||||
<para>Those switches allow GCC to compile programs with
|
||||
some hardening security features (more information on those in
|
||||
the <xref linkend="pie-ssp-info"/> in chapter 8) by default. The
|
||||
the <xref linkend="pie-ssp-info"/> in chapter 8) by default. They
|
||||
are not strictly needed at this stage, since the compiler will
|
||||
only produce temporary executables. But it is cleaner to have the
|
||||
temporary packages be as close as possible to the final ones.
|
||||
|
@ -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,7 +42,11 @@
|
||||
|
||||
<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 \
|
||||
|
@ -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>
|
||||
|
||||
@ -73,6 +73,7 @@ cd build</userinput></screen>
|
||||
--enable-gprofng=no \
|
||||
--disable-werror \
|
||||
--enable-64-bit-bfd \
|
||||
--enable-new-dtags \
|
||||
--enable-default-hash-style=gnu</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
|
@ -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 -->
|
||||
@ -124,8 +124,8 @@ cd build</userinput></screen>
|
||||
<para>We are cross-compiling GCC, so it's impossible to build
|
||||
target libraries (<filename class="libraryfile">libgcc</filename>
|
||||
and <filename class="libraryfile">libstdc++</filename>) with the
|
||||
previously compiled GCC binaries—those binaries won't run on the
|
||||
host. The GCC build system will attempt to use the host's
|
||||
GCC binaries compiled in this pass—those binaries won't run
|
||||
on the host. The GCC build system will attempt to use the host's
|
||||
C and C++ compilers as a workaround by default.
|
||||
Building the GCC target libraries with a different
|
||||
version of GCC is not supported, so using the host's compilers may cause
|
||||
@ -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>
|
||||
|
||||
@ -149,12 +150,10 @@ cd build</userinput></screen>
|
||||
<term><parameter>--disable-libsanitizer</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable GCC sanitizer runtime libraries. They are not
|
||||
needed for the temporary installation. This switch is necessary
|
||||
to build GCC without
|
||||
<systemitem class='library'>libcrypt</systemitem> installed for
|
||||
the target. In <xref linkend='ch-tools-gcc-pass1'/> it was
|
||||
implied by <parameter>--disable-libstdcxx</parameter>, but now we
|
||||
have to explicitly pass it.</para>
|
||||
needed for the temporary installation. In
|
||||
<xref linkend='ch-tools-gcc-pass1'/> it was implied by
|
||||
<parameter>--disable-libstdcxx</parameter>, and now we can
|
||||
explicitly pass it.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
@ -26,6 +26,6 @@
|
||||
may render your computer unusable.
|
||||
This whole chapter must be done as user <systemitem
|
||||
class="username">lfs</systemitem>, with the environment as described in
|
||||
<xref linkend="ch-preps-settingenviron"/>.</para>
|
||||
<xref linkend="ch-preps-settingenviron" role='.'/></para>
|
||||
|
||||
</sect1>
|
||||
|
@ -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>
|
||||
@ -70,7 +69,7 @@ popd</userinput></screen>
|
||||
--without-debug \
|
||||
--without-ada \
|
||||
--disable-stripping \
|
||||
--enable-widec</userinput></screen>
|
||||
AWK=gawk</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the new configure options:</title>
|
||||
@ -134,19 +133,15 @@ popd</userinput></screen>
|
||||
</varlistentry>
|
||||
|
||||
<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>
|
||||
@ -155,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 -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 -R root:root $LFS/lib64 ;;
|
||||
x86_64) chown --from &lfs-username; -R root:root $LFS/lib64 ;;
|
||||
esac</userinput></screen>
|
||||
|
||||
</sect1>
|
||||
|
@ -88,7 +88,8 @@
|
||||
make sure you have set <envar>LFS</envar>.
|
||||
</para>
|
||||
<para>
|
||||
This has been discussed in <xref linkend='ch-partitioning-aboutlfs'/>.
|
||||
This has been discussed in
|
||||
<xref linkend='ch-partitioning-aboutlfs' role='.'/>
|
||||
</para>
|
||||
</important>
|
||||
|
||||
|
@ -180,7 +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>
|
||||
|
@ -28,6 +28,7 @@
|
||||
mkdir -pv /lib/firmware
|
||||
mkdir -pv /media/{floppy,cdrom}
|
||||
mkdir -pv /usr/{,local/}{include,src}
|
||||
mkdir -pv /usr/lib/locale
|
||||
mkdir -pv /usr/local/{bin,lib,sbin}
|
||||
mkdir -pv /usr/{,local/}share/{color,dict,doc,info,locale,man}
|
||||
mkdir -pv /usr/{,local/}share/{misc,terminfo,zoneinfo}
|
||||
|
@ -45,16 +45,16 @@
|
||||
|
||||
<para>Prepare Perl for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">sh Configure -des \
|
||||
-Dprefix=/usr \
|
||||
-Dvendorprefix=/usr \
|
||||
-Duseshrplib \
|
||||
-Dprivlib=/usr/lib/perl5/&perl-version-min;/core_perl \
|
||||
-Darchlib=/usr/lib/perl5/&perl-version-min;/core_perl \
|
||||
-Dsitelib=/usr/lib/perl5/&perl-version-min;/site_perl \
|
||||
-Dsitearch=/usr/lib/perl5/&perl-version-min;/site_perl \
|
||||
-Dvendorlib=/usr/lib/perl5/&perl-version-min;/vendor_perl \
|
||||
-Dvendorarch=/usr/lib/perl5/&perl-version-min;/vendor_perl</userinput></screen>
|
||||
<screen><userinput remap="configure">sh Configure -des \
|
||||
-D prefix=/usr \
|
||||
-D vendorprefix=/usr \
|
||||
-D useshrplib \
|
||||
-D privlib=/usr/lib/perl5/&perl-version-min;/core_perl \
|
||||
-D archlib=/usr/lib/perl5/&perl-version-min;/core_perl \
|
||||
-D sitelib=/usr/lib/perl5/&perl-version-min;/site_perl \
|
||||
-D sitearch=/usr/lib/perl5/&perl-version-min;/site_perl \
|
||||
-D vendorlib=/usr/lib/perl5/&perl-version-min;/vendor_perl \
|
||||
-D vendorarch=/usr/lib/perl5/&perl-version-min;/vendor_perl</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the Configure options:</title>
|
||||
@ -69,7 +69,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dvendorprefix=/usr</parameter></term>
|
||||
<term><parameter>-D vendorprefix=/usr</parameter></term>
|
||||
<listitem>
|
||||
<para>This ensures <command>perl</command> knows how to
|
||||
tell packages where they should install their Perl modules.</para>
|
||||
@ -77,7 +77,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Duseshrplib</parameter></term>
|
||||
<term><parameter>-D useshrplib</parameter></term>
|
||||
<listitem>
|
||||
<para>Build <systemitem class='library'>libperl</systemitem>
|
||||
needed by some Perl modules as a shared library, instead of
|
||||
@ -86,7 +86,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dprivlib,-Darchlib,-Dsitelib,...</parameter></term>
|
||||
<term><parameter>-D privlib,-D archlib,-D sitelib,...</parameter></term>
|
||||
<listitem>
|
||||
<para>These settings define where Perl looks for installed
|
||||
modules. The LFS editors chose to put them in a directory structure
|
||||
|
@ -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>
|
||||
|
@ -51,17 +51,18 @@
|
||||
|
||||
<para>Prepare Util-linux for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --libdir=/usr/lib \
|
||||
--runstatedir=/run \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-static \
|
||||
--without-python \
|
||||
<screen><userinput remap="configure">./configure --libdir=/usr/lib \
|
||||
--runstatedir=/run \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-static \
|
||||
--disable-liblastlog2 \
|
||||
--without-python \
|
||||
ADJTIME_PATH=/var/lib/hwclock/adjtime \
|
||||
--docdir=/usr/share/doc/util-linux-&util-linux-version;</userinput></screen>
|
||||
|
||||
|
@ -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>
|
||||
|
||||
|
@ -62,8 +62,6 @@
|
||||
<para>Replace <replaceable>$((...))</replaceable> with the number of
|
||||
logical cores you want to use if you don't want to use all.</para>
|
||||
|
||||
<para>The test t/subobj.sh is known to fail.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
@ -40,10 +40,6 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Bash</title>
|
||||
|
||||
<para>First, fix some issues identified upstream:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&bash-upstream-fixes-patch;</userinput></screen>
|
||||
|
||||
<para>Prepare Bash for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
|
@ -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,26 +51,18 @@ cd build</userinput></screen>
|
||||
|
||||
<screen><userinput remap="configure">../configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--enable-gold \
|
||||
--enable-ld=default \
|
||||
--enable-plugins \
|
||||
--enable-shared \
|
||||
--disable-werror \
|
||||
--enable-64-bit-bfd \
|
||||
--enable-new-dtags \
|
||||
--with-system-zlib \
|
||||
--enable-default-hash-style=gnu</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>
|
||||
@ -135,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>
|
||||
|
||||
@ -160,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>
|
||||
@ -270,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>
|
||||
|
||||
|
@ -19,6 +19,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="zlib.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="bzip2.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="xz.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="lz4.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="zstd.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="file.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="readline.xml"/>
|
||||
@ -59,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>
|
@ -12,7 +12,7 @@
|
||||
|
||||
<para>Finally, clean up some extra files left over from running tests:</para>
|
||||
|
||||
<screen><userinput>rm -rf /tmp/*</userinput></screen>
|
||||
<screen><userinput>rm -rf /tmp/{*,.*}</userinput></screen>
|
||||
|
||||
<para>There are also several files in the /usr/lib and /usr/libexec
|
||||
directories with a file name extension of .la. These are "libtool archive"
|
||||
|
@ -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>
|
||||
@ -53,29 +57,37 @@
|
||||
those bugs are reproducible without this patch.</para>
|
||||
</note>
|
||||
|
||||
<!-- https://seclists.org/oss-sec/2024/q1/30 -->
|
||||
<para>Fix a security vulnerability in the <command>split</command>
|
||||
utility:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -e '/n_out += n_hold/,+4 s|.*bufsize.*|//&|' \
|
||||
-i src/split.c</userinput></screen>
|
||||
|
||||
<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>
|
||||
|
||||
@ -123,20 +135,19 @@ FORCE_UNSAFE_CONFIGURE=1 ./configure \
|
||||
|
||||
<screen><userinput remap="test">chown -R tester . </userinput></screen>
|
||||
|
||||
<para>Now run the tests:</para>
|
||||
<!-- To editors: in jhalfs the standard input is always piped to "make"
|
||||
so the test failures are not reproducible in jhalfs even if
|
||||
running the build in a PTY. Don't use jhalfs to test if we can
|
||||
remove < /dev/null. -->
|
||||
<para>Now run the tests (using <filename>/dev/null</filename> for the
|
||||
standard input, or two tests may be broken if building LFS in a
|
||||
graphical terminal or a session in SSH or GNU Screen because the
|
||||
standard input is connected to a PTY from host distro, and the device
|
||||
node for such a PTY cannot be accessed from the LFS chroot
|
||||
environment):</para>
|
||||
|
||||
<screen><userinput remap="test">su tester -c "PATH=$PATH make RUN_EXPENSIVE_TESTS=yes check"</userinput></screen>
|
||||
|
||||
<!-- Sometimes skipped, but if not it may fail.
|
||||
Please DO NOT remove or comment out this unless we can fully
|
||||
understand it!
|
||||
<para>The test-getlogin test may fail in the LFS chroot environment.</para>
|
||||
20240226: Commented out as it seems the upstream has root-caused and
|
||||
fixed the issue. I've checked the fix is in Coreutils 9.4 release
|
||||
tarball:
|
||||
|
||||
https://lists.gnu.org/archive/html/bug-gnulib/2022-06/msg00079.html
|
||||
-->
|
||||
<screen><userinput remap="test">su tester -c "PATH=$PATH make -k RUN_EXPENSIVE_TESTS=yes check" \
|
||||
< /dev/null</userinput></screen>
|
||||
|
||||
<para>Remove the temporary group:</para>
|
||||
|
||||
|
@ -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,11 +67,16 @@
|
||||
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-15.1 or later:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&expect-gcc15-patch;</userinput></screen>
|
||||
|
||||
<para>Prepare Expect for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--with-tcl=/usr/lib \
|
||||
--enable-shared \
|
||||
--disable-rpath \
|
||||
--mandir=/usr/share/man \
|
||||
--with-tclinclude=/usr/include</userinput></screen>
|
||||
|
||||
|
@ -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>
|
||||
|
||||
|
@ -40,20 +40,7 @@
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of GCC</title>
|
||||
<!--
|
||||
<para>At first, fix an issue breaking
|
||||
<filename class="libraryfile">libasan.a</filename> building this package
|
||||
with Glibc-2.34 or later:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -e '/static.*SIGSTKSZ/d' \
|
||||
-e 's/return kAltStackSize/return SIGSTKSZ * 4/' \
|
||||
-i libsanitizer/sanitizer_common/sanitizer_posix_libcdep.cpp</userinput></screen>
|
||||
-->
|
||||
<!--
|
||||
<para>First fix a problem with the latest version of glibc:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&gcc-upstream-fixes-patch;</userinput></screen>
|
||||
-->
|
||||
<para>If building on x86_64, change the default directory name for 64-bit
|
||||
libraries to <quote>lib</quote>:</para>
|
||||
|
||||
@ -76,6 +63,7 @@ cd build</userinput></screen>
|
||||
--enable-languages=c,c++ \
|
||||
--enable-default-pie \
|
||||
--enable-default-ssp \
|
||||
--enable-host-pie \
|
||||
--disable-multilib \
|
||||
--disable-bootstrap \
|
||||
--disable-fixincludes \
|
||||
@ -147,14 +135,28 @@ cd build</userinput></screen>
|
||||
<para>In this section, the test suite for GCC is considered
|
||||
important, but it takes a long time. First-time builders are
|
||||
encouraged to run the test suite. The time to run the tests can be
|
||||
reduced significantly by adding -jx to the <command>make -k check</command> command below,
|
||||
where x is the number of CPU cores on your system.</para>
|
||||
reduced significantly by adding -jx to the <command>make -k check</command>
|
||||
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>
|
||||
|
||||
<screen><userinput remap="test">sed -e '/cpython/d' -i ../gcc/testsuite/gcc.dg/plugin/plugin.exp
|
||||
sed -e 's/no-pic /&-no-pie /' -i ../gcc/testsuite/gcc.target/i386/pr113689-1.c
|
||||
sed -e 's/300000/(1|300000)/' -i ../libgomp/testsuite/libgomp.c-c++-common/pr109062.c
|
||||
sed -e 's/{ target nonpic } //' \
|
||||
-e '/GOTPCREL/d' -i ../gcc/testsuite/gcc.target/i386/fentryname3.c</userinput></screen>
|
||||
|
||||
<para>Test the results as a non-privileged user, but do not stop at errors:</para>
|
||||
|
||||
@ -172,27 +174,17 @@ su tester -c "PATH=$PATH make -k check"</userinput></screen>
|
||||
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://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>
|
||||
|
||||
<!-- https://gcc.gnu.org/PR109353 -->
|
||||
One libstdc++ test (out of over 15000), <filename>copy.cc</filename>, is
|
||||
known to fail.
|
||||
|
||||
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. The GCC developers
|
||||
are usually aware of these issues, but have not resolved them yet.
|
||||
<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.-->
|
||||
Unless the test results are vastly different from those at the above URL,
|
||||
it is safe to continue.</para>
|
||||
|
||||
@ -231,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,
|
||||
@ -327,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>
|
||||
|
||||
|
@ -50,10 +50,9 @@
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&glibc-fhs-patch;</userinput></screen>
|
||||
<!--
|
||||
<para>Now fix two security vulnerabilities and a regression causing the
|
||||
posix_memalign() function very slow in some conditions:</para>
|
||||
<para>Now fix a security vulnerability:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&glibc-upstream-fixes-patch;</userinput></screen>
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&glibc-upstream-patch;</userinput></screen>
|
||||
-->
|
||||
<para>The Glibc documentation recommends building Glibc
|
||||
in a dedicated build directory:</para>
|
||||
@ -69,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>
|
||||
@ -153,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>
|
||||
@ -171,9 +170,7 @@ esac</userinput></screen>
|
||||
relatively slow and/or running the test suite with multiple
|
||||
parallel make jobs). These tests can be identified with:</para>
|
||||
|
||||
<!-- TODO: Using nodump for freeze. Change it to role="test" after
|
||||
12.1 release so jhalfs can list these in the log. -->
|
||||
<screen role="nodump"><userinput>grep "Timed out" -l $(find -name \*.out)</userinput></screen>
|
||||
<screen><userinput remap="test">grep "Timed out" $(find -name \*.out)</userinput></screen>
|
||||
|
||||
<para>It's possible to re-run a single test with enlarged timeout
|
||||
with
|
||||
@ -320,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>
|
||||
@ -359,8 +370,7 @@ install -v -Dm644 ../nscd/nscd.service /usr/lib/systemd/system/nscd.service</use
|
||||
The following instructions will install the minimum set of
|
||||
locales necessary for the optimal coverage of tests:</para>
|
||||
|
||||
<screen role="nodump"><userinput remap="locale-test">mkdir -pv /usr/lib/locale
|
||||
localedef -i C -f UTF-8 C.UTF-8
|
||||
<screen role="nodump"><userinput remap="locale-test">localedef -i C -f UTF-8 C.UTF-8
|
||||
localedef -i cs_CZ -f UTF-8 cs_CZ.UTF-8
|
||||
localedef -i de_DE -f ISO-8859-1 de_DE
|
||||
localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro
|
||||
@ -384,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
|
||||
@ -406,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
|
||||
@ -500,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>
|
||||
|
||||
|
@ -43,10 +43,12 @@
|
||||
<note>
|
||||
<para>
|
||||
If your system has UEFI support and you wish to boot LFS with UEFI,
|
||||
you can skip this package in LFS,
|
||||
and install GRUB with UEFI support (and its dependencies) by following
|
||||
the instructions on
|
||||
you need to install GRUB with UEFI support (and its dependencies) by
|
||||
following the instructions on
|
||||
<ulink url="&blfs-book;postlfs/grub-efi.html">the BLFS page</ulink>.
|
||||
You may skip this package, or install this package and the BLFS
|
||||
GRUB for UEFI package without conflict (the BLFS page provides
|
||||
instructions for both cases).
|
||||
</para>
|
||||
</note>
|
||||
|
||||
@ -69,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>
|
||||
@ -103,13 +105,14 @@
|
||||
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>
|
||||
|
||||
<para>Making your LFS system bootable with GRUB will be discussed in
|
||||
<xref linkend="ch-bootable-grub"/>.</para>
|
||||
<xref linkend="ch-bootable-grub" role='.'/></para>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -174,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,6 +40,10 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Inetutils</title>
|
||||
|
||||
<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>
|
||||
|
||||
<para>Prepare Inetutils for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
|
@ -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,34 +43,23 @@
|
||||
|
||||
<para>Prepare Kmod for compilation:</para>
|
||||
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--with-openssl \
|
||||
--with-xz \
|
||||
--with-zstd \
|
||||
--with-zlib</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>
|
||||
<para>This option disables generating the man pages which
|
||||
requires an external program.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -78,23 +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 create symlinks for
|
||||
compatibility with Module-Init-Tools (the package that previously handled
|
||||
Linux kernel modules):</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
|
||||
done
|
||||
|
||||
ln -sfv kmod /usr/bin/lsmod</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>
|
||||
|
||||
|
141
chapter08/lz4.xml
Normal file
141
chapter08/lz4.xml
Normal file
@ -0,0 +1,141 @@
|
||||
<?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-lz4" role="wrap">
|
||||
<?dbhtml filename="lz4.html"?>
|
||||
|
||||
<sect1info condition="script">
|
||||
<productname>Lz4</productname>
|
||||
<productnumber>&lz4-version;</productnumber>
|
||||
<address>&lz4-url;</address>
|
||||
</sect1info>
|
||||
|
||||
<title>Lz4-&lz4-version;</title>
|
||||
|
||||
<indexterm zone="ch-system-lz4">
|
||||
<primary sortas="a-lz4">Lz4</primary>
|
||||
</indexterm>
|
||||
|
||||
<sect2 role="package">
|
||||
<title/>
|
||||
|
||||
<para>Lz4 is a lossless compression algorithm, providing compression speed
|
||||
greater than 500 MB/s per core. It features an extremely fast decoder, with
|
||||
speed in multiple GB/s per core. Lz4 can work with Zstandard to allow both
|
||||
algorithms to compress data faster.</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>&lz4-fin-sbu;</seg>
|
||||
<seg>&lz4-fin-du;</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Lz4</title>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput remap="make">make BUILD_STATIC=no PREFIX=/usr</userinput></screen>
|
||||
|
||||
<para>To test the results, issue:</para>
|
||||
|
||||
<!-- This needs to be done at -j1 because otherwise test files do not
|
||||
get generated correctly. -->
|
||||
|
||||
<screen><userinput remap="test">make -j1 check</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make BUILD_STATIC=no PREFIX=/usr install</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-lz4" role="content">
|
||||
<title>Contents of Lz4</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
<segtitle>Installed library</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>lz4,
|
||||
lz4c (link to lz4),
|
||||
lz4cat (link to lz4), and
|
||||
unlz4 (link to lz4)
|
||||
</seg>
|
||||
|
||||
<seg>liblz4.so</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist>
|
||||
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
<varlistentry id="lz4">
|
||||
<term><command>lz4</command></term>
|
||||
<listitem>
|
||||
<para>Compresses or decompresses files using the LZ4 format</para>
|
||||
<indexterm zone="ch-system-lz4 lz4">
|
||||
<primary sortas="b-lz4">lz4</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="lz4c">
|
||||
<term><command>lz4c</command></term>
|
||||
<listitem>
|
||||
<para>Compresses files using the LZ4 format</para>
|
||||
<indexterm zone="ch-system-lz4 lz4c">
|
||||
<primary sortas="b-lz4c">lz4c</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="lz4cat">
|
||||
<term><command>lz4cat</command></term>
|
||||
<listitem>
|
||||
<para>Lists the contents of a file compressed using the LZ4 format</para>
|
||||
<indexterm zone="ch-system-lz4 lz4cat">
|
||||
<primary sortas="b-lz4cat">lz4cat</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="unlz4">
|
||||
<term><command>unlz4</command></term>
|
||||
<listitem>
|
||||
<para>Decompresses files using the LZ4 format</para>
|
||||
<indexterm zone="ch-system-lz4 unlz4">
|
||||
<primary sortas="b-unlz4">unlz4</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="liblz4">
|
||||
<term><filename class="libraryfile">liblz4</filename></term>
|
||||
<listitem>
|
||||
<para>The library implementing lossless data
|
||||
compression, using the LZ4 algorithm</para>
|
||||
<indexterm zone="ch-system-lz4 liblz4">
|
||||
<primary sortas="c-liblz4">liblz4</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
@ -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>
|
||||
|
||||
|
@ -50,9 +50,9 @@
|
||||
--without-normal \
|
||||
--with-cxx-shared \
|
||||
--enable-pc-files \
|
||||
--enable-widec \
|
||||
--with-pkg-config-libdir=/usr/lib/pkgconfig</userinput></screen>
|
||||
|
||||
<!-- - -enable-widec this is now the default -->
|
||||
<variablelist>
|
||||
<title>The meaning of the new configure options:</title>
|
||||
|
||||
@ -94,9 +94,9 @@
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-widec</parameter></term>
|
||||
<term><parameter>- -enable-widec</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch causes wide-character libraries (e.g., <filename
|
||||
class="libraryfile">libncursesw.so.&ncurses-release;</filename>)
|
||||
@ -108,7 +108,7 @@
|
||||
source-compatible, but not binary-compatible.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
-->
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
@ -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-release;</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-release; /usr/lib
|
||||
rm -v dest/usr/lib/libncursesw.so.&ncurses-release;
|
||||
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,12 +80,26 @@
|
||||
</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>. 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>
|
||||
|
||||
<screen><userinput remap="test">./ninja ninja_test
|
||||
./ninja_test --gtest_filter=-SubprocessTest.SetWithLots</userinput></screen>
|
||||
./ninja_test - -gtest_filter=-SubprocessTest.SetWithLots</userinput></screen>
|
||||
-->
|
||||
|
||||
<para>Install the package:</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.
|
||||
@ -60,26 +59,26 @@ export BUILD_BZIP2=0</userinput></screen>
|
||||
this package is built. Alternatively, use the command exactly as shown below to
|
||||
use the defaults that Perl auto-detects:</para>
|
||||
|
||||
<screen><userinput remap="configure">sh Configure -des \
|
||||
-Dprefix=/usr \
|
||||
-Dvendorprefix=/usr \
|
||||
-Dprivlib=/usr/lib/perl5/&perl-version-min;/core_perl \
|
||||
-Darchlib=/usr/lib/perl5/&perl-version-min;/core_perl \
|
||||
-Dsitelib=/usr/lib/perl5/&perl-version-min;/site_perl \
|
||||
-Dsitearch=/usr/lib/perl5/&perl-version-min;/site_perl \
|
||||
-Dvendorlib=/usr/lib/perl5/&perl-version-min;/vendor_perl \
|
||||
-Dvendorarch=/usr/lib/perl5/&perl-version-min;/vendor_perl \
|
||||
-Dman1dir=/usr/share/man/man1 \
|
||||
-Dman3dir=/usr/share/man/man3 \
|
||||
-Dpager="/usr/bin/less -isR" \
|
||||
-Duseshrplib \
|
||||
-Dusethreads</userinput></screen>
|
||||
<screen><userinput remap="configure">sh Configure -des \
|
||||
-D prefix=/usr \
|
||||
-D vendorprefix=/usr \
|
||||
-D privlib=/usr/lib/perl5/&perl-version-min;/core_perl \
|
||||
-D archlib=/usr/lib/perl5/&perl-version-min;/core_perl \
|
||||
-D sitelib=/usr/lib/perl5/&perl-version-min;/site_perl \
|
||||
-D sitearch=/usr/lib/perl5/&perl-version-min;/site_perl \
|
||||
-D vendorlib=/usr/lib/perl5/&perl-version-min;/vendor_perl \
|
||||
-D vendorarch=/usr/lib/perl5/&perl-version-min;/vendor_perl \
|
||||
-D man1dir=/usr/share/man/man1 \
|
||||
-D man3dir=/usr/share/man/man3 \
|
||||
-D pager="/usr/bin/less -isR" \
|
||||
-D useshrplib \
|
||||
-D usethreads</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the new Configure options:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dpager="/usr/bin/less -isR"</parameter></term>
|
||||
<term><parameter>-D pager="/usr/bin/less -isR"</parameter></term>
|
||||
<listitem>
|
||||
<para>This ensures that <userinput>less</userinput> is used instead
|
||||
of <userinput>more</userinput>.</para>
|
||||
@ -87,8 +86,8 @@ export BUILD_BZIP2=0</userinput></screen>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dman1dir=/usr/share/man/man1
|
||||
-Dman3dir=/usr/share/man/man3</parameter></term>
|
||||
<term><parameter>-D man1dir=/usr/share/man/man1
|
||||
-D man3dir=/usr/share/man/man3</parameter></term>
|
||||
<listitem>
|
||||
<para>Since Groff is not installed yet, <command>Configure</command>
|
||||
will not create man pages for Perl. These
|
||||
@ -97,7 +96,7 @@ export BUILD_BZIP2=0</userinput></screen>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dusethreads</parameter></term>
|
||||
<term><parameter>-D usethreads</parameter></term>
|
||||
<listitem>
|
||||
<para>Build Perl with support for threads.</para>
|
||||
</listitem>
|
||||
@ -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,29 +65,34 @@
|
||||
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>
|
||||
|
||||
<para> To run the test suite, run:</para>
|
||||
<!-- 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
|
||||
internal hazards with some "luck" though. -->
|
||||
<para>To run the test suite, run:</para>
|
||||
|
||||
<screen><userinput remap="test">make -k check</userinput></screen>
|
||||
<screen><userinput remap="test">chown -R tester .
|
||||
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.
|
||||
<!-- These two tests just do not work as root but they seem to pass
|
||||
in most time due to some internal hazards of Tcl/Expect/DejaGNU
|
||||
framework. However the failures have been really observed.
|
||||
TODO: run the test suite as tester after the freeze ends. -->
|
||||
Two tests named
|
||||
<literal>pmap X with unreachable process</literal> and
|
||||
<literal>pmap XX with unreachable process</literal> are known to
|
||||
fail occasionally.</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>
|
||||
@ -78,11 +83,18 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Running the tests at this point is not recommended. The
|
||||
tests are known to hang indefinitely in the partial LFS environment.
|
||||
If desired, the tests can be rerun at the end of this chapter, or
|
||||
when Python 3 is reinstalled in BLFS. To run the tests anyway,
|
||||
issue <command>make test</command>.</para>
|
||||
<para>Some tests are known to occasionally hang indefinitely. So to test the
|
||||
results, run the test suite but set a 2-minute time limit for each
|
||||
test case:</para>
|
||||
|
||||
<screen><userinput remap="test">make test TESTOPTS="--timeout 120"</userinput></screen>
|
||||
|
||||
<para>For a relatively slow system you may need to increase the time
|
||||
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. One test, test_ssl,
|
||||
is known to fail in the chroot environment.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
@ -155,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>
|
||||
|
@ -49,9 +49,12 @@
|
||||
<screen><userinput remap="pre">sed -i '/MV.*old/d' Makefile.in
|
||||
sed -i '/{OLDSUFF}/c:' support/shlib-install</userinput></screen>
|
||||
|
||||
<para>Now fix a problem identified upstream:</para>
|
||||
<para>Prevent hard coding library search paths (rpath) into
|
||||
the shared libraries. This package does not need rpath for an
|
||||
installation into the standard location, and rpath may sometimes cause
|
||||
unwanted effects or even security issues:</para>
|
||||
|
||||
<screen><userinput remap="pre">patch -Np1 -i ../&readline-fixes-patch;</userinput></screen>
|
||||
<screen><userinput>sed -i 's/-Wl,-rpath,[^ ]*//' support/shobj-conf</userinput></screen>
|
||||
|
||||
<para>Prepare Readline for compilation:</para>
|
||||
|
||||
@ -86,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>
|
||||
|
||||
@ -96,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>
|
||||
|
||||
|
@ -41,12 +41,23 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Shadow</title>
|
||||
|
||||
<important>
|
||||
<para>
|
||||
If you've installed Linux-PAM, you should follow
|
||||
<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
|
||||
@ -72,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>
|
||||
@ -233,7 +239,8 @@ useradd -D --gid 999</userinput></screen>
|
||||
unknown GID 999</computeroutput>,
|
||||
even though the account has been created correctly. That is why we
|
||||
created the group <systemitem class="groupname">users</systemitem>
|
||||
with this group ID in <xref linkend='ch-tools-createfiles'/>.</para>
|
||||
with this group ID in
|
||||
<xref linkend='ch-tools-createfiles' role='.'/></para>
|
||||
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
@ -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
|
||||
|
@ -41,11 +41,14 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Sysklogd</title>
|
||||
|
||||
<para>First, fix a problem that causes a segmentation fault in klogd
|
||||
under some conditions, and fix an obsolete program construct:</para>
|
||||
<para>Prepare the package for compilation:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i '/Error loading kernel symbols/{n;n;d}' ksym_mod.c
|
||||
sed -i 's/union wait/int/' syslogd.c</userinput></screen>
|
||||
<screen><userinput remap="configure">./configure --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--runstatedir=/run \
|
||||
--without-logger \
|
||||
--disable-static \
|
||||
--docdir=/usr/share/doc/sysklogd-&sysklogd-version;</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
@ -55,7 +58,7 @@ sed -i 's/union wait/int/' syslogd.c</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput remap="install">make BINDIR=/sbin install</userinput></screen>
|
||||
<screen><userinput remap="install">make install</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -85,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>
|
||||
|
||||
@ -94,10 +100,10 @@ EOF</userinput></screen>
|
||||
<title>Contents of Sysklogd</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
<segtitle>Installed program</segtitle>
|
||||
|
||||
<seglistitem>
|
||||
<seg>klogd and syslogd</seg>
|
||||
<seg>syslogd</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
@ -106,16 +112,6 @@ EOF</userinput></screen>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
<varlistentry id="klogd">
|
||||
<term><command>klogd</command></term>
|
||||
<listitem>
|
||||
<para>A system daemon for intercepting and logging kernel messages</para>
|
||||
<indexterm zone="ch-system-sysklogd klogd">
|
||||
<primary sortas="b-klogd">klogd</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="syslogd">
|
||||
<term><command>syslogd</command></term>
|
||||
<listitem>
|
||||
|
@ -45,42 +45,34 @@
|
||||
<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>
|
||||
|
||||
<!-- https://github.com/systemd/systemd/pull/30549 -->
|
||||
<para>Now fix a security vulnerability in the DNSSEC verification of
|
||||
<command>systemd-resolved</command> and a bug breaking running
|
||||
<command>systemd-analyze verify</command> on an instantiated systemd
|
||||
unit:</para>
|
||||
|
||||
<screen><userinput remap='pre'>patch -Np1 -i ../&systemd-upstream-patch;</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>
|
||||
|
||||
<screen><userinput remap="configure">mkdir -p build
|
||||
cd build
|
||||
|
||||
meson setup \
|
||||
--prefix=/usr \
|
||||
--buildtype=release \
|
||||
-Ddefault-dnssec=no \
|
||||
-Dfirstboot=false \
|
||||
-Dinstall-tests=false \
|
||||
-Dldconfig=false \
|
||||
-Dsysusers=false \
|
||||
-Drpmmacrosdir=no \
|
||||
-Dhomed=disabled \
|
||||
-Duserdb=false \
|
||||
-Dman=disabled \
|
||||
-Dmode=release \
|
||||
-Dpamconfdir=no \
|
||||
-Ddev-kvm-mode=0660 \
|
||||
-Dnobody-group=nogroup \
|
||||
-Dsysupdate=disabled \
|
||||
-Dukify=disabled \
|
||||
-Ddocdir=/usr/share/doc/systemd-&systemd-version; \
|
||||
..</userinput></screen>
|
||||
meson setup .. \
|
||||
--prefix=/usr \
|
||||
--buildtype=release \
|
||||
-D default-dnssec=no \
|
||||
-D firstboot=false \
|
||||
-D install-tests=false \
|
||||
-D ldconfig=false \
|
||||
-D sysusers=false \
|
||||
-D rpmmacrosdir=no \
|
||||
-D homed=disabled \
|
||||
-D userdb=false \
|
||||
-D man=disabled \
|
||||
-D mode=release \
|
||||
-D pamconfdir=no \
|
||||
-D dev-kvm-mode=0660 \
|
||||
-D nobody-group=nogroup \
|
||||
-D sysupdate=disabled \
|
||||
-D ukify=disabled \
|
||||
-D docdir=/usr/share/doc/systemd-&systemd-version;</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the meson options:</title>
|
||||
@ -95,14 +87,14 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Ddefault-dnssec=no</parameter></term>
|
||||
<term><parameter>-D default-dnssec=no</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch turns off the experimental DNSSEC support.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dfirstboot=false</parameter></term>
|
||||
<term><parameter>-D firstboot=false</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch prevents installation of systemd
|
||||
services responsible for setting up the system for
|
||||
@ -112,14 +104,14 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dinstall-tests=false</parameter></term>
|
||||
<term><parameter>-D install-tests=false</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch prevents installation of the compiled tests.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dldconfig=false</parameter></term>
|
||||
<term><parameter>-D ldconfig=false</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch prevents installation of a systemd unit that runs
|
||||
<command>ldconfig</command> at boot; this is not useful for source
|
||||
@ -129,7 +121,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dsysusers=false</parameter></term>
|
||||
<term><parameter>-D sysusers=false</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch prevents installation of systemd
|
||||
services responsible for setting up the
|
||||
@ -141,7 +133,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Drpmmacrosdir=no</parameter></term>
|
||||
<term><parameter>-D rpmmacrosdir=no</parameter></term>
|
||||
<listitem>
|
||||
<para>This switch disables installation of RPM Macros
|
||||
for use with systemd, because LFS does not support RPM.</para>
|
||||
@ -149,8 +141,8 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dhomed=disabled</parameter> and
|
||||
<parameter>-Duserdb=false</parameter></term>
|
||||
<term><parameter>-D homed=disabled</parameter> and
|
||||
<parameter>-D userdb=false</parameter></term>
|
||||
<listitem>
|
||||
<para>Remove two daemons with dependencies that do not fit
|
||||
within the scope of LFS.</para>
|
||||
@ -158,7 +150,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dman=disabled</parameter></term>
|
||||
<term><parameter>-D man=disabled</parameter></term>
|
||||
<listitem>
|
||||
<para>Prevent the generation of man pages to avoid extra
|
||||
dependencies. We will install pre-generated man pages for systemd
|
||||
@ -167,7 +159,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dmode=release</parameter></term>
|
||||
<term><parameter>-D mode=release</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable some features considered experimental by upstream.
|
||||
</para>
|
||||
@ -175,7 +167,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dpamconfdir=no</parameter></term>
|
||||
<term><parameter>-D pamconfdir=no</parameter></term>
|
||||
<listitem>
|
||||
<para>Prevent the installation of a PAM configuration file not
|
||||
functional on LFS.</para>
|
||||
@ -183,7 +175,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Ddev-kvm-mode=0660</parameter></term>
|
||||
<term><parameter>-D dev-kvm-mode=0660</parameter></term>
|
||||
<listitem>
|
||||
<para>The default udev rule would allow all users to access
|
||||
<filename class='devicefile'>/dev/kvm</filename>. The editors
|
||||
@ -192,7 +184,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dnobody-group=nogroup</parameter></term>
|
||||
<term><parameter>-D nobody-group=nogroup</parameter></term>
|
||||
<listitem>
|
||||
<para>Tell the package the group name with GID 65534 is
|
||||
<systemitem class='groupname'>nogroup</systemitem>.</para>
|
||||
@ -200,7 +192,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dsysupdate=disabled</parameter></term>
|
||||
<term><parameter>-D sysupdate=disabled</parameter></term>
|
||||
<listitem>
|
||||
<para>Do not install the <command>systemd-sysupdate</command>
|
||||
tool. It's designed for automatically upgrading binary distros,
|
||||
@ -211,7 +203,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dukify=disabled</parameter></term>
|
||||
<term><parameter>-D ukify=disabled</parameter></term>
|
||||
<listitem>
|
||||
<para>Do not install the <command>systemd-ukify</command> script.
|
||||
At runtime this script requires the
|
||||
@ -226,6 +218,22 @@ meson setup \
|
||||
|
||||
<screen><userinput remap="make">ninja</userinput></screen>
|
||||
|
||||
<para>Some tests need a basic <filename>/etc/os-release</filename> file.
|
||||
To test the results, issue:</para>
|
||||
|
||||
<screen><userinput remap="test">echo 'NAME="Linux From Scratch"' > /etc/os-release
|
||||
ninja test</userinput></screen>
|
||||
|
||||
<!-- test-namespace needs /run/systemd/inaccessible/sock, which only exists
|
||||
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.
|
||||
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>
|
||||
|
||||
<screen><userinput remap="install">ninja install</userinput></screen>
|
||||
@ -234,8 +242,8 @@ meson setup \
|
||||
|
||||
<!-- 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-version;.tar.xz \
|
||||
--no-same-owner --strip-components=1 \
|
||||
<screen><userinput remap="install">tar -xf ../../systemd-man-pages-&systemd-man-version;.tar.xz \
|
||||
--no-same-owner --strip-components=1 \
|
||||
-C /usr/share/man</userinput></screen>
|
||||
|
||||
<para>Create the <filename>/etc/machine-id</filename> file needed by
|
||||
|
@ -14,16 +14,16 @@
|
||||
<address>&sysvinit-url;</address>
|
||||
</sect1info>
|
||||
|
||||
<title>Sysvinit-&sysvinit-version;</title>
|
||||
<title>SysVinit-&sysvinit-version;</title>
|
||||
|
||||
<indexterm zone="ch-system-sysvinit">
|
||||
<primary sortas="a-Sysvinit">Sysvinit</primary>
|
||||
<primary sortas="a-SysVinit">SysVinit</primary>
|
||||
</indexterm>
|
||||
|
||||
<sect2 role="package">
|
||||
<title/>
|
||||
|
||||
<para>The Sysvinit package contains programs for controlling the startup,
|
||||
<para>The SysVinit package contains programs for controlling the startup,
|
||||
running, and shutdown of the system.</para>
|
||||
|
||||
<segmentedlist>
|
||||
@ -39,7 +39,7 @@
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Sysvinit</title>
|
||||
<title>Installation of SysVinit</title>
|
||||
|
||||
<!--
|
||||
<para>When run-levels are changed (for example, when halting the
|
||||
@ -59,7 +59,7 @@
|
||||
<command>mountpoint</command>, <command>last</command>,
|
||||
<command>mesg</command>, <command>sulogin</command>, and
|
||||
<command>utmpdump</command> programs were installed earlier by Util-linux.
|
||||
Suppress the installation of Sysvinit's versions of these programs and
|
||||
Suppress the installation of SysVinit's versions of these programs and
|
||||
their man pages:</para>
|
||||
|
||||
<screen><userinput remap="make">sed -ri -e '/utmpdump/d' \
|
||||
@ -85,7 +85,7 @@
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-sysvinit" role="content">
|
||||
<title>Contents of Sysvinit</title>
|
||||
<title>Contents of SysVinit</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
|
@ -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.5">
|
||||
<!ENTITY itcl-ver "4.2.3">
|
||||
<!ENTITY tdbc-ver "1.1.10">
|
||||
<!ENTITY itcl-ver "4.3.2">
|
||||
]>
|
||||
|
||||
<sect1 id="ch-system-tcl" role="wrap">
|
||||
@ -55,7 +55,23 @@
|
||||
<screen><userinput remap="configure">SRCDIR=$(pwd)
|
||||
cd unix
|
||||
./configure --prefix=/usr \
|
||||
--mandir=/usr/share/man</userinput></screen>
|
||||
--mandir=/usr/share/man \
|
||||
--disable-rpath</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the new configure parameters:</title>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--disable-rpath</parameter></term>
|
||||
<listitem>
|
||||
<para>This parameter prevents hard coding library search paths
|
||||
(rpath) into the binary executable files and shared libraries.
|
||||
This package does not need rpath for an installation into the
|
||||
standard location, and rpath may sometimes cause unwanted effects
|
||||
or even security issues.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Build the package:</para>
|
||||
|
||||
@ -66,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,32 +48,33 @@
|
||||
<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>
|
||||
|
||||
<screen><userinput remap="configure">mkdir -p build
|
||||
cd build
|
||||
|
||||
meson setup \
|
||||
--prefix=/usr \
|
||||
--buildtype=release \
|
||||
-Dmode=release \
|
||||
-Ddev-kvm-mode=0660 \
|
||||
-Dlink-udev-shared=false \
|
||||
-Dlogind=false \
|
||||
-Dvconsole=false \
|
||||
..</userinput></screen>
|
||||
meson setup .. \
|
||||
--prefix=/usr \
|
||||
--buildtype=release \
|
||||
-D mode=release \
|
||||
-D dev-kvm-mode=0660 \
|
||||
-D link-udev-shared=false \
|
||||
-D logind=false \
|
||||
-D vconsole=false</userinput></screen>
|
||||
|
||||
<variablelist>
|
||||
<title>The meaning of the meson options:</title>
|
||||
@ -88,7 +89,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dmode=release</parameter></term>
|
||||
<term><parameter>-D mode=release</parameter></term>
|
||||
<listitem>
|
||||
<para>Disable some features considered experimental by upstream.
|
||||
</para>
|
||||
@ -96,7 +97,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Ddev-kvm-mode=0660</parameter></term>
|
||||
<term><parameter>-D dev-kvm-mode=0660</parameter></term>
|
||||
<listitem>
|
||||
<para>The default udev rule would allow all users to access
|
||||
<filename class='devicefile'>/dev/kvm</filename>. The editors
|
||||
@ -105,7 +106,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dlink-udev-shared=false</parameter></term>
|
||||
<term><parameter>-D link-udev-shared=false</parameter></term>
|
||||
<listitem>
|
||||
<para>This option prevents udev from linking to the internal
|
||||
systemd shared library,
|
||||
@ -116,7 +117,7 @@ meson setup \
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>-Dlogind=false -Dvconsole=false</parameter></term>
|
||||
<term><parameter>-D logind=false -D vconsole=false</parameter></term>
|
||||
<listitem>
|
||||
<para>These options prevent the generation of several udev rule
|
||||
files belonging to the other Systemd components that we won't
|
||||
|
@ -42,43 +42,46 @@
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Util-linux</title>
|
||||
|
||||
<!--
|
||||
<para>First, disable a problematic test:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed -i '/test_mkfds/s/^/#/' tests/helpers/Makemodule.am</userinput></screen>
|
||||
|
||||
-->
|
||||
<para>Prepare Util-linux for compilation:</para>
|
||||
|
||||
<screen revision="sysv"><userinput remap="configure">./configure --bindir=/usr/bin \
|
||||
--libdir=/usr/lib \
|
||||
--runstatedir=/run \
|
||||
--sbindir=/usr/sbin \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-static \
|
||||
--without-python \
|
||||
--without-systemd \
|
||||
<screen revision="sysv"><userinput remap="configure">./configure --bindir=/usr/bin \
|
||||
--libdir=/usr/lib \
|
||||
--runstatedir=/run \
|
||||
--sbindir=/usr/sbin \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-liblastlog2 \
|
||||
--disable-static \
|
||||
--without-python \
|
||||
--without-systemd \
|
||||
--without-systemdsystemunitdir \
|
||||
ADJTIME_PATH=/var/lib/hwclock/adjtime \
|
||||
--docdir=/usr/share/doc/util-linux-&util-linux-version;</userinput></screen>
|
||||
|
||||
<screen revision="systemd"><userinput remap="configure">./configure --bindir=/usr/bin \
|
||||
--libdir=/usr/lib \
|
||||
--runstatedir=/run \
|
||||
--sbindir=/usr/sbin \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-static \
|
||||
--without-python \
|
||||
<screen revision="systemd"><userinput remap="configure">./configure --bindir=/usr/bin \
|
||||
--libdir=/usr/lib \
|
||||
--runstatedir=/run \
|
||||
--sbindir=/usr/sbin \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-liblastlog2 \
|
||||
--disable-static \
|
||||
--without-python \
|
||||
ADJTIME_PATH=/var/lib/hwclock/adjtime \
|
||||
--docdir=/usr/share/doc/util-linux-&util-linux-version;</userinput></screen>
|
||||
|
||||
@ -90,7 +93,14 @@
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>If desired, run the test suite as a non-&root; user:</para>
|
||||
<!-- To editors:
|
||||
Two tests need a /etc/fstab file. They are skipped if the host
|
||||
distro isn't using systemd as the init system, so don't remove
|
||||
the creation of /etc/fstab unless you've tested it with such a
|
||||
host distro (for example LFS systemd or Debian). -->
|
||||
<para>If desired, create a dummy <filename>/etc/fstab</filename> file
|
||||
to satisfy two tests and run the test suite as a non-&root;
|
||||
user:</para>
|
||||
|
||||
<warning><para>Running the test suite as the
|
||||
<systemitem class="username">root</systemitem> user can be harmful to
|
||||
@ -103,17 +113,25 @@
|
||||
<screen role="nodump"><userinput>bash tests/run.sh --srcdir=$PWD --builddir=$PWD</userinput></screen>
|
||||
</warning>
|
||||
|
||||
<screen><userinput remap="test">chown -R tester .
|
||||
<screen><userinput remap="test">touch /etc/fstab
|
||||
chown -R tester .
|
||||
su tester -c "make -k check"</userinput></screen>
|
||||
|
||||
<para>The <emphasis>hardlink</emphasis> tests will fail if the host's kernel
|
||||
does not have the option <option>CONFIG_CRYPTO_USER_API_HASH</option>
|
||||
enabled or does not have any options providing a SHA256 implementation
|
||||
(for example, <option>CONFIG_CRYPTO_SHA256</option>, or
|
||||
<option>CONFIG_CRYPTO_SHA256_SSSE3</option> if the CPU supports
|
||||
Supplemental SSE3) enabled. In addition,
|
||||
two sub-tests from misc: mbsencode and one sub-test from script: replay are
|
||||
known to fail.</para>
|
||||
<para>
|
||||
The <emphasis>hardlink</emphasis> tests will fail if the host's kernel
|
||||
does not have the option <option>CONFIG_CRYPTO_USER_API_HASH</option>
|
||||
enabled or does not have any options providing a SHA256 implementation
|
||||
(for example, <option>CONFIG_CRYPTO_SHA256</option>, or
|
||||
<option>CONFIG_CRYPTO_SHA256_SSSE3</option> if the CPU supports
|
||||
Supplemental SSE3) enabled. In addition, the lsfd: inotify test will
|
||||
fail if the kernel option <option>CONFIG_NETLINK_DIAG</option> is not
|
||||
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>
|
||||
|
||||
|
@ -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>
|
||||
@ -76,7 +78,7 @@
|
||||
|
||||
<para>The test suite outputs a lot of binary data to the screen. This can
|
||||
cause issues with the settings of the current terminal (especially while
|
||||
we are overriding the <envar>TERM</envar> variable to satisify some
|
||||
we are overriding the <envar>TERM</envar> variable to satisfy some
|
||||
assumptions of the test suite). The problem can be
|
||||
avoided by redirecting the output to a log file as shown above. A
|
||||
successful test will result in the words <computeroutput>ALL
|
||||
|
@ -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>
|
||||
|
||||
|
@ -8,7 +8,7 @@
|
||||
<sect1 id="ch-config-clock" revision="systemd">
|
||||
<?dbhtml filename="clock.html"?>
|
||||
|
||||
<title>Configuring the system clock</title>
|
||||
<title>Configuring the System Clock</title>
|
||||
|
||||
<indexterm zone="ch-config-clock">
|
||||
<primary sortas="d-clock">clock</primary>
|
||||
|
@ -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
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user