diff options
Diffstat (limited to 'repo/core/glibc.xibuild')
-rw-r--r-- | repo/core/glibc.xibuild | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/repo/core/glibc.xibuild b/repo/core/glibc.xibuild new file mode 100644 index 0000000..cc943de --- /dev/null +++ b/repo/core/glibc.xibuild @@ -0,0 +1,79 @@ +#!/bin/bash + +DEPS=(glibc) + +SOURCE=https://ftp.gnu.org/gnu/glibc/glibc-2.34.tar.xz +DESC="The main gnu C library providing basic routines and procedures" + +build () { + # patches as recommended by lfs + sed -e '/NOTIFY_REMOVED)/s/)/ \&\& data.attr != NULL)/' -i sysdeps/unix/sysv/linux/mq_notify.c + + mkdir -v build + cd build + + # ensure that the ldconfig and sln utilities are installed into /usr/sbin + echo "rootsbindir=/usr/sbin" > configparms + + ../configure --prefix=/usr \ + --disable-werror \ + --enable-kernel=3.2 \ + --enable-stack-protector=strong \ + --with-headers=/usr/include \ + libc_cv_slibdir=/usr/lib + + make + make check + + sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile + make DESTDIR=$PKG_DEST install + + + # fix hardcoded path to the excutable in ldd script + sed '/RTLDLIST=/s@/usr@@g' -i $PKG_DEST/usr/bin/ldd + + cp -v ../nscd/nscd.conf $PKG_DEST/etc/nscd.conf + mkdir -pv $PKG_DEST/var/cache/nscd +} + +package () { + 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 + + cat > $PKG_DEST/etc/ld.so.conf << "EOF" +# Begin /etc/ld.so.conf +/usr/local/lib +/opt/lib +EOF +} + |