SHA256
1
0
forked from pool/glibc

Accepting request 74184 from Base:System

Remove prereq on permissions as discussed with Coolo as hot-fix for M2

OBS-URL: https://build.opensuse.org/request/show/74184
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/glibc?expand=0&rev=53
This commit is contained in:
Sascha Peilicke 2011-06-20 11:57:32 +00:00 committed by Git OBS Bridge
commit e7cc239c7e
3 changed files with 162 additions and 3 deletions

View File

@ -0,0 +1,113 @@
2011-06-20 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/i386/bits/sigcontext.h: New file.
============================================================
Index: ./sysdeps/unix/sysv/linux/i386/bits/sigcontext.h
--- ./sysdeps/unix/sysv/linux/i386/bits/sigcontext.h created
+++ ./sysdeps/unix/sysv/linux/i386/bits/sigcontext.h 2011-06-20 12:14:48.528411362 +0200 1.1
@@ -0,0 +1,104 @@
+/* Copyright (C) 2011 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, write to the Free
+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+ 02111-1307 USA. */
+
+#ifndef _BITS_SIGCONTEXT_H
+#define _BITS_SIGCONTEXT_H 1
+
+#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H
+# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
+#endif
+
+struct _fpreg
+{
+ unsigned short significand[4];
+ unsigned short exponent;
+};
+
+struct _fpxreg
+{
+ unsigned short significand[4];
+ unsigned short exponent;
+ unsigned short padding[3];
+};
+
+struct _xmmreg
+{
+ __uint32_t element[4];
+};
+
+
+
+struct _fpstate
+{
+ /* Regular FPU environment. */
+ __uint32_t cw;
+ __uint32_t sw;
+ __uint32_t tag;
+ __uint32_t ipoff;
+ __uint32_t cssel;
+ __uint32_t dataoff;
+ __uint32_t datasel;
+ struct _fpreg _st[8];
+ unsigned short status;
+ unsigned short magic;
+
+ /* FXSR FPU environment. */
+ __uint32_t _fxsr_env[6];
+ __uint32_t mxcsr;
+ __uint32_t reserved;
+ struct _fpxreg _fxsr_st[8];
+ struct _xmmreg _xmm[8];
+ __uint32_t padding[56];
+};
+
+#ifndef sigcontext_struct
+/* Kernel headers before 2.1.1 define a struct sigcontext_struct, but
+ we need sigcontext. Some packages have come to rely on
+ sigcontext_struct being defined on 32-bit x86, so define this for
+ their benefit. */
+# define sigcontext_struct sigcontext
+#endif
+
+struct sigcontext
+{
+ unsigned short gs, __gsh;
+ unsigned short fs, __fsh;
+ unsigned short es, __esh;
+ unsigned short ds, __dsh;
+ unsigned long edi;
+ unsigned long esi;
+ unsigned long ebp;
+ unsigned long esp;
+ unsigned long ebx;
+ unsigned long edx;
+ unsigned long ecx;
+ unsigned long eax;
+ unsigned long trapno;
+ unsigned long err;
+ unsigned long eip;
+ unsigned short cs, __csh;
+ unsigned long eflags;
+ unsigned long esp_at_signal;
+ unsigned short ss, __ssh;
+ struct _fpstate * fpstate;
+ unsigned long oldmask;
+ unsigned long cr2;
+};
+
+
+#endif /* _BITS_SIGCONTEXT_H */

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Mon Jun 20 11:02:01 UTC 2011 - aj@suse.de
- Remove PreReq on permissions to avoid a cycle that gives leads to
an uninstallable system (bnc#700925).
- Fix <bits/sigcontext.h> on x86 - fixes scpm compilation.
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Jun 17 09:50:19 UTC 2011 - aj@suse.de Fri Jun 17 09:50:19 UTC 2011 - aj@suse.de

View File

@ -71,7 +71,7 @@ Obsoletes: glibc-64bit
Obsoletes: glibc-32bit Obsoletes: glibc-32bit
%endif %endif
Version: 2.13 Version: 2.13
Release: 9 Release: 5
Url: http://www.gnu.org/software/libc/libc.html Url: http://www.gnu.org/software/libc/libc.html
Source: glibc-%{version}-996cf2ef0727.tar.bz2 Source: glibc-%{version}-996cf2ef0727.tar.bz2
Source2: http://ftp.gnu.org/gnu/glibc/glibc-ports-2.13.tar.bz2 Source2: http://ftp.gnu.org/gnu/glibc/glibc-ports-2.13.tar.bz2
@ -85,7 +85,6 @@ Source12: glibc_post_upgrade.c
Source15: glibc.rpmlintrc Source15: glibc.rpmlintrc
Source16: baselibs.conf Source16: baselibs.conf
PreReq: filesystem PreReq: filesystem
PreReq: permissions
Provides: rtld(GNU_HASH) Provides: rtld(GNU_HASH)
BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %_target_cpu == "i686" %if %_target_cpu == "i686"
@ -198,6 +197,8 @@ Patch56: glibc-static-memcpy.diff
Patch58: glibc-strict-aliasing.diff Patch58: glibc-strict-aliasing.diff
# PATCH-FIX-UPSTREAM fix preloading of shared libs aj@suse.de # PATCH-FIX-UPSTREAM fix preloading of shared libs aj@suse.de
Patch59: glibc-2.13-dl-load.patch Patch59: glibc-2.13-dl-load.patch
# PATCH-FIX-UPSTREAM fix x86 <bits/sigcontext.h aj@suse.de
Patch60: glibc-x86-bits-sigcontext.patch
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines # PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch500: ARM_glibc-2.10.1-local-eabi-wchar.diff Patch500: ARM_glibc-2.10.1-local-eabi-wchar.diff
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines # PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
@ -207,6 +208,7 @@ Patch502: ARM_glibc-2.10.1-local-lowlevellock.diff
# PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines # PATCH-MISSING-TAG -- See http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines
Patch503: ARM_glibc-2.10.1-local-no-hwcap.diff Patch503: ARM_glibc-2.10.1-local-no-hwcap.diff
%description %description
The GNU C Library provides the most important standard libraries used The GNU C Library provides the most important standard libraries used
by nearly all programs: the standard C library, the standard math by nearly all programs: the standard C library, the standard math
@ -219,6 +221,7 @@ Summary: Info Files for the GNU C Library
Group: Documentation/Other Group: Documentation/Other
PreReq: %{install_info_prereq} PreReq: %{install_info_prereq}
%description info %description info
This package contains the documentation for the GNU C library stored as This package contains the documentation for the GNU C library stored as
info files. Due to a lack of resources, this documentation is not info files. Due to a lack of resources, this documentation is not
@ -229,6 +232,7 @@ License: GPLv2+ ; LGPLv2.1+
Summary: HTML Documentation for the GNU C Library Summary: HTML Documentation for the GNU C Library
Group: Documentation/HTML Group: Documentation/HTML
%description html %description html
This package contains the HTML documentation for the GNU C library. Due This package contains the HTML documentation for the GNU C library. Due
to a lack of resources, this documentation is not complete and is to a lack of resources, this documentation is not complete and is
@ -239,6 +243,7 @@ License: LGPLv2.1+
Summary: Database Sources for 'locale' Summary: Database Sources for 'locale'
Group: System/Libraries Group: System/Libraries
%description i18ndata %description i18ndata
This package contains the data needed to build the locale data files to This package contains the data needed to build the locale data files to
use the internationalization features of the GNU libc. It is normally use the internationalization features of the GNU libc. It is normally
@ -259,6 +264,7 @@ Obsoletes: glibc-locale-64bit
Obsoletes: glibc-locale-32bit Obsoletes: glibc-locale-32bit
%endif %endif
%description locale %description locale
Locale data for the internationalisation features of the GNU C library. Locale data for the internationalisation features of the GNU C library.
@ -270,6 +276,7 @@ Provides: aaa_base:/etc/init.d/nscd
Provides: glibc:/usr/sbin/nscd Provides: glibc:/usr/sbin/nscd
PreReq: %insserv_prereq PreReq: %insserv_prereq
%description -n nscd %description -n nscd
Nscd caches name service lookups and can dramatically improve Nscd caches name service lookups and can dramatically improve
performance with NIS, NIS+, and LDAP. performance with NIS, NIS+, and LDAP.
@ -287,6 +294,7 @@ Obsoletes: glibc-profile-64bit
Obsoletes: glibc-profile-32bit Obsoletes: glibc-profile-32bit
%endif %endif
%description profile %description profile
This package contains special versions of the GNU C library which are This package contains special versions of the GNU C library which are
necessary for profiling and debugging. necessary for profiling and debugging.
@ -307,17 +315,18 @@ Obsoletes: glibc-devel-32bit
PreReq: /bin/rm PreReq: /bin/rm
Requires: glibc = %{version}, linux-kernel-headers Requires: glibc = %{version}, linux-kernel-headers
%description devel %description devel
These libraries are needed to develop programs which use the standard C These libraries are needed to develop programs which use the standard C
library. library.
%package devel-static %package devel-static
Summary: C library static libraries for -static linking Summary: C library static libraries for -static linking
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Requires: %{name}-devel = %{version} Requires: %{name}-devel = %{version}
%description devel-static %description devel-static
The glibc-devel-static package contains the C library static libraries The glibc-devel-static package contains the C library static libraries
for -static linking. You don't need these, unless you link statically, for -static linking. You don't need these, unless you link statically,
@ -329,6 +338,7 @@ Summary: Development utilities from GNU C library
Group: Development/Languages/C and C++ Group: Development/Languages/C and C++
Requires: glibc = %{version} Requires: glibc = %{version}
%description utils %description utils
The glibc-utils package contains memusage, a memory usage profiler, The glibc-utils package contains memusage, a memory usage profiler,
mtrace, a memory leak tracer and xtrace, a function call tracer mtrace, a memory leak tracer and xtrace, a function call tracer
@ -338,12 +348,14 @@ If you are unsure if you need this, don't install this package.
%ifarch %ix86 %ifarch %ix86
%package obsolete %package obsolete
License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+ License: BSD3c(or similar) ; GPLv2+ ; LGPLv2.1+
Summary: Obsolete Shared Libraries from the GNU C Library Summary: Obsolete Shared Libraries from the GNU C Library
Group: System/Libraries Group: System/Libraries
Requires: glibc = %{version} Requires: glibc = %{version}
%description obsolete %description obsolete
This package provides some old libraries from the GNU C Library which This package provides some old libraries from the GNU C Library which
are no longer supported. Additional it provides a compatibility library are no longer supported. Additional it provides a compatibility library
@ -356,6 +368,7 @@ versions of your software.
%endif %endif
%prep %prep
%ifarch %arm armv5tel armv7l %ifarch %arm armv5tel armv7l
# add glibc-ports for arm # add glibc-ports for arm
@ -430,6 +443,7 @@ rm nscd/s-stamp
%patch56 -p1 %patch56 -p1
%patch58 %patch58
%patch59 -p1 %patch59 -p1
%patch60
%ifarch %arm armv5tel armv7l %ifarch %arm armv5tel armv7l
%patch500 %patch500
%patch501 %patch501
@ -462,6 +476,7 @@ find . -name configure | xargs touch
### ###
####################################################################### #######################################################################
%build %build
if [ -x /bin/uname.bin ]; then if [ -x /bin/uname.bin ]; then
/bin/uname.bin -a /bin/uname.bin -a
@ -637,6 +652,7 @@ $BuildCC -static $RPM_OPT_FLAGS -Os $RPM_SOURCE_DIR/glibc_post_upgrade.c -o glib
### ###
####################################################################### #######################################################################
%check %check
%if %{run_testsuite} %if %{run_testsuite}
# Increase timeout # Increase timeout
@ -659,6 +675,7 @@ make -C cc-base check-abi || echo check-abi failed
### ###
####################################################################### #######################################################################
%install %install
# We don't want to strip the .symtab from our libraries in find-debuginfo.sh, # We don't want to strip the .symtab from our libraries in find-debuginfo.sh,
# certainly not from libpthread.so.* because it is used by libthread_db to find # certainly not from libpthread.so.* because it is used by libthread_db to find
@ -834,6 +851,7 @@ done
### ###
####################################################################### #######################################################################
%clean %clean
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
@ -841,10 +859,13 @@ rm -rf $RPM_BUILD_ROOT
# %set_permissions %{_libdir}/pt_chown # %set_permissions %{_libdir}/pt_chown
# since we cannot do it in our own post section # since we cannot do it in our own post section
%post -p %{_sbindir}/glibc_post_upgrade %post -p %{_sbindir}/glibc_post_upgrade
%postun -p /sbin/ldconfig %postun -p /sbin/ldconfig
%post locale %post locale
for l in /usr/share/locale/locale.alias %{_libdir}/gconv/gconv-modules; do for l in /usr/share/locale/locale.alias %{_libdir}/gconv/gconv-modules; do
[ -d "$l.d" ] || continue [ -d "$l.d" ] || continue
@ -853,19 +874,24 @@ for l in /usr/share/locale/locale.alias %{_libdir}/gconv/gconv-modules; do
done done
/usr/sbin/iconvconfig /usr/sbin/iconvconfig
%post info %post info
%install_info --info-dir=%{_infodir} %{_infodir}/libc.info.gz %install_info --info-dir=%{_infodir} %{_infodir}/libc.info.gz
%postun info %postun info
%install_info_delete --info-dir=%{_infodir} %{_infodir}/libc.info.gz %install_info_delete --info-dir=%{_infodir} %{_infodir}/libc.info.gz
%preun -n nscd %preun -n nscd
%stop_on_removal nscd %stop_on_removal nscd
%post -n nscd %post -n nscd
%{insserv_force_if_yast nscd} %{insserv_force_if_yast nscd}
mkdir -p /var/run/nscd mkdir -p /var/run/nscd
%postun -n nscd %postun -n nscd
%restart_on_update nscd %restart_on_update nscd
%insserv_cleanup %insserv_cleanup
@ -882,6 +908,7 @@ exit 0
# glibc # glibc
%files %files
%defattr(-,root,root) %defattr(-,root,root)
%doc LICENSES %doc LICENSES
@ -1009,6 +1036,7 @@ exit 0
%ifarch %ix86 %ifarch %ix86
%files obsolete %files obsolete
%defattr (755,root,root,755) %defattr (755,root,root,755)
%dir /%{_lib}/obsolete/ %dir /%{_lib}/obsolete/
@ -1017,6 +1045,7 @@ exit 0
/%{_lib}/obsolete/noversion/libNoVersion.so.1 /%{_lib}/obsolete/noversion/libNoVersion.so.1
%endif %endif
%files locale -f libc.lang %files locale -f libc.lang
%defattr(-,root,root) %defattr(-,root,root)
/usr/share/locale/locale.alias /usr/share/locale/locale.alias
@ -1025,6 +1054,7 @@ exit 0
%endif %endif
%{_libdir}/gconv %{_libdir}/gconv
%files devel %files devel
%defattr(-,root,root) %defattr(-,root,root)
%doc COPYING COPYING.LIB FAQ INSTALL NEWS NOTES README BUGS CONFORMANCE %doc COPYING COPYING.LIB FAQ INSTALL NEWS NOTES README BUGS CONFORMANCE
@ -1051,6 +1081,7 @@ exit 0
%{_libdir}/libpthread_nonshared.a %{_libdir}/libpthread_nonshared.a
%{_libdir}/librpcsvc.a %{_libdir}/librpcsvc.a
%files devel-static %files devel-static
%defattr(-,root,root) %defattr(-,root,root)
%{_libdir}/libBrokenLocale.a %{_libdir}/libBrokenLocale.a
@ -1065,20 +1096,24 @@ exit 0
%{_libdir}/librt.a %{_libdir}/librt.a
%{_libdir}/libutil.a %{_libdir}/libutil.a
%files info %files info
%defattr(-,root,root) %defattr(-,root,root)
%doc %{_infodir}/libc.info.gz %doc %{_infodir}/libc.info.gz
%doc %{_infodir}/libc.info-?.gz %doc %{_infodir}/libc.info-?.gz
%doc %{_infodir}/libc.info-??.gz %doc %{_infodir}/libc.info-??.gz
%files html %files html
%defattr(-,root,root) %defattr(-,root,root)
%doc %{_prefix}/share/doc/glibc %doc %{_prefix}/share/doc/glibc
%files i18ndata %files i18ndata
%defattr(-,root,root) %defattr(-,root,root)
%{_prefix}/share/i18n %{_prefix}/share/i18n
%files -n nscd %files -n nscd
%defattr(-,root,root) %defattr(-,root,root)
%config(noreplace) /etc/nscd.conf %config(noreplace) /etc/nscd.conf
@ -1094,6 +1129,7 @@ exit 0
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/group %attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/group
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/hosts %attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/run/nscd/hosts
%files profile %files profile
%defattr(-,root,root) %defattr(-,root,root)
%{_libdir}/libc_p.a %{_libdir}/libc_p.a
@ -1109,6 +1145,7 @@ exit 0
%{_libdir}/libutil_p.a %{_libdir}/libutil_p.a
%{_libdir}/libdl_p.a %{_libdir}/libdl_p.a
%files utils %files utils
%defattr(-,root,root) %defattr(-,root,root)
/%{_lib}/libmemusage.so /%{_lib}/libmemusage.so
@ -1120,4 +1157,6 @@ exit 0
%{_bindir}/pcprofiledump %{_bindir}/pcprofiledump
%{_bindir}/xtrace %{_bindir}/xtrace
%changelog %changelog