wok-undigest diff glibc/receipt @ rev 1182
Add libgio(2.32.->2.43.), glibc(with mtune), kde-menu, build mplayer (1.2)
author | Xander Ziiryanoff <psychomaniak@xakep.ru> |
---|---|
date | Mon Nov 02 07:47:23 2015 +0100 (2015-11-02) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/glibc/receipt Mon Nov 02 07:47:23 2015 +0100 1.3 @@ -0,0 +1,156 @@ 1.4 +# SliTaz package receipt. 1.5 + 1.6 +PACKAGE="glibc" 1.7 +VERSION="2.14.1" 1.8 +CATEGORY="meta" 1.9 +SHORT_DESC="The GNU C libraries. This package is used to compile the libc." 1.10 +MAINTAINER="pankso@slitaz.org" 1.11 +LICENSE="GPL2" 1.12 +TARBALL="$PACKAGE-$VERSION.tar.gz" 1.13 +WEB_SITE="http://www.gnu.org/software/libc/" 1.14 +WGET_URL="$GNU_MIRROR/$PACKAGE/$TARBALL" 1.15 + 1.16 +DEPENDS="glibc-base glibc-locale glibc-dev" 1.17 +BUILD_DEPENDS="linux-api-headers autoconf bash" 1.18 + 1.19 +# Genpkg order for tazwok. 1.20 +COOK_OPT="genpkg=glibc-base:glibc-extra-samba:glib-locale:glibc-dev" 1.21 + 1.22 +# Rules to compile & install the temporary toolchain. 1.23 +cook_tmp_toolchain() 1.24 +{ 1.25 + cd $src 1.26 + 1.27 + # Glibc Bug Fixes Patch from LFS 1.28 + patch -Np1 -i $stuff/glibc-2.14.1-fixes-1.patch 1.29 + # Glibc Bug Sort Relocatable Objects Patch 1.30 + patch -Np1 -i $stuff/glibc-2.14.1-sort-1.patch 1.31 + # Fix a bug that prevents Glibc from building with GCC-4.6.2 1.32 + patch -Np1 -i $stuff/glibc-2.14.1-gcc_fix-1.patch 1.33 + # GHOST 1.34 + patch -Np1 -i $stuff/glibc-2.14.1-CVE-2015-0235.patch 1.35 + 1.36 + # Build in a separate directory. 1.37 + mkdir ../glibc-build && cd ../glibc-build 1.38 + 1.39 + # glibc no longer support i386, so use -march=i486 for better compatibility. 1.40 + # If i686 ??? 1.41 + unset CFLAGS CXXFLAGS 1.42 + case $ARCH in 1.43 + i386|i486) 1.44 + echo "CFLAGS += -O2 -march=i486 -mtune=i686" > configparms ;; 1.45 + *) 1.46 + echo "CFLAGS += -O2 -march=$ARCH -mtune=$ARCH" > configparms ;; 1.47 + esac 1.48 + 1.49 + { $src/configure \ 1.50 + --host=$HOST_SYSTEM \ 1.51 + --build=$($src/scripts/config.guess) \ 1.52 + --disable-profile --enable-add-ons \ 1.53 + --enable-kernel=2.6.30 --with-headers=/tools/include \ 1.54 + libc_cv_forced_unwind=yes libc_cv_c_cleanup=yes && 1.55 + make && 1.56 + make install 1.57 + } || return 1 1.58 + 1.59 + # Link compiler to this new glibc. 1.60 + SPECS=`dirname $($HOST_SYSTEM-gcc -print-libgcc-file-name)`/specs 1.61 + $HOST_SYSTEM-gcc -dumpspecs | sed \ 1.62 + -e 's@/lib\(64\)\?/ld@/tools&@g' \ 1.63 + -e "/^\*cpp:$/{n;s,$, -isystem /tools/include,}" > $SPECS 1.64 + unset SPECS 1.65 +} 1.66 + 1.67 +# Rules to configure and make the package. 1.68 +compile_rules() 1.69 +{ 1.70 + # SliTaz is a Busybox based OS, why we so small and fast. Using gawk by 1.71 + # default to build package will not ensure package work with Busybox awk 1.72 + # and so should NOT be use to cook. 1.73 + if [ -x /usr/bin/cook ]; then 1.74 + [ -d "/var/lib/tazpkg/installed/gawk" ] || tazpkg get-install gawk 1.75 + fi 1.76 + 1.77 + # Make 4.x support... 1.78 + # sed -i 's/3\.79/4.* | &/' configure* 1.79 + # Fixes and patches from LFS, Redhat 1.80 + sed -i -e 's/"db1"/& \&\& $name ne "nss_test1"/' scripts/test-installation.pl 1.81 + sed -i 's|@BASH@|/bin/bash|' elf/ldd.bash.in 1.82 + 1.83 + # Glibc misc Bug Fixes 1.84 + patch -Np1 -i $stuff/glibc-2.14.1-fixes-1.patch 1.85 + 1.86 + # Glibc Bug Sort Relocatable Objects Patch 1.87 + #patch -Np1 -i $stuff/glibc-2.14.1-sort-1.patch 1.88 + 1.89 + # Fix a bug that prevents Glibc from building with GCC-4.6.2 1.90 + patch -Np1 -i $stuff/glibc-2.14.1-gcc_fix-1.patch 1.91 + 1.92 + # Revert commit causing issues with crappy DNS servers 1.93 + patch -Np1 -i $stuff/glibc-2.14-revert-4768ae77.patch 1.94 + 1.95 + # re-export RPC interface until libtirpc is ready as a replacement 1.96 + # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=acee4873 (only fedora branch...) 1.97 + patch -Np1 -i $stuff/glibc-2.14-reexport-rpc-interface.patch 1.98 + # http://sourceware.org/git/?p=glibc.git;a=commitdiff;h=bdd816a3 (only fedora branch...) 1.99 + patch -Np1 -i $stuff/glibc-2.14-reinstall-nis-rpc-headers.patch 1.100 + # GHOST 1.101 + patch -Np1 -i $stuff/glibc-2.14.1-CVE-2015-0235.patch 1.102 + 1.103 + # Fix a stack imbalance that occurs under some conditions: 1.104 + sed -i '195,213 s/PRIVATE_FUTEX/FUTEX_CLOCK_REALTIME/' \ 1.105 + nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S \ 1.106 + nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S 1.107 + 1.108 + # Glibc needs ld.so.conf in the install destdir. 1.109 + mkdir -p $WOK/$PACKAGE/install/etc 1.110 + touch $WOK/$PACKAGE/install/etc/ld.so.conf 1.111 + mkdir ../glibc-build && cd ../glibc-build 1.112 + 1.113 + # Read the INSTALL file in glibc. Also Glibc dont build with -Os flag. 1.114 + # --enale-kernel use latest SliTaz Kernel version. From Glibc INSTALL: 1.115 + # "The higher the VERSION number is, the less compatibility code is 1.116 + # added, and the faster the code gets." 1.117 + unset CFLAGS CXXFLAGS 1.118 + case "$ARCH" in 1.119 + i386|i486) 1.120 + echo "CFLAGS += -O2 -march=i486 -mtune=i686" > configparms ;; 1.121 + *) 1.122 + echo "CFLAGS += -O2 -march=$ARCH -mtune=$ARCH" > configparms ;; 1.123 + esac 1.124 + { $src/configure \ 1.125 + --disable-profile \ 1.126 + --enable-add-ons \ 1.127 + --enable-kernel=2.6.30 \ 1.128 + --libexecdir=/usr/lib/glibc \ 1.129 + --build=$HOST_SYSTEM \ 1.130 + --host=$HOST_SYSTEM \ 1.131 + --target=$BUILD_SYSTEM && 1.132 + make && make install_root=$DESTDIR install 1.133 + } || return 1 1.134 + 1.135 + # If temporary toolchain was previously used, switch to regular toolchain. 1.136 + [ -d /tools ] || return 1.137 + mv /tools/bin/ld /tools/bin/ld-old 1.138 + mv /tools/$(gcc -dumpmachine)/bin/ld /tools/$(gcc -dumpmachine)/bin/ld-old 1.139 + mv /tools/bin/ld-new /tools/bin/ld 1.140 + ln -s /tools/bin/ld /tools/$(gcc -dumpmachine)/bin/ld 1.141 + gcc -dumpspecs | sed -e 's@/tools@@g' \ 1.142 + -e '/\*startfile_prefix_spec:/{n;s@.*@/usr/lib/ @}' \ 1.143 + -e '/\*cpp:/{n;s@$@ -isystem /usr/include@}' > \ 1.144 + `dirname $(gcc --print-libgcc-file-name)`/specs 1.145 +} 1.146 + 1.147 +# Rules to gen a SliTaz package suitable for Tazpkg. 1.148 +genpkg_rules() 1.149 +{ 1.150 + LOCALE="" 1.151 + mkdir -p $fs/var 1.152 + 1.153 + # Remove build directory. 1.154 + rm -rf $WOK/$PACKAGE/source/$PACKAGE-build 1.155 + rm -rf $WOK/$PACKAGE/$PACKAGE-build 1.156 + 1.157 + # check install 1.158 + ls $install/lib/ 1.159 +}