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

Reply via email to