This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch gentoo/2.25 created. glibc-2.25-5-g09385d5


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU C Library master sources".

The branch, gentoo/2.25 has been created
        at  09385d5912306ccf444d4532520d339774fea48a (commit)

- Log -----------------------------------------------------------------
http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=09385d5912306ccf444d4532520d339774fea48a

commit 09385d5912306ccf444d4532520d339774fea48a
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Tue Dec 29 17:54:31 2015 -0500

    sys/types.h: drop sys/sysmacros.h include
    
    We want to break apart this include path due to namespace pollution.
    https://sourceware.org/ml/libc-alpha/2015-11/msg00253.html

diff --git a/posix/sys/types.h b/posix/sys/types.h
index b3a27c5..788364a 100644
--- a/posix/sys/types.h
+++ b/posix/sys/types.h
@@ -216,15 +216,6 @@ typedef int register_t __attribute__ ((__mode__ (__word__)));
 
 /* It also defines `fd_set' and the FD_* macros for `select'.  */
 # include <sys/select.h>
-
-/* BSD defines `major', `minor', and `makedev' in this header.
-   However, these symbols are likely to collide with user code, so we are
-   going to stop defining them here in an upcoming release.  Code that needs
-   these macros should include <sys/sysmacros.h> directly.  Code that does
-   not need these macros should #undef them after including this header.  */
-# define __SYSMACROS_DEPRECATED_INCLUSION
-# include <sys/sysmacros.h>
-# undef __SYSMACROS_DEPRECATED_INCLUSION
 #endif /* Use misc.  */
 
 

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=66b2d94a1b8e684927094e21f4d4bc0b54302355

commit 66b2d94a1b8e684927094e21f4d4bc0b54302355
Author: Stephanie J. Lockwood-Childs <wormo@gentoo.org>
Date:   Tue Mar 13 01:57:21 2007 -0400

    gentoo: support running tests under sandbox
    
    when glibc runs its tests, it does so by invoking the local library loader.
    in Gentoo, we build/run inside of our "sandbox" which itself is linked against
    libdl (so that it can load libraries and pull out symbols).  the trouble
    is that when you upgrade from an older glibc to the new one, often times
    internal symbols change name or abi.  this is normally OK as you cannot use
    libc.so from say version 2.3.6 but libpthread.so from say version 2.5, so
    we always say "keep all of the glibc libraries from the same build".  but
    when glibc runs its tests, it uses dynamic paths to point to its new local
    copies of libraries.  if the test doesnt use libdl, then glibc doesnt add
    its path, and when sandbox triggers the loading of libdl, glibc does so
    from the host system system.  this gets us into the case of all libraries
    are from the locally compiled version of glibc except for libdl.so.
    
    http://bugs.gentoo.org/56898

diff --git a/Makeconfig b/Makeconfig
index 97a15b5..d944cd5 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -692,7 +692,7 @@ comma = ,
 sysdep-library-path = \
 $(subst $(empty) ,:,$(strip $(patsubst -Wl$(comma)-rpath-link=%, %,\
 				       $(filter -Wl$(comma)-rpath-link=%,\
-						$(sysdep-LDFLAGS)))))
+						$(sysdep-LDFLAGS)))) $(common-objpfx)/dlfcn)
 # $(run-via-rtld-prefix) is a command that, when prepended to the name
 # of a program built with the newly built library, produces a command
 # that, executed on the host for which the library is built, runs that
diff --git a/iconvdata/run-iconv-test.sh b/iconvdata/run-iconv-test.sh
index 226a2e2..13b45f9 100755
--- a/iconvdata/run-iconv-test.sh
+++ b/iconvdata/run-iconv-test.sh
@@ -31,7 +31,7 @@ temp2=$codir/iconvdata/iconv-test.yyy
 trap "rm -f $temp1 $temp2" 1 2 3 15
 
 # We have to have some directories in the library path.
-LIBPATH=$codir:$codir/iconvdata
+LIBPATH=$codir:$codir/iconvdata:$codir/dlfcn
 
 # How the start the iconv(1) program.
 ICONV='$codir/elf/ld.so --library-path $LIBPATH --inhibit-rpath ${from}.so \
diff --git a/nptl/tst-tls6.sh b/nptl/tst-tls6.sh
index fde169f..a052568 100755
--- a/nptl/tst-tls6.sh
+++ b/nptl/tst-tls6.sh
@@ -26,7 +26,7 @@ run_program_env=$1; shift
 logfile=$common_objpfx/nptl/tst-tls6.out
 
 # We have to find libc and nptl
-library_path=${common_objpfx}:${common_objpfx}nptl
+library_path=${common_objpfx}:${common_objpfx}nptl:${common_objpfx}/dlfcn
 tst_tls5="${test_via_rtld_prefix} ${common_objpfx}/nptl/tst-tls5"
 
 > $logfile

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=2f8847901012150c74678d74e7723472edc3bcd1

