# Description: The main C library # URL: # Maintainer: Emmett1, emmett1 dot 2miligrams at gmail dot com # Depends on: name=glibc version=2.31 release=1 source=(https://ftp.gnu.org/gnu/$name/$name-$version.tar.xz http://www.linuxfromscratch.org/patches/lfs/9.1/$name-$version-fhs-1.patch) build() { cd $name-$version patch -Np1 -i ../$name-$version-fhs-1.patch mkdir -p $PKG/lib64 ln -sfv ../lib/ld-linux-x86-64.so.2 $PKG/lib64 ln -sfv ../lib/ld-linux-x86-64.so.2 $PKG/lib64/ld-lsb-x86-64.so.3 mkdir -v build cd build CC="gcc -ffile-prefix-map=/tools=/usr" \ ../configure \ --prefix=/usr \ --disable-werror \ --enable-kernel=3.2 \ --enable-stack-protector=strong \ --with-headers=/usr/include \ --enable-multi-arch \ libc_cv_slibdir=/lib make mkdir -p $PKG/etc touch $PKG/etc/ld.so.conf make install_root=$PKG install cp -v ../nscd/nscd.conf $PKG/etc/nscd.conf mkdir -pv $PKG/var/cache/nscd mkdir -pv $PKG/usr/lib/locale make install_root=$PKG localedata/install-locales # 32bit mkdir -v ../build32 cd ../build32 CC="gcc -m32" \ CXX="g++ -m32" \ ../configure --prefix=/usr \ --disable-werror \ --enable-kernel=3.2 \ --enable-multi-arch \ --enable-stack-protector=strong \ --libdir=/usr/lib32 \ --libexecdir=/usr/lib32 \ libc_cv_slibdir=/usr/lib32 \ i686-pc-linux-gnu make make install_root=$PWD/DESTDIR install install -vdm755 $PKG/usr/lib32 install -vdm755 $PKG/include/gnu install -vdm755 $PKG/etc/ld.so.conf.d cp -Rv DESTDIR/usr/lib32/* $PKG/usr/lib32/ install -vm644 DESTDIR/usr/include/gnu/{lib-names,stubs}-32.h \ $PKG/usr/include/gnu/ ln -sv ../usr/lib32/ld-linux.so.2 $PKG/lib/ld-linux.so.2 ln -sv ../usr/lib32/ld-linux.so.2 $PKG/lib/ld-lsb.so.3 ln -sv ../lib/locale $PKG/usr/lib32/locale echo "/usr/lib32" > $PKG/etc/ld.so.conf.d/lib32.conf cd - cat > $PKG/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 cat > $PKG/etc/ld.so.conf << "EOF" # Begin /etc/ld.so.conf /usr/local/lib /opt/lib EOF cat >> $PKG/etc/ld.so.conf << "EOF" # Add an include directory include /etc/ld.so.conf.d/*.conf EOF mkdir -pv $PKG/etc/ld.so.conf.d }