Commit Graph

3053 Commits

Author SHA1 Message Date
Xi Ruoyao
2ef64c4da4
Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng 2022-11-23 00:28:37 +08:00
Xi Ruoyao
f01f8a56da
gcc: remove --disable-decimal-float from pass 1 and 2
We need to enable decimal float here or MPFR will be built w/o decimal
float support.  Then 2 of 183 tests will be skipped, and this will also
cause an ICA issue.

Q: Why we need decimal float in pass 1?
A: We need pass-1 GCC with decimal float support to build decimal float
routines in pass-2 libgcc.
2022-11-22 18:22:53 +08:00
Xi Ruoyao
4d3f41c96a
Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng 2022-11-12 00:19:56 +08:00
Bruce Dubbs
9292384bac Package updates and a fix.
Fix make-4.4 bug.
Update to wheel-0.38.4 (Python Module).
Update to texinfo-7.0.
Update to sysvinit-3.05.
Update to shadow-4.13.
Update to sed-4.9.
Update to meson-0.64.0.
Update to linux-6.0.7.
Update to elfutils-0.188.
Update to bc-6.1.1.
2022-11-11 09:44:13 -06:00
David Bryant
6dff9ef949 Edit English idiom. punctuation, etc., throughout chapter 6. 2022-11-03 19:29:02 -05:00
Xi Ruoyao
85ec218a0d
Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng 2022-10-18 16:27:54 +08:00
Xi Ruoyao
68588615e6
temp bash: fix "support/config.guess: Permission denied"
In bash-5.2 tarball config.guess is not executable, so we need to run
the script with an explicit "sh".
2022-10-09 13:35:48 +08:00
Xi Ruoyao
6c952e3e40
Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng 2022-09-19 14:38:55 +08:00
Pierre Labastie
0611f706d5 Use default-pie and default-ssp flags in gcc
Committing only the commands for now, so that others can test the
build. TODO:
- add command explanations
- add changelog
- comment on failing tests in binutils and gcc
2022-09-09 16:15:06 +02:00
Xi Ruoyao
12033127e1
Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng 2022-09-01 19:27:01 +08:00
Xi Ruoyao
baecd49c48
gcc-pass2: remove unnecessary --enable-initfini-array option
Forgot to remove this one when I removed it in pass 1...

Reference: https://gcc.gnu.org/r12-1328
2022-09-01 14:04:34 +08:00
Xi Ruoyao
9023df4e4f
Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng 2022-08-22 08:40:07 +08:00
Bruce Dubbs
f2af13d7a0 Intermediate update prior to lfs-11.2-rc1 2022-08-20 10:35:01 -05:00
Xi Ruoyao
aff530edc6
Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng 2022-08-19 12:48:37 +08:00
Xi Ruoyao
6099a47149
Remove libtool archive (.la) files in Chapter 5 and 6
They are really harmful.  In Binutils pass 2, libstdc++.la caused the
building system to use host /usr/lib/libstdc++.so for gprofng.  We now
has disabled gprofng for pass 2, but the similar issue also exists in
GCC pass 2.  In a normal LFS build, the building system silently uses
/usr/lib/libstdc++.so (I guess it does not blow up simply because some
blind luck); in a real cross build (x86 -> ARM for example) the build
will fail.

Remove the .la files to fix this issue.  Instead of only modifying
clfs-ng, it makes more sense to apply the change for trunk: though
the build does not fail, using host library is still a contamination.
2022-08-19 12:41:48 +08:00
Xi Ruoyao
630453370b
Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng 2022-08-11 22:14:45 +08:00
Bruce Dubbs
1b11115cd2 Package updates.
Update to binutils-2.38.
Update to util-linux-2.38.1.
Update to Python3-3.10.6.
Update to glibc-2.36.
2022-08-06 17:40:17 -05:00
Xi Ruoyao
e4d72ed3db
Merge remote-tracking branch 'origin/trunk' into xry111/clfs-ng 2022-06-30 20:02:07 +08:00
Pierre Labastie
f8b27abcda Generate shared C++ bindings for ncurses
Presently we let the build system generate static C++ bindings, and
then we remove them. Note that we could also prevent generating
any C++ binding, since nothing in LFS/BLFS use them, but it seems to
me that generating the shared ones is closer to what is done for
other packages.
2022-06-29 14:08:29 +02:00
Xi Ruoyao
f7c3359609
Merge branch 'trunk' into xry111/clfs-ng 2022-06-26 19:17:17 +08:00
Xi Ruoyao
f81a8a4a3c
fix command for removing libncurses++w.a
What was I doing ?!
2022-05-27 21:50:53 +08:00
Xi Ruoyao
2bb813a1e8
ncurses: remove libncurses++w.a from temp ncurses 2022-05-26 19:30:40 +08:00
Xi Ruoyao
100ca4e3cb
Merge branch 'trunk' into xry111/clfs-ng 2022-05-10 19:06:10 +08:00
Xi Ruoyao
d70e621d8e
gcc-12: remove unneeded sed for PR100017 in pass 2
Reference: https://gcc.gnu.org/r12-6406
2022-05-06 21:13:27 +08:00
Xi Ruoyao
388ffda463
clfs-ng: adapt temp grub configuration after reverting kernel image change 2022-03-24 00:32:40 +08:00
Xi Ruoyao
31e8da419f
Revert "cross-ng: use uncompressed kernel image in chapter 6"
This reverts commit 56f1739633.

