forked from pool/glibc
Accepting request 533414 from home:Andreas_Schwab:Factory
- nscd-libnsl.patch: Remove reference to libnsl from nscd (bsc#1062244) - Drop glibc-obsolete - glibc-2.3.90-noversion.diff: remove - reinitialize-dl_load_write_lock.patch: remove OBS-URL: https://build.opensuse.org/request/show/533414 OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=482
This commit is contained in:
parent
8307972d09
commit
787f325423
@ -1,57 +0,0 @@
|
||||
Index: glibc-2.20/elf/rtld.c
|
||||
===================================================================
|
||||
--- glibc-2.20.orig/elf/rtld.c
|
||||
+++ glibc-2.20/elf/rtld.c
|
||||
@@ -1591,6 +1591,52 @@ ERROR: ld.so: object '%s' cannot be load
|
||||
}
|
||||
}
|
||||
|
||||
+#if defined(__i386__)
|
||||
+ /*
|
||||
+ * Modifications by Red Hat Software
|
||||
+ *
|
||||
+ * Deal with the broken binaries from the non-versioned ages of glibc.
|
||||
+ * If a binary does not have version information enabled, we assume that
|
||||
+ * it is a glibc 2.0 binary and we load a compatibility library to try to
|
||||
+ * overcome binary incompatibilities.
|
||||
+ * Blame: gafton@redhat.com
|
||||
+ */
|
||||
+#define LIB_NOVERSION "/lib/obsolete/noversion/libNoVersion.so.1"
|
||||
+
|
||||
+ if (__glibc_unlikely (main_map->l_info[DT_NUM + DT_THISPROCNUM
|
||||
+ + DT_VERSIONTAGIDX (DT_VERNEED)]
|
||||
+ == NULL)
|
||||
+ && (main_map->l_info[DT_DEBUG] != 0
|
||||
+ || !(GLRO(dl_debug_mask) & DL_DEBUG_PRELINK)))
|
||||
+ {
|
||||
+ struct stat64 test_st;
|
||||
+ int test_fd;
|
||||
+ bool can_load;
|
||||
+
|
||||
+ HP_TIMING_NOW (start);
|
||||
+
|
||||
+ can_load = true;
|
||||
+ test_fd = __open (LIB_NOVERSION, O_RDONLY);
|
||||
+ if (test_fd < 0)
|
||||
+ can_load = false;
|
||||
+ else
|
||||
+ {
|
||||
+ if (__fxstat64 (_STAT_VER, test_fd, &test_st) < 0
|
||||
+ || test_st.st_size == 0)
|
||||
+ can_load = false;
|
||||
+ __close(test_fd);
|
||||
+ }
|
||||
+
|
||||
+ if (can_load)
|
||||
+ npreloads += do_preload (LIB_NOVERSION, main_map,
|
||||
+ "nonversioned binary");
|
||||
+
|
||||
+ HP_TIMING_NOW (stop);
|
||||
+ HP_TIMING_DIFF (diff, start, stop);
|
||||
+ HP_TIMING_ACCUM_NT (load_time, diff);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
if (__glibc_unlikely (*first_preload != NULL))
|
||||
{
|
||||
/* Set up PRELOADS with a vector of the preloaded libraries. */
|
@ -1,3 +1,15 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 10 15:47:05 UTC 2017 - schwab@suse.de
|
||||
|
||||
- nscd-libnsl.patch: Remove reference to libnsl from nscd (bsc#1062244)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 9 08:03:28 UTC 2017 - schwab@suse.de
|
||||
|
||||
- Drop glibc-obsolete
|
||||
- glibc-2.3.90-noversion.diff: remove
|
||||
- reinitialize-dl_load_write_lock.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 4 12:14:30 UTC 2017 - schwab@suse.de
|
||||
|
||||
|
@ -231,8 +231,6 @@ Patch8: glibc-nscd.conf.patch
|
||||
Patch9: glibc-nodate.patch
|
||||
# PATCH-FIX-OPENSUSE -- add some extra information to version output - kukuk@suse.de
|
||||
Patch10: glibc-version.diff
|
||||
# PATCH-FIX-OPENSUSE handle old glibc binaries
|
||||
Patch12: glibc-2.3.90-noversion.diff
|
||||
# PATCH-FIX-OPENSUSE -- Make --no-archive default for localedef - kukuk@suse.de
|
||||
Patch13: glibc-2.3.2.no_archive.diff
|
||||
# PATCH-FIX-OPENSUSE -- add blacklist for bindresvport
|
||||
@ -295,6 +293,8 @@ Patch1010: dynarray-allocation.patch
|
||||
Patch1011: nearbyint-inexact.patch
|
||||
# PATCH-FIX-UPSTREAM Move nss_compat from nis to nss subdir and install it unconditionally
|
||||
Patch1012: nss-compat.patch
|
||||
# PATCH-FIX-UPSTREAM Remove reference to libnsl from nscd
|
||||
Patch1013: nscd-libnsl.patch
|
||||
|
||||
###
|
||||
# Patches awaiting upstream approval
|
||||
@ -311,8 +311,6 @@ Patch2004: fnmatch-collating-elements.patch
|
||||
Patch2005: nss-files-long-lines-2.patch
|
||||
# PATCH-FIX-UPSTREAM Fix iconv buffer handling with IGNORE error handler (BZ #18830)
|
||||
Patch2006: iconv-reset-input-buffer.patch
|
||||
# PATCH-FIX-UPSTREAM Reinitialize dl_load_write_lock on fork (BZ #19282)
|
||||
Patch2008: reinitialize-dl_load_write_lock.patch
|
||||
|
||||
# Non-glibc patches
|
||||
# PATCH-FIX-OPENSUSE Remove debianisms from manpages
|
||||
@ -467,22 +465,6 @@ are not essential but recommend to use.
|
||||
|
||||
makedb: A program to create a database for nss
|
||||
|
||||
%package obsolete
|
||||
Summary: Obsolete Shared Libraries from the GNU C Library
|
||||
License: LGPL-2.0+
|
||||
Group: System/Libraries
|
||||
Requires: glibc = %{version}
|
||||
|
||||
%description obsolete
|
||||
This package provides some old libraries from the GNU C Library which
|
||||
are no longer supported. Additional it provides a compatibility library
|
||||
for old binaries linked against glibc 2.0.
|
||||
|
||||
Install this package if you need one of this libraries to get old
|
||||
binaries working, but since this libraries are not supported and there
|
||||
is no gurantee that they work for you, you should try to get newer
|
||||
versions of your software.
|
||||
|
||||
%prep
|
||||
%setup -n glibc-%{version} -q -a 3 -a 4
|
||||
# Owl crypt_blowfish
|
||||
@ -507,7 +489,6 @@ touch -r nscd/nscd_stat.c nscd/s-stamp
|
||||
touch -r nscd/s-stamp nscd/nscd_stat.c
|
||||
rm nscd/s-stamp
|
||||
%patch10 -p1
|
||||
%patch12 -p1
|
||||
%patch13 -p1
|
||||
%patch14 -p1
|
||||
%patch15 -p1
|
||||
@ -537,6 +518,7 @@ rm nscd/s-stamp
|
||||
%patch1010 -p1
|
||||
%patch1011 -p1
|
||||
%patch1012 -p1
|
||||
%patch1013 -p1
|
||||
|
||||
%patch2000 -p1
|
||||
%patch2001 -p1
|
||||
@ -544,7 +526,6 @@ rm nscd/s-stamp
|
||||
%patch2004 -p1
|
||||
%patch2005 -p1
|
||||
%patch2006 -p1
|
||||
%patch2008 -p1
|
||||
|
||||
%patch3000
|
||||
|
||||
@ -646,9 +627,6 @@ add_ons=libidn
|
||||
%if %{disable_assert}
|
||||
BuildFlags="$BuildFlags -DNDEBUG=1"
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
add_ons=$add_ons,noversion
|
||||
%endif
|
||||
%ifarch mipsel
|
||||
# fails to build otherwise - need to recheck and fix
|
||||
%define enable_stackguard_randomization 0
|
||||
@ -931,12 +909,6 @@ cc-base/elf/ldconfig -vn $destdir
|
||||
# Create file list for glibc-locale package
|
||||
%{find_lang} libc
|
||||
|
||||
# Prepare obsolete/, used only on some architectures:
|
||||
export RPM_BUILD_ROOT
|
||||
%ifarch i586
|
||||
mkdir -p %{buildroot}/%{_lib}/obsolete
|
||||
%endif
|
||||
|
||||
# remove nsl compat library
|
||||
rm -f %{buildroot}%{_libdir}/libnsl*
|
||||
# part of libnsl-devel
|
||||
@ -1002,17 +974,6 @@ mkdir -p %{buildroot}/var/cache/ldconfig
|
||||
rm -f %{buildroot}/etc/ld.so.cache
|
||||
touch %{buildroot}/etc/ld.so.cache
|
||||
|
||||
# libNoVersion belongs only to glibc-obsolete:
|
||||
%ifarch %ix86
|
||||
rm -f %{buildroot}%{_libdir}/libNoVersion*
|
||||
%ifarch i586
|
||||
mkdir -p %{buildroot}/%{_lib}/obsolete/noversion
|
||||
mv -v %{buildroot}/%{_lib}/libNoVersion* %{buildroot}/%{_lib}/obsolete/noversion/
|
||||
%else
|
||||
rm -f %{buildroot}/%{_lib}/libNoVersion*
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# Don't look at ldd! We don't wish a /bin/sh requires
|
||||
chmod 644 %{buildroot}%{_bindir}/ldd
|
||||
|
||||
@ -1286,12 +1247,6 @@ exit 0
|
||||
%{_sbindir}/glibc_post_upgrade
|
||||
%{_sbindir}/iconvconfig
|
||||
|
||||
%ifarch i586
|
||||
%files obsolete
|
||||
%defattr (755,root,root,755)
|
||||
/%{_lib}/obsolete
|
||||
%endif
|
||||
|
||||
%files locale -f libc.lang
|
||||
%defattr(-,root,root)
|
||||
%{_datadir}/locale/locale.alias
|
||||
|
@ -1,3 +1,15 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 10 15:47:05 UTC 2017 - schwab@suse.de
|
||||
|
||||
- nscd-libnsl.patch: Remove reference to libnsl from nscd (bsc#1062244)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 9 08:03:28 UTC 2017 - schwab@suse.de
|
||||
|
||||
- Drop glibc-obsolete
|
||||
- glibc-2.3.90-noversion.diff: remove
|
||||
- reinitialize-dl_load_write_lock.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 4 12:14:30 UTC 2017 - schwab@suse.de
|
||||
|
||||
|
@ -231,8 +231,6 @@ Patch8: glibc-nscd.conf.patch
|
||||
Patch9: glibc-nodate.patch
|
||||
# PATCH-FIX-OPENSUSE -- add some extra information to version output - kukuk@suse.de
|
||||
Patch10: glibc-version.diff
|
||||
# PATCH-FIX-OPENSUSE handle old glibc binaries
|
||||
Patch12: glibc-2.3.90-noversion.diff
|
||||
# PATCH-FIX-OPENSUSE -- Make --no-archive default for localedef - kukuk@suse.de
|
||||
Patch13: glibc-2.3.2.no_archive.diff
|
||||
# PATCH-FIX-OPENSUSE -- add blacklist for bindresvport
|
||||
@ -295,6 +293,8 @@ Patch1010: dynarray-allocation.patch
|
||||
Patch1011: nearbyint-inexact.patch
|
||||
# PATCH-FIX-UPSTREAM Move nss_compat from nis to nss subdir and install it unconditionally
|
||||
Patch1012: nss-compat.patch
|
||||
# PATCH-FIX-UPSTREAM Remove reference to libnsl from nscd
|
||||
Patch1013: nscd-libnsl.patch
|
||||
|
||||
###
|
||||
# Patches awaiting upstream approval
|
||||
@ -311,8 +311,6 @@ Patch2004: fnmatch-collating-elements.patch
|
||||
Patch2005: nss-files-long-lines-2.patch
|
||||
# PATCH-FIX-UPSTREAM Fix iconv buffer handling with IGNORE error handler (BZ #18830)
|
||||
Patch2006: iconv-reset-input-buffer.patch
|
||||
# PATCH-FIX-UPSTREAM Reinitialize dl_load_write_lock on fork (BZ #19282)
|
||||
Patch2008: reinitialize-dl_load_write_lock.patch
|
||||
|
||||
# Non-glibc patches
|
||||
# PATCH-FIX-OPENSUSE Remove debianisms from manpages
|
||||
@ -467,22 +465,6 @@ are not essential but recommend to use.
|
||||
|
||||
makedb: A program to create a database for nss
|
||||
|
||||
%package obsolete
|
||||
Summary: Obsolete Shared Libraries from the GNU C Library
|
||||
License: LGPL-2.0+
|
||||
Group: System/Libraries
|
||||
Requires: glibc = %{version}
|
||||
|
||||
%description obsolete
|
||||
This package provides some old libraries from the GNU C Library which
|
||||
are no longer supported. Additional it provides a compatibility library
|
||||
for old binaries linked against glibc 2.0.
|
||||
|
||||
Install this package if you need one of this libraries to get old
|
||||
binaries working, but since this libraries are not supported and there
|
||||
is no gurantee that they work for you, you should try to get newer
|
||||
versions of your software.
|
||||
|
||||
%prep
|
||||
%setup -n glibc-%{version} -q -a 3 -a 4
|
||||
# Owl crypt_blowfish
|
||||
@ -507,7 +489,6 @@ touch -r nscd/nscd_stat.c nscd/s-stamp
|
||||
touch -r nscd/s-stamp nscd/nscd_stat.c
|
||||
rm nscd/s-stamp
|
||||
%patch10 -p1
|
||||
%patch12 -p1
|
||||
%patch13 -p1
|
||||
%patch14 -p1
|
||||
%patch15 -p1
|
||||
@ -537,6 +518,7 @@ rm nscd/s-stamp
|
||||
%patch1010 -p1
|
||||
%patch1011 -p1
|
||||
%patch1012 -p1
|
||||
%patch1013 -p1
|
||||
|
||||
%patch2000 -p1
|
||||
%patch2001 -p1
|
||||
@ -544,7 +526,6 @@ rm nscd/s-stamp
|
||||
%patch2004 -p1
|
||||
%patch2005 -p1
|
||||
%patch2006 -p1
|
||||
%patch2008 -p1
|
||||
|
||||
%patch3000
|
||||
|
||||
@ -646,9 +627,6 @@ add_ons=libidn
|
||||
%if %{disable_assert}
|
||||
BuildFlags="$BuildFlags -DNDEBUG=1"
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
add_ons=$add_ons,noversion
|
||||
%endif
|
||||
%ifarch mipsel
|
||||
# fails to build otherwise - need to recheck and fix
|
||||
%define enable_stackguard_randomization 0
|
||||
@ -931,12 +909,6 @@ cc-base/elf/ldconfig -vn $destdir
|
||||
# Create file list for glibc-locale package
|
||||
%{find_lang} libc
|
||||
|
||||
# Prepare obsolete/, used only on some architectures:
|
||||
export RPM_BUILD_ROOT
|
||||
%ifarch i586
|
||||
mkdir -p %{buildroot}/%{_lib}/obsolete
|
||||
%endif
|
||||
|
||||
# remove nsl compat library
|
||||
rm -f %{buildroot}%{_libdir}/libnsl*
|
||||
# part of libnsl-devel
|
||||
@ -1002,17 +974,6 @@ mkdir -p %{buildroot}/var/cache/ldconfig
|
||||
rm -f %{buildroot}/etc/ld.so.cache
|
||||
touch %{buildroot}/etc/ld.so.cache
|
||||
|
||||
# libNoVersion belongs only to glibc-obsolete:
|
||||
%ifarch %ix86
|
||||
rm -f %{buildroot}%{_libdir}/libNoVersion*
|
||||
%ifarch i586
|
||||
mkdir -p %{buildroot}/%{_lib}/obsolete/noversion
|
||||
mv -v %{buildroot}/%{_lib}/libNoVersion* %{buildroot}/%{_lib}/obsolete/noversion/
|
||||
%else
|
||||
rm -f %{buildroot}/%{_lib}/libNoVersion*
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# Don't look at ldd! We don't wish a /bin/sh requires
|
||||
chmod 644 %{buildroot}%{_bindir}/ldd
|
||||
|
||||
@ -1286,12 +1247,6 @@ exit 0
|
||||
%{_sbindir}/glibc_post_upgrade
|
||||
%{_sbindir}/iconvconfig
|
||||
|
||||
%ifarch i586
|
||||
%files obsolete
|
||||
%defattr (755,root,root,755)
|
||||
/%{_lib}/obsolete
|
||||
%endif
|
||||
|
||||
%files locale -f libc.lang
|
||||
%defattr(-,root,root)
|
||||
%{_datadir}/locale/locale.alias
|
||||
|
@ -1,3 +1,15 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 10 15:47:05 UTC 2017 - schwab@suse.de
|
||||
|
||||
- nscd-libnsl.patch: Remove reference to libnsl from nscd (bsc#1062244)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Oct 9 08:03:28 UTC 2017 - schwab@suse.de
|
||||
|
||||
- Drop glibc-obsolete
|
||||
- glibc-2.3.90-noversion.diff: remove
|
||||
- reinitialize-dl_load_write_lock.patch: remove
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 4 12:14:30 UTC 2017 - schwab@suse.de
|
||||
|
||||
|
51
glibc.spec
51
glibc.spec
@ -237,8 +237,6 @@ Patch8: glibc-nscd.conf.patch
|
||||
Patch9: glibc-nodate.patch
|
||||
# PATCH-FIX-OPENSUSE -- add some extra information to version output - kukuk@suse.de
|
||||
Patch10: glibc-version.diff
|
||||
# PATCH-FIX-OPENSUSE handle old glibc binaries
|
||||
Patch12: glibc-2.3.90-noversion.diff
|
||||
# PATCH-FIX-OPENSUSE -- Make --no-archive default for localedef - kukuk@suse.de
|
||||
Patch13: glibc-2.3.2.no_archive.diff
|
||||
# PATCH-FIX-OPENSUSE -- add blacklist for bindresvport
|
||||
@ -301,6 +299,8 @@ Patch1010: dynarray-allocation.patch
|
||||
Patch1011: nearbyint-inexact.patch
|
||||
# PATCH-FIX-UPSTREAM Move nss_compat from nis to nss subdir and install it unconditionally
|
||||
Patch1012: nss-compat.patch
|
||||
# PATCH-FIX-UPSTREAM Remove reference to libnsl from nscd
|
||||
Patch1013: nscd-libnsl.patch
|
||||
|
||||
###
|
||||
# Patches awaiting upstream approval
|
||||
@ -317,8 +317,6 @@ Patch2004: fnmatch-collating-elements.patch
|
||||
Patch2005: nss-files-long-lines-2.patch
|
||||
# PATCH-FIX-UPSTREAM Fix iconv buffer handling with IGNORE error handler (BZ #18830)
|
||||
Patch2006: iconv-reset-input-buffer.patch
|
||||
# PATCH-FIX-UPSTREAM Reinitialize dl_load_write_lock on fork (BZ #19282)
|
||||
Patch2008: reinitialize-dl_load_write_lock.patch
|
||||
|
||||
# Non-glibc patches
|
||||
# PATCH-FIX-OPENSUSE Remove debianisms from manpages
|
||||
@ -473,22 +471,6 @@ are not essential but recommend to use.
|
||||
|
||||
makedb: A program to create a database for nss
|
||||
|
||||
%package obsolete
|
||||
Summary: Obsolete Shared Libraries from the GNU C Library
|
||||
License: LGPL-2.0+
|
||||
Group: System/Libraries
|
||||
Requires: glibc = %{version}
|
||||
|
||||
%description obsolete
|
||||
This package provides some old libraries from the GNU C Library which
|
||||
are no longer supported. Additional it provides a compatibility library
|
||||
for old binaries linked against glibc 2.0.
|
||||
|
||||
Install this package if you need one of this libraries to get old
|
||||
binaries working, but since this libraries are not supported and there
|
||||
is no gurantee that they work for you, you should try to get newer
|
||||
versions of your software.
|
||||
|
||||
%prep
|
||||
%setup -n glibc-%{version} -q -a 3 -a 4
|
||||
# Owl crypt_blowfish
|
||||
@ -513,7 +495,6 @@ touch -r nscd/nscd_stat.c nscd/s-stamp
|
||||
touch -r nscd/s-stamp nscd/nscd_stat.c
|
||||
rm nscd/s-stamp
|
||||
%patch10 -p1
|
||||
%patch12 -p1
|
||||
%patch13 -p1
|
||||
%patch14 -p1
|
||||
%patch15 -p1
|
||||
@ -543,6 +524,7 @@ rm nscd/s-stamp
|
||||
%patch1010 -p1
|
||||
%patch1011 -p1
|
||||
%patch1012 -p1
|
||||
%patch1013 -p1
|
||||
|
||||
%patch2000 -p1
|
||||
%patch2001 -p1
|
||||
@ -550,7 +532,6 @@ rm nscd/s-stamp
|
||||
%patch2004 -p1
|
||||
%patch2005 -p1
|
||||
%patch2006 -p1
|
||||
%patch2008 -p1
|
||||
|
||||
%patch3000
|
||||
|
||||
@ -652,9 +633,6 @@ add_ons=libidn
|
||||
%if %{disable_assert}
|
||||
BuildFlags="$BuildFlags -DNDEBUG=1"
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
add_ons=$add_ons,noversion
|
||||
%endif
|
||||
%ifarch mipsel
|
||||
# fails to build otherwise - need to recheck and fix
|
||||
%define enable_stackguard_randomization 0
|
||||
@ -937,12 +915,6 @@ cc-base/elf/ldconfig -vn $destdir
|
||||
# Create file list for glibc-locale package
|
||||
%{find_lang} libc
|
||||
|
||||
# Prepare obsolete/, used only on some architectures:
|
||||
export RPM_BUILD_ROOT
|
||||
%ifarch i586
|
||||
mkdir -p %{buildroot}/%{_lib}/obsolete
|
||||
%endif
|
||||
|
||||
# remove nsl compat library
|
||||
rm -f %{buildroot}%{_libdir}/libnsl*
|
||||
# part of libnsl-devel
|
||||
@ -1008,17 +980,6 @@ mkdir -p %{buildroot}/var/cache/ldconfig
|
||||
rm -f %{buildroot}/etc/ld.so.cache
|
||||
touch %{buildroot}/etc/ld.so.cache
|
||||
|
||||
# libNoVersion belongs only to glibc-obsolete:
|
||||
%ifarch %ix86
|
||||
rm -f %{buildroot}%{_libdir}/libNoVersion*
|
||||
%ifarch i586
|
||||
mkdir -p %{buildroot}/%{_lib}/obsolete/noversion
|
||||
mv -v %{buildroot}/%{_lib}/libNoVersion* %{buildroot}/%{_lib}/obsolete/noversion/
|
||||
%else
|
||||
rm -f %{buildroot}/%{_lib}/libNoVersion*
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# Don't look at ldd! We don't wish a /bin/sh requires
|
||||
chmod 644 %{buildroot}%{_bindir}/ldd
|
||||
|
||||
@ -1292,12 +1253,6 @@ exit 0
|
||||
%{_sbindir}/glibc_post_upgrade
|
||||
%{_sbindir}/iconvconfig
|
||||
|
||||
%ifarch i586
|
||||
%files obsolete
|
||||
%defattr (755,root,root,755)
|
||||
/%{_lib}/obsolete
|
||||
%endif
|
||||
|
||||
%files locale -f libc.lang
|
||||
%defattr(-,root,root)
|
||||
%{_datadir}/locale/locale.alias
|
||||
|
180
nscd-libnsl.patch
Normal file
180
nscd-libnsl.patch
Normal file
@ -0,0 +1,180 @@
|
||||
2017-10-11 Andreas Schwab <schwab@suse.de>
|
||||
|
||||
* nis/Makefile (aux): Remove.
|
||||
* nscd/Makefile (aux): Add nscd_hash.
|
||||
(nscd-modules): Likewise.
|
||||
($(objpfx)nscd): Don't depend on libnsl.
|
||||
* nscd/nscd_hash.c: New file.
|
||||
* nscd/nscd_hash.h: Likewise.
|
||||
* nscd/cache.c: Include "nscd_hash.h" instead of <rpcsvc/nis.h>.
|
||||
(cache_search, cache_add): Use __nscd_hash instead of __nis_hash.
|
||||
* nscd/nscd_helper.c: Include <sys/param.h> and "nscd_hash.h"
|
||||
instead of <nis/rpcsvc/nis.h>.
|
||||
(__nscd_cache_search): Use __nscd_hash instead of __nis_hash.
|
||||
|
||||
Index: glibc-2.26/nis/Makefile
|
||||
===================================================================
|
||||
--- glibc-2.26.orig/nis/Makefile
|
||||
+++ glibc-2.26/nis/Makefile
|
||||
@@ -22,8 +22,6 @@ subdir := nis
|
||||
|
||||
include ../Makeconfig
|
||||
|
||||
-aux := nis_hash
|
||||
-
|
||||
ifeq ($(build-obsolete-nsl),yes)
|
||||
headers := $(wildcard rpcsvc/*.[hx])
|
||||
|
||||
Index: glibc-2.26/nscd/Makefile
|
||||
===================================================================
|
||||
--- glibc-2.26.orig/nscd/Makefile
|
||||
+++ glibc-2.26/nscd/Makefile
|
||||
@@ -25,7 +25,7 @@ include ../Makeconfig
|
||||
ifneq ($(use-nscd),no)
|
||||
routines := nscd_getpw_r nscd_getgr_r nscd_gethst_r nscd_getai \
|
||||
nscd_initgroups nscd_getserv_r nscd_netgroup
|
||||
-aux := nscd_helper
|
||||
+aux := nscd_helper nscd_hash
|
||||
endif
|
||||
|
||||
# To find xmalloc.c
|
||||
@@ -36,7 +36,7 @@ nscd-modules := nscd connections pwdcach
|
||||
getsrvbynm_r getsrvbypt_r servicescache \
|
||||
dbg_log nscd_conf nscd_stat cache mem nscd_setup_thread \
|
||||
xmalloc xstrdup aicache initgrcache gai res_hconf \
|
||||
- netgroupcache
|
||||
+ netgroupcache nscd_hash
|
||||
|
||||
ifeq ($(build-nscd)$(have-thread-library),yesyes)
|
||||
|
||||
@@ -97,7 +97,7 @@ include $(patsubst %,$(..)libof-iterator
|
||||
$(objpfx)nscd: $(nscd-modules:%=$(objpfx)%.o)
|
||||
|
||||
ifeq ($(build-shared),yes)
|
||||
-$(objpfx)nscd: $(shared-thread-library) $(common-objpfx)nis/libnsl.so
|
||||
+$(objpfx)nscd: $(shared-thread-library)
|
||||
else
|
||||
-$(objpfx)nscd: $(static-thread-library) $(common-objpfx)nis/libnsl.a
|
||||
+$(objpfx)nscd: $(static-thread-library)
|
||||
endif
|
||||
Index: glibc-2.26/nscd/cache.c
|
||||
===================================================================
|
||||
--- glibc-2.26.orig/nscd/cache.c
|
||||
+++ glibc-2.26/nscd/cache.c
|
||||
@@ -25,7 +25,6 @@
|
||||
#include <string.h>
|
||||
#include <libintl.h>
|
||||
#include <arpa/inet.h>
|
||||
-#include <rpcsvc/nis.h>
|
||||
#include <sys/mman.h>
|
||||
#include <sys/param.h>
|
||||
#include <sys/stat.h>
|
||||
@@ -33,6 +32,7 @@
|
||||
|
||||
#include "nscd.h"
|
||||
#include "dbg_log.h"
|
||||
+#include "nscd_hash.h"
|
||||
|
||||
|
||||
/* Wrapper functions with error checking for standard functions. */
|
||||
@@ -74,7 +74,7 @@ struct datahead *
|
||||
cache_search (request_type type, const void *key, size_t len,
|
||||
struct database_dyn *table, uid_t owner)
|
||||
{
|
||||
- unsigned long int hash = __nis_hash (key, len) % table->head->module;
|
||||
+ unsigned long int hash = __nscd_hash (key, len) % table->head->module;
|
||||
|
||||
unsigned long int nsearched = 0;
|
||||
struct datahead *result = NULL;
|
||||
@@ -153,7 +153,7 @@ cache_add (int type, const void *key, si
|
||||
first ? _(" (first)") : "");
|
||||
}
|
||||
|
||||
- unsigned long int hash = __nis_hash (key, len) % table->head->module;
|
||||
+ unsigned long int hash = __nscd_hash (key, len) % table->head->module;
|
||||
struct hashentry *newp;
|
||||
|
||||
newp = mempool_alloc (table, sizeof (struct hashentry), 0);
|
||||
Index: glibc-2.26/nscd/nscd_hash.c
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ glibc-2.26/nscd/nscd_hash.c
|
||||
@@ -0,0 +1,19 @@
|
||||
+/* Copyright (C) 2017 Free Software Foundation, Inc.
|
||||
+ This file is part of the GNU C Library.
|
||||
+
|
||||
+ The GNU C Library is free software; you can redistribute it and/or
|
||||
+ modify it under the terms of the GNU Lesser General Public
|
||||
+ License as published by the Free Software Foundation; either
|
||||
+ version 2.1 of the License, or (at your option) any later version.
|
||||
+
|
||||
+ The GNU C Library is distributed in the hope that it will be useful,
|
||||
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
+ Lesser General Public License for more details.
|
||||
+
|
||||
+ You should have received a copy of the GNU Lesser General Public
|
||||
+ License along with the GNU C Library; if not, see
|
||||
+ <http://www.gnu.org/licenses/>. */
|
||||
+
|
||||
+#define __nis_hash __nscd_hash
|
||||
+#include <nis/nis_hash.c>
|
||||
Index: glibc-2.26/nscd/nscd_hash.h
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ glibc-2.26/nscd/nscd_hash.h
|
||||
@@ -0,0 +1,21 @@
|
||||
+/* Copyright (C) 2017 Free Software Foundation, Inc.
|
||||
+ This file is part of the GNU C Library.
|
||||
+
|
||||
+ The GNU C Library is free software; you can redistribute it and/or
|
||||
+ modify it under the terms of the GNU Lesser General Public
|
||||
+ License as published by the Free Software Foundation; either
|
||||
+ version 2.1 of the License, or (at your option) any later version.
|
||||
+
|
||||
+ The GNU C Library is distributed in the hope that it will be useful,
|
||||
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
+ Lesser General Public License for more details.
|
||||
+
|
||||
+ You should have received a copy of the GNU Lesser General Public
|
||||
+ License along with the GNU C Library; if not, see
|
||||
+ <http://www.gnu.org/licenses/>. */
|
||||
+
|
||||
+#include <stdint.h>
|
||||
+
|
||||
+extern uint32_t __nscd_hash (const void *__keyarg, size_t __len)
|
||||
+ attribute_hidden;
|
||||
Index: glibc-2.26/nscd/nscd_helper.c
|
||||
===================================================================
|
||||
--- glibc-2.26.orig/nscd/nscd_helper.c
|
||||
+++ glibc-2.26/nscd/nscd_helper.c
|
||||
@@ -27,6 +27,7 @@
|
||||
#include <unistd.h>
|
||||
#include <stdint.h>
|
||||
#include <sys/mman.h>
|
||||
+#include <sys/param.h>
|
||||
#include <sys/poll.h>
|
||||
#include <sys/socket.h>
|
||||
#include <sys/stat.h>
|
||||
@@ -34,10 +35,10 @@
|
||||
#include <sys/uio.h>
|
||||
#include <sys/un.h>
|
||||
#include <not-cancel.h>
|
||||
-#include <nis/rpcsvc/nis.h>
|
||||
#include <kernel-features.h>
|
||||
|
||||
#include "nscd-client.h"
|
||||
+#include "nscd_hash.h"
|
||||
|
||||
|
||||
/* Extra time we wait if the socket is still receiving data. This
|
||||
@@ -451,7 +452,7 @@ struct datahead *
|
||||
__nscd_cache_search (request_type type, const char *key, size_t keylen,
|
||||
const struct mapped_database *mapped, size_t datalen)
|
||||
{
|
||||
- unsigned long int hash = __nis_hash (key, keylen) % mapped->head->module;
|
||||
+ unsigned long int hash = __nscd_hash (key, keylen) % mapped->head->module;
|
||||
size_t datasize = mapped->datasize;
|
||||
|
||||
ref_t trail = mapped->head->array[hash];
|
@ -1,15 +0,0 @@
|
||||
Index: glibc-2.22/sysdeps/nptl/fork.c
|
||||
===================================================================
|
||||
--- glibc-2.22.orig/sysdeps/nptl/fork.c
|
||||
+++ glibc-2.22/sysdeps/nptl/fork.c
|
||||
@@ -174,8 +174,9 @@ __libc_fork (void)
|
||||
_IO_list_resetlock ();
|
||||
}
|
||||
|
||||
- /* Reset the lock the dynamic loader uses to protect its data. */
|
||||
+ /* Reset the locks the dynamic loader uses to protect its data. */
|
||||
__rtld_lock_initialize (GL(dl_load_lock));
|
||||
+ __rtld_lock_initialize (GL(dl_load_write_lock));
|
||||
|
||||
/* Run the handlers registered for the child. */
|
||||
while (allp != NULL)
|
Loading…
Reference in New Issue
Block a user