tc12_x86 (on Core-11.x)

tce-load -i compiletc perl5 ncursesw-dev bash mpc-dev udev-dev texinfo coreutils glibc_apps rsync gettext python3.6 git

export TC=/mnt/tc [***]

sudo mkdir $TC
sudo mount /dev/sdc1 $TC [***]

sudo mkdir -pv $TC/{usr,lib,var,etc,bin,sbin}
sudo chown -v tc:staff $TC/{usr,lib,var,etc,bin,sbin}

sudo mkdir $TC/tools [***] 
sudo chown tc:staff $TC/tools [***]

sudo ln -s $TC/tools / [***]

sudo mkdir $TC/sources
sudo chown tc:staff $TC/sources

cat > ~/.bash_profile << "EOF"
exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
EOF

cat > ~/.bashrc << "EOF"
set +h
umask 022
TC=/mnt/tc
LC_ALL=POSIX
TC_TGT=i686-tc-linux-gnu
PATH=$TC/tools/bin:/usr/local/bin:/bin:/usr/bin
export TC LC_ALL TC_TGT PATH
EOF

source ~/.bash_profile

----------

cd binutils-2.35.1

mkdir build
cd build

../configure --prefix=$TC/tools --with-sysroot=$TC --target=$TC_TGT --disable-nls --disable-werror

make [2m30.706s]
make install


cd gcc-10.2.0

tar -xf ../mpfr-4.1.0.tar.xz
mv mpfr-4.1.0 mpfr
tar -xf ../gmp-6.2.1.tar.xz
mv gmp-6.2.1 gmp
tar -xf ../mpc-1.2.1.tar.gz
mv mpc-1.2.1 mpc

mkdir build
cd build

../configure --target=$TC_TGT --prefix=$TC/tools --with-glibc-version=2.11 --with-sysroot=$TC --with-newlib --without-headers --enable-initfini-array --disable-nls --disable-shared --disable-multilib --disable-decimal-float --disable-threads --disable-libatomic --disable-libgomp --disable-libquadmath --disable-libssp --disable-libvtv --disable-libstdcxx --enable-languages=c,c++

make [31m11.035s]
make install

cd ..
cat gcc/limitx.h gcc/glimits.h gcc/limity.h > `dirname $($TC_TGT-gcc -print-libgcc-file-name)`/install-tools/include/limits.h


cd linux-5.10

make mrproper

make headers
find usr/include -name '.*' -delete
rm usr/include/Makefile
cp -rv usr/include $TC/usr [need to save]


cd glibc-2.32

edit manual/libc.tcexinfo
remove @documentencoding UTF-8

patch -Np1 -i ../glibc-2.32-fhs-1.patch

mkdir build
cd build

../configure --prefix=/usr --host=$TC_TGT --build=$(../scripts/config.guess) --enable-kernel=5.4.3 --with-headers=$TC/usr/include libc_cv_slibdir=/lib

make [10m15.327s]
make DESTDIR=$TC install

echo 'int main(){}' > dummy.c
$TC_TGT-gcc dummy.c
readelf -l a.out | grep '/ld-linux'

[Requesting program interpreter: /lib/ld-linux.so.2]

rm dummy.c a.out

$TC/tools/libexec/gcc/$TC_TGT/10.2.0/install-tools/mkheaders


cd gcc-10.2.0 (libstdc++)

mkdir build
cd build

../libstdc++-v3/configure --host=$TC_TGT --build=$(../config.guess) --prefix=/usr --disable-multilib --disable-nls --disable-libstdcxx-pch --with-gxx-include-dir=/tools/$TC_TGT/include/c++/10.2.0

make [0m47.571s]
make DESTDIR=$TC install

----

cd m4-1.4.18

sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib/*.c
echo "#define _IO_IN_BACKUP 0x100" >> lib/stdio-impl.h

./configure --prefix=/usr --host=$TC_TGT --build=$(build-aux/config.guess)

make [0m10.809s]
make DESTDIR=$TC install


cd ncurses-6.2

sed -i s/mawk// configure

mkdir build
cd build
  ../configure
  make -C include
  make -C progs tic
cd ..

./configure --prefix=/usr --host=$TC_TGT --build=$(./config.guess) --mandir=/usr/share/man --with-manpage-format=normal --with-shared --without-debug --without-ada --without-normal --enable-widec

make [0m43.804s]

make DESTDIR=$TC TIC_PATH=$(pwd)/build/progs/tic install
echo "INPUT(-lncursesw)" > $TC/usr/lib/libncurses.so

mv -v $TC/usr/lib/libncursesw.so.6* $TC/lib
ln -sfv ../../lib/$(readlink $TC/usr/lib/libncursesw.so) $TC/usr/lib/libncursesw.so


cd bash-5.1

./configure --prefix=/usr --build=$(support/config.guess) --host=$TC_TGT --without-bash-malloc

make [0m39.562s]
make DESTDIR=$TC install

mv $TC/usr/bin/bash $TC/bin/bash
ln -sv bash $TC/bin/sh


cd coreutils-8.32

./configure --prefix=/usr --host=$TC_TGT --build=$(build-aux/config.guess) --enable-install-program=hostname --enable-no-install-program=kill,uptime

make [1m4.425s]
make DESTDIR=$TC install

mv -v $TC/usr/bin/{cat,chgrp,chmod,chown,cp,date,dd,df,echo} $TC/bin
mv -v $TC/usr/bin/{false,ln,ls,mkdir,mknod,mv,pwd,rm} $TC/bin
mv -v $TC/usr/bin/{rmdir,stty,sync,true,uname} $TC/bin
mv -v $TC/usr/bin/{head,nice,sleep,touch} $TC/bin
mv -v $TC/usr/bin/chroot $TC/usr/sbin
mkdir -pv $TC/usr/share/man/man8
mv -v $TC/usr/share/man/man1/chroot.1 $TC/usr/share/man/man8/chroot.8
sed -i 's/"1"/"8"/' $TC/usr/share/man/man8/chroot.8


cd diffutils-3.7

./configure --prefix=/usr --host=$TC_TGT

make [0m12.414s]
make DESTDIR=$TC install


cd file-5.39

./configure --prefix=/usr --host=$TC_TGT

make [0m6.864s]
make DESTDIR=$TC install


cd findutils-4.7.0

./configure --prefix=/usr --host=$TC_TGT --build=$(build-aux/config.guess)

make [0m17.070s]
make DESTDIR=$TC install

mv -v $TC/usr/bin/find $TC/bin
sed -i 's|find:=${BINDIR}|find:=/bin|' $TC/usr/bin/updatedb


cd gawk-5.1.0

sed -i 's/extras//' Makefile.in

./configure --prefix=/usr --host=$TC_TGT --build=$(./config.guess)

make [0m22.581s]
make DESTDIR=$TC install


cd grep-3.6

./configure --prefix=/usr --host=$TC_TGT --bindir=/bin --disable-perl-regexp

make [0m11.645s]
make DESTDIR=$TC install


cd gzip-1.10

./configure --prefix=/usr --host=$TC_TGT

make [0m5.253s]
make DESTDIR=$TC install

mv -v $TC/usr/bin/gzip $TC/bin


cd make-4.3

./configure --prefix=/usr --without-guile --host=$TC_TGT --build=$(build-aux/config.guess)

make [0m7.116s]
make DESTDIR=$TC install


cd patch-2.7.6

./configure --prefix=/usr --host=$TC_TGT --build=$(build-aux/config.guess)

make [0m8.602s]
make DESTDIR=$TC install


cd sed-4.8

./configure --prefix=/usr --host=$TC_TGT --bindir=/bin

make [0m8.878s]
make DESTDIR=$TC install


cd tar-1.32

./configure --prefix=/usr --host=$TC_TGT --build=$(build-aux/config.guess) --bindir=/bin

make [0m22.291s]
make DESTDIR=$TC install


cd xz-5.2.5

./configure --prefix=/usr --host=$TC_TGT --build=$(build-aux/config.guess) --disable-static --docdir=/usr/share/doc/xz-5.2.5

make [0m13.403s]
make DESTDIR=$TC install

mv -v $TC/usr/bin/{lzma,unlzma,lzcat,xz,unxz,xzcat} $TC/bin
mv -v $TC/usr/lib/liblzma.so.* $TC/lib
ln -svf ../../lib/$(readlink $TC/usr/lib/liblzma.so) $TC/usr/lib/liblzma.so


cd binutils-2.35.1

mkdir build
cd build

../configure --prefix=/usr --build=$(../config.guess) --host=$TC_TGT --disable-nls --enable-shared --disable-werror --enable-64-bit-bfd

make [3m5.852s]
make DESTDIR=$TC install


cd gcc-10.2.0

tar -xf ../mpfr-4.1.0.tar.xz
mv -v mpfr-4.1.0 mpfr
tar -xf ../gmp-6.2.1.tar.xz
mv -v gmp-6.2.1 gmp
tar -xf ../mpc-1.2.1.tar.gz
mv -v mpc-1.2.1 mpc

mkdir build
cd build

mkdir -pv $TC_TGT/libgcc
ln -s ../../../libgcc/gthr-posix.h $TC_TGT/libgcc/gthr-default.h

../configure --build=$(../config.guess) --host=$TC_TGT --prefix=/usr CC_FOR_TARGET=$TC_TGT-gcc --with-build-sysroot=$TC --enable-initfini-array --disable-nls --disable-multilib --disable-decimal-float --disable-libatomic --disable-libgomp --disable-libquadmath --disable-libssp --disable-libvtv --disable-libstdcxx --enable-languages=c,c++

make [27m47.384s]
make DESTDIR=$TC install

ln -sv gcc $TC/usr/bin/cc

----

sudo chown -R root:root $TC/{usr,lib,var,etc,bin,sbin,tools}

sudo mkdir -pv $TC/{dev,proc,sys,run}

sudo mknod -m 600 $TC/dev/console c 5 1
sudo mknod -m 666 $TC/dev/null c 1 3

sudo mount -v --bind /dev $TC/dev

sudo mount -v --bind /dev/pts $TC/dev/pts
sudo mount -vt proc proc $TC/proc
sudo mount -vt sysfs sysfs $TC/sys
sudo mount -vt tmpfs tmpfs $TC/run

sudo chroot "$TC" /usr/bin/env -i HOME=/root TERM="$TERM" PS1='(tc chroot) \u:\w\$ ' PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/sbin:/usr/sbin /bin/bash --login +h

----

mkdir -pv /{boot,home,mnt,opt,srv}

mkdir -pv /etc/{opt,sysconfig}
mkdir -pv /lib/firmware
mkdir -pv /media/{floppy,cdrom}
mkdir -pv /usr/{,local/}{bin,include,lib,sbin,src}
mkdir -pv /usr/{,local/}share/{color,dict,doc,info,locale,man}
mkdir -pv /usr/{,local/}share/{misc,terminfo,zoneinfo}
mkdir -pv /usr/{,local/}share/man/man{1..8}
mkdir -pv /var/{cache,local,log,mail,opt,spool}
mkdir -pv /var/lib/{color,misc,locate}

ln -sfv /run /var/run
ln -sfv /run/lock /var/lock

install -dv -m 0750 /root
install -dv -m 1777 /tmp /var/tmp

ln -sv /proc/self/mounts /etc/mtab
echo "127.0.0.1 localhost $(hostname)" > /etc/hosts

[copy tc /etc/passwd and /etc/group files to $TC/etc]

exec /bin/bash --login +h

touch /var/log/{btmp,lastlog,faillog,wtmp}

chmod -v 664  /var/log/lastlog
chmod -v 600  /var/log/btmp

----

cd gcc-10.2.0 (libstdc++)

ln -s gthr-posix.h libgcc/gthr-default.h

mkdir build
cd build

../libstdc++-v3/configure CXXFLAGS="-g -O2 -D_GNU_SOURCE" --prefix=/usr --disable-multilib --disable-nls --host=i686-tc-linux-gnu --disable-libstdcxx-pch

make [1m39.615s]
make install


cd gettext-0.21

./configure --disable-shared

make [3m3.708s]
cp -v gettext-tools/src/{msgfmt,msgmerge,xgettext} /usr/bin


cd bison-3.7.4

./configure --prefix=/usr --docdir=/usr/share/doc/bison-3.7.4

make [0m18.360s]
make install


cd perl-5.32.0

sh Configure -des -Dprefix=/usr -Dvendorprefix=/usr -Dprivlib=/usr/lib/perl5/core_perl -Darchlib=/usr/lib/perl5/5.32/core_perl -Dsitelib=/usr/lib/perl5/site_perl -Dsitearch=/usr/lib/perl5/5.32/site_perl -Dvendorlib=/usr/lib/perl5/vendor_perl -Dvendorarch=/usr/lib/perl5/5.32/vendor_perl

make [2m59.822s]
make install


cd Python-3.8.6

./configure --prefix=/usr --enable-shared --without-ensurepip

make [2m20.018s]
make install


cd texinfo-6.7

./configure --prefix=/usr

make [0m24.782s]
make install


cd util-linux-2.36.1

add tty:x:4: to /etc/group

mkdir -pv /var/lib/hwclock

./configure ADJTIME_PATH=/var/lib/hwclock/adjtime --docdir=/usr/share/doc/util-linux-2.36.1 --disable-chfn-chsh --disable-login --disable-nologin --disable-su --disable-setpriv --disable-runuser --disable-pylibmount --disable-static --without-python

make [1m36.076s]
make install

----

find /usr/{lib,libexec} -name \*.la -delete
rm -rf /usr/share/{info,man,doc}/*

----

cd glibc-2.32

patch -Np1 -i ../glibc-2.32-fhs-1.patch
patch -Np1 -i ../glibc-uclibc-compat-ld-cache.patch

edit Makeconfig
remove -g -O

edit manual/libc.tcexinfo
remove @documentencoding UTF-8

mkdir build
cd build

echo "CFLAGS += -fomit-frame-pointer -march=i486 -mtune=i686 -Os -pipe" > configparms

[-Os fails for i486 without -fomit-frame-pointer]

../configure --prefix=/usr --disable-werror --enable-kernel=5.4.3 --enable-stack-protector=strong --with-headers=/usr/include libc_cv_slibdir=/lib --enable-obsolete-rpc --libexecdir=/usr/lib/glibc [still get libexec...]

find . -name config.make -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name config.status -type f -exec sed -i 's/-g -O2//g' {} \;
find ../ -name Makeconfig -type f -exec sed -i 's/-g -O2//g' {} \;

make [7m40.982s]

touch /etc/ld.so.conf

sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile

make install [install install_root=/tmp/pkg]

cp -v ../nscd/nscd.conf /etc/nscd.conf
mkdir -pv /var/cache/nscd

make localedata/install-locales [9m35.645s]

[copy tc /etc/nsswitch.conf and /etc/ld.so.conf files to $TC/etc]


cd zlib-1.2.11

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr

find . -name Makefile -type f -exec sed -i 's/-O3//g' {} \;

make [0m4.217s]
make install


cd bzip2-1.0.8

patch -Np1 -i ../bzip2-1.0.8-install_docs-1.patch

sed -i 's@\(ln -s -f \)$(PREFIX)/bin/@\1@' Makefile
sed -i "s@(PREFIX)/man@(PREFIX)/share/man@g" Makefile

Edit Makefile-libbz2_so
CC=gcc -march=i486 -mtune=i686 -Os -pipe
CFLAGS=-fpic -fPIC -Wall -Winline $(BIGFILES)

make -f Makefile-libbz2_so [0m2.026s]
make clean

Edit Makefile
CC=gcc -march=i486 -mtune=i686 -Os -pipe
CFLAGS=-Wall -Winline $(BIGFILES)

make [0m2.201s]
make PREFIX=/usr/local install

cp bzip2-shared /usr/local/bin/bzip2
cp -a libbz2.so* /usr/local/lib
cd /usr/local/lib
ln -s libbz2.so.1.0 libbz2.so
cd ../bin
rm {bunzip2,bzcat}
ln -s bzip2 bunzip2
ln -s bzip2 bzcat

ldconfig


cd xz-5.2.5

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --disable-static --docdir=/usr/local/share/doc/xz-5.2.5

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m11.420s]
make install

ldconfig


cd zstd-1.4.5

find . -name Makefile -type f -exec sed -i 's/-O3//g' {} \;

make CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" [0m14.201s]
make CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" prefix=/usr/local install

ldconfig


cd file-5.39

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m5.285s]
make install

ldconfig


cd readline-8.1

sed -i '/MV.*old/d' Makefile.in
sed -i '/{OLDSUFF}/c:' support/shlib-install

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --disable-static --with-curses --docdir=/usr/local/share/doc/readline-8.1

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make SHLIB_LIBS="-lncursesw" [0m5.392s]
make SHLIB_LIBS="-lncursesw" install


cd m4-1.4.18

sed -i 's/IO_ftrylockfile/IO_EOF_SEEN/' lib/*.c
echo "#define _IO_IN_BACKUP 0x100" >> lib/stdio-impl.h

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m5.639s]
make install


cd bc-3.2.3

PREFIX=/usr/local CC="gcc -march=i486 -mtune=i686 -Os -pipe" CFLAGS="-std=c99" ./configure.sh -G

make [0m2.714s]
make install


cd flex-2.6.4

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --docdir=/usr/local/share/doc/flex-2.6.4

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m7.477s]
make install

ln -sv flex /usr/local/bin/lex

ldconfig


cd binutils-2.35.1

sed -i '/@\tincremental_copy/d' gold/testsuite/Makefile.in

mkdir build
cd build

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe" ../configure --prefix=/usr --enable-gold --enable-ld=default --enable-plugins --enable-shared --disable-werror --enable-64-bit-bfd --with-system-zlib

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name Makefile -type f -exec sed -i 's/-O2 -g//g' {} \;

make tooldir=/usr [5m38.886s]
make tooldir=/usr install


cd gmp-6.2.1

mv config{fsf,}.guess
mv config{fsf,}.sub

CFLAGS="-march=i486 -mtune=i686 -Os -pipe" CXXFLAGS="-march=i486 -mtune=i686 -Os -pipe" ./configure --prefix=/usr/local --enable-cxx --disable-static --docdir=/usr/local/share/doc/gmp-6.2.1

make [0m42.729s]
make install

ldconfig


cd mpfr-4.1.0

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe" ./configure --prefix=/usr/local --disable-static --enable-thread-safe --docdir=/usr/local/share/doc/mpfr-4.1.0

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m29.376s]
make install

ldconfig


cd mpc-1.2.1

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe" ./configure --prefix=/usr/local --disable-static --docdir=/usr/local/share/doc/mpc-1.2.1

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m6.288s]
make install

ldconfig


cd isl-0.23

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe" ./configure --prefix=/usr/local --disable-static

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name Makefile -type f -exec sed -i 's/-O3//g' {} \;

make [0m43.391s]
make install

ldconfig


cd gcc-10.2.0

mkdir build
cd build

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe" ../configure --prefix=/usr LD=ld --enable-languages=c,c++ --disable-multilib --disable-bootstrap --with-system-zlib --libexecdir=/usr/lib

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name Makefile -type f -exec sed -i 's/-O2 -g//g' {} \;
find . -name config.status -type f -exec sed -i 's/-g -O2//g' {} \;
[-O2 still appears building libs]

make [20m45.350s]
make install

rm -rf /usr/lib/gcc/$(gcc -dumpmachine)/10.2.0/include-fixed/bits/
ln -sv ../usr/bin/cpp /lib
install -v -dm755 /usr/lib/bfd-plugins
ln -sfv /usr/lib/gcc/$(gcc -dumpmachine)/10.2.0/liblto_plugin.so /usr/lib/bfd-plugins/

mkdir -pv /usr/share/gdb/auto-load/usr/lib
mv -v /usr/lib/*gdb.py /usr/share/gdb/auto-load/usr/lib

echo 'int main(){}' > dummy.c
cc dummy.c -v -Wl,--verbose &> dummy.log
readelf -l a.out | grep ': /lib'

      [Requesting program interpreter: /lib/ld-linux.so.2]

grep -o '/usr/lib.*/crt[1in].*succeeded' dummy.log

