1
0
Fork 0
frozenports/system/glibc/SCHEMATIC

53 lines
2.2 KiB
Bash

#!/bin/sh
name="glibc"
short_desc="GNU C Library"
desc="The GNU C Library (glibc) is a C library uses as the libc of most Linux distributions.
Not only does it contain a libc, it also contains locale configuration."
category="system"
version="2.38"
maintainer="ffqq@danwin1210.de"
www="https://www.gnu.org/software/libc/"
master_site="ftp://ftp.gnu.org/gnu/libc"
source_name="$name-$version.tar.gz"
license_logic="single" # accepted values: single, and, or
licenses=("GPLv3+")
build_dependencies=("lang/gcc" "lang/gawk" "lang/python3" "textproc/sed" "devel/bison" "devel/binutils" "devel/gmake")
run_dependencies=()
build_process() {
cd $name-$version || exit 1
patch -Np1 -i $TAMANDUA_FILES_DIR/glibc-2.38-memalign_fix-1.patch || exit 1
patch -Np1 -i $TAMANDUA_FILES_DIR/glibc-2.38-fhs-1.patch || exit 1
echo "rootsbindir=/usr/sbin" > configparms || exit 1
mkdir -p build || exit 1
cd build || exit 1
../configure --prefix=/usr \
--disable-werror \
--disable-nscd \
--enable-kernel=4.14 \
--with-headers=/usr/include \
--enable-stack-protector=strong \
libc_cv_slibdir=/usr/lib || exit 1
make -j$(nproc) || exit 1
sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile || exit 1
make DESTDIR="$TAMANDUA_STAGE_DIR" install || exit 1
sed '/RTLDLIST=/s@/usr@@g' -i $TAMANDUA_STAGE_DIR/usr/bin/ldd || exit 1
# locale-gen
chmod +x $TAMANDUA_FILES_DIR/locale-gen
cp $TAMANDUA_FILES_DIR/locale-gen $TAMANDUA_STAGE_DIR/usr/bin/locale-gen
echo "# locale-gen configuration file
#
# The locale-gen utility is a utility that will generate locales and place them
# in /usr/lib/locale.
#
# Uncomment your desired locales, and run locale-gen to generate them.
#" > $TAMANDUA_STAGE_DIR/etc/locale.gen
sed -e '1,3d' -e 's|/| |g' -e 's|\\| |g' -e 's|^|#|g' \
$TAMANDUA_BUILD_DIR/$name-$version/localedata/SUPPORTED >> $TAMANDUA_STAGE_DIR/etc/locale.gen
# ld-linux
mkdir -p $TAMANDUA_STAGE_DIR/lib64
mkdir -p $TAMANDUA_STAGE_DIR/usr/lib/locale
ln -sv /usr/lib/ld-linux-x86-64.so.2 $TAMANDUA_STAGE_DIR/lib64/ld-linux-x86-64.so.2
rm -r $TAMANDUA_STAGE_DIR/usr/share/info
}