commit 2f8847901012150c74678d74e7723472edc3bcd1
Author: Carlos O'Donell <codonell@redhat.com>
Date:   Tue Jan 8 11:47:12 2013 -0500

    rtld: do not ignore arch-specific CFLAGS
    
    https://bugs.gentoo.org/452184
    http://sourceware.org/bugzilla/show_bug.cgi?id=15005
    http://sourceware.org/ml/libc-alpha/2013-01/msg00247.html

diff --git a/elf/Makefile b/elf/Makefile
index 61abeb5..1d27a88 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -543,7 +543,7 @@ CFLAGS-ldconfig.c = $(SYSCONF-FLAGS) -D'LIBDIR="$(libdir)"' \
 libof-ldconfig = ldconfig
 CFLAGS-dl-cache.c = $(SYSCONF-FLAGS)
 CFLAGS-cache.c = $(SYSCONF-FLAGS)
-CFLAGS-rtld.c = $(SYSCONF-FLAGS)
+CFLAGS-rtld.c += $(SYSCONF-FLAGS)
 
 cpp-srcs-left := $(all-rtld-routines:=.os)
 lib := rtld

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=fedd527e768b6b90c087d19268f41e7709e527a4

commit fedd527e768b6b90c087d19268f41e7709e527a4
Author: Thorsten Kukuk <kukuk@suse.de>
Date:   Wed Sep 15 21:17:10 2004 +0200

    reload /etc/resolv.conf when it has changed
    
    if /etc/resolv.conf is updated, then make sure applications
    already running get the updated information.
    
    https://bugs.gentoo.org/177416
    https://sourceware.org/bugzilla/show_bug.cgi?id=984
    https://sourceware.org/ml/libc-alpha/2004-09/msg00130.html
    https://sourceware.org/ml/libc-alpha/2016-12/msg00023.html
    https://build.opensuse.org/package/view_file/openSUSE:Factory/glibc/glibc-resolv-reload.diff?expand=1

diff --git a/resolv/res_libc.c b/resolv/res_libc.c
index a4b376f..2d9b026 100644
--- a/resolv/res_libc.c
+++ b/resolv/res_libc.c
@@ -25,6 +25,7 @@
 #include <arpa/nameser.h>
 #include <resolv.h>
 #include <libc-lock.h>
+#include <sys/stat.h>
 
 extern unsigned long long int __res_initstamp attribute_hidden;
 /* We have atomic increment operations on 64-bit platforms.  */
@@ -87,12 +88,34 @@ res_init(void) {
 	return (__res_vinit(&_res, 1));
 }
 
+static time_t resconf_mtime;
+__libc_lock_define_initialized (static, resconf_mtime_lock);
+
+/* Check if the modification time of resolv.conf has changed.
+   If so, have all threads re-initialize their resolver states */
+static void
+__res_check_resconf (void)
+{
+	struct stat statbuf;
+	if (stat (_PATH_RESCONF, &statbuf) == 0) {
+		__libc_lock_lock (resconf_mtime_lock);
+		if (statbuf.st_mtime != resconf_mtime) {
+			resconf_mtime = statbuf.st_mtime;
+			atomicinclock (lock);
+			atomicinc (__res_initstamp);
+			atomicincunlock (lock);
+		}
+		__libc_lock_unlock (resconf_mtime_lock);
+	}
+}
+
 /* Initialize resp if RES_INIT is not yet set or if res_init in some other
    thread requested re-initializing.  */
 int
 __res_maybe_init (res_state resp, int preinit)
 {
 	if (resp->options & RES_INIT) {
+		__res_check_resconf ();
 		if (__res_initstamp != resp->_u._ext.initstamp) {
 			if (resp->nscount > 0)
 				__res_iclose (resp, true);

http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=1eff1226630034286c3ae5fa1376eb76211690df

commit 1eff1226630034286c3ae5fa1376eb76211690df
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Wed Apr 1 02:15:48 2009 -0400

    disable ldconfig during install
    
    Do not bother running ldconfig on DESTDIR.  It's a waste of time as we
    won't use the result (portage will rebuild the cache after install).
    Also, the Gentoo sandbox does not currently catch chroot() behavior so
    we end up (incorrectly) flagging it as a violation as a write to /etc.
    
    http://sourceware.org/ml/libc-alpha/2012-08/msg00118.html
    https://bugs.gentoo.org/431038

diff --git a/Makefile b/Makefile
index 425cb79..bf44b04 100644
--- a/Makefile
+++ b/Makefile
@@ -107,6 +107,7 @@ install-symbolic-link: subdir_install
 	rm -f $(symbolic-link-list)
 
 install:
+dont-bother-with-destdir:
 	-test ! -x $(elf-objpfx)ldconfig || LC_ALL=C \
 	  $(elf-objpfx)ldconfig $(addprefix -r ,$(install_root)) \
 				$(slibdir) $(libdir)

-----------------------------------------------------------------------


hooks/post-receive
-- 
GNU C Library master sources


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]