summaryrefslogtreecommitdiff
path: root/multilib/lib32-glibc
diff options
context:
space:
mode:
authorNicolas Reynolds <fauno@kiwwwi.com.ar>2011-09-21 12:47:04 -0300
committerNicolas Reynolds <fauno@kiwwwi.com.ar>2011-09-21 12:47:04 -0300
commit79f56eaaa1e752a2f67072051b612acf5c648f69 (patch)
treea466c8fa3a070419d3a816b79a2d38ec80ad04ce /multilib/lib32-glibc
parent37ac99de3bc1df2e6c5e0cd8b6af631d589cb4ab (diff)
parentd739da01541d53414129d3171df221cfe2440fe5 (diff)
Merge branch 'master' of ssh://vparabola/home/parabola/abslibre-pre-mips64el
Conflicts: community/antiword/PKGBUILD community/apcupsd/PKGBUILD community/busybox/PKGBUILD community/chrpath/PKGBUILD community/driftnet/PKGBUILD community/emesene/PKGBUILD community/fdm/PKGBUILD community/fftw2/PKGBUILD community/gsynaptics/PKGBUILD community/gtk-rezlooks-engine/PKGBUILD community/httptunnel/PKGBUILD community/libnfnetlink/PKGBUILD community/libopenraw/PKGBUILD community/mashup/PKGBUILD community/pcb/PKGBUILD community/portaudio_cpp/PKGBUILD community/preload/PKGBUILD community/rlog/PKGBUILD community/scponly/PKGBUILD community/splint/PKGBUILD community/wmname/PKGBUILD community/xosd/PKGBUILD community/xxkb/PKGBUILD community/znc/PKGBUILD core/glibc/PKGBUILD core/libtool/PKGBUILD extra/at/PKGBUILD extra/autogen/PKGBUILD extra/bmp-musepack/PKGBUILD extra/capi4k-utils/PKGBUILD extra/cdrdao/PKGBUILD extra/chkrootkit/PKGBUILD extra/cmt/PKGBUILD extra/compface/PKGBUILD extra/dasher/PKGBUILD extra/dcfldd/PKGBUILD extra/dmapi/PKGBUILD extra/docker/PKGBUILD extra/dvd+rw-tools/PKGBUILD extra/dvdrtools/PKGBUILD extra/fcgi/PKGBUILD extra/festival/PKGBUILD extra/ffmpeg/PKGBUILD extra/gecko-sharp-2.0/PKGBUILD extra/gimp-gap/PKGBUILD extra/gmetadom/PKGBUILD extra/gnome-speech/PKGBUILD extra/gnome-vfsmm/PKGBUILD extra/gnutls/PKGBUILD extra/graphite/PKGBUILD extra/i8kutils/PKGBUILD extra/id3/PKGBUILD extra/java-access-bridge/PKGBUILD extra/kdelibs/PKGBUILD extra/koffice/PKGBUILD extra/ladspa/PKGBUILD extra/libcddb/PKGBUILD extra/libcroco/PKGBUILD extra/libdc1394/PKGBUILD extra/libdca/PKGBUILD extra/libgee/PKGBUILD extra/libglademm/PKGBUILD extra/libgnomecanvasmm/PKGBUILD extra/libsigsegv/PKGBUILD extra/libstdc++5/PKGBUILD extra/libwebkit/PKGBUILD extra/libytnef/PKGBUILD extra/lua/PKGBUILD extra/mcpp/PKGBUILD extra/metalog/PKGBUILD extra/mp3wrap/PKGBUILD extra/mt-st/PKGBUILD extra/naim/PKGBUILD extra/ocaml/PKGBUILD extra/oxine/PKGBUILD extra/php/PKGBUILD extra/poppler/PKGBUILD extra/pstoedit/PKGBUILD extra/qt/PKGBUILD extra/speex/PKGBUILD extra/sweep/PKGBUILD extra/t1lib/PKGBUILD extra/taglib-extras/PKGBUILD extra/unixodbc/PKGBUILD extra/wireshark/PKGBUILD extra/ypbind-mt/PKGBUILD gnome-unstable/caribou/PKGBUILD gnome-unstable/clutter/PKGBUILD gnome-unstable/cogl/PKGBUILD gnome-unstable/dconf/PKGBUILD gnome-unstable/empathy/PKGBUILD gnome-unstable/empathy/empathy.install gnome-unstable/eog/PKGBUILD gnome-unstable/evolution-data-server/PKGBUILD gnome-unstable/evolution/PKGBUILD gnome-unstable/folks/PKGBUILD gnome-unstable/gconf/PKGBUILD gnome-unstable/gdm/PKGBUILD gnome-unstable/gdm/fix_external_program_directories.patch gnome-unstable/glib-networking/PKGBUILD gnome-unstable/glib2/PKGBUILD gnome-unstable/gnome-color-manager/PKGBUILD gnome-unstable/gnome-contacts/PKGBUILD gnome-unstable/gnome-desktop/PKGBUILD gnome-unstable/gnome-keyring/PKGBUILD gnome-unstable/gnome-menus/PKGBUILD gnome-unstable/gnome-online-accounts/PKGBUILD gnome-unstable/gnome-panel/PKGBUILD gnome-unstable/gnome-power-manager/PKGBUILD gnome-unstable/gnome-screensaver/PKGBUILD gnome-unstable/gnome-session/PKGBUILD gnome-unstable/gnome-settings-daemon/PKGBUILD gnome-unstable/gnome-shell/PKGBUILD gnome-unstable/gnome-themes-standard/PKGBUILD gnome-unstable/gnome-utils/PKGBUILD gnome-unstable/gtk3/PKGBUILD gnome-unstable/gtkhtml4/PKGBUILD gnome-unstable/gtkmm3/PKGBUILD gnome-unstable/libgdata/PKGBUILD gnome-unstable/libgnome-keyring/PKGBUILD gnome-unstable/libsoup/PKGBUILD gnome-unstable/libwnck3/PKGBUILD gnome-unstable/mash/PKGBUILD gnome-unstable/mutter/PKGBUILD gnome-unstable/mx/PKGBUILD gnome-unstable/pulseaudio/PKGBUILD gnome-unstable/pygobject/PKGBUILD gnome-unstable/pygobject2/PKGBUILD gnome-unstable/seahorse/PKGBUILD gnome-unstable/sushi/PKGBUILD gnome-unstable/totem/PKGBUILD gnome-unstable/upower/PKGBUILD gnome-unstable/vala/PKGBUILD kde-unstable/kdebase-workspace/PKGBUILD multilib/lib32-glibc/PKGBUILD multilib/lib32-gtk/PKGBUILD multilib/lib32-libpng/PKGBUILD multilib/lib32-mpg123/PKGBUILD multilib/lib32-nspr/PKGBUILD multilib/lib32-nss/PKGBUILD multilib/lib32-nss/add_spi+cacert_ca_certs.patch multilib/lib32-openssl/PKGBUILD multilib/libtool-multilib/PKGBUILD multilib/wine/PKGBUILD testing/util-linux/PKGBUILD
Diffstat (limited to 'multilib/lib32-glibc')
-rw-r--r--multilib/lib32-glibc/glibc-2.13-dlclose-search-reset.patch196
-rw-r--r--multilib/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch26
2 files changed, 222 insertions, 0 deletions
diff --git a/multilib/lib32-glibc/glibc-2.13-dlclose-search-reset.patch b/multilib/lib32-glibc/glibc-2.13-dlclose-search-reset.patch
new file mode 100644
index 000000000..3ad8b418a
--- /dev/null
+++ b/multilib/lib32-glibc/glibc-2.13-dlclose-search-reset.patch
@@ -0,0 +1,196 @@
+From 2f811bf88bed4a6c0dec8778847ba441736d509d Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Wed, 26 May 2010 18:28:59 +0200
+Subject: [PATCH] Fix scope handling during dl_close
+
+---
+ ChangeLog | 12 ++++++++++++
+ elf/Makefile | 10 +++++++++-
+ elf/dl-close.c | 7 +++++++
+ elf/unload8.c | 33 +++++++++++++++++++++++++++++++++
+ elf/unload8mod1.c | 7 +++++++
+ elf/unload8mod1x.c | 1 +
+ elf/unload8mod2.c | 7 +++++++
+ elf/unload8mod3.c | 27 +++++++++++++++++++++++++++
+ 8 files changed, 103 insertions(+), 1 deletions(-)
+ create mode 100644 elf/unload8.c
+ create mode 100644 elf/unload8mod1.c
+ create mode 100644 elf/unload8mod1x.c
+ create mode 100644 elf/unload8mod2.c
+ create mode 100644 elf/unload8mod3.c
+
+diff --git a/elf/Makefile b/elf/Makefile
+index 59e835f..65b6deb 100644
+--- a/elf/Makefile
++++ b/elf/Makefile
+@@ -89,6 +89,7 @@ distribute := rtld-Rules \
+ unload4mod1.c unload4mod2.c unload4mod3.c unload4mod4.c \
+ unload6mod1.c unload6mod2.c unload6mod3.c \
+ unload7mod1.c unload7mod2.c \
++ unload8mod1.c unload8mod1x.c unload8mod2.c unload8mod3.c \
+ tst-audit1.c tst-audit2.c tst-audit3.c tst-audit4.c \
+ tst-auditmod1.c tst-auditmod3a.c tst-auditmod3b.c \
+ tst-auditmod4a.c tst-auditmod4b.c \
+@@ -196,7 +197,7 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \
+ tst-align tst-align2 $(tests-execstack-$(have-z-execstack)) \
+ tst-dlmodcount tst-dlopenrpath tst-deep1 \
+ tst-dlmopen1 tst-dlmopen2 tst-dlmopen3 \
+- unload3 unload4 unload5 unload6 unload7 tst-global1 order2 \
++ unload3 unload4 unload5 unload6 unload7 unload8 tst-global1 order2 \
+ tst-audit1 tst-audit2 \
+ tst-stackguard1 tst-addr1 tst-thrlock \
+ tst-unique1 tst-unique2
+@@ -247,6 +248,7 @@ modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
+ unload4mod1 unload4mod2 unload4mod3 unload4mod4 \
+ unload6mod1 unload6mod2 unload6mod3 \
+ unload7mod1 unload7mod2 \
++ unload8mod1 unload8mod1x unload8mod2 unload8mod3 \
+ order2mod1 order2mod2 order2mod3 order2mod4 \
+ tst-unique1mod1 tst-unique1mod2 \
+ tst-unique2mod1 tst-unique2mod2
+@@ -522,6 +524,9 @@ $(objpfx)unload6mod2.so: $(libdl)
+ $(objpfx)unload6mod3.so: $(libdl)
+ $(objpfx)unload7mod1.so: $(libdl)
+ $(objpfx)unload7mod2.so: $(objpfx)unload7mod1.so
++$(objpfx)unload8mod1.so: $(objpfx)unload8mod2.so
++$(objpfx)unload8mod2.so: $(objpfx)unload8mod3.so
++$(objpfx)unload8mod3.so: $(libdl)
+ $(objpfx)tst-initordera2.so: $(objpfx)tst-initordera1.so
+ $(objpfx)tst-initorderb2.so: $(objpfx)tst-initorderb1.so $(objpfx)tst-initordera2.so
+ $(objpfx)tst-initordera3.so: $(objpfx)tst-initorderb2.so $(objpfx)tst-initorderb1.so
+@@ -823,6 +828,9 @@ $(objpfx)unload7: $(libdl)
+ $(objpfx)unload7.out: $(objpfx)unload7mod1.so $(objpfx)unload7mod2.so
+ unload7-ENV = MALLOC_PERTURB_=85
+
++$(objpfx)unload8: $(libdl)
++$(objpfx)unload8.out: $(objpfx)unload8mod1.so $(objpfx)unload8mod1x.so
++
+ ifdef libdl
+ $(objpfx)tst-tls9-static: $(common-objpfx)dlfcn/libdl.a
+ $(objpfx)tst-tls9-static.out: $(objpfx)tst-tlsmod5.so $(objpfx)tst-tlsmod6.so
+diff --git a/elf/dl-close.c b/elf/dl-close.c
+index 700e765..f47d5f8 100644
+--- a/elf/dl-close.c
++++ b/elf/dl-close.c
+@@ -421,6 +421,13 @@ _dl_close_worker (struct link_map *map)
+
+ imap->l_scope_max = new_size;
+ }
++ else if (new_list != NULL)
++ {
++ /* We didn't change the scope array, so reset the search
++ list. */
++ imap->l_searchlist.r_list = NULL;
++ imap->l_searchlist.r_nlist = 0;
++ }
+
+ /* The loader is gone, so mark the object as not having one.
+ Note: l_idx != IDX_STILL_USED -> object will be removed. */
+diff --git a/elf/unload8.c b/elf/unload8.c
+new file mode 100644
+index 0000000..f984a38
+--- /dev/null
++++ b/elf/unload8.c
+@@ -0,0 +1,33 @@
++#include <dlfcn.h>
++#include <stdio.h>
++
++int
++main (void)
++{
++ void *h = dlopen ("$ORIGIN/unload8mod1.so", RTLD_LAZY);
++ if (h == NULL)
++ {
++ puts ("dlopen unload8mod1.so failed");
++ return 1;
++ }
++
++ void *h2 = dlopen ("$ORIGIN/unload8mod1x.so", RTLD_LAZY);
++ if (h2 == NULL)
++ {
++ puts ("dlopen unload8mod1x.so failed");
++ return 1;
++ }
++ dlclose (h2);
++
++ int (*mod1) (void) = dlsym (h, "mod1");
++ if (mod1 == NULL)
++ {
++ puts ("dlsym failed");
++ return 1;
++ }
++
++ mod1 ();
++ dlclose (h);
++
++ return 0;
++}
+diff --git a/elf/unload8mod1.c b/elf/unload8mod1.c
+new file mode 100644
+index 0000000..fe7e81c
+--- /dev/null
++++ b/elf/unload8mod1.c
+@@ -0,0 +1,7 @@
++extern void mod2 (void);
++
++void
++mod1 (void)
++{
++ mod2 ();
++}
+diff --git a/elf/unload8mod1x.c b/elf/unload8mod1x.c
+new file mode 100644
+index 0000000..835b634
+--- /dev/null
++++ b/elf/unload8mod1x.c
+@@ -0,0 +1 @@
++int mod1x;
+diff --git a/elf/unload8mod2.c b/elf/unload8mod2.c
+new file mode 100644
+index 0000000..2fd8b67
+--- /dev/null
++++ b/elf/unload8mod2.c
+@@ -0,0 +1,7 @@
++extern void mod3 (void);
++
++void
++mod2 (void)
++{
++ mod3 ();
++}
+diff --git a/elf/unload8mod3.c b/elf/unload8mod3.c
+new file mode 100644
+index 0000000..d49e22b
+--- /dev/null
++++ b/elf/unload8mod3.c
+@@ -0,0 +1,27 @@
++#include <dlfcn.h>
++#include <stdio.h>
++#include <stdlib.h>
++
++void
++mod3_fini2 (void)
++{
++}
++
++void
++mod3_fini (void)
++{
++ mod3_fini2 ();
++}
++
++void
++mod3 (void)
++{
++ void *h = dlopen ("$ORIGIN/unload8mod2.so", RTLD_LAZY);
++ if (h == NULL)
++ {
++ puts ("dlopen unload8mod2.so failed");
++ exit (1);
++ }
++
++ atexit (mod3_fini);
++}
+--
+1.7.3.4
+
diff --git a/multilib/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch b/multilib/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
new file mode 100644
index 000000000..ef91116e5
--- /dev/null
+++ b/multilib/lib32-glibc/glibc-2.14-avoid-assertion-on-empty-dns-answer.patch
@@ -0,0 +1,26 @@
+From 032c0ee3ee28841d684950e33a77210118697566 Mon Sep 17 00:00:00 2001
+From: Andreas Schwab <schwab@redhat.com>
+Date: Thu, 1 Sep 2011 10:46:14 +0200
+Subject: [PATCH] Avoid assertion failure when first DNS answer was empty
+
+---
+ ChangeLog | 4 ++++
+ resolv/res_query.c | 2 +-
+ 2 files changed, 5 insertions(+), 1 deletions(-)
+
+diff --git a/resolv/res_query.c b/resolv/res_query.c
+index 2f7cfaa..2ded9fb 100644
+--- a/resolv/res_query.c
++++ b/resolv/res_query.c
+@@ -248,7 +248,7 @@ __libc_res_nquery(res_state statp,
+ && *resplen2 > (int) sizeof (HEADER))
+ {
+ /* Special case of partial answer. */
+- assert (hp != hp2);
++ assert (n == 0 || hp != hp2);
+ hp = hp2;
+ }
+ else if (answerp2 != NULL && *resplen2 < (int) sizeof (HEADER)
+--
+1.7.3.4
+