# Description: The C library used in the GNU system # URL: http://www.gnu.org/software/libc/ # Maintainer: CRUX System Team, core-ports at crux dot nu name=glibc-32 version=2.34 release=2 source=(https://ftp.gnu.org/gnu/glibc/glibc-$version.tar.xz https://www.kernel.org/pub/linux/kernel/v5.x/linux-5.10.tar.xz glibc-c-utf8-locale-1.patch glibc-c-utf8-locale-2.patch glibc-python3.patch glibc-2.34-upstream-fixes.patch lib32.conf) build() { # install kernel headers cd linux-5.10 make mrproper make INSTALL_HDR_PATH=$PKG/usr headers_install chown root:root $PKG/usr patch -p1 -d $SRC/glibc-${version:0:4} -i $SRC/glibc-2.34-upstream-fixes.patch patch -p1 -d $SRC/glibc-${version:0:4} -i $SRC/glibc-python3.patch patch -p1 -d $SRC/glibc-${version:0:4} -i $SRC/glibc-c-utf8-locale-1.patch patch -p1 -d $SRC/glibc-${version:0:4} -i $SRC/glibc-c-utf8-locale-2.patch mkdir $SRC/build cd $SRC/build export libc_cv_slibdir=/lib32 export CC="gcc -m32" export CXX="g++ -m32" export CFLAGS="$CFLAGS -Wno-error=parentheses" echo "slibdir=/lib32" >> configparms echo "rootsbindir=/sbin" >> configparms echo "rtlddir=/lib32" >> configparms echo "sbindir=/usr/sbin" >> configparms ../glibc-$version/configure --prefix=/usr \ --libdir=/usr/lib32 \ --libexecdir=/usr/lib32 \ --with-headers=$PKG/usr/include \ --with-pkgversion="$version-$release" \ --with-bugurl='https://crux.nu/bugs' \ --enable-kernel=4.9 \ --enable-add-ons \ --enable-lock-elision \ --enable-bind-now \ --enable-stack-protector=strong \ --enable-stackguard-randomization \ --enable-multi-arch \ --without-gd \ --disable-profile \ --disable-werror \ --host=i686-pc-linux-gnu make #make check make install_root=$PKG install rm -r $PKG/usr/{bin,sbin,share} $PKG/{etc,sbin} $PKG/var mv $PKG/usr/include/gnu/stubs-32.h $SRC rm -r $PKG/usr/include install -D $SRC/stubs-32.h $PKG/usr/include/gnu/stubs-32.h install -D $SRC/lib32.conf $PKG/etc/ld.so.conf.d/lib32.conf install -d $PKG/lib ln -s /lib32/ld-linux.so.2 $PKG/lib/ld-linux.so.2 }