summaryrefslogtreecommitdiff
path: root/xibuilds/glibc.xibuild
diff options
context:
space:
mode:
authordavidovski <david@davidovski.xyz>2021-10-05 16:35:17 +0100
committerdavidovski <david@davidovski.xyz>2021-10-05 16:35:17 +0100
commitcdea2f67ae42d4220e19a555259b69a960925283 (patch)
treeb1cc697e6e0203b3ce02e15b8baa4f73f84e34c8 /xibuilds/glibc.xibuild
parent16e799786f34721e646e14a2b7e7ab3816137f1a (diff)
renamed
Diffstat (limited to 'xibuilds/glibc.xibuild')
-rw-r--r--xibuilds/glibc.xibuild78
1 files changed, 78 insertions, 0 deletions
diff --git a/xibuilds/glibc.xibuild b/xibuilds/glibc.xibuild
new file mode 100644
index 0000000..5b111bd
--- /dev/null
+++ b/xibuilds/glibc.xibuild
@@ -0,0 +1,78 @@
+#!/bin/bash
+
+DEPS=(glibc)
+
+SOURCE=https://sourceware.org/git/glibc.git
+
+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
+}
+