#!/bin/bash name=glibc release=1 version=2.36 url='https://gitlab.com/sulinos/devel/ymp' description='GNU libc library' email='parduscix@yandex.ru' maintainer='sulincix' license=('GPLv3') arch=(x86_64) source=('https://ftp.gnu.org/gnu/glibc/glibc-2.36.tar.xz' 'usr-support.conf' 'x86_64-linux-gnu.conf' 'glibc.sysconf' ) md5sums=('00e9b89e043340f688bc93ec03239b57' 'SKIP' 'SKIP' 'SKIP' ) export CFLAGS="-O3 ${debug:+-g} -s -mno-tls-direct-seg-refs -mtune=generic -DSULIX" export CXXFLAGS="-O3 ${debug:+-g} -s -mno-tls-direct-seg-refs -mtune=generic -DSULIX" export CC=gcc export CXX=g++ cd "$name-$version" setup(){ opts=( --prefix=/ --mandir=/share/man --infodir=/share/info --with-bugurl=http://gitlab.com/sulix/main/issues --enable-add-ons --enable-bind-now --enable-lock-elision --enable-multi-arch --enable-static-pie --enable-stack-protector=all --enable-kernel=5.10.0 --enable-stackguard-randomization --without-selinux --disable-werror ) if use multilib ; then mkdir glibc32-build cd glibc32-build ../configure ${opts[@]} \ --host=i686-pc-linux-gnu \ --libdir=/lib32 \ --libexecdir=/lib32/glibc cd .. fi mkdir glibc-build cd glibc-build pwd ../configure ${opts[@]} \ --libdir=/lib \ --libexecdir=/lib/glibc cd .. } build(){ for bdir in glibc32-build glibc-build ; do if [[ -d $bdir ]] ; then cd $bdir make -O -j`nproc --all` make info cd .. fi done } package(){ # create symlink lib64 (gentoo compability) mkdir -p ${DESTDIR}/lib64 ln -s lib64 ${DESTDIR}/lib ln -s lib32 ${DESTDIR}/libx32 for bdir in glibc32-build glibc-build ; do if [[ -d $bdir ]] ; then # install files cd $bdir make install -j$(nproc --all) # /usr support fi done mkdir -p ${DESTDIR}/etc/ld.so.conf.d/ install ../../usr-support.conf ${DESTDIR}/etc/ld.so.conf.d/ install ../../x86_64-linux-gnu.conf ${DESTDIR}/etc/ld.so.conf.d/ # remove ld.so.cache file (this file must generated by ldconfig command from inary) rm -f ${DESTDIR}/etc/ld.so.cache # install sysconf trigger install busybox.sysconf ${DESTDIR}/etc/sysconf.d/busybox }