On 2020-05-15 15:09 +0800, Xi Ruoyao via lfs-dev wrote: > On 2020-05-11 23:05 +0800, Xi Ruoyao via lfs-dev wrote: > > On 2020-05-11 09:19 -0500, Bruce Dubbs via lfs-dev wrote: > > > On 5/11/20 8:23 AM, Pierre Labastie via lfs-dev wrote: > > > > On Mon, 2020-05-11 at 19:51 +0800, Xi Ruoyao via lfs-dev wrote: > > > > > I just redone LFS build for GCC-10.1.0. I proposed several > > > > > improvements during > > > > > the process: > > > > > > > > > > At first, some changes suggested by Firas: > > > > > > > > > > 1. Remove bzip2 in Chap. 5. No other changes needed. > > > > > > > > decreases the total number of SBUs by 0.1 :) why not, though > > > > > > > > > 2. Remove ncurses in Chap. 5. Move Chap. 6 readline after ncurses to > > > > > satisify > > > > > it. > > > > > Notes: > > > > > (1) Chap. 5 Python 3 can be built w/o ncurses, just lacking one > > > > > module we don't > > > > > need. > > > > > (2) We moved readline before bc to satisify GNU bc, but now Gavin's > > > > > bc doesn't > > > > > need readline. > > > > > > > > good point > > > > > > > > > (3) It slightly reduces the functionality of Chap. 5 bash. Long > > > > > command lines > > > > > won't be wrapped automatically anymore. > > > > > > > > It does much more than that if the terminfo database is not installed: > > > > no backspace (more exactly, backspace outputs only a space forward...) > > > > left and right arrows not functional. > > > > In short, no way to correct a typo > > > > > > > > can be Ok if scripting though > > So I'll not do that.
In a recent thread we discovered gettext somehow depends on ncurses. So it should not be done, at all. > > > > > 3. Remove flex in Chap. 5. Move Chap. 6 flex before Binutils so > > > > > `ranlib` and > > > > > `ar` can link to libfl.so. It seems bison test suite does not > > > > > depends on flex > > > > > any more. > > > > > > > > bison chapter 6 will be built after flex anyway, if we do the above, so > > > > whether it depends on it or not is not important. > > > > > > > > > However Firas' other suggestions are proved to be impossible. Glibc > > > > > requires > > > > > bison, gzip, gettext, perl, texinfo, python, and xz (to be untarred) > > > > > so all of > > > > > them need to stay in Chap. 5. Util-linux can't be removed from Chap. > > > > > 5 due to > > > > > its circular dependency with systemd/eudev. > > > > > > > > > > And: > > > > > > > > > > 4. Move Chap. 6 zstd before GCC, so GCC can link to libzstd.so and > > > > > use zstd to > > > > > compress LTO stream. > > > > > > > > definitely to be done, independently on the other points. > > > > > > > > > 5. Remove PKG_CONFIG_PATH=/tools/lib/pkgconfig in Chap. 6 kbd. It > > > > > seems > > > > > unneeded now. > > > > > > > > > > 6. Remove PERL5LIB=$PWD/tests/ in Chap. 6 make. It is unneeded now. > > > > > > > > > > 7. Add: > > > > > > > > > > mkdir /tools/lib/locale > > > > > localedef -i POSIX -f UTF-8 C.UTF-8 2> /dev/null || true > > > > > > > > > > into Chap. 5 Glibc. It will satisfy Chap. 6 man-db test. > > > > > > > > Or link /tools/share/locale/locale-archive->/usr/share/locale/locale- > > > > archive > > > > > > > > allows also all bison tests to pass > > > > > > > > > 8. Remove libctf{,-nobfd}.a (along with libbfd.a and libopcodes.a) in > > > > > "Cleaning > > > > > up" section. > > > > > > > > Independent on the other points and should be done for sure. > > > > > > > > > Are they OK to be committed into trunk? > > > > > > > > I'd say point 2 shouldn't not be committed, or only with some tweak of > > > > the terminfo database... > > > > > > > > among the other points: > > > > > > > > - 4 and 8 should be done for sure. > > > > - I've not tested 5 and 6, but I guess you have tested them, so go for > > > > them too > > > > - I'd rather use the link for point 7 (less instructions in chap 5 > > > > glibc). This is just one more line in "creating essentials symlinks and > > > > files". > > > > I agree that a link is better. > > > > > > - I'm not sure about point 3: building flex only once is tempting, but > > > > can the tests be run, and is flex the same as if rebuilt at the end of > > > > chap 6? > > > > I'll retry 3, 5 and 6 again to make sure, ... > > For 3: > > They are same (`diff` returns 0 for flex and libfl.so). But I'm using some > CFLAGS w/o `-g` so the comparsion doesn't include debug information. > > For 6: > > Definitly OK. > > For 5: > > The configure script actually doesn't use pkg-config to find packages at all. > > > > > - Point 1 improves only marginally the build time, but why not? > > > > > > Can we hold off on these changes for a week or so until we get BLFS > > > built with gcc10? > > > > ... in the meantime we can get BLFS built with gcc 10 :). Now 7 is done (with a symlink), and 2 is ruled out. If there is no objection I'll do other. -- Xi Ruoyao <xry...@mengyan1223.wang> School of Aerospace Science and Technology, Xidian University -- http://lists.linuxfromscratch.org/listinfo/lfs-dev FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page