/usr/lib/gcc/i686-pc-linux-gnu/10.2.0/../../../crt1.o succeeded
/usr/lib/gcc/i686-pc-linux-gnu/10.2.0/../../../crti.o succeeded
/usr/lib/gcc/i686-pc-linux-gnu/10.2.0/../../../crtn.o succeeded

grep -B4 '^ /usr/include' dummy.log

#include <...> search starts here:
 /usr/lib/gcc/i686-pc-linux-gnu/10.2.0/include
 /usr/local/include
 /usr/lib/gcc/i686-pc-linux-gnu/10.2.0/include-fixed
 /usr/include

grep 'SEARCH.*/usr/lib' dummy.log |sed 's|; |\n|g'

SEARCH_DIR("/usr/i686-pc-linux-gnu/lib32")
SEARCH_DIR("/usr/local/lib32")
SEARCH_DIR("/lib32")
SEARCH_DIR("/usr/lib32")
SEARCH_DIR("/usr/i686-pc-linux-gnu/lib")
SEARCH_DIR("/usr/local/lib")
SEARCH_DIR("/lib")
SEARCH_DIR("/usr/lib");

grep "/lib.*/libc.so.6 " dummy.log

attempt to open /lib/libc.so.6 succeeded

grep found dummy.log

found ld-linux.so.2 at /lib/ld-linux.so.2

