[packages/fakeroot] hide debug errors with glibc 2.24

glen glen at pld-linux.org
Mon Oct 10 15:57:42 CEST 2016


commit 6bc5834bb84492fa1afa6a81ab78e5961d77243a
Author: Elan Ruusamäe <glen at delfi.ee>
Date:   Mon Oct 10 16:56:46 2016 +0300

    hide debug errors with glibc 2.24
    
    dlsym(acl_get_fd): /usr/lib64/libfakeroot/libfakeroot.so: undefined symbol: acl_get_fd
    dlsym(acl_get_file): /usr/lib64/libfakeroot/libfakeroot.so: undefined symbol: acl_get_file
    dlsym(acl_set_fd): /usr/lib64/libfakeroot/libfakeroot.so: undefined symbol: acl_set_fd
    
    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=830912
    https://bugs.archlinux.org/task/49278

 fakeroot.spec          |  4 +++-
 hide-dlsym-error.patch | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 56 insertions(+), 1 deletion(-)
---
diff --git a/fakeroot.spec b/fakeroot.spec
index 00bb56e..bfbbb53 100644
--- a/fakeroot.spec
+++ b/fakeroot.spec
@@ -6,11 +6,12 @@ Summary(pl.UTF-8):	"Podrobione" środowiska roota
 Summary(pt_BR.UTF-8):	Cria um falso ambiente de root
 Name:		fakeroot
 Version:	1.21
-Release:	1
+Release:	2
 License:	GPL v3+
 Group:		Development/Tools
 Source0:	ftp://ftp.debian.org/debian/pool/main/f/fakeroot/%{name}_%{version}.orig.tar.gz
 # Source0-md5:	be5c9a0e516869fca4a6758105968e5a
+Patch0:		hide-dlsym-error.patch
 URL:		http://fakeroot.alioth.debian.org/
 BuildRequires:	acl-devel
 BuildRequires:	autoconf >= 2.61
@@ -60,6 +61,7 @@ stat e outros, criando um falso ambiente de root.
 
 %prep
 %setup -q
+%patch0 -p1
 
 %build
 %{__libtoolize}
diff --git a/hide-dlsym-error.patch b/hide-dlsym-error.patch
new file mode 100644
index 0000000..6668159
--- /dev/null
+++ b/hide-dlsym-error.patch
@@ -0,0 +1,53 @@
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=830912
+
+Package: fakeroot
+Version: 1.21-1
+Followup-For: Bug #830912
+User: ubuntu-devel at lists.ubuntu.com
+Usertags: origin-ubuntu yakkety ubuntu-patch
+
+In Ubuntu, the attached patch was applied to achieve the following:
+
+Hide the warnings, at least for now. This should bring us back to glibc 2.23
+state, AFAICT.
+
+  * Add hide-dlsym-error.patch to hide the errors from dlsym() unless
+    debugging was enabled. This makes builds less noisy and fixes failures
+    in APT test suite with glibc 2.24, which started reporting errors for
+    dlsym()
+
+
+Thanks for considering the patch.
+
+Description: Hide error from dlsym()
+ dlsym(), starting in glibc 2.24 actually reports errors. In our case,
+ we try to get ACL functions which are not in the glibc. This causes
+ failures in test suites, so hide those messages for non-debugging
+ purposes for now. It also makes the build logs annoying to read.
+Author: Julian Andres Klode <juliank at ubuntu.com>
+Origin: vendor
+Bug-Debian: <a href="https://bugs.debian.org/830912">https://bugs.debian.org/830912</a>
+Forwarded: no
+Last-Update: 2016-08-12
+
+--- a/libfakeroot.c
++++ b/libfakeroot.c
+@@ -256,10 +256,16 @@ void load_library_symbols(void){
+  /* clear dlerror() just in case dlsym() legitimately returns NULL */
+     msg = dlerror();
+     *(next_wrap[i].doit)=dlsym(get_libc(), next_wrap[i].name);
++
+     if ( (msg = dlerror()) != NULL){
+-      fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg);
+-/*    abort ();*/
++#ifdef LIBFAKEROOT_DEBUGGING
++      if (fakeroot_debug) {
++        fprintf (stderr, "dlsym(%s): %s\n", next_wrap[i].name, msg);
++/*      abort ();*/
++      }
++#endif
+     }
++
+   }
+ }
+ 
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/fakeroot.git/commitdiff/6bc5834bb84492fa1afa6a81ab78e5961d77243a



More information about the pld-cvs-commit mailing list