SHA256
1
0
forked from pool/glibc

Accepting request 497347 from home:Andreas_Schwab:Factory

- Use multibuild feature
- Remove obsolete check-build.sh
- glibc.rpmlintrc: remove obsolete entries
- Use %tmpfiles_create in nscd postin

OBS-URL: https://build.opensuse.org/request/show/497347
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=456
This commit is contained in:
Andreas Schwab 2017-05-22 16:07:34 +00:00 committed by Git OBS Bridge
parent c59611fc72
commit 4790269dff
10 changed files with 63 additions and 18664 deletions

5
_multibuild Normal file
View File

@ -0,0 +1,5 @@
<multibuild>
<package>i686</package>
<package>utils</package>
<package>testsuite</package>
</multibuild>

View File

@ -1,32 +0,0 @@
#!/bin/bash
# Copyright (c) 2003, 2004, 2011,2012 SUSE Linux Products GmbH, Germany. All rights reserved.
#
# Authors: Thorsten Kukuk <kukuk@suse.de>
#
if [ `nice` -gt '9' ] ; then
echo "Don't modify nice for building glibc!"
exit 1
fi
# get kernel version
OFS="$IFS" ; IFS=".-" ; version=(`uname -r`) ; IFS="$OIFS"
ARCH=(`uname -m`)
if test ${version[0]} -gt 2 ; then
: # okay
elif test ${version[0]} -lt 2 -o ${version[1]} -lt 6 -o ${version[2]} -lt 16 ; then
echo "FATAL: kernel too old, need kernel >= 2.6.16 for this package" 1>&2
exit 1
elif $ARCH -eq 'x86_64' ; then
if test ${version[0]} -lt 2 -o ${version[1]} -lt 6 -o ${version[2]} -lt 32 ; then
echo "FATAL: kernel too old, need kernel >= 2.6.32 for this package" 1>&2
exit 1
fi
fi
exit 0

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Mon May 22 10:04:59 UTC 2017 - schwab@suse.de
- Use multibuild feature
- Remove obsolete check-build.sh
- glibc.rpmlintrc: remove obsolete entries
- Use %tmpfiles_create in nscd postin
-------------------------------------------------------------------
Wed Mar 29 13:09:49 UTC 2017 - schwab@suse.de

View File

@ -1,25 +1,20 @@
addFilter(".*glibc-profile.* devel-file-in-non-devel-package.*/usr/lib.*/lib.*_p.a")
addFilter(".*glibc.* incorrect-fsf-address")
# False positive - glibc implements gethostbyname
addFilter(".*binary-or-shlib-calls-gethostbyname")
# glibc-profile is a devel package
addFilter("glibc-profile.* devel-file-in-non-devel-package.*/usr/lib.*/lib.*_p.a")
# glibc is not a devel package
addFilter("glibc\\..* non-devel-file-in-devel-package")
# getent deliberately uses gethostbyname
addFilter("binary-or-shlib-calls-gethostbyname /usr/bin/getent")
# We do need to keep the symtab (see comments in glibc.spec), so this is intented:
addFilter(".*unstripped-binary-or-object.*")
# The duplication is intented:
addFilter(".*files-duplicate /usr/lib64/libbsd-compat.a /usr/lib.*/libg.a")
addFilter("unstripped-binary-or-object")
# ld.so is special:
addFilter(".*shared-lib-without-dependency-information /lib.*/ld-2.*.so")
addFilter("shared-lib-without-dependency-information /lib.*/ld-2.*\\.so")
# Handled via glibc_post_upgrade:
addFilter(".*permissions-missing-postin missing %set_permissions /usr/.*pt_chown in %post")
# Do not require permissions, this will lead to a cycle (bnc#700925):
addFilter("glibc\..*: permissions-missing-requires")
addFilter("postin-without-ldconfig")
# We will not rename glibc to follow the shlib policy
addFilter("shlib-policy-missing-suffix")
# The dynamic linker and libnsl call exit - this is fine
addFilter(".*shared-lib-calls-exit.*")
# libpthread and libnsl call exit - this is fine
addFilter("shared-lib-calls-exit")
# The man-pages package contains a number of man pages for programs that come
# with glibc, therefore do not warn about them
addFilter(".*glibc.*no-manual-page-for-binary getent")
addFilter(".*glibc.*no-manual-page-for-binary iconv")
addFilter(".*glibc.*no-manual-page-for-binary ldd")
addFilter(".*glibc.*no-manual-page-for-binary ldconfig")
addFilter(".*nscd.*no-manual-page-for-binary nscd")
addFilter("glibc.*no-manual-page-for-binary (getent|iconv|ldd|ldconfig|locale)")
addFilter("nscd.*no-manual-page-for-binary nscd")