rm -v dummy.c a.out dummy.log

----

cd binutils-2.35.1

sed -i '/@\tincremental_copy/d' gold/testsuite/Makefile.in

mkdir build
cd build

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe" ../configure --prefix=/usr/local --enable-gold --enable-ld=default --enable-plugins --enable-shared --disable-werror --enable-64-bit-bfd --with-system-zlib

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name Makefile -type f -exec sed -i 's/-O2 -g//g' {} \;

make tooldir=/usr/local [7m5.414s]
make tooldir=/usr/local install

[remove binutils from /usr]
ldconfig


cd gcc-10.2.0

mkdir build
cd build

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe" ../configure --prefix=/usr/local --enable-languages=c,c++ --disable-multilib --disable-bootstrap --with-system-zlib --libexecdir=/usr/local/lib

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name Makefile -type f -exec sed -i 's/-O2 -g//g' {} \;
find . -name config.status -type f -exec sed -i 's/-g -O2//g' {} \;

make [25m20.220s]
make install

rm -rf /usr/local/lib/gcc/$(gcc -dumpmachine)/10.2.0/include-fixed/bits/
ln -sv ../usr/local/bin/cpp /usr/local/lib
install -v -dm755 /usr/local/lib/bfd-plugins
ln -sfv /usr/local/lib/gcc/$(gcc -dumpmachine)/10.2.0/liblto_plugin.so /usr/local/lib/bfd-plugins/

