Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-current.git;a=commitdiff;h=afad9de2f5dffb085d45ce3b07b0868e91dc9ab0
commit afad9de2f5dffb085d45ce3b07b0868e91dc9ab0 Author: Michel Hermier <herm...@frugalware.org> Date: Fri Aug 26 19:47:39 2011 +0200 glibc-2.14-5-i686 * Really fix dns solver for me. * Only include GLIBC_PORTS on arch that really needs it. diff --git a/source/base/glibc/FrugalBuild b/source/base/glibc/FrugalBuild index 61f781f..cead5ad 100644 --- a/source/base/glibc/FrugalBuild +++ b/source/base/glibc/FrugalBuild @@ -2,9 +2,16 @@ # Maintainer: crazy <cr...@frugalware.org> # Contributor: Miklos Vajna <vmik...@frugalware.org> +case "$CARCH" in + 'arm') USE_GLIBC_PORTS_DEFAULT=y;; + *) USE_GLIBC_PORTS_DEFAULT=n;; +esac + +USE_GLIBC_PORTS=${USE_GLIBC_PORTS:-$USE_GLIBC_PORTS_DEFAULT} + pkgname=glibc pkgver=2.14 -pkgrel=4 +pkgrel=5 pkgdesc="GNU C Library" url="http://www.gnu.org/software/libc/libc.html" depends=() @@ -16,24 +23,27 @@ groups=('base' 'chroot-core') archs=('i686' 'x86_64' 'ppc' 'arm') Fup2gnubz2 source=(http://ftp.gnu.org/pub/gnu/glibc/glibc-$pkgver.tar.gz \ - http://ftp.frugalware.org/pub/other/people/elentir/glibc-ports/glibc-ports-$pkgver.tar.bz2 \ fix-missing-etc-hosts.patch \ gcc45.patch \ revert-8f4a5048eea6536ee85c0f2670adbb97d71e427d.patch \ nis.diff \ - fix-resolv-crash.diff) + glibc-2.14-revert-4462fad3.patch) sha1sums=('74a57dd5bd2494a190da7ded31477980aefa5093' \ - 'e178203449b5d882f7b89dd6d507a1d50d7d686b' \ 'be4a7bea8af743331e2c6704faa24b6cb4e155d5' \ '2283966c4f48bbc9b6ad0ae3bbd64601c057c721' \ 'c8d14d0f2e239ba0def978010163e919a45700f7' \ '9c4544aee1063f65da39273349f0780d5723747d' \ - 'f773442c3fa38f036046536e54a3c3f60ddd67a3') + '42af7bdcfc3edd795d181ce973f6b9278720abfc') + +if Fuse GLIBC_PORTS; then + source=("${source[@]}" "http://ftp.gnu.org/pub/gnu/glibc/glibc-ports-$pkgver.tar.gz") + sha1sums=("${sha1sums[@]}" 'e178203449b5d882f7b89dd6d507a1d50d7d686b') +fi build() { Fcd $pkgname-$pkgver - if [ "$CARCH" == "arm" ]; then + if Fuse GLIBC_PORTS; then ln -sf $Fsrcdir/glibc-ports-$pkgver . || Fdie fi Fsed 'x86_64 \| ' '' sysdeps/unix/sysv/linux/configure{,.in} diff --git a/source/base/glibc/fix-resolv-crash.diff b/source/base/glibc/fix-resolv-crash.diff deleted file mode 100644 index 50320b6..0000000 --- a/source/base/glibc/fix-resolv-crash.diff +++ /dev/null @@ -1,23 +0,0 @@ -diff --git a/resolv/res_send.c b/resolv/res_send.c -index 97142b7..a001c1e 100644 ---- a/resolv/res_send.c -+++ b/resolv/res_send.c -@@ -549,7 +549,7 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen, - ns, ansp, ansp2, nansp2, resplen2); - if (n < 0) - return (-1); -- if (n == 0 && (buf2 == NULL || resplen2 == 0)) -+ if (n == 0 && (buf2 == NULL || *resplen2 == 0)) - goto next_ns; - } else { - /* Use datagrams. */ -@@ -559,7 +559,7 @@ __libc_res_nsend(res_state statp, const u_char *buf, int buflen, - ansp2, nansp2, resplen2); - if (n < 0) - return (-1); -- if (n == 0 && (buf2 == NULL || resplen2 == 0)) -+ if (n == 0 && (buf2 == NULL || *resplen2 == 0)) - goto next_ns; - if (v_circuit) - // XXX Check whether both requests failed or - diff --git a/source/base/glibc/glibc-2.14-revert-4462fad3.patch b/source/base/glibc/glibc-2.14-revert-4462fad3.patch new file mode 100644 index 0000000..d71e374 --- /dev/null +++ b/source/base/glibc/glibc-2.14-revert-4462fad3.patch @@ -0,0 +1,37 @@ +diff -Naur glibc-orig//resolv/res_send.c glibc/resolv/res_send.c +--- glibc-orig//resolv/res_send.c 2011-06-10 18:59:03.041436996 +1000 ++++ glibc/resolv/res_send.c 2011-06-10 19:08:09.379309323 +1000 +@@ -549,7 +549,7 @@ + ns, ansp, ansp2, nansp2, resplen2); + if (n < 0) + return (-1); +- if (n == 0 && (buf2 == NULL || resplen2 == 0)) ++ if (n == 0) + goto next_ns; + } else { + /* Use datagrams. */ +@@ -559,7 +559,7 @@ + ansp2, nansp2, resplen2); + if (n < 0) + return (-1); +- if (n == 0 && (buf2 == NULL || resplen2 == 0)) ++ if (n == 0) + goto next_ns; + if (v_circuit) + // XXX Check whether both requests failed or +@@ -1275,14 +1275,10 @@ + (*thisresplenp > *thisanssizp) + ? *thisanssizp : *thisresplenp); + +- if (recvresp1 || (buf2 != NULL && recvresp2)) { +- *resplen2 = 0; ++ if (recvresp1 || (buf2 != NULL && recvresp2)) + return resplen; +- } + if (buf2 != NULL) + { +- /* No data from the first reply. */ +- resplen = 0; + /* We are waiting for a possible second reply. */ + if (hp->id == anhp->id) + recvresp1 = 1; _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git