[Clfs-support] Current Patches and Updates pt4

Martin Ward macros_the_black at ntlworld.com
Tue Feb 7 23:17:39 PST 2017


Here is my current build run through to the final system

1. Several packages have seen upstream updates since but that's the
nature of open source

2. As I have mentioned I'm using the boot method, and logging the builds 
with porg

Chapter 9 Test suite tools

Before I do anything here I remove /cross-tools by renaming it, just as 
a precaution so we don't get any library path contamination and adjust 
/tools/bin/ldd for linker path to /tools/lib rather than /tools/lib64

9.2 Update date to Tcl-8.6.6

9.3 No change

9.4 updated to Dejagnu 1.6
4.9.
10 Final system

I have a slightly different build order to the clfs book but as long as 
the tool chain is built first and pre-requisite are considered really 
should make too much difference,as the build is fairly robust

10.4 Updated to Perl 5.24.1 which is the current version  other wise no
change
added help2man-1.47.3 here as flex was asking/needed it
./configure --prefix=/tools

10.5 Kernel headers, update to kernel version 4.9.6

10.6 Man-pages updated to 4.09

10.7 glibc update to 2.24, although 2.25 is now out

add libc_cv_rtlddir=/lib to config.cache for clarity, although it's not 
strictly needed

updated minimal kernel version to 3.7, think 2.6.32 is a bit old now

I do optimize by setting CFLAGS on the command line, have no problems 
with -O3 -march=bdver1 -mtune=native -fomit-frame-pointer -pipe

all checks pass except two getaddrinfo checks as we have no networking yet

remove some static libs  as not needed

rm -v /usr/lib/lib{anl,BrokenLocale,nsl,resolv,rt,util}.a
rm -v /usr/lib/libmvec.a


Install all locales

Update to tzdata2016j

10.8 adjust tool chain, no change, linker test passes, I like to have a 
nice coloured prompt and decent C(XX)FLAGS from here on so I make 
changes to my environment by settings appropriate variables


10.9 already have m4 as built in boot section as a pre-requisite for bison

10.10  update to gmp-6.1.2
add  --disable-static ,all tests pass, remove .la files
using find /usr/lib/ -type f -name '*.la' -delete

10.11 update to mpfr-3.1.5 with current patch lvl of 5
generate docs
make html
make install-html

add --disable-static and remove .la files

10.12 mpc add --disable-static and remove .la files

10.13 update to isl-0.18 // the conservative can use 0.16.1, found no 
difference in the builds so far using either version
add
sed -i -e '/Libs:/s:@LDFLAGS@ ::' configure //stops .pc files from being 
polluted by wrong lib path, take from gentoo

add --disable-static and remove .la files

10.14 update to zlib-1.2.11

10.15 update to flex-2.6.3 (don't run tests here as i rebuild this later)
add M4=m4 on configure line to avoid hard coding the path
use ln -sv flex /usr/bin/lex as in lfs
remove .la files
remove the static lib /usr/lib/libfl.a // haven't found any problem with 
this but ...

10.16 add --docdir=/usr/share/doc/bison-3.0.4
again use M4=m4

10.17 Binutils update to 2.27
add --with-system-zlib --disable-werror
the gold tests seem to need a libstdc++.a link from /tools, which i 
don't think we provide?
gold tests are prone to failure I get fatal error: out of patch space in 
section .eh_frame; relink with --incremental-full, if a put the static 
link in
hopefully 2.28 will sort it out

10.18 Update to gcc-6.3.0 (patch attached for spec files, can be used 
for any 6.x )
I add fortran and objc to the build
usual minor test failures as per previous versions
add --enable-checking=release --enable-libstdcxx-time
remove .la files, this definitely solved the "seem to have moved" output 
later on


It's here that I slightly deviate from the standard build order but as I 
have said  as long the pre-requisites are done in the correct order, 
shouldn't matter

I use --disable-static and --disable-rpath from now on extensively and 
build libraries first

10.22 Move Pkg-Config up to here but I use pkgconf as it has no 
dependency on anything and works fine by setting a link

pkgconf-1.2.1
./configure --prefix=/usr --sysconfdir=/etc --disable-static 
--disable-rpath --docdir=/usr/share/doc/pkgconf-1.2.1

ln -sv /usr/bin/pkgconf /usr/bin/pkg-config

10.19 attr use
sed -i -e "/SUBDIRS/s|man[25]||" man/Makefile as per lfs, removing 
redundant man-page
add --libexecdir=/usr/lib --disable-rpath --disable-static

10.20 acl add --disable-rpath --disable-static

10.28 move libcap up to here
add sed -i '/install.*STALIBNAME/d' libcap/Makefile to stop staic lib 
being installed

10.23 Ncurses updated to latest patch level
sed -i '/LIBTOOL_INSTALL/d' c++/Makefile.in
add --disable-rpath --without-normal (no static libs)
still need to remove one stray lib
rm -v /usr/lib/libncurses++w.a

add docs
mkdir -v /usr/share/doc/ncurses-6.0
cp -v -R doc/* /usr/share/doc/ncurses-6.0

don't need so many links for non-wide static libs as we don't have them

10.26 Readline, move to here as it's a library
update to Readline-7.0 with patch 1
add CFLAGS="$CFLAGS -fPIC" --disable-static --disable-rpath
no need to mv static libs as we don't have them
set proper permissions on libs
chmod 755 -v /lib/lib{readline,history}.so.7.0
install docs
install -v -m644 doc/*.{ps,pdf,html,dvi} /usr/share/doc/readline-7.0


10.49 Move less up to here, update to Less-487

10.21 Sed updated to 4.3 with some patches from gentoo ,4.4 is now out
add --docdir=/usr/share/doc/sed-4.3 --disable-rpath
sed -i 's/usr/tools/'       build-aux/help2man // or set link in boot phase
sed -i 's:testsuite/panic-tests.sh::' Makefile.in // test failure

install -Dm644 -v doc/sed.html /usr/share/doc/sed-4.3/sed.html // docs

10.47 Grep move up, update to 2.27 although 2.28 is imminent
use a patch to fix gnulib problem

10.43 Gawk update to 4.1.4

to be contined

Hopeful this is helpful

Martin















-------------- next part --------------
A non-text attachment was scrubbed...
Name: gcc-6.1.0-pure64-1.patch
Type: text/x-patch
Size: 31183 bytes
Desc: not available
URL: <http://lists.clfs.org/pipermail/clfs-support-clfs.org/attachments/20170208/9a5d1fd9/attachment-0002.bin>


More information about the Clfs-support mailing list