GRUB on x86 does not support loading raw ELF vmlinux.
2022-03-24 00:25:52 +08:00
Xi Ruoyao
dd80883687
clfs-ng: temp kernel: mention more configurations depending on host openssl 2022-03-21 16:21:59 +08:00
Xi Ruoyao
b2ae446a5a
clfs-ng: create $LFS/boot/grub before temporary grub configuration 2022-03-15 16:44:06 +08:00
Xi Ruoyao
6ad2793f99
Merge branch 'trunk' into xry111/clfs-ng 2022-03-08 01:35:17 +08:00
Bruce Dubbs
c9629e0347 Typo 2022-03-06 15:37:02 -06:00
Xi Ruoyao
964103cbdc
Merge branch 'trunk' into xry111/clfs-ng 2022-03-02 21:15:18 +08:00
Xi Ruoyao
3bb463d33d
gcc-pass2: document *_FOR_TARGET parameters 2022-03-02 18:02:07 +08:00
Xi Ruoyao
8e0f8a9a52
gcc pass2: use --target=$LFS_TGT instead of many {C,CXX}_FOR_TARGET
There is also a "GCC_FOR_TARGET" which was not set correctly.  The
--target=$LFS_TGT parameter can set up all of these variables as we
expected.
2022-03-02 18:00:10 +08:00
Xi Ruoyao
459d4936ae
fix GCC PR100017 and enable libstdc++ for pass 2
This is the issue preventing us from cross-compiling libstdc++ in
Chapter 6.  By fixing this issue we can remove a seperate pass 2 for
libstdc++ and simplify the instruction.

The upstream fix will be released in 11.3 and 12.0, so we can remove the
first sed upgrading gcc next time.
2022-02-27 23:36:55 +08:00
Xi Ruoyao
8b37712d8b
cross-ng: document host dependencies for kernel cross compilation 2022-02-27 00:01:39 +08:00
Xi Ruoyao
56f1739633
cross-ng: use uncompressed kernel image in chapter 6
"vmlinux" always exists after running "make".  Use it so we won't need
to change the command porting to another arch.
2022-02-27 00:01:39 +08:00
Xi Ruoyao
3a5d53a529
cross-ng: adjust backup & restore for cross build 2022-02-27 00:01:39 +08:00
Xi Ruoyao
9673470766
cross-ng: mention in-kernel firmware blob for temporary kernel 2022-02-27 00:01:35 +08:00
Xi Ruoyao
4f2d91dc65
cross-ng: linux and linux-headers: specify ARCH for cross build 2022-02-26 23:43:12 +08:00
Xi Ruoyao
30ae09bb76
cross-ng: gcc: don't rely on "uname -m" 2022-02-26 23:43:12 +08:00
Xi Ruoyao
20549cb0fb
cross-ng: chapter 6: add grub configuration for temporary system 2022-02-26 23:43:12 +08:00
Xi Ruoyao
f58cbc10f5
cross-ng: chapter 6: build temporary Linux kernel 2022-02-26 23:43:11 +08:00
Xi Ruoyao
52e0f3e76e
cross-ng: chapter 6: add grub 2022-02-26 23:43:11 +08:00
Xi Ruoyao
ae636e7f20
cross-ng: chapter 6: add agetty, mount, and setsid from util-linux 2022-02-26 23:43:11 +08:00
Xi Ruoyao
426913ea08
binutils-pass2: workaround "binaries link to host libraries" issue
A very old libtool copy (2009-11-29) is shipped in binutils tarball.  It
does not support sysroot, so the cross-built binutils binaries may link
to libraries from the host distro, if certain libraries are available.

The ideal solution should be updating libtool, as libtool-2.4.6 (in LFS)
has sysroot support.  However, updating libtool for binutils is not
trivial: it would require to rerun autoconf and binutils building system
sticks to autoconf-2.69.  Another issue is the sysroot support for
libtool has introduced a configure option "--with-sysroot", which
conflicts with an already existing option with the same name in
GCC and binutils building system (we are using the GCC/binutils version
of --with-sysroot in chapter 5).

GCC building system has --with-build-sysroot (we are using this for GCC
pass 2) for this issue.  Binutils copied GCC building system, but it
does not respect --with-build-sysroot.

So for now we just edit libtool code to prevent "-L/usr/lib" in
$LFS_TGT_gcc command line.  It should fix the issue about host libiberty
(reported in #lfs-support) as well, but it still need to be confirmed by
someone having such a host.

Tested with a jhalfs run on LFS.
2022-02-10 21:05:33 +08:00
Bruce Dubbs
9c4ff70edf Package updates.
Update to bc-5.2.2.
Update to linux-5.16.8.
Update to binutils-2.38. Requires adding zlib to Chapter 6.
2022-02-09 20:54:15 -06:00
Xi Ruoyao
bca4876ac5
Revert "binutils: use -j1 for make install"
This reverts commit 03a41fd0cd.

It's no longer needed after binutils-gdb commit "install dependencies for
ld -> bfd and libctf -> bfd" (755ba58e).
2022-02-04 17:55:05 +08:00
Xi Ruoyao
e0f124e741
chapter 6 ncurses: disable stripping (invoking host strip) 2021-12-18 01:32:45 +08:00
Pierre Labastie
747287d8ad gawk, chap 6: now config.guess is in build-aux 2021-11-02 14:22:30 +01:00
Pierre Labastie
2967da3223 Remove spaces at end o lines - chapter06 2021-09-07 22:41:43 +02:00