mkdir -pv /usr/local/share/gdb/auto-load/usr/local/lib
mv -v /usr/local/lib/*gdb.py /usr/local/share/gdb/auto-load/usr/local/lib

[remove gcc from /usr except libstdc++ and libgcc_s]

ldconfig

----

cd pkg-config-0.29.2

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --with-internal-glib --disable-host-tool --docdir=/usr/share/doc/pkg-config-0.29.2 --with-pc-path="/usr/local/lib/pkgconfig:/usr/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/share/pkgconfig"

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name Makefile -type f -exec sed -i 's/-g -Wall -O2/-Wall/g' {} \;

make [0m25.729s]
make install


cd ncurses-6.2

sed -i '/LIBTOOL_INSTALL/d' c++/Makefile.in

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --mandir=/usr/local/share/man --with-shared --without-debug --without-normal --enable-pc-files --enable-widec --with-cxx-shared

find . -name Makefile -type f -exec sed -i 's/-O2//g' {} \;

make [0m46.940s]
make install

[remove ncurses from /usr]
ldconfig

cd sed-4.8

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m7.848s]
make install

[rm /bin/sed]


cd bison-3.7.4

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --docdir=/usr/local/share/doc/bison-3.7.4

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m17.196s]
make install

[remove bison files from /usr]


cd grep-3.6

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m10.456s]
make install

[remove grep from /bin]


cd bash-5.1

sed -i  '/^bashline.o:.*shmbchar.h/a bashline.o: ${DEFDIR}/builtext.h' Makefile.in

LIBS="-lncursesw" CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --docdir=/usr/local/share/doc/bash-5.1 --without-bash-malloc --with-installed-readline

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m31.044s]
make install

cd /bin
rm bash
ln -sv /usr/local/bin/bash ./

exec /bin/bash --login +h


cd gperf-3.1

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --docdir=/usr/local/share/doc/gperf-3.1

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name config.status -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m2.198s]
make install


cd expat-2.2.10

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --disable-static --docdir=/usr/local/share/doc/expat-2.2.10

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m5.327s]
make install


cd perl-5.32.0

export BUILD_ZLIB=False
export BUILD_BZIP2=0

sh Configure -des -Dcc="gcc -march=i486 -mtune=i686 -Os -pipe" -Dprefix=/usr/local -Dvendorprefix=/usr/local -Dprivlib=/usr/local/lib/perl5/core_perl -Darchlib=/usr/local/lib/perl5/5.32/core_perl -Dsitelib=/usr/local/lib/perl5/site_perl -Dsitearch=/usr/local/lib/perl5/5.32/site_perl -Dvendorlib=/usr/local/lib/perl5/vendor_perl -Dvendorarch=/usr/local/lib/perl5/5.32/vendor_perl -Dman1dir=/usr/local/share/man/man1 -Dman3dir=/usr/local/share/man/man3 -Dpager="/usr/bin/less -isR" -Duseshrplib -Dusethreads

find . -name Makefile -type f -exec sed -i 's/-O2//g' {} \;

make [4m14.173s]
make install

unset BUILD_ZLIB BUILD_BZIP2

rm /usr/bin/perl


cd XML-Parser-2.46

perl Makefile.PL

find . -name Makefile -type f -exec sed -i 's/-O2//g' {} \;

make [0m2.638s]
make install


cd intltool-0.51.0

sed -i 's:\\\${:\\\$\\{:' intltool-update.in

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

make [0m0.053s]
make install
install -v -Dm644 doc/I18N-HOWTO /usr/local/share/doc/intltool-0.51.0/I18N-HOWTO


cd libtool-2.4.6

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --disable-static

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m1.666s]
make install


cd autoconf-2.70

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

make [0m0.987s]
make install


cd automake-1.16.3

sed -i "s/''/etags/" t/tags-lisp-space.sh

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

make [0m0.856s]
make install


cd gettext-0.21

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --disable-static --docdir=/usr/share/doc/gettext-0.21 --disable-curses

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name config.status -type f -exec sed -i 's/-g -O2//g' {} \;

make [3m16.006s]
make install

chmod -v 0755 /usr/local/lib/preloadable_libintl.so

rm /usr/bin/{msgfmt,msgmerge,xgettext}

ldconfig


cd coreutils-8.32

patch -Np1 -i ../coreutils-8.32-i18n-1.patch

sed -i '/test.lock/s/^/#/' gnulib-tests/gnulib.mk

echo '# deleted' > m4/std-gnu11.m4

autoreconf -fiv

#define MBFILE_INLINE _GL_EXTERN_INLINE in src/{un,}expand.c before
#include <mbfile.h>

FORCE_UNSAFE_CONFIGURE=1 CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --enable-no-install-program=kill,uptime --libexecdir=/usr/local/lib

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name config.status -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m59.761s]
make install

rm /bin/{cat,echo,pwd,stty}
cd /bin
ln -s /usr/local/bin/cat cat
ln -s /usr/local/bin/echo echo
ln -s /usr/local/bin/pwd pwd
ln -s /usr/local/bin/stty stty


cd diffutils-3.7

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m10.620s]
make install


cd gawk-5.1.0

sed -i 's/extras//' Makefile.in

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --libexecdir=/usr/local/lib/gawk

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m20.134s]
make install


cd findutils-4.7.0

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --localstatedir=/var/lib/locate --libexecdir=/usr/local/lib/findutils

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m14.574s]
make install


cd groff-1.22.4

PAGE=A4 CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make -j1 [0m56.075s]
make install


cd gzip-1.10

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m4.606s]
make install


cd make-4.3

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m6.651s]
make install


cd patch-2.7.6

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m7.407s]
make install


cd tar-1.32

FORCE_UNSAFE_CONFIGURE=1 CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --libexecdir=/usr/local/lib/tar

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m19.221s]
make install


cd texinfo-6.7

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [0m27.424s]
make install
make TEXMF=/usr/local/share/texmf install-tex


cd util-linux-2.36.1

mkdir -pv /var/lib/hwclock

ADJTIME_PATH=/var/lib/hwclock/adjtime CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --docdir=/usr/local/share/doc/util-linux-2.36.1 --disable-chfn-chsh --disable-login --disable-nologin --disable-su --disable-setpriv --disable-runuser --disable-pylibmount --disable-static --without-python --without-systemd --without-systemdsystemunitdir --libexecdir=/lib

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [1m41.709s]
make install

ldconfig


cd e2fsprogs-1.45.6

mkdir build
cd build

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ../configure --prefix=/usr --bindir=/bin --with-root-prefix="" --enable-elf-shlibs --disable-libblkid --disable-libuuid --disable-uuidd --disable-fsck

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name Makefile -type f -exec sed -i 's/-O2//g' {} \;

make [0m48.715s]
make install
make install-libs
chmod u+w /usr/lib/{libcom_err,libe2p,libext2fs,libss}.a

----------

cd util-linux-2.36.1

ADJTIME_PATH=/var/lib/hwclock/adjtime CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local --docdir=/usr/local/share/doc/util-linux-2.36.1 --disable-chfn-chsh --disable-login --disable-nologin --disable-su --disable-setpriv --disable-runuser --disable-pylibmount --disable-static --without-python --without-systemd --without-systemdsystemunitdir --libexecdir=/usr/local/lib --localstatedir=/var

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;

make [1m41.323s]
make install


cd e2fsprogs-1.45.6

mkdir build
cd build

CC="gcc -march=i486 -mtune=i686 -Os -pipe" CXX="g++ -march=i486 -mtune=i686 -Os -pipe -fno-exceptions -fno-rtti" ../configure --prefix=/usr/local --enable-elf-shlibs --disable-libblkid --disable-libuuid --disable-uuidd --disable-fsck

find . -name Makefile -type f -exec sed -i 's/-g -O2//g' {} \;
find . -name Makefile -type f -exec sed -i 's/-O2//g' {} \;

make [0m42.026s]
make install
make install-libs
chmod u+w /usr/local/lib/{libcom_err,libe2p,libext2fs,libss}.a

[remove files to match base/extension setup]
