From 1f9fb2e790e9b0aee98fda60c9ca9ab87f61cce0 Mon Sep 17 00:00:00 2001 From: davidovski Date: Wed, 12 Jan 2022 23:04:23 +0000 Subject: updated all build files based on lfs --- repo/core/bzip2.xibuild | 4 +- repo/core/coreutils.xibuild | 2 +- repo/core/eudev.xibuild | 23 +++++++++++ repo/core/findutils.xibuild | 6 ++- repo/core/gcc.xibuild | 3 +- repo/core/gettext.xibuild | 2 +- repo/core/glibc.xibuild | 98 +++++++++++++++++++++++++++++++++++---------- repo/core/kbd.xibuild | 5 +++ repo/core/ncurses.xibuild | 24 +++++------ repo/core/openssl.xibuild | 1 + repo/core/psmisc.xibuild | 9 +---- repo/core/readline.xibuild | 3 ++ repo/core/sed.xibuild | 4 +- repo/core/sysklogd.xibuild | 3 +- repo/core/sysvinit.xibuild | 14 +++++++ repo/core/texinfo.xibuild | 1 + 16 files changed, 150 insertions(+), 52 deletions(-) create mode 100644 repo/core/eudev.xibuild create mode 100644 repo/core/sysvinit.xibuild (limited to 'repo/core') diff --git a/repo/core/bzip2.xibuild b/repo/core/bzip2.xibuild index 3191a03..f0b8f43 100644 --- a/repo/core/bzip2.xibuild +++ b/repo/core/bzip2.xibuild @@ -16,7 +16,6 @@ build () { make clean make - make PREFIX=$PKG_DEST/usr install } @@ -35,5 +34,8 @@ package () { for i in $PKG_DEST/usr/bin/{bzcat,bunzip2}; do ln -sfv bzip2 $i done + + rm -fv $PKG_DEST/usr/lib/libbz2.a + } diff --git a/repo/core/coreutils.xibuild b/repo/core/coreutils.xibuild index 0876557..3e0e023 100644 --- a/repo/core/coreutils.xibuild +++ b/repo/core/coreutils.xibuild @@ -12,10 +12,10 @@ build () { --prefix=/usr \ --enable-no-install-program=kill,uptime make - make DESTDIR=$PKG_DEST install } package () { + make DESTDIR=$PKG_DEST install mkdir -pv $PKG_DEST/usr/share/man/man8/chroot.8 mkdir -pv $PKG_DEST/usr/sbin mv -v $PKG_DEST/usr/bin/chroot $PKG_DEST/usr/sbin diff --git a/repo/core/eudev.xibuild b/repo/core/eudev.xibuild new file mode 100644 index 0000000..848191c --- /dev/null +++ b/repo/core/eudev.xibuild @@ -0,0 +1,23 @@ +#!/bin/bash + +DEPS=() + +SOURCE=https://dev.gentoo.org/~blueness/eudev/eudev-3.2.10.tar.gz +DESC="Programs for dynamic creation of device nodes" + +build () { + ./configure --prefix=/usr \ + --bindir=/usr/sbin \ + --sysconfdir=/etc \ + --enable-manpages \ + --disable-static + make +} + +package () { + mkdir -pv $PKG_DEST/usr/lib/udev/rules.d + mkdir -pv $PKG_DEST/etc/udev/rules.d + + make DESTDIR=$PKG_DEST install + +} diff --git a/repo/core/findutils.xibuild b/repo/core/findutils.xibuild index 899abfb..d8fd39c 100644 --- a/repo/core/findutils.xibuild +++ b/repo/core/findutils.xibuild @@ -6,7 +6,11 @@ SOURCE=https://ftp.gnu.org/gnu/findutils/findutils-4.8.0.tar.xz DESC="GNU utilities to locate files" build () { - ./configure --prefix=/usr --localstatedir=/var/lib/locate + case $(uname -m) in + i?86) TIME_T_32_BIT_OK=yes ./configure --prefix=/usr --localstatedir=/var/lib/locate ;; + x86_64) ./configure --prefix=/usr --localstatedir=/var/lib/locate ;; + esac + make make DESTDIR=$PKG_DEST install } diff --git a/repo/core/gcc.xibuild b/repo/core/gcc.xibuild index 17eae2d..fc00767 100644 --- a/repo/core/gcc.xibuild +++ b/repo/core/gcc.xibuild @@ -33,12 +33,11 @@ build () { --with-system-zlib make - # TODO put tests here, quite important ulimit -s 32768 chown -Rv tester . - su tester -c "PATH=$PATH make -k check" + su tester -c "PATH=$PATH make $MAKEFLAGS -k check" ../contrib/test_summary diff --git a/repo/core/gettext.xibuild b/repo/core/gettext.xibuild index b1f27c3..e0f6d37 100644 --- a/repo/core/gettext.xibuild +++ b/repo/core/gettext.xibuild @@ -9,9 +9,9 @@ build () { ./configure --prefix=/usr --disable-static --docdir=/usr/share/doc/gettext-0.21 make make check - make DESTDIR=$PKG_DEST install } package () { + make DESTDIR=$PKG_DEST install chmod -v 0755 $PKG_DEST/usr/lib/preloadable_libintl.so } diff --git a/repo/core/glibc.xibuild b/repo/core/glibc.xibuild index cc943de..db63d3f 100644 --- a/repo/core/glibc.xibuild +++ b/repo/core/glibc.xibuild @@ -25,6 +25,11 @@ build () { make make check +} + +package () { + touch /etc/ld.so.conf + sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile make DESTDIR=$PKG_DEST install @@ -34,46 +39,95 @@ build () { cp -v ../nscd/nscd.conf $PKG_DEST/etc/nscd.conf mkdir -pv $PKG_DEST/var/cache/nscd -} -package () { + # create locales for the system + # note, this should be moved to a better place + mkdir -pv $PKG_DEST/usr/lib/locale + localedef -i POSIX -f UTF-8 C.UTF-8 2> /dev/null || true + localedef -i cs_CZ -f UTF-8 cs_CZ.UTF-8 + localedef -i de_DE -f ISO-8859-1 de_DE + localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro + localedef -i de_DE -f UTF-8 de_DE.UTF-8 + localedef -i el_GR -f ISO-8859-7 el_GR + localedef -i en_GB -f ISO-8859-1 en_GB + localedef -i en_GB -f UTF-8 en_GB.UTF-8 + localedef -i en_HK -f ISO-8859-1 en_HK + localedef -i en_PH -f ISO-8859-1 en_PH + localedef -i en_US -f ISO-8859-1 en_US + localedef -i en_US -f UTF-8 en_US.UTF-8 + localedef -i es_ES -f ISO-8859-15 es_ES@euro + localedef -i es_MX -f ISO-8859-1 es_MX + localedef -i fa_IR -f UTF-8 fa_IR + localedef -i fr_FR -f ISO-8859-1 fr_FR + localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro + localedef -i fr_FR -f UTF-8 fr_FR.UTF-8 + localedef -i is_IS -f ISO-8859-1 is_IS + localedef -i is_IS -f UTF-8 is_IS.UTF-8 + localedef -i it_IT -f ISO-8859-1 it_IT + localedef -i it_IT -f ISO-8859-15 it_IT@euro + localedef -i it_IT -f UTF-8 it_IT.UTF-8 + localedef -i ja_JP -f EUC-JP ja_JP + localedef -i ja_JP -f SHIFT_JIS ja_JP.SIJS 2> /dev/null || true + localedef -i ja_JP -f UTF-8 ja_JP.UTF-8 + localedef -i nl_NL@euro -f ISO-8859-15 nl_NL@euro + localedef -i ru_RU -f KOI8-R ru_RU.KOI8-R + localedef -i ru_RU -f UTF-8 ru_RU.UTF-8 + localedef -i se_NO -f UTF-8 se_NO.UTF-8 + localedef -i ta_IN -f UTF-8 ta_IN.UTF-8 + localedef -i tr_TR -f UTF-8 tr_TR.UTF-8 + localedef -i zh_CN -f GB18030 zh_CN.GB18030 + localedef -i zh_HK -f BIG5-HKSCS zh_HK.BIG5-HKSCS + localedef -i zh_TW -f UTF-8 zh_TW.UTF-8 + + make DESTDIR=$PKG_DEST localedata/install-locales + cat > $PKG_DEST/etc/nsswitch.conf << "EOF" # Begin /etc/nsswitch.conf + passwd: files group: files shadow: files + hosts: files dns networks: files + protocols: files services: files ethers: files rpc: files + # End /etc/nsswitch.conf EOF - - wget https://mirrors.slackware.com/slackware/slackware64-current/source/a/glibc-zoneinfo/tzdata2021a.tar.gz - - tar -xf tzdata2021a.tar.gz - - ZONEINFO=$PKG_DEST/usr/share/zoneinfo - mkdir -pv $ZONEINFO/{posix,right} - for tz in etcetera southamerica northamerica europe africa antarctica \ - asia australasia backward; do - zic -L /dev/null -d $ZONEINFO ${tz} - zic -L /dev/null -d $ZONEINFO/posix ${tz} - zic -L leapseconds -d $ZONEINFO/right ${tz} - done - cp -v zone.tab zone1970.tab iso3166.tab $ZONEINFO - zic -d $ZONEINFO -p America/New_York - unset ZONEINFO - - - # configure the dynamic loader - + #curl https://data.iana.org/time-zones/releases/tzdata2021e.tar.gz > tzdata2021e.tar.gz + #tar -xf tzdata2021e.tar.gz +# + #ZONEINFO=$PKG_DEST/usr/share/zoneinfo + #mkdir -pv $ZONEINFO/{posix,right} +## + #for tz in etcetera southamerica northamerica europe africa antarctica \ + #asia australasia backward; do + #zic -L /dev/null -d $ZONEINFO ${tz} + #zic -L /dev/null -d $ZONEINFO/posix ${tz} + #zic -L leapseconds -d $ZONEINFO/right ${tz} + #done +# + #cp -v zone.tab zone1970.tab iso3166.tab $ZONEINFO + #zic -d $ZONEINFO -p America/New_York + #unset ZONEINFO + + + # configure dynamic loader cat > $PKG_DEST/etc/ld.so.conf << "EOF" # Begin /etc/ld.so.conf /usr/local/lib /opt/lib EOF + + cat >> $PKG_DEST/etc/ld.so.conf << "EOF" +# Add an include directory +include /etc/ld.so.conf.d/*.conf + +EOF + mkdir -pv $PKG_DEST/etc/ld.so.conf.d } diff --git a/repo/core/kbd.xibuild b/repo/core/kbd.xibuild index 3b18f26..8612f4a 100644 --- a/repo/core/kbd.xibuild +++ b/repo/core/kbd.xibuild @@ -6,6 +6,11 @@ SOURCE=https://mirrors.edge.kernel.org/pub/linux/utils/kbd/kbd-2.4.0.tar.xz DESC="Keytable files and keyboard utilities" build () { + + # remove redundant resizecons program + sed -i '/RESIZECONS_PROGS=/s/yes/no/' configure + sed -i 's/resizecons.8 //' docs/man/man8/Makefile.in + ./configure --prefix=/usr --disable-vlock make make DESTDIR=$PKG_DEST install diff --git a/repo/core/ncurses.xibuild b/repo/core/ncurses.xibuild index 3dfcca7..c42d402 100644 --- a/repo/core/ncurses.xibuild +++ b/repo/core/ncurses.xibuild @@ -16,18 +16,18 @@ build () { package () { - #for lib in ncurses form panel menu ; do - #rm -vf $PKG_DEST/usr/lib/lib${lib}.so - #echo "INPUT(-l${lib}w)" > $PKG_DEST/usr/lib/lib${lib}.so - #ln -sfv ${lib}w.pc $PKG_DEST/usr/lib/pkgconfig/${lib}.pc - #rm -vf /usr/lib/libcursesw.so - #done -# - #echo "INPUT(-lncursesw)" > $PKG_DEST/usr/lib/libcursesw.so - ##ln -sfv libncurses.so $PKG_DEST/usr/lib/libcurses.so -# - - #rm -fv $PKG_DEST/usr/lib/libncurses++w.a + + for lib in ncurses form panel menu ; do + rm -vf $PKG_DEST/usr/lib/lib${lib}.so + echo "INPUT(-l${lib}w)" > $PKG_DEST/usr/lib/lib${lib}.so + ln -sfv ${lib}w.pc $PKG_DEST/usr/lib/pkgconfig/${lib}.pc + done + + rm -vf $PKG_DEST/usr/lib/libcursesw.so + echo "INPUT(-lncursesw)" > $PKG_DEST/usr/lib/libcursesw.so + ln -sfv libncurses.so $PKG_DEST/usr/lib/libcurses.so + + # install docs mkdir -pv $PKG_DEST/usr/share/doc/ncurses-6.3 cp -v -R doc/* $PKG_DEST/usr/share/doc/ncurses-6.3 } diff --git a/repo/core/openssl.xibuild b/repo/core/openssl.xibuild index 53c1418..9ec6fd2 100644 --- a/repo/core/openssl.xibuild +++ b/repo/core/openssl.xibuild @@ -9,6 +9,7 @@ BRANCH="OpenSSL_1_1_1-stable" build () { ./config --prefix=/usr --openssldir=/etc/ssl --libdir=lib shared zlib-dynamic make + sed -i '/INSTALL_LIBS/s/libcrypto.a libssl.a//' Makefile make MANSUFFIX=ssl DESTDIR=$PKG_DEST install } diff --git a/repo/core/psmisc.xibuild b/repo/core/psmisc.xibuild index 110137d..3631d7f 100644 --- a/repo/core/psmisc.xibuild +++ b/repo/core/psmisc.xibuild @@ -2,18 +2,11 @@ DEPS=(ncurses) -SOURCE=https://gitlab.com/psmisc/psmisc.git +SOURCE=https://gitlab.com/psmisc/psmisc/-/archive/v23.4/psmisc-v23.4.tar.gz DESC="Miscellaneous procfs tools" build () { - ./autogen.sh ./configure --prefix=/usr make make DESTDIR=$PKG_DEST install } - -package () { - mkdir -vp $PKG_DEST/bin - mv -v $PKG_DEST/usr/bin/fuser $PKG_DEST/bin - mv -v $PKG_DEST/usr/bin/killall $PKG_DEST/bin -} diff --git a/repo/core/readline.xibuild b/repo/core/readline.xibuild index 844b109..b2797f8 100644 --- a/repo/core/readline.xibuild +++ b/repo/core/readline.xibuild @@ -7,6 +7,9 @@ DESC="a set of libraries that offer command line editing and history capabilitie build () { + sed -i '/MV.*old/d' Makefile.in + sed -i '/{OLDSUFF}/c:' support/shlib-install + ./configure --prefix=/usr \ --disable-static \ --with-curses \ diff --git a/repo/core/sed.xibuild b/repo/core/sed.xibuild index d68d586..0384f6c 100644 --- a/repo/core/sed.xibuild +++ b/repo/core/sed.xibuild @@ -9,11 +9,11 @@ build () { ./configure --prefix=/usr make make html - - make DESTDIR=$PKG_DEST install } package () { + make DESTDIR=$PKG_DEST install + install -d -m755 $PKG_DEST/usr/share/doc/sed-4.8 install -m644 doc/sed.html $PKG_DEST/usr/share/doc/sed-4.8 } diff --git a/repo/core/sysklogd.xibuild b/repo/core/sysklogd.xibuild index d0bb4ce..44e59ce 100644 --- a/repo/core/sysklogd.xibuild +++ b/repo/core/sysklogd.xibuild @@ -2,11 +2,10 @@ DEPS=(glibc) -SOURCE=https://github.com/troglobit/sysklogd +SOURCE=https://github.com/troglobit/sysklogd/releases/download/v2.3.0/sysklogd-2.3.0.tar.gz DESC="Programs for logging system messages" build () { - ./autogen.sh ./configure && make make DESTDIR=$PKG_DEST install } diff --git a/repo/core/sysvinit.xibuild b/repo/core/sysvinit.xibuild new file mode 100644 index 0000000..36237a5 --- /dev/null +++ b/repo/core/sysvinit.xibuild @@ -0,0 +1,14 @@ +#!/bin/bash + +DEPS=(sh glibc) + +SOURCE=http://download.savannah.nongnu.org/releases/sysvinit/sysvinit-3.00.tar.xz +DESC="The sysvinit system for controlling startup, running and shutdown of the system" + +build () { + curl https://www.linuxfromscratch.org/patches/lfs/development/sysvinit-3.01-consolidated-1.patch > sysvinit-3.0.1-consolidated-1.patch + patch -Np1 -i ysvinit-3.01-consolidated-1.patch + + make + make DESTDIR=$PKG_DEST install +} diff --git a/repo/core/texinfo.xibuild b/repo/core/texinfo.xibuild index 1198161..0bcbb29 100644 --- a/repo/core/texinfo.xibuild +++ b/repo/core/texinfo.xibuild @@ -6,6 +6,7 @@ SOURCE=https://ftp.gnu.org/gnu/texinfo/texinfo-6.8.tar.xz DESC="GNU documentation system for reading, writing and converting info pages" build () { + # fix an issue when building with glibc-2.34 or later sed -e 's/__attribute_nonnull__/__nonnull/' \ -i gnulib/lib/malloc/dynarray-skeleton.c -- cgit v1.2.1