View File

@ -28,15 +28,27 @@
%define crypt_bf_version 1.3
%define normal_build ("@BUILD_FLAVOR@" == "" || "@BUILD_FLAVOR@" == "i686")
%define utils_build ("@BUILD_FLAVOR@" == "utils")
%define testsuite_build ("@BUILD_FLAVOR@" == "testsuite")
%if %normal_build
Name: glibc
%define normal_build ("%{name}" == "glibc")
%define utils_build ("%{name}" == "glibc-utils")
%define testsuite_build ("%{name}" == "glibc-testsuite")
# UTILS-SUMMARY-BEGIN
Summary: Standard Shared Libraries (from the GNU C Library)
License: LGPL-2.1+ and SUSE-LGPL-2.1+-with-GCC-exception and GPL-2.0+
Group: System/Libraries
# UTILS-SUMMARY-END
License: LGPL-2.1+
Group: Development/Languages/C and C++
%endif
%if %utils_build
Name: glibc-utils
Summary: Development utilities from the GNU C Library
License: LGPL-2.1+
Group: Development/Languages/C and C++
%endif
%if %testsuite_build
Name: glibc-testsuite
Summary: Testsuite results from the GNU C Library
License: LGPL-2.1+
Group: Development/Languages/C and C++
%endif
BuildRequires: audit-devel
BuildRequires: fdupes
BuildRequires: libcap-devel
@ -55,6 +67,11 @@ BuildRequires: python-pexpect
%if %{utils_build}
BuildRequires: gd-devel
%endif
%if "@BUILD_FLAVOR@" == "i686"
ExclusiveArch: i586 i686
BuildArch: i686
%global optflags %(echo "%optflags"|sed -e s/i586/i686/) -march=i686 -mtune=generic
%endif
%define __filter_GLIBC_PRIVATE 1
%ifarch i686
@ -281,10 +298,22 @@ Patch2008: reinitialize-dl_load_write_lock.patch
Patch3000: manpages.patch
%description
%if %{normal_build}
The GNU C Library provides the most important standard libraries used
by nearly all programs: the standard C library, the standard math
library, and the POSIX thread library. A system is not functional
without these libraries.
%endif
%if %{utils_build}
The glibc-utils package contains mtrace, a memory leak tracer and
xtrace, a function call tracer which can be helpful during program
debugging.
If you are unsure if you need this, do not install this package.
%endif
%if %{testsuite_build}
This package runs the testsuite from the GNU C Library.
%endif
%package info
Summary: Info Files for the GNU C Library
@ -1086,7 +1115,7 @@ getent passwd nscd >/dev/null || %{_sbindir}/useradd -r -g nscd -c "User for nsc
%post -n nscd
%service_add_post nscd.service
mkdir -p /run/nscd
%tmpfiles_create /usr/lib/tmpfiles.d/nscd.conf
# Previously we had nscd.socket, remove it
test -x /usr/bin/systemctl && /usr/bin/systemctl stop nscd.socket 2>/dev/null || :
test -x /usr/bin/systemctl && /usr/bin/systemctl disable nscd.socket 2>/dev/null || :

View File

@ -1,29 +0,0 @@
#!/bin/bash
# This script is called automatically during autobuild checkin.
sed -e 's/^Name:.*glibc/&-testsuite/' glibc.spec > glibc-testsuite.spec
cp glibc.changes glibc-testsuite.changes
awk '/^Name:/{ $0 = $0 "-utils" }
/UTILS-SUMMARY-BEGIN/ {
ignore = 1
print "\
Summary: Development utilities from GNU C library\n\
License: LGPL-2.1+\n\
Group: Development/Languages/C and C++"
}
/UTILS-SUMMARY-END/ { ignore = 0; next }
/^%description$/ {
ignore = 1
print "\
%description\n\
The glibc-utils package contains mtrace, a memory leak tracer and\n\
xtrace, a function call tracer which can be helpful during program\n\
debugging.\n\
\n\
If you are unsure if you need this, don'\''t install this package.\n"
}
/^%package/ { ignore = 0}
!ignore { print }' glibc.spec > glibc-utils.spec
cp glibc.changes glibc-utils.changes
osc service localrun format_spec_file