# Depends on:
name=glibc
-version=2.19
-release=2
+version=2.22
+release=3
source=(http://ftp.gnu.org/gnu/glibc/glibc-$version.tar.xz \
- ftp://ftp.kernel.org/pub/linux/kernel/v3.0/linux-3.12.tar.xz \
+ http://ftp.kernel.org/pub/linux/kernel/v4.x/linux-4.1.13.tar.xz \
+ CVE-2015-8779.patch CVE-2015-8778.patch CVE-2015-8777.patch \
+ CVE-2015-8776.patch CVE-2015-7547.patch glibc-rh1252570.patch
hosts resolv.conf nsswitch.conf host.conf ld.so.conf)
build() {
# install kernel headers
- cd linux-3.12
+ cd linux-4.1.13
make mrproper
make ARCH=arm headers_check
make ARCH=arm INSTALL_HDR_PATH=$PKG/usr headers_install
- cd $SRC
+ patch -p1 -d $SRC/$name-$version -i $SRC/CVE-2015-8778.patch
+ patch -p1 -d $SRC/$name-$version -i $SRC/CVE-2015-8777.patch
+ patch -p1 -d $SRC/$name-$version -i $SRC/CVE-2015-8776.patch
+ patch -p1 -d $SRC/$name-$version -i $SRC/glibc-rh1252570.patch
+ patch -p1 -d $SRC/$name-$version -i $SRC/CVE-2015-7547.patch
mkdir $SRC/build
cd $SRC/build
-
../$name-$version/configure --prefix=/usr \
--build=arm-unknown-linux-gnueabihf \
--libexecdir=/usr/lib \
--with-headers=$PKG/usr/include \
- --with-tls \
--enable-kernel=2.6.25 \
--enable-add-ons \
+ --enable-static-nss \
--disable-profile \
+ --disable-werror \
--without-gd \
--enable-obsolete-rpc
make
make install_root=$PKG install
- cp $SRC/{hosts,resolv.conf,nsswitch.conf,host.conf,ld.so.conf} $PKG/etc
+ install -m 0644 $SRC/$name-$version/nscd/nscd.conf $PKG/etc
+ install -d $PKG/var/{db,run}/nscd
+
+ install -m 0644 $SRC/{hosts,resolv.conf,nsswitch.conf,host.conf,ld.so.conf} $PKG/etc
+
ln -sf ../usr/share/zoneinfo/UTC $PKG/etc/localtime
- mkdir -p $PKG/etc/ld.so.conf.d $PKG/usr/lib/locale
+ ln -s stubs-hard.h $PKG/usr/include/gnu/stubs-soft.h
+ install -d $PKG/etc/ld.so.conf.d $PKG/usr/lib/locale
touch $PKG/etc/ld.so.cache
rm -rf $PKG/usr/share/{info,locale} \
- $PKG/usr/bin/tzselect \
- $PKG/usr/sbin/z{dump,ic}
+ $PKG/usr/bin/tzselect \
+ $PKG/usr/sbin/z{dump,ic}
}