eth0s/ports/core/glibc/Pkgfile
2022-04-09 08:19:46 +08:00

103 lines
No EOL
2.6 KiB
Text
Executable file

# Description: The main C library
# URL:
# Maintainer: Emmett1, emmett1 dot 2miligrams at gmail dot com
# Depends on:
name=glibc
version=2.35
release=1
source=(https://ftp.gnu.org/gnu/$name/$name-$version.tar.xz
$name-fhs-1.patch)
build() {
cd $name-$version
patch -Np1 -i ../$name-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
}