2009-02-20 08:46:43 +01:00
|
|
|
#
|
2011-02-04 02:37:38 +01:00
|
|
|
# spec file for package glibc
|
2009-02-20 08:46:43 +01:00
|
|
|
#
|
2018-01-22 17:14:59 +01:00
|
|
|
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
|
2009-02-20 08:46:43 +01:00
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
|
|
#
|
|
|
|
|
2011-07-21 08:55:20 +02:00
|
|
|
|
2012-04-17 14:34:50 +02:00
|
|
|
# Run with osc --with=fast_build to have a shorter turnaround
|
2012-12-17 14:15:06 +01:00
|
|
|
# It will avoid building some parts of glibc
|
2012-04-17 14:34:50 +02:00
|
|
|
%bcond_with fast_build
|
2012-04-13 11:37:44 +02:00
|
|
|
|
2014-10-28 12:58:29 +01:00
|
|
|
%define crypt_bf_version 1.3
|
2017-08-02 17:46:55 +02:00
|
|
|
%define build_snapshot 0
|
2017-12-12 11:41:00 +01:00
|
|
|
%bcond_with ringdisabled
|
2009-02-20 08:46:43 +01:00
|
|
|
|
2017-12-12 11:41:00 +01:00
|
|
|
%define flavor @BUILD_FLAVOR@%{nil}
|
2017-07-17 09:44:06 +02:00
|
|
|
|
2018-01-30 16:17:29 +01:00
|
|
|
%bcond_with build_all
|
2017-07-12 15:21:16 +02:00
|
|
|
%define build_main 1
|
2018-01-30 16:17:29 +01:00
|
|
|
%define build_utils %{with build_all}
|
|
|
|
%define build_testsuite %{with build_all}
|
2017-07-17 09:44:06 +02:00
|
|
|
%if "%flavor" == "utils"
|
2017-12-12 11:41:00 +01:00
|
|
|
%if %{with ringdisabled}
|
|
|
|
ExclusiveArch: do_not_build
|
|
|
|
%endif
|
2017-07-12 15:21:16 +02:00
|
|
|
%define build_main 0
|
|
|
|
%define build_utils 1
|
|
|
|
%define build_testsuite 0
|
|
|
|
%endif
|
2017-07-17 09:44:06 +02:00
|
|
|
%if "%flavor" == "testsuite"
|
2017-12-12 11:41:00 +01:00
|
|
|
%if %{with ringdisabled}
|
|
|
|
ExclusiveArch: do_not_build
|
|
|
|
%endif
|
2017-07-12 15:21:16 +02:00
|
|
|
%define build_main 0
|
|
|
|
%define build_utils 0
|
|
|
|
%define build_testsuite 1
|
|
|
|
%endif
|
2017-05-31 18:11:37 +02:00
|
|
|
|
2018-01-30 16:17:29 +01:00
|
|
|
%if %{build_main}
|
2017-12-12 11:41:00 +01:00
|
|
|
Name: glibc
|
2018-01-30 16:17:29 +01:00
|
|
|
%else
|
|
|
|
Name: glibc-%{flavor}-src
|
|
|
|
%endif
|
2017-12-12 11:41:00 +01:00
|
|
|
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
|
Accepting request 359989 from home:Andreas_Schwab:Factory
- tls-dtor-list-mangling.patch: Harden tls_dtor_list with pointer mangling
(BZ #19018)
- prelink-elf-rtype-class.patch: Keep only ELF_RTYPE_CLASS_{PLT|COPY} bits
for prelink (BZ #19178)
- vector-finite-math-aliases.patch: Better workaround for aliases of
*_finite symbols in vector math library (BZ# 19058)
- powerpc-elision-adapt-param.patch: powerpc: Fix usage of elision
transient failure adapt param (BZ #19174)
- catopen-unbound-alloca.patch: Fix unbound alloca in catopen
(CVE-2015-8779, bsc#962739, BZ #17905)
- strftime-range-check.patch: Add range check on time fields
(CVE-2015-8776, bsc#962736, BZ #18985)
- hcreate-overflow-check.patch: Handle overflow in hcreate (CVE-2015-8778,
bsc#962737, BZ #18240)
- errorcheck-mutex-no-elision.patch: Don't do lock elision on an error
checking mutex (bsc#956716, BZ #17514)
- refactor-nan-parsing.patch: Refactor strtod parsing of NaN payloads
(CVE-2014-9761, bsc#962738, BZ #16962)
- send-dg-buffer-overflow.patch: Fix getaddrinfo stack-based buffer
overflow (CVE-2015-7547, bsc#961721, BZ #18665)
- powerpc-lock-elision-race.patch: renamed from
0001-powerpc-Fix-a-race-condition-when-eliding-a-lock-20150730.patch
OBS-URL: https://build.opensuse.org/request/show/359989
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=421
2016-02-17 15:42:34 +01:00
|
|
|
BuildRequires: audit-devel
|
Accepting request 572614 from home:Andreas_Schwab:Factory
- Update to glibc 2.27
* Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf,
sinf, sincosf and tan with FMA
* Optimized x86-64 trunc and truncf for processors with SSE4.1
* Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and
sincosf
* In order to support faster and safer process termination the malloc API
family of functions will no longer print a failure address and stack
backtrace after detecting heap corruption
* The abort function terminates the process immediately, without flushing
stdio streams
* On platforms where long double has the IEEE binary128 format (aarch64,
alpha, mips64, riscv, s390 and sparc), the math library now implements
_Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015
These are the same interfaces added in version 2.26 for some platforms where
this format is supported but is not the format of long double
* On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now
implements interfaces for that type, as defined by ISO/IEC TS
18661-3:2015
* The math library now implements interfaces for the _Float32, _Float64 and
_Float32x types, as defined by ISO/IEC TS 18661-3:2015
* glibc now implements the memfd_create and mlock2 functions on Linux
* Support for memory protection keys was added
* The copy_file_range function was added
* The ldconfig utility now processes `include' directives using the C/POSIX
collation ordering
* Support for two grammatical forms of month names has been added
* Support for the RISC-V ISA running on Linux has been added
* Statically compiled applications attempting to load locales compiled for the
OBS-URL: https://build.opensuse.org/request/show/572614
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=491
2018-02-05 11:33:11 +01:00
|
|
|
BuildRequires: bison
|
2012-08-28 14:25:24 +02:00
|
|
|
BuildRequires: fdupes
|
Accepting request 359989 from home:Andreas_Schwab:Factory
- tls-dtor-list-mangling.patch: Harden tls_dtor_list with pointer mangling
(BZ #19018)
- prelink-elf-rtype-class.patch: Keep only ELF_RTYPE_CLASS_{PLT|COPY} bits
for prelink (BZ #19178)
- vector-finite-math-aliases.patch: Better workaround for aliases of
*_finite symbols in vector math library (BZ# 19058)
- powerpc-elision-adapt-param.patch: powerpc: Fix usage of elision
transient failure adapt param (BZ #19174)
- catopen-unbound-alloca.patch: Fix unbound alloca in catopen
(CVE-2015-8779, bsc#962739, BZ #17905)
- strftime-range-check.patch: Add range check on time fields
(CVE-2015-8776, bsc#962736, BZ #18985)
- hcreate-overflow-check.patch: Handle overflow in hcreate (CVE-2015-8778,
bsc#962737, BZ #18240)
- errorcheck-mutex-no-elision.patch: Don't do lock elision on an error
checking mutex (bsc#956716, BZ #17514)
- refactor-nan-parsing.patch: Refactor strtod parsing of NaN payloads
(CVE-2014-9761, bsc#962738, BZ #16962)
- send-dg-buffer-overflow.patch: Fix getaddrinfo stack-based buffer
overflow (CVE-2015-7547, bsc#961721, BZ #18665)
- powerpc-lock-elision-race.patch: renamed from
0001-powerpc-Fix-a-race-condition-when-eliding-a-lock-20150730.patch
OBS-URL: https://build.opensuse.org/request/show/359989
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=421
2016-02-17 15:42:34 +01:00
|
|
|
BuildRequires: libcap-devel
|
2009-02-20 08:46:43 +01:00
|
|
|
BuildRequires: libselinux-devel
|
2012-07-17 21:30:18 +02:00
|
|
|
BuildRequires: makeinfo
|
2014-01-09 10:54:54 +01:00
|
|
|
BuildRequires: pwdutils
|
2013-06-19 14:00:32 +02:00
|
|
|
BuildRequires: systemd-rpm-macros
|
2012-07-20 19:37:36 +02:00
|
|
|
BuildRequires: xz
|
2017-07-12 15:21:16 +02:00
|
|
|
%if %{build_testsuite}
|
2012-08-28 14:25:24 +02:00
|
|
|
BuildRequires: gcc-c++
|
2017-03-30 16:29:43 +02:00
|
|
|
BuildRequires: gdb
|
2016-02-24 12:39:39 +01:00
|
|
|
BuildRequires: glibc-devel-static
|
2012-08-28 14:25:24 +02:00
|
|
|
BuildRequires: libstdc++-devel
|
2017-03-30 16:29:43 +02:00
|
|
|
BuildRequires: python-pexpect
|
2012-08-28 14:25:24 +02:00
|
|
|
%endif
|
2017-07-12 15:21:16 +02:00
|
|
|
%if %{build_utils}
|
2012-12-19 18:04:05 +01:00
|
|
|
BuildRequires: gd-devel
|
|
|
|
%endif
|
2017-07-17 09:44:06 +02:00
|
|
|
%if "%flavor" == "i686"
|
2017-05-22 18:07:34 +02:00
|
|
|
ExclusiveArch: i586 i686
|
|
|
|
BuildArch: i686
|
|
|
|
%global optflags %(echo "%optflags"|sed -e s/i586/i686/) -march=i686 -mtune=generic
|
|
|
|
%endif
|
2012-04-16 22:11:08 +02:00
|
|
|
|
2012-12-19 18:04:05 +01:00
|
|
|
%define __filter_GLIBC_PRIVATE 1
|
2014-02-24 15:57:11 +01:00
|
|
|
%ifarch i686
|
2012-12-14 20:35:52 +01:00
|
|
|
# For i686 let's only build what's different from i586, so
|
|
|
|
# no need to build documentation
|
|
|
|
%define build_profile 1
|
|
|
|
%define build_locales 1
|
2012-04-16 22:11:08 +02:00
|
|
|
%define build_html 0
|
|
|
|
%else
|
2018-01-30 16:17:29 +01:00
|
|
|
%if %{with fast_build} || %{build_utils} && %{without build_all}
|
2012-04-17 14:34:50 +02:00
|
|
|
%define build_profile 0
|
|
|
|
%define build_locales 0
|
|
|
|
%define build_html 0
|
|
|
|
%else
|
|
|
|
# Default:
|
2012-04-16 22:11:08 +02:00
|
|
|
%define build_profile 1
|
2009-02-20 08:46:43 +01:00
|
|
|
%define build_locales 1
|
2012-04-16 22:11:08 +02:00
|
|
|
%define build_html 1
|
|
|
|
%endif
|
2012-04-17 14:34:50 +02:00
|
|
|
%endif
|
|
|
|
|
2017-07-12 15:21:16 +02:00
|
|
|
%define build_variants %{build_main}
|
2014-07-22 15:22:57 +02:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%define disable_assert 0
|
|
|
|
%define enable_stackguard_randomization 1
|
|
|
|
%ifarch ppc ppc64
|
2010-01-03 12:31:34 +01:00
|
|
|
%define optimize_power 1
|
2010-04-26 13:34:14 +02:00
|
|
|
%ifarch ppc
|
2013-10-16 14:30:46 +02:00
|
|
|
%define powerpc_optimize_base %{nil}
|
2012-06-13 15:54:01 +02:00
|
|
|
%define powerpc_optimize_tune power3
|
2014-07-22 15:22:57 +02:00
|
|
|
%define powerpc_optimize_cpu_power4 1
|
2010-04-26 13:34:14 +02:00
|
|
|
%else
|
2013-10-16 14:30:46 +02:00
|
|
|
%define powerpc_optimize_base %{nil}
|
2010-01-03 12:31:34 +01:00
|
|
|
%define powerpc_optimize_tune power5
|
2012-06-13 15:54:01 +02:00
|
|
|
%define powerpc_optimize_cpu_power4 0
|
2010-04-26 13:34:14 +02:00
|
|
|
%endif
|
2010-01-29 14:56:15 +01:00
|
|
|
# We are not building Power CPU specific optimizations for openSUSE.
|
|
|
|
%define powerpc_optimize_cpu_power6 0
|
|
|
|
%define powerpc_optimize_cpu_power7 0
|
|
|
|
%define powerpc_optimize_cpu_cell 0
|
2009-02-20 08:46:43 +01:00
|
|
|
%else
|
2010-01-03 12:31:34 +01:00
|
|
|
%define optimize_power 0
|
2013-10-16 14:30:46 +02:00
|
|
|
%define powerpc_optimize_base %{nil}
|
2010-04-26 13:34:14 +02:00
|
|
|
%define powerpc_optimize_cpu_power4 0
|
2010-01-03 12:31:34 +01:00
|
|
|
%define powerpc_optimize_cpu_power6 0
|
|
|
|
%define powerpc_optimize_cpu_power7 0
|
|
|
|
%define powerpc_optimize_cpu_cell 0
|
|
|
|
%endif # ppc, ppc64
|
2017-07-26 17:08:57 +02:00
|
|
|
# glibc requires at least kernel 3.2
|
|
|
|
%define enablekernel 3.2
|
|
|
|
# some architectures need a newer kernel
|
|
|
|
%ifarch ppc64le
|
|
|
|
%define enablekernel 3.10
|
|
|
|
%endif
|
|
|
|
%ifarch aarch64
|
|
|
|
%define enablekernel 3.7
|
|
|
|
%endif
|
|
|
|
%ifarch ia64
|
|
|
|
%define enablekernel 3.2.18
|
|
|
|
%endif
|
Accepting request 572614 from home:Andreas_Schwab:Factory
- Update to glibc 2.27
* Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf,
sinf, sincosf and tan with FMA
* Optimized x86-64 trunc and truncf for processors with SSE4.1
* Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and
sincosf
* In order to support faster and safer process termination the malloc API
family of functions will no longer print a failure address and stack
backtrace after detecting heap corruption
* The abort function terminates the process immediately, without flushing
stdio streams
* On platforms where long double has the IEEE binary128 format (aarch64,
alpha, mips64, riscv, s390 and sparc), the math library now implements
_Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015
These are the same interfaces added in version 2.26 for some platforms where
this format is supported but is not the format of long double
* On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now
implements interfaces for that type, as defined by ISO/IEC TS
18661-3:2015
* The math library now implements interfaces for the _Float32, _Float64 and
_Float32x types, as defined by ISO/IEC TS 18661-3:2015
* glibc now implements the memfd_create and mlock2 functions on Linux
* Support for memory protection keys was added
* The copy_file_range function was added
* The ldconfig utility now processes `include' directives using the C/POSIX
collation ordering
* Support for two grammatical forms of month names has been added
* Support for the RISC-V ISA running on Linux has been added
* Statically compiled applications attempting to load locales compiled for the
OBS-URL: https://build.opensuse.org/request/show/572614
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=491
2018-02-05 11:33:11 +01:00
|
|
|
%ifarch riscv64
|
|
|
|
%define enablekernel 4.15
|
|
|
|
%endif
|
2014-03-20 09:35:51 +01:00
|
|
|
|
Accepting request 572614 from home:Andreas_Schwab:Factory
- Update to glibc 2.27
* Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf,
sinf, sincosf and tan with FMA
* Optimized x86-64 trunc and truncf for processors with SSE4.1
* Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and
sincosf
* In order to support faster and safer process termination the malloc API
family of functions will no longer print a failure address and stack
backtrace after detecting heap corruption
* The abort function terminates the process immediately, without flushing
stdio streams
* On platforms where long double has the IEEE binary128 format (aarch64,
alpha, mips64, riscv, s390 and sparc), the math library now implements
_Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015
These are the same interfaces added in version 2.26 for some platforms where
this format is supported but is not the format of long double
* On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now
implements interfaces for that type, as defined by ISO/IEC TS
18661-3:2015
* The math library now implements interfaces for the _Float32, _Float64 and
_Float32x types, as defined by ISO/IEC TS 18661-3:2015
* glibc now implements the memfd_create and mlock2 functions on Linux
* Support for memory protection keys was added
* The copy_file_range function was added
* The ldconfig utility now processes `include' directives using the C/POSIX
collation ordering
* Support for two grammatical forms of month names has been added
* Support for the RISC-V ISA running on Linux has been added
* Statically compiled applications attempting to load locales compiled for the
OBS-URL: https://build.opensuse.org/request/show/572614
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=491
2018-02-05 11:33:11 +01:00
|
|
|
Version: 2.27
|
2012-01-31 10:40:30 +01:00
|
|
|
Release: 0
|
2016-05-12 10:51:10 +02:00
|
|
|
%if !%{build_snapshot}
|
Accepting request 572614 from home:Andreas_Schwab:Factory
- Update to glibc 2.27
* Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf,
sinf, sincosf and tan with FMA
* Optimized x86-64 trunc and truncf for processors with SSE4.1
* Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and
sincosf
* In order to support faster and safer process termination the malloc API
family of functions will no longer print a failure address and stack
backtrace after detecting heap corruption
* The abort function terminates the process immediately, without flushing
stdio streams
* On platforms where long double has the IEEE binary128 format (aarch64,
alpha, mips64, riscv, s390 and sparc), the math library now implements
_Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015
These are the same interfaces added in version 2.26 for some platforms where
this format is supported but is not the format of long double
* On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now
implements interfaces for that type, as defined by ISO/IEC TS
18661-3:2015
* The math library now implements interfaces for the _Float32, _Float64 and
_Float32x types, as defined by ISO/IEC TS 18661-3:2015
* glibc now implements the memfd_create and mlock2 functions on Linux
* Support for memory protection keys was added
* The copy_file_range function was added
* The ldconfig utility now processes `include' directives using the C/POSIX
collation ordering
* Support for two grammatical forms of month names has been added
* Support for the RISC-V ISA running on Linux has been added
* Statically compiled applications attempting to load locales compiled for the
OBS-URL: https://build.opensuse.org/request/show/572614
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=491
2018-02-05 11:33:11 +01:00
|
|
|
%define git_id 3260f6ce87b7
|
2016-05-12 10:51:10 +02:00
|
|
|
%define libversion %version
|
|
|
|
%else
|
|
|
|
%define git_id %(echo %version | sed 's/.*\.g//')
|
|
|
|
%define libversion %(echo %version | sed 's/\.[^.]*\.g.*//')
|
|
|
|
%endif
|
2009-02-20 08:46:43 +01:00
|
|
|
Url: http://www.gnu.org/software/libc/libc.html
|
2011-08-17 21:42:24 +02:00
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
2016-05-12 10:51:10 +02:00
|
|
|
%if !%{build_snapshot}
|
2017-07-26 17:19:09 +02:00
|
|
|
Source: http://ftp.gnu.org/pub/gnu/glibc/glibc-%{version}.tar.xz
|
2015-08-06 11:55:23 +02:00
|
|
|
Source1: http://ftp.gnu.org/pub/gnu/glibc/glibc-%{version}.tar.xz.sig
|
2017-07-26 17:19:09 +02:00
|
|
|
%else
|
|
|
|
Source: glibc-%{version}.tar.xz
|
2016-05-12 10:51:10 +02:00
|
|
|
%endif
|
2016-07-07 14:43:40 +02:00
|
|
|
Source2: http://savannah.gnu.org/project/memberlist-gpgkeys.php?group=libc&download=1#/glibc.keyring
|
2009-02-20 08:46:43 +01:00
|
|
|
Source4: manpages.tar.bz2
|
2012-04-19 13:14:21 +02:00
|
|
|
Source5: nsswitch.conf
|
|
|
|
Source7: bindresvport.blacklist
|
|
|
|
Source8: glibc_post_upgrade.c
|
|
|
|
Source9: glibc.rpmlintrc
|
|
|
|
Source10: baselibs.conf
|
2011-07-07 10:29:39 +02:00
|
|
|
# For systemd
|
|
|
|
Source20: nscd.conf
|
|
|
|
Source21: nscd.service
|
2012-04-19 13:14:21 +02:00
|
|
|
# crypt_blowfish
|
2011-07-19 14:17:47 +02:00
|
|
|
Source50: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz
|
2016-03-08 16:02:57 +01:00
|
|
|
# The sign key uses MD5 which is no longer accepted by gpg
|
|
|
|
#Source51: http://www.openwall.com/crypt/crypt_blowfish-%{crypt_bf_version}.tar.gz.sign
|
2011-07-07 10:29:39 +02:00
|
|
|
|
2017-08-02 17:46:55 +02:00
|
|
|
%if %{build_main}
|
2012-12-19 18:04:05 +01:00
|
|
|
# ngpt was used in 8.1 and SLES8
|
|
|
|
Obsoletes: ngpt < 2.2.2
|
|
|
|
Obsoletes: ngpt-devel < 2.2.2
|
|
|
|
Provides: ngpt = 2.2.2
|
|
|
|
Provides: ngpt-devel = 2.2.2
|
|
|
|
Conflicts: kernel < %{enablekernel}
|
|
|
|
# bug437293 - handle update from SLES10 on PowerPC
|
|
|
|
%ifarch ppc64
|
|
|
|
Obsoletes: glibc-64bit
|
|
|
|
%endif
|
|
|
|
%ifarch ppc
|
|
|
|
Obsoletes: glibc-32bit
|
|
|
|
%endif
|
2013-06-30 21:57:43 +02:00
|
|
|
%ifarch armv6hl armv7hl
|
2012-12-19 18:04:05 +01:00
|
|
|
# The old runtime linker link gets not provided by rpm find.provides, but it exists
|
|
|
|
Provides: ld-linux.so.3
|
|
|
|
Provides: ld-linux.so.3(GLIBC_2.4)
|
|
|
|
%endif
|
2011-06-27 14:05:13 +02:00
|
|
|
Requires(pre): filesystem
|
2012-01-16 16:06:45 +01:00
|
|
|
Recommends: glibc-extra
|
2011-06-15 14:55:16 +02:00
|
|
|
Provides: rtld(GNU_HASH)
|
2017-08-02 17:46:55 +02:00
|
|
|
%endif
|
|
|
|
%if %{build_utils}
|
|
|
|
Requires: glibc = %{version}
|
|
|
|
%endif
|
2011-06-15 14:55:16 +02:00
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
2014-02-24 15:57:11 +01:00
|
|
|
%ifarch i686
|
2010-01-03 12:31:34 +01:00
|
|
|
# We need to avoid to have only the src rpm from i686 on the media,
|
2009-02-20 08:46:43 +01:00
|
|
|
# since it does not work on other architectures.
|
|
|
|
NoSource: 0
|
|
|
|
%endif
|
|
|
|
#
|
2012-04-17 14:34:50 +02:00
|
|
|
|
|
|
|
###
|
2012-04-19 13:14:21 +02:00
|
|
|
# Patches are ordered in the following groups:
|
2012-04-19 10:18:58 +02:00
|
|
|
# Patches that we will never upstream or which have not been looked at: 0-999
|
2012-04-17 14:34:50 +02:00
|
|
|
# Patches taken from upstream: 1000-2000
|
|
|
|
# Patches that are going upstream, waiting approval: 2000-3000
|
|
|
|
###
|
|
|
|
|
|
|
|
###
|
|
|
|
# Patches that upstream will not accept
|
|
|
|
###
|
2012-04-19 10:18:58 +02:00
|
|
|
|
|
|
|
###
|
|
|
|
# openSUSE specific patches - won't go upstream
|
|
|
|
###
|
|
|
|
### openSUSE extensions, configuration
|
2011-07-19 14:17:47 +02:00
|
|
|
# PATCH-FEATURE-OPENSUSE -- add crypt_blowfish support - bnc#700876
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch1: glibc-2.14-crypt.diff
|
2013-07-08 15:10:39 +02:00
|
|
|
# PATCH-FEATURE-OPENSUSE constify crypt_blowfish
|
|
|
|
Patch2: crypt_blowfish-const.patch
|
2012-04-19 10:18:58 +02:00
|
|
|
# PATCH-FEATURE-OPENSUSE -- add sha support to crypt_blowfish lnussel@suse.de
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch3: crypt_blowfish-1.2-sha.diff
|
2013-07-08 15:10:39 +02:00
|
|
|
# PATCH-FEATURE-OPENSUSE Move crypt_gensalt_rn to separate library
|
|
|
|
Patch4: crypt_blowfish-gensalt.patch
|
|
|
|
# PATCH-FEATURE-OPENSUSE Avoid build failure on noexecstack marker on ARM dmueller@suse.de
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch5: crypt_blowfish-1.2-hack_around_arm.diff
|
2012-04-19 10:18:58 +02:00
|
|
|
# PATCH-FIX-OPENSUSE Fix path for nscd databases
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch6: glibc-2.3.3-nscd-db-path.diff
|
2012-04-19 10:18:58 +02:00
|
|
|
# PATCH-FIX-OPENSUSE Fix path for nss_db (bnc#753657) - aj@suse.de
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch7: nss-db-path.patch
|
2012-04-19 10:18:58 +02:00
|
|
|
# PATCH-FIX-OPENSUSE adjust nscd.conf
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch8: glibc-nscd.conf.patch
|
2012-04-18 13:54:26 +02:00
|
|
|
# PATCH-FIX-OPENSUSE -- add some extra information to version output - kukuk@suse.de
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch10: glibc-version.diff
|
2012-04-18 13:54:26 +02:00
|
|
|
# PATCH-FIX-OPENSUSE -- Make --no-archive default for localedef - kukuk@suse.de
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch13: glibc-2.3.2.no_archive.diff
|
2012-04-18 13:54:26 +02:00
|
|
|
# PATCH-FIX-OPENSUSE -- add blacklist for bindresvport
|
2013-06-10 16:27:04 +02:00
|
|
|
Patch14: glibc-bindresvport-blacklist.diff
|
2011-07-04 15:26:19 +02:00
|
|
|
# PATCH-FIX-OPENSUSE prefer -lang rpm packages
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch15: glibc-2.3.90-langpackdir.diff
|
2013-09-23 12:27:21 +02:00
|
|
|
# PATCH-FEATURE-SLE Use nscd user for nscd
|
|
|
|
Patch19: nscd-server-user.patch
|
2012-04-19 10:18:58 +02:00
|
|
|
|
|
|
|
### Locale related patches
|
|
|
|
# PATCH-FIX-OPENSUSE Add additional locales
|
2017-05-31 18:11:37 +02:00
|
|
|
Patch100: add-locales.patch
|
2012-04-19 10:18:58 +02:00
|
|
|
# PATCH-FIX-OPENSUSE -- Add no_NO back (XXX: Still needed?)
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch102: glibc-2.4.90-no_NO.diff
|
2012-04-19 10:18:58 +02:00
|
|
|
# PATCH-FIX-OPENSUSE -- Renames for China
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch103: glibc-2.4-china.diff
|
2016-03-09 17:10:36 +01:00
|
|
|
# PATCH-FIX-OPENSUSE -- Add C.UTF-8 locale
|
|
|
|
Patch104: glibc-c-utf8-locale.patch
|
|
|
|
# PATCH-FIX-OPENSUSE -- Disable gettext for C.UTF-8 locale
|
|
|
|
Patch105: glibc-disable-gettext-for-c-utf8.patch
|
2012-04-19 10:18:58 +02:00
|
|
|
|
|
|
|
### Broken patches in glibc that we revert for now:
|
|
|
|
|
|
|
|
### Network related patches
|
2012-04-18 13:54:26 +02:00
|
|
|
# PATCH-FIX-OPENSUSE Warn about usage of mdns in resolv.conv
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch304: glibc-resolv-mdnshint.diff
|
2011-07-25 10:53:48 +02:00
|
|
|
# PATCH-FIX-OPENSUSE disable rewriting ::1 to 127.0.0.1 for /etc/hosts bnc#684534, bnc#706719
|
2012-04-19 13:14:21 +02:00
|
|
|
Patch306: glibc-fix-double-loopback.diff
|
2012-04-19 10:18:58 +02:00
|
|
|
|
2012-04-17 14:34:50 +02:00
|
|
|
###
|
|
|
|
# Patches from upstream
|
|
|
|
###
|
|
|
|
|
|
|
|
###
|
|
|
|
# Patches awaiting upstream approval
|
|
|
|
###
|
2014-03-25 15:45:48 +01:00
|
|
|
# PATCH-FIX-UPSTREAM Always to locking when accessing streams (BZ #15142)
|
|
|
|
Patch2000: fix-locking-in-_IO_cleanup.patch
|
2015-09-17 10:19:34 +02:00
|
|
|
# PATCH-FIX-UPSTREAM Fix fnmatch handling of collating elements (BZ #17396, BZ #16976)
|
2016-02-24 12:39:39 +01:00
|
|
|
Patch2004: fnmatch-collating-elements.patch
|
2015-09-30 12:23:58 +02:00
|
|
|
# PATCH-FIX-UPSTREAM Properly reread entry after failure in nss_files getent function (BZ #18991)
|
2016-02-24 12:39:39 +01:00
|
|
|
Patch2005: nss-files-long-lines-2.patch
|
2015-10-12 14:31:32 +02:00
|
|
|
# PATCH-FIX-UPSTREAM Fix iconv buffer handling with IGNORE error handler (BZ #18830)
|
2016-02-24 12:39:39 +01:00
|
|
|
Patch2006: iconv-reset-input-buffer.patch
|
2011-06-16 15:36:45 +02:00
|
|
|
|
2013-02-28 16:19:48 +01:00
|
|
|
# Non-glibc patches
|
|
|
|
# PATCH-FIX-OPENSUSE Remove debianisms from manpages
|
|
|
|
Patch3000: manpages.patch
|
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%description
|
|
|
|
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.
|
2017-12-12 11:41:00 +01:00
|
|
|
|
2018-01-30 16:17:29 +01:00
|
|
|
%package -n glibc-utils
|
2017-12-12 11:41:00 +01:00
|
|
|
Summary: Development utilities from the GNU C Library
|
|
|
|
License: LGPL-2.1+
|
|
|
|
Group: Development/Languages/C and C++
|
|
|
|
Requires: glibc = %{version}
|
|
|
|
|
2018-01-30 16:17:29 +01:00
|
|
|
%description -n glibc-utils
|
2017-05-22 18:07:34 +02:00
|
|
|
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.
|
2017-12-12 11:41:00 +01:00
|
|
|
|
2018-01-30 16:17:29 +01:00
|
|
|
%package -n glibc-testsuite
|
2017-12-12 11:41:00 +01:00
|
|
|
Summary: Testsuite results from the GNU C Library
|
|
|
|
License: LGPL-2.1+
|
|
|
|
Group: Development/Languages/C and C++
|
|
|
|
|
2018-01-30 16:17:29 +01:00
|
|
|
%description -n glibc-testsuite
|
2017-07-12 15:21:16 +02:00
|
|
|
This package contains the testsuite results from the GNU C Library.
|
2009-02-20 08:46:43 +01:00
|
|
|
|
2017-12-14 11:12:57 +01:00
|
|
|
%if %{build_main}
|
2009-02-20 08:46:43 +01:00
|
|
|
%package info
|
|
|
|
Summary: Info Files for the GNU C Library
|
2012-01-18 10:31:00 +01:00
|
|
|
License: GFDL-1.1
|
2009-02-20 08:46:43 +01:00
|
|
|
Group: Documentation/Other
|
2011-06-27 14:05:13 +02:00
|
|
|
Requires(post): %{install_info_prereq}
|
2016-03-08 16:02:57 +01:00
|
|
|
Requires(preun): %{install_info_prereq}
|
2011-08-18 14:05:28 +02:00
|
|
|
BuildArch: noarch
|
2009-02-20 08:46:43 +01:00
|
|
|
|
|
|
|
%description info
|
|
|
|
This package contains the documentation for the GNU C library stored as
|
|
|
|
info files. Due to a lack of resources, this documentation is not
|
|
|
|
complete and is partially out of date.
|
|
|
|
|
|
|
|
%package html
|
|
|
|
Summary: HTML Documentation for the GNU C Library
|
2012-01-18 10:31:00 +01:00
|
|
|
License: GFDL-1.1
|
2009-02-20 08:46:43 +01:00
|
|
|
Group: Documentation/HTML
|
2011-08-18 14:05:28 +02:00
|
|
|
BuildArch: noarch
|
2009-02-20 08:46:43 +01:00
|
|
|
|
|
|
|
%description html
|
|
|
|
This package contains the HTML documentation for the GNU C library. Due
|
|
|
|
to a lack of resources, this documentation is not complete and is
|
|
|
|
partially out of date.
|
|
|
|
|
|
|
|
%package i18ndata
|
|
|
|
Summary: Database Sources for 'locale'
|
2017-12-11 10:00:01 +01:00
|
|
|
License: GPL-2.0+ AND MIT
|
2009-02-20 08:46:43 +01:00
|
|
|
Group: System/Libraries
|
2011-08-18 14:05:28 +02:00
|
|
|
BuildArch: noarch
|
2009-02-20 08:46:43 +01:00
|
|
|
|
|
|
|
%description i18ndata
|
|
|
|
This package contains the data needed to build the locale data files to
|
|
|
|
use the internationalization features of the GNU libc. It is normally
|
|
|
|
not necessary to install this packages, the data files are already
|
|
|
|
created.
|
|
|
|
|
|
|
|
%package locale
|
|
|
|
Summary: Locale Data for Localized Programs
|
2017-12-11 10:00:01 +01:00
|
|
|
License: GPL-2.0+ AND MIT AND LGPL-2.1+
|
2009-02-20 08:46:43 +01:00
|
|
|
Group: System/Libraries
|
2011-06-27 14:05:13 +02:00
|
|
|
Requires(post): /bin/cat
|
2011-06-15 14:55:16 +02:00
|
|
|
Requires: glibc = %{version}
|
2009-02-20 08:46:43 +01:00
|
|
|
# bug437293
|
|
|
|
%ifarch ppc64
|
|
|
|
Obsoletes: glibc-locale-64bit
|
|
|
|
%endif
|
|
|
|
%ifarch ppc
|
|
|
|
Obsoletes: glibc-locale-32bit
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%description locale
|
|
|
|
Locale data for the internationalisation features of the GNU C library.
|
|
|
|
|
|
|
|
%package -n nscd
|
|
|
|
Summary: Name Service Caching Daemon
|
2012-01-18 10:31:00 +01:00
|
|
|
License: GPL-2.0+
|
2009-02-20 08:46:43 +01:00
|
|
|
Group: System/Daemons
|
2011-06-15 14:55:16 +02:00
|
|
|
Provides: glibc:/usr/sbin/nscd
|
2012-01-10 14:02:38 +01:00
|
|
|
Requires: glibc = %{version}
|
2013-01-31 17:31:36 +01:00
|
|
|
Obsoletes: unscd <= 0.48
|
2013-09-23 12:27:21 +02:00
|
|
|
Requires(pre): pwdutils
|
2012-11-24 15:18:54 +01:00
|
|
|
%{?systemd_requires}
|
2009-02-20 08:46:43 +01:00
|
|
|
|
|
|
|
%description -n nscd
|
|
|
|
Nscd caches name service lookups and can dramatically improve
|
|
|
|
performance with NIS, NIS+, and LDAP.
|
|
|
|
|
|
|
|
%package profile
|
|
|
|
Summary: Libc Profiling and Debugging Versions
|
2017-12-11 10:00:01 +01:00
|
|
|
License: LGPL-2.1+ AND SUSE-LGPL-2.1+-with-GCC-exception AND GPL-2.0+
|
2009-02-20 08:46:43 +01:00
|
|
|
Group: Development/Libraries/C and C++
|
|
|
|
Requires: glibc = %{version}
|
|
|
|
# bug437293
|
|
|
|
%ifarch ppc64
|
|
|
|
Obsoletes: glibc-profile-64bit
|
|
|
|
%endif
|
|
|
|
%ifarch ppc
|
|
|
|
Obsoletes: glibc-profile-32bit
|
|
|
|
%endif
|
|
|
|
|
|
|
|
%description profile
|
|
|
|
This package contains special versions of the GNU C library which are
|
|
|
|
necessary for profiling and debugging.
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
Summary: Include Files and Libraries Mandatory for Development
|
2017-12-11 10:00:01 +01:00
|
|
|
License: BSD-3-Clause AND LGPL-2.1+ AND SUSE-LGPL-2.1+-with-GCC-exception AND GPL-2.0+
|
2009-02-20 08:46:43 +01:00
|
|
|
Group: Development/Libraries/C and C++
|
|
|
|
Obsoletes: epoll = 1.0
|
2011-05-24 17:08:51 +02:00
|
|
|
Provides: epoll < 1.0
|
2009-02-20 08:46:43 +01:00
|
|
|
# bug437293
|
|
|
|
%ifarch ppc64
|
|
|
|
Obsoletes: glibc-devel-64bit
|
|
|
|
%endif
|
|
|
|
%ifarch ppc
|
|
|
|
Obsoletes: glibc-devel-32bit
|
|
|
|
%endif
|
2011-06-27 14:05:13 +02:00
|
|
|
Requires: glibc = %{version}
|
|
|
|
Requires: linux-kernel-headers
|
2009-02-20 08:46:43 +01:00
|
|
|
|
|
|
|
%description devel
|
|
|
|
These libraries are needed to develop programs which use the standard C
|
|
|
|
library.
|
|
|
|
|
2011-06-16 15:36:45 +02:00
|
|
|
%package devel-static
|
2011-06-16 17:38:23 +02:00
|
|
|
Summary: C library static libraries for -static linking
|
2017-12-11 10:00:01 +01:00
|
|
|
License: BSD-3-Clause AND LGPL-2.1+ AND SUSE-LGPL-2.1+-with-GCC-exception AND GPL-2.0+
|
2011-06-16 17:14:19 +02:00
|
|
|
Group: Development/Libraries/C and C++
|
2011-06-16 15:36:45 +02:00
|
|
|
Requires: %{name}-devel = %{version}
|
2011-10-19 14:10:22 +02:00
|
|
|
# Provide Fedora name for package to make packaging easier
|
2016-05-12 10:51:10 +02:00
|
|
|
Provides: %{name}-static = %{version}
|
2011-06-16 15:36:45 +02:00
|
|
|
|
|
|
|
%description devel-static
|
|
|
|
The glibc-devel-static package contains the C library static libraries
|
|
|
|
for -static linking. You don't need these, unless you link statically,
|
|
|
|
which is highly discouraged.
|
|
|
|
|
2012-01-16 16:06:45 +01:00
|
|
|
# makedb requires libselinux. We add this program in a separate
|
|
|
|
# package so that glibc does not require libselinux.
|
|
|
|
%package extra
|
|
|
|
Summary: Extra binaries from GNU C Library
|
2012-01-18 10:31:00 +01:00
|
|
|
License: LGPL-2.1+
|
2017-07-25 09:39:09 +02:00
|
|
|
Group: Development/Libraries/C and C++
|
2012-01-16 16:06:45 +01:00
|
|
|
Requires: glibc = %{version}
|
|
|
|
|
|
|
|
%description extra
|
|
|
|
The glibc-extra package contains some extra binaries for glibc that
|
|
|
|
are not essential but recommend to use.
|
|
|
|
|
|
|
|
makedb: A program to create a database for nss
|
2017-12-14 11:12:57 +01:00
|
|
|
%endif # main
|
2012-01-16 16:06:45 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%prep
|
2017-12-11 10:00:01 +01:00
|
|
|
%setup -n glibc-%{version} -q -a 4
|
2011-07-19 14:17:47 +02:00
|
|
|
# Owl crypt_blowfish
|
|
|
|
tar -xzf %SOURCE50
|
|
|
|
pushd crypt_blowfish-%{crypt_bf_version}
|
2013-07-08 15:10:39 +02:00
|
|
|
%patch2 -p1
|
2012-04-19 13:14:21 +02:00
|
|
|
%patch3 -p1
|
|
|
|
%patch4 -p1
|
|
|
|
%patch5
|
2011-07-19 14:17:47 +02:00
|
|
|
popd
|
|
|
|
mv crypt/{crypt.h,gnu-crypt.h}
|
|
|
|
mv crypt_blowfish-%crypt_bf_version/*.[chS] crypt/
|
|
|
|
#
|
2012-04-13 11:37:44 +02:00
|
|
|
%patch1 -p1
|
2012-04-19 13:14:21 +02:00
|
|
|
%patch6 -p1
|
|
|
|
%patch7 -p1
|
|
|
|
%patch8 -p1
|
|
|
|
%patch10 -p1
|
|
|
|
%patch13 -p1
|
|
|
|
%patch14 -p1
|
|
|
|
%patch15 -p1
|
2013-09-23 12:27:21 +02:00
|
|
|
%patch19 -p1
|
2012-04-19 13:14:21 +02:00
|
|
|
|
|
|
|
%patch100 -p1
|
|
|
|
%patch102 -p1
|
|
|
|
%patch103 -p1
|
2016-03-09 17:10:36 +01:00
|
|
|
%patch104 -p1
|
|
|
|
%patch105 -p1
|
2012-04-19 13:14:21 +02:00
|
|
|
|
|
|
|
%patch304 -p1
|
|
|
|
%patch306 -p1
|
2013-09-11 15:17:37 +02:00
|
|
|
|
2014-03-25 15:45:48 +01:00
|
|
|
%patch2000 -p1
|
2016-02-24 12:39:39 +01:00
|
|
|
%patch2004 -p1
|
2014-06-17 12:58:27 +02:00
|
|
|
%patch2005 -p1
|
2014-07-28 14:42:05 +02:00
|
|
|
%patch2006 -p1
|
2011-07-04 15:26:19 +02:00
|
|
|
|
2013-02-28 16:19:48 +01:00
|
|
|
%patch3000
|
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
#
|
|
|
|
# Inconsistency detected by ld.so: dl-close.c: 719: _dl_close: Assertion `map->l_init_called' failed!
|
|
|
|
#
|
|
|
|
# Glibc 2.8 introduced the HP_TIMING element to the rtld_global_ro struct # definition.
|
|
|
|
# If the base is built without power4 the loader won't have this element in
|
|
|
|
# the struct whereas the power4/5/6/... libc will, so there will be a disconnect
|
|
|
|
# between the size of the rtld_global_ro struct between the two and dl_close
|
|
|
|
# ends up getting called incorrectly when it's actually attempting to call a
|
|
|
|
# resolver function. This is because the GLRO() macro simply attempts to
|
|
|
|
# compute an offset and gets the wrong one.
|
|
|
|
# Building the base glibc with --with-cpu=power4 solves this problem.
|
|
|
|
# But: ppc32 can not default to -mcpu=power4 because it would emit instructions
|
|
|
|
# which are not available on G3, G4 etc.
|
|
|
|
#
|
|
|
|
# We simply remove the power4 files, and build the base glibc for a generic powerpc cpu
|
|
|
|
# Additional cputuned libs can now be used on powerpc32
|
|
|
|
#
|
|
|
|
rm -fv sysdeps/powerpc/powerpc32/power4/hp-timing.c sysdeps/powerpc/powerpc32/power4/hp-timing.h
|
|
|
|
find . -name configure | xargs touch
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%build
|
|
|
|
if [ -x /bin/uname.bin ]; then
|
2010-01-03 12:31:34 +01:00
|
|
|
/bin/uname.bin -a
|
2009-02-20 08:46:43 +01:00
|
|
|
else
|
2010-01-03 12:31:34 +01:00
|
|
|
uname -a
|
2009-02-20 08:46:43 +01:00
|
|
|
fi
|
|
|
|
uptime || :
|
|
|
|
ulimit -a
|
|
|
|
nice
|
2012-01-12 12:49:18 +01:00
|
|
|
# We do not want configure to figure out the system its building one
|
|
|
|
# to support a common ground and thus set build and host to the
|
|
|
|
# target_cpu.
|
2012-01-31 10:40:30 +01:00
|
|
|
%ifarch %arm
|
|
|
|
%define target %{_target_cpu}-suse-linux-gnueabi
|
|
|
|
%else
|
2012-01-12 12:49:18 +01:00
|
|
|
%define target %{_target_cpu}-suse-linux
|
2012-01-31 10:40:30 +01:00
|
|
|
%endif
|
2012-04-13 11:37:44 +02:00
|
|
|
# Don't use as-needed, it breaks glibc assumptions
|
|
|
|
# Before enabling it, run the testsuite and verify that it
|
|
|
|
# passes completely
|
|
|
|
export SUSE_ASNEEDED=0
|
2009-02-20 08:46:43 +01:00
|
|
|
# Adjust glibc version.h
|
2012-01-31 10:40:30 +01:00
|
|
|
echo "#define CONFHOST \"%{target}\"" >> version.h
|
2012-11-13 12:56:09 +01:00
|
|
|
echo "#define GITID \"%{git_id}\"" >> version.h
|
2009-02-20 08:46:43 +01:00
|
|
|
#
|
|
|
|
# Default CFLAGS and Compiler
|
|
|
|
#
|
2011-06-27 14:05:13 +02:00
|
|
|
BuildFlags="%{optflags} -U_FORTIFY_SOURCE"
|
Accepting request 454919 from home:Andreas_Schwab:Factory
- Update to glibc 2.25
* The feature test macro __STDC_WANT_LIB_EXT2__, from ISO/IEC TR
24731-2:2010, is supported to enable declarations of functions from that
TR.
* The feature test macro __STDC_WANT_IEC_60559_BFP_EXT__, from ISO/IEC TS
18661-1:2014, is supported to enable declarations of functions and macros
from that TS.
* The feature test macro __STDC_WANT_IEC_60559_FUNCS_EXT__, from ISO/IEC TS
18661-4:2015, is supported to enable declarations of functions and macros
from that TS.
* The nonstandard feature selection macros _REENTRANT and _THREAD_SAFE are
now treated as compatibility synonyms for _POSIX_C_SOURCE=199506L.
* The inclusion of <sys/sysmacros.h> by <sys/types.h> is deprecated.
* New <fenv.h> features from TS 18661-1:2014 are added to libm: the
fesetexcept, fetestexceptflag, fegetmode and fesetmode functions, the
femode_t type and the FE_DFL_MODE and FE_SNANS_ALWAYS_SIGNAL macros.
* Integer width macros from TS 18661-1:2014 are added to <limits.h>:
CHAR_WIDTH, SCHAR_WIDTH, UCHAR_WIDTH, SHRT_WIDTH, USHRT_WIDTH, INT_WIDTH,
UINT_WIDTH, LONG_WIDTH, ULONG_WIDTH, LLONG_WIDTH, ULLONG_WIDTH; and to
<stdint.h>: INT8_WIDTH, UINT8_WIDTH, INT16_WIDTH, UINT16_WIDTH,
INT32_WIDTH, UINT32_WIDTH, INT64_WIDTH, UINT64_WIDTH, INT_LEAST8_WIDTH,
UINT_LEAST8_WIDTH, INT_LEAST16_WIDTH, UINT_LEAST16_WIDTH,
INT_LEAST32_WIDTH, UINT_LEAST32_WIDTH, INT_LEAST64_WIDTH,
UINT_LEAST64_WIDTH, INT_FAST8_WIDTH, UINT_FAST8_WIDTH, INT_FAST16_WIDTH,
UINT_FAST16_WIDTH, INT_FAST32_WIDTH, UINT_FAST32_WIDTH, INT_FAST64_WIDTH,
UINT_FAST64_WIDTH, INTPTR_WIDTH, UINTPTR_WIDTH, INTMAX_WIDTH,
UINTMAX_WIDTH, PTRDIFF_WIDTH, SIG_ATOMIC_WIDTH, SIZE_WIDTH, WCHAR_WIDTH,
WINT_WIDTH.
* New <math.h> features are added from TS 18661-1:2014:
- Signaling NaN macros: SNANF, SNAN, SNANL.
OBS-URL: https://build.opensuse.org/request/show/454919
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=451
2017-02-06 11:25:17 +01:00
|
|
|
enable_stack_protector=
|
|
|
|
for opt in $BuildFlags; do
|
|
|
|
case $opt in
|
|
|
|
-fstack-protector-strong) enable_stack_protector=strong ;;
|
|
|
|
-fstack-protector-all) enable_stack_protector=all ;;
|
|
|
|
-fstack-protector) enable_stack_protector=yes ;;
|
|
|
|
esac
|
|
|
|
done
|
2015-07-21 10:35:40 +02:00
|
|
|
BuildFlags=$(echo $BuildFlags | sed -e 's#-fstack-protector[^ ]*##' -e 's#-ffortify=[0-9]*##')
|
2011-10-10 15:44:00 +02:00
|
|
|
BuildCC="%__cc"
|
|
|
|
BuildCCplus="%__cxx"
|
2014-09-15 12:37:45 +02:00
|
|
|
add_ons=libidn
|
2009-02-20 08:46:43 +01:00
|
|
|
#
|
|
|
|
#now overwrite for some architectures
|
|
|
|
#
|
|
|
|
%ifarch sparc64
|
2010-01-03 12:31:34 +01:00
|
|
|
BuildFlags="-O2 -mcpu=ultrasparc -mvis -fcall-used-g6"
|
|
|
|
BuildCC="gcc -m64"
|
|
|
|
BuildCCplus="$BuildCCplus -m64"
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
%ifarch sparc
|
2010-01-03 12:31:34 +01:00
|
|
|
BuildFlags="$BuildFlags -fcall-used-g6"
|
|
|
|
BuildCC="gcc -m32"
|
|
|
|
BuildCCplus="$BuildCCplus -m32"
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
%ifarch sparcv9
|
2010-01-03 12:31:34 +01:00
|
|
|
BuildFlags="$BuildFlags -mcpu=ultrasparc -fcall-used-g6"
|
|
|
|
BuildCC="gcc -m32"
|
|
|
|
BuildCCplus="$BuildCCplus -m32"
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
%ifarch alphaev6
|
2010-01-03 12:31:34 +01:00
|
|
|
BuildFlags="-mcpu=ev6"
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
%ifarch ppc ppc64
|
2010-01-03 12:31:34 +01:00
|
|
|
BuildFlags="$(echo $BuildFlags | sed 's#-mminimal-toc##')"
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
%ifarch ppc64
|
2010-01-03 12:31:34 +01:00
|
|
|
BuildCC="$BuildCC -m64"
|
|
|
|
BuildCCplus="$BuildCCplus -m64"
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
%ifarch hppa
|
2010-01-03 12:31:34 +01:00
|
|
|
BuildFlags="$BuildFlags -mpa-risc-1-1 -fstrict-aliasing"
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
# Add flags for all plattforms except AXP
|
|
|
|
%ifnarch alpha
|
2010-01-03 12:31:34 +01:00
|
|
|
BuildFlags="$BuildFlags -g"
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
%if %{disable_assert}
|
2010-01-03 12:31:34 +01:00
|
|
|
BuildFlags="$BuildFlags -DNDEBUG=1"
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
2013-08-06 16:52:55 +02:00
|
|
|
%ifarch mipsel
|
2010-01-03 12:31:34 +01:00
|
|
|
# fails to build otherwise - need to recheck and fix
|
|
|
|
%define enable_stackguard_randomization 0
|
2009-05-27 12:39:38 +02:00
|
|
|
%endif
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
configure_and_build_glibc() {
|
2010-01-03 12:31:34 +01:00
|
|
|
local dirname="$1"; shift
|
|
|
|
local cflags="$1"; shift
|
|
|
|
mkdir "cc-$dirname"
|
|
|
|
cd "cc-$dirname"
|
2013-02-03 01:09:09 +01:00
|
|
|
%ifarch %arm aarch64
|
2011-11-10 15:05:53 +01:00
|
|
|
# remove asynchronous-unwind-tables during configure as it causes
|
2011-12-27 09:19:44 +01:00
|
|
|
# some checks to fail spuriously on arm
|
2011-11-10 15:05:53 +01:00
|
|
|
conf_cflags="${cflags/-fasynchronous-unwind-tables/}"
|
|
|
|
conf_cflags="${conf_cflags/-funwind-tables/}"
|
|
|
|
%else
|
|
|
|
conf_cflags="$cflags"
|
|
|
|
%endif
|
2012-04-13 11:37:44 +02:00
|
|
|
|
2012-04-18 13:54:26 +02:00
|
|
|
profile="--disable-profile"
|
|
|
|
%if %{build_profile}
|
2012-04-19 10:18:58 +02:00
|
|
|
if [ "$dirname" = "base" ] ; then
|
2012-04-18 13:54:26 +02:00
|
|
|
profile="--enable-profile"
|
|
|
|
fi
|
|
|
|
%endif
|
2014-05-15 18:27:45 +02:00
|
|
|
../configure \
|
|
|
|
CFLAGS="$conf_cflags" BUILD_CFLAGS="$conf_cflags" \
|
|
|
|
CC="$BuildCC" CXX="$BuildCCplus" \
|
2010-01-03 12:31:34 +01:00
|
|
|
--prefix=%{_prefix} \
|
2012-09-04 20:58:49 +02:00
|
|
|
--libexecdir=%{_libexecdir} --infodir=%{_infodir} \
|
2014-09-15 12:37:45 +02:00
|
|
|
--enable-add-ons=$add_ons \
|
Accepting request 572614 from home:Andreas_Schwab:Factory
- Update to glibc 2.27
* Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf,
sinf, sincosf and tan with FMA
* Optimized x86-64 trunc and truncf for processors with SSE4.1
* Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and
sincosf
* In order to support faster and safer process termination the malloc API
family of functions will no longer print a failure address and stack
backtrace after detecting heap corruption
* The abort function terminates the process immediately, without flushing
stdio streams
* On platforms where long double has the IEEE binary128 format (aarch64,
alpha, mips64, riscv, s390 and sparc), the math library now implements
_Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015
These are the same interfaces added in version 2.26 for some platforms where
this format is supported but is not the format of long double
* On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now
implements interfaces for that type, as defined by ISO/IEC TS
18661-3:2015
* The math library now implements interfaces for the _Float32, _Float64 and
_Float32x types, as defined by ISO/IEC TS 18661-3:2015
* glibc now implements the memfd_create and mlock2 functions on Linux
* Support for memory protection keys was added
* The copy_file_range function was added
* The ldconfig utility now processes `include' directives using the C/POSIX
collation ordering
* Support for two grammatical forms of month names has been added
* Support for the RISC-V ISA running on Linux has been added
* Statically compiled applications attempting to load locales compiled for the
OBS-URL: https://build.opensuse.org/request/show/572614
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=491
2018-02-05 11:33:11 +01:00
|
|
|
$profile \
|
2010-01-03 12:31:34 +01:00
|
|
|
"$@" \
|
2012-01-12 12:49:18 +01:00
|
|
|
--build=%{target} --host=%{target} \
|
2017-06-22 14:54:01 +02:00
|
|
|
%ifarch armv7hl ppc ppc64 ppc64le i686 x86_64 sparc sparc64 s390 s390x
|
2010-11-16 02:47:23 +01:00
|
|
|
--enable-multi-arch \
|
2009-05-27 12:39:38 +02:00
|
|
|
%endif
|
2011-10-10 15:44:00 +02:00
|
|
|
%ifarch mipsel
|
|
|
|
--without-fp \
|
2013-08-06 16:52:55 +02:00
|
|
|
%endif
|
|
|
|
%ifarch ppc64p7
|
|
|
|
--with-cpu=power7 \
|
2011-10-10 15:44:00 +02:00
|
|
|
%endif
|
Accepting request 454919 from home:Andreas_Schwab:Factory
- Update to glibc 2.25
* The feature test macro __STDC_WANT_LIB_EXT2__, from ISO/IEC TR
24731-2:2010, is supported to enable declarations of functions from that
TR.
* The feature test macro __STDC_WANT_IEC_60559_BFP_EXT__, from ISO/IEC TS
18661-1:2014, is supported to enable declarations of functions and macros
from that TS.
* The feature test macro __STDC_WANT_IEC_60559_FUNCS_EXT__, from ISO/IEC TS
18661-4:2015, is supported to enable declarations of functions and macros
from that TS.
* The nonstandard feature selection macros _REENTRANT and _THREAD_SAFE are
now treated as compatibility synonyms for _POSIX_C_SOURCE=199506L.
* The inclusion of <sys/sysmacros.h> by <sys/types.h> is deprecated.
* New <fenv.h> features from TS 18661-1:2014 are added to libm: the
fesetexcept, fetestexceptflag, fegetmode and fesetmode functions, the
femode_t type and the FE_DFL_MODE and FE_SNANS_ALWAYS_SIGNAL macros.
* Integer width macros from TS 18661-1:2014 are added to <limits.h>:
CHAR_WIDTH, SCHAR_WIDTH, UCHAR_WIDTH, SHRT_WIDTH, USHRT_WIDTH, INT_WIDTH,
UINT_WIDTH, LONG_WIDTH, ULONG_WIDTH, LLONG_WIDTH, ULLONG_WIDTH; and to
<stdint.h>: INT8_WIDTH, UINT8_WIDTH, INT16_WIDTH, UINT16_WIDTH,
INT32_WIDTH, UINT32_WIDTH, INT64_WIDTH, UINT64_WIDTH, INT_LEAST8_WIDTH,
UINT_LEAST8_WIDTH, INT_LEAST16_WIDTH, UINT_LEAST16_WIDTH,
INT_LEAST32_WIDTH, UINT_LEAST32_WIDTH, INT_LEAST64_WIDTH,
UINT_LEAST64_WIDTH, INT_FAST8_WIDTH, UINT_FAST8_WIDTH, INT_FAST16_WIDTH,
UINT_FAST16_WIDTH, INT_FAST32_WIDTH, UINT_FAST32_WIDTH, INT_FAST64_WIDTH,
UINT_FAST64_WIDTH, INTPTR_WIDTH, UINTPTR_WIDTH, INTMAX_WIDTH,
UINTMAX_WIDTH, PTRDIFF_WIDTH, SIG_ATOMIC_WIDTH, SIZE_WIDTH, WCHAR_WIDTH,
WINT_WIDTH.
* New <math.h> features are added from TS 18661-1:2014:
- Signaling NaN macros: SNANF, SNAN, SNANL.
OBS-URL: https://build.opensuse.org/request/show/454919
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=451
2017-02-06 11:25:17 +01:00
|
|
|
%if %{enable_stackguard_randomization}
|
|
|
|
--enable-stackguard-randomization \
|
|
|
|
%endif
|
|
|
|
${enable_stack_protector:+--enable-stack-protector=$enable_stack_protector} \
|
|
|
|
--enable-tunables \
|
2012-01-03 15:57:43 +01:00
|
|
|
--enable-kernel=%{enablekernel} \
|
2012-12-27 13:32:57 +01:00
|
|
|
--with-bugurl=http://bugs.opensuse.org \
|
2017-07-26 17:08:57 +02:00
|
|
|
--enable-bind-now \
|
2016-02-24 12:39:39 +01:00
|
|
|
--disable-timezone-tools
|
2012-08-28 14:25:24 +02:00
|
|
|
# Should we enable --enable-systemtap?
|
2011-05-25 21:08:25 +02:00
|
|
|
# Should we enable --enable-nss-crypt to build use freebl3 hash functions?
|
2011-11-10 15:05:53 +01:00
|
|
|
# explicitly set CFLAGS to use the full CFLAGS (not the reduced one for configure)
|
2012-08-28 14:25:24 +02:00
|
|
|
make %{?_smp_mflags} CFLAGS="$cflags" BUILD_CFLAGS="$cflags"
|
2010-01-03 12:31:34 +01:00
|
|
|
cd ..
|
2009-02-20 08:46:43 +01:00
|
|
|
}
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2010-01-03 12:31:34 +01:00
|
|
|
%if !%{optimize_power}
|
|
|
|
#
|
|
|
|
# Build base glibc
|
|
|
|
#
|
2014-09-15 12:37:45 +02:00
|
|
|
configure_and_build_glibc base "$BuildFlags"
|
2009-02-20 08:46:43 +01:00
|
|
|
%else
|
2010-01-03 12:31:34 +01:00
|
|
|
#
|
|
|
|
# Build POWER-optimized glibc
|
|
|
|
#
|
|
|
|
# First, base build:
|
2013-10-16 14:30:46 +02:00
|
|
|
pBuildFlags="$BuildFlags -mtune=%{powerpc_optimize_tune}"
|
|
|
|
%if "%{powerpc_optimize_base}" != ""
|
|
|
|
pBuildFlags+=" -mcpu=%{powerpc_optimize_base}"
|
|
|
|
%endif
|
|
|
|
%if "%{powerpc_optimize_base}" != ""
|
2014-09-15 12:37:45 +02:00
|
|
|
configure_and_build_glibc base "$pBuildFlags" --with-cpu=%{powerpc_optimize_base}
|
2010-04-26 13:34:14 +02:00
|
|
|
%else
|
|
|
|
# Use no default CPU
|
2014-09-15 12:37:45 +02:00
|
|
|
configure_and_build_glibc base "$pBuildFlags"
|
2010-04-26 13:34:14 +02:00
|
|
|
%endif
|
2014-07-22 15:22:57 +02:00
|
|
|
%if %{build_variants}
|
2010-01-03 12:31:34 +01:00
|
|
|
# Then other power variants:
|
|
|
|
for pcpu in \
|
2010-04-26 13:34:14 +02:00
|
|
|
%if %{powerpc_optimize_cpu_power4}
|
|
|
|
power4 \
|
|
|
|
%endif
|
2010-01-03 12:31:34 +01:00
|
|
|
%if %{powerpc_optimize_cpu_power6}
|
|
|
|
power6 \
|
|
|
|
%endif
|
|
|
|
%if %{powerpc_optimize_cpu_power7}
|
|
|
|
power7 \
|
|
|
|
%endif
|
|
|
|
; do
|
2014-09-15 12:37:45 +02:00
|
|
|
configure_and_build_glibc $pcpu "$BuildFlags -mcpu=$pcpu" \
|
2012-11-21 19:55:43 +01:00
|
|
|
--with-cpu=$pcpu
|
2010-01-03 12:31:34 +01:00
|
|
|
done
|
|
|
|
# Eventually, special Cell variant:
|
|
|
|
%if %{powerpc_optimize_cpu_cell}
|
2014-09-15 12:37:45 +02:00
|
|
|
configure_and_build_glibc ppc-cell-be "$BuildFlags -mcpu=cell"
|
2010-01-03 12:31:34 +01:00
|
|
|
%endif
|
2014-07-22 15:22:57 +02:00
|
|
|
%endif # %{build_variants}
|
2010-01-03 12:31:34 +01:00
|
|
|
%endif # optimize_power
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
#
|
|
|
|
# Build html documentation
|
|
|
|
#
|
2012-04-16 22:11:08 +02:00
|
|
|
%if %{build_html}
|
2010-01-03 12:31:34 +01:00
|
|
|
make -C cc-base html
|
2012-04-16 22:11:08 +02:00
|
|
|
%endif
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
#
|
|
|
|
# Build glibc_post_upgrade binary
|
|
|
|
#
|
2011-06-27 14:05:13 +02:00
|
|
|
$BuildCC -static %{optflags} -Os $RPM_SOURCE_DIR/glibc_post_upgrade.c -o glibc_post_upgrade \
|
2010-01-03 12:31:34 +01:00
|
|
|
-Lcc-base -Bcc-base/csu \
|
2010-04-26 13:34:14 +02:00
|
|
|
'-DREMOVE_TLS_DIRS' '-DREMOVE_PPC_OPTIMIZE_POWER5' \
|
2009-02-20 08:46:43 +01:00
|
|
|
%ifarch ppc ppc64
|
2010-04-26 13:34:14 +02:00
|
|
|
%if !%{powerpc_optimize_cpu_power4}
|
|
|
|
'-DREMOVE_PPC_OPTIMIZE_POWER4' \
|
|
|
|
%endif
|
2010-01-03 12:31:34 +01:00
|
|
|
%if !%{powerpc_optimize_cpu_power6}
|
2009-02-20 08:46:43 +01:00
|
|
|
'-DREMOVE_PPC_OPTIMIZE_POWER6' \
|
2010-01-03 12:31:34 +01:00
|
|
|
%endif
|
|
|
|
%if !%{powerpc_optimize_cpu_power7}
|
2009-02-20 08:46:43 +01:00
|
|
|
'-DREMOVE_PPC_OPTIMIZE_POWER7' \
|
2010-01-03 12:31:34 +01:00
|
|
|
%endif
|
|
|
|
%if !%{powerpc_optimize_cpu_cell}
|
2009-02-20 08:46:43 +01:00
|
|
|
'-DREMOVE_PPC_OPTIMIZE_CELL' \
|
2010-01-03 12:31:34 +01:00
|
|
|
%endif
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
2011-06-27 14:05:13 +02:00
|
|
|
'-DLIBDIR="/%{_lib}"' '-DGCONV_MODULES_DIR="%{_libdir}/gconv"'
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2011-07-21 11:06:03 +02:00
|
|
|
# crypt_blowfish man pages
|
|
|
|
pushd crypt_blowfish-%{crypt_bf_version}
|
|
|
|
make man
|
|
|
|
popd
|
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%check
|
2017-07-12 15:21:16 +02:00
|
|
|
%if %{build_testsuite}
|
2012-04-13 11:37:44 +02:00
|
|
|
# The testsuite will fail if asneeded is used
|
|
|
|
export SUSE_ASNEEDED=0
|
2012-12-17 14:15:06 +01:00
|
|
|
# Increase timeout
|
|
|
|
export TIMEOUTFACTOR=16
|
2016-07-07 14:43:40 +02:00
|
|
|
# The testsuite does its own malloc checking
|
|
|
|
unset MALLOC_CHECK_
|
2014-09-15 12:37:45 +02:00
|
|
|
make -C cc-base -k check || {
|
|
|
|
cd cc-base
|
|
|
|
o=$-
|
|
|
|
set +x
|
Accepting request 454919 from home:Andreas_Schwab:Factory
- Update to glibc 2.25
* The feature test macro __STDC_WANT_LIB_EXT2__, from ISO/IEC TR
24731-2:2010, is supported to enable declarations of functions from that
TR.
* The feature test macro __STDC_WANT_IEC_60559_BFP_EXT__, from ISO/IEC TS
18661-1:2014, is supported to enable declarations of functions and macros
from that TS.
* The feature test macro __STDC_WANT_IEC_60559_FUNCS_EXT__, from ISO/IEC TS
18661-4:2015, is supported to enable declarations of functions and macros
from that TS.
* The nonstandard feature selection macros _REENTRANT and _THREAD_SAFE are
now treated as compatibility synonyms for _POSIX_C_SOURCE=199506L.
* The inclusion of <sys/sysmacros.h> by <sys/types.h> is deprecated.
* New <fenv.h> features from TS 18661-1:2014 are added to libm: the
fesetexcept, fetestexceptflag, fegetmode and fesetmode functions, the
femode_t type and the FE_DFL_MODE and FE_SNANS_ALWAYS_SIGNAL macros.
* Integer width macros from TS 18661-1:2014 are added to <limits.h>:
CHAR_WIDTH, SCHAR_WIDTH, UCHAR_WIDTH, SHRT_WIDTH, USHRT_WIDTH, INT_WIDTH,
UINT_WIDTH, LONG_WIDTH, ULONG_WIDTH, LLONG_WIDTH, ULLONG_WIDTH; and to
<stdint.h>: INT8_WIDTH, UINT8_WIDTH, INT16_WIDTH, UINT16_WIDTH,
INT32_WIDTH, UINT32_WIDTH, INT64_WIDTH, UINT64_WIDTH, INT_LEAST8_WIDTH,
UINT_LEAST8_WIDTH, INT_LEAST16_WIDTH, UINT_LEAST16_WIDTH,
INT_LEAST32_WIDTH, UINT_LEAST32_WIDTH, INT_LEAST64_WIDTH,
UINT_LEAST64_WIDTH, INT_FAST8_WIDTH, UINT_FAST8_WIDTH, INT_FAST16_WIDTH,
UINT_FAST16_WIDTH, INT_FAST32_WIDTH, UINT_FAST32_WIDTH, INT_FAST64_WIDTH,
UINT_FAST64_WIDTH, INTPTR_WIDTH, UINTPTR_WIDTH, INTMAX_WIDTH,
UINTMAX_WIDTH, PTRDIFF_WIDTH, SIG_ATOMIC_WIDTH, SIZE_WIDTH, WCHAR_WIDTH,
WINT_WIDTH.
* New <math.h> features are added from TS 18661-1:2014:
- Signaling NaN macros: SNANF, SNAN, SNANL.
OBS-URL: https://build.opensuse.org/request/show/454919
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=451
2017-02-06 11:25:17 +01:00
|
|
|
for sum in subdir-tests.sum */subdir-tests.sum; do
|
2014-09-15 12:37:45 +02:00
|
|
|
while read s t; do
|
|
|
|
case $s in
|
|
|
|
XPASS:|PASS:)
|
|
|
|
echo ++++++ $s $t ++++++
|
|
|
|
;;
|
|
|
|
*) # X?FAIL:
|
|
|
|
echo ------ $s $t ------
|
|
|
|
test ! -f $t.out || cat $t.out
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
done < $sum
|
|
|
|
done
|
|
|
|
set -$o
|
2016-06-13 09:05:23 +02:00
|
|
|
# Fail build if there where compilation errors during testsuite run
|
|
|
|
test -f tests.sum
|
2014-09-15 12:37:45 +02:00
|
|
|
}
|
2012-12-17 14:15:06 +01:00
|
|
|
%else
|
2012-08-28 14:25:24 +02:00
|
|
|
# This has to pass on all platforms!
|
2012-04-17 14:34:50 +02:00
|
|
|
# Exceptions:
|
2012-10-25 18:41:15 +02:00
|
|
|
# None!
|
2012-08-28 14:25:24 +02:00
|
|
|
make %{?_smp_mflags} -C cc-base check-abi
|
2013-01-24 18:32:50 +01:00
|
|
|
%endif
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%install
|
2017-07-12 15:21:16 +02:00
|
|
|
%if %{build_main}
|
2009-02-20 08:46:43 +01:00
|
|
|
# We don't want to strip the .symtab from our libraries in find-debuginfo.sh,
|
2010-01-03 12:31:34 +01:00
|
|
|
# certainly not from libpthread.so.* because it is used by libthread_db to find
|
2009-02-20 08:46:43 +01:00
|
|
|
# some non-exported symbols in order to detect if threading support
|
|
|
|
# should be enabled. These symbols are _not_ exported, and we can't easily
|
|
|
|
# export them retroactively without changing the ABI. So we have to
|
|
|
|
# continue to "export" them via .symtab, instead of .dynsym :-(
|
2010-01-03 12:31:34 +01:00
|
|
|
# But we also want to keep .symtab and .strtab of other libraries since some
|
|
|
|
# debugging tools currently require these sections directly inside the main
|
|
|
|
# files - specifically valgrind and PurifyPlus.
|
|
|
|
export STRIP_KEEP_SYMTAB=*.so*
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
# Make sure we will create the gconv-modules.cache
|
2011-06-27 14:05:13 +02:00
|
|
|
mkdir -p %{buildroot}%{_libdir}/gconv
|
|
|
|
touch %{buildroot}%{_libdir}/gconv/gconv-modules.cache
|
2010-03-18 14:37:59 +01:00
|
|
|
|
Accepting request 572614 from home:Andreas_Schwab:Factory
- Update to glibc 2.27
* Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf,
sinf, sincosf and tan with FMA
* Optimized x86-64 trunc and truncf for processors with SSE4.1
* Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and
sincosf
* In order to support faster and safer process termination the malloc API
family of functions will no longer print a failure address and stack
backtrace after detecting heap corruption
* The abort function terminates the process immediately, without flushing
stdio streams
* On platforms where long double has the IEEE binary128 format (aarch64,
alpha, mips64, riscv, s390 and sparc), the math library now implements
_Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015
These are the same interfaces added in version 2.26 for some platforms where
this format is supported but is not the format of long double
* On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now
implements interfaces for that type, as defined by ISO/IEC TS
18661-3:2015
* The math library now implements interfaces for the _Float32, _Float64 and
_Float32x types, as defined by ISO/IEC TS 18661-3:2015
* glibc now implements the memfd_create and mlock2 functions on Linux
* Support for memory protection keys was added
* The copy_file_range function was added
* The ldconfig utility now processes `include' directives using the C/POSIX
collation ordering
* Support for two grammatical forms of month names has been added
* Support for the RISC-V ISA running on Linux has been added
* Statically compiled applications attempting to load locales compiled for the
OBS-URL: https://build.opensuse.org/request/show/572614
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=491
2018-02-05 11:33:11 +01:00
|
|
|
%ifarch riscv64
|
|
|
|
ln -s . %{buildroot}%{_libdir}/lp64d
|
|
|
|
mkdir -p %{buildroot}/%{_lib}
|
|
|
|
ln -s . %{buildroot}/%{_lib}/lp64d
|
|
|
|
%endif
|
|
|
|
|
2010-01-03 12:31:34 +01:00
|
|
|
# Install base glibc
|
2012-08-28 14:25:24 +02:00
|
|
|
make %{?_smp_mflags} install_root=%{buildroot} install -C cc-base
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2012-01-04 08:26:35 +01:00
|
|
|
install_optimized_variant() {
|
|
|
|
local dirname="$1"; shift
|
|
|
|
local subdir="$1"; shift
|
|
|
|
local subdir_up="$1"; shift
|
|
|
|
|
|
|
|
cd "cc-$dirname"
|
|
|
|
destdir=$RPM_BUILD_ROOT/%{_lib}/$subdir
|
|
|
|
mkdir -p $destdir
|
|
|
|
# Don't run a complete make install, we know which libraries
|
|
|
|
# we want
|
|
|
|
for lib in libc math/libm nptl/libpthread rt/librt nptl_db/libthread_db
|
|
|
|
do
|
|
|
|
libbase=${lib#*/}
|
|
|
|
libbaseso=$(basename $RPM_BUILD_ROOT/%{_lib}/${libbase}-*.so)
|
|
|
|
# Only install if different from base lib
|
|
|
|
if cmp -s ${lib}.so ../cc-base/${lib}.so; then
|
|
|
|
ln -sf $subdir_up/$libbaseso $destdir/$libbaseso
|
|
|
|
else
|
|
|
|
cp -a ${lib}.so $destdir/$libbaseso
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
cd ..
|
2014-05-15 18:27:45 +02:00
|
|
|
cc-base/elf/ldconfig -vn $destdir
|
2012-01-04 08:26:35 +01:00
|
|
|
}
|
|
|
|
|
2010-01-03 12:31:34 +01:00
|
|
|
# Install power-optimized glibc
|
2009-02-20 08:46:43 +01:00
|
|
|
%if %{optimize_power}
|
2010-04-26 13:34:14 +02:00
|
|
|
%if %{powerpc_optimize_cpu_power4}
|
2012-01-04 08:26:35 +01:00
|
|
|
install_optimized_variant power4 power4 ".."
|
2010-04-26 13:34:14 +02:00
|
|
|
%endif
|
2010-01-03 12:31:34 +01:00
|
|
|
%if %{powerpc_optimize_cpu_power6}
|
2012-01-04 08:26:35 +01:00
|
|
|
install_optimized_variant power6 power6 ".."
|
2010-01-03 12:31:34 +01:00
|
|
|
%endif
|
|
|
|
%if %{powerpc_optimize_cpu_power7}
|
2012-01-04 08:26:35 +01:00
|
|
|
install_optimized_variant power7 power7 ".."
|
2010-01-03 12:31:34 +01:00
|
|
|
%endif
|
|
|
|
%if %{powerpc_optimize_cpu_cell}
|
2014-05-15 18:27:45 +02:00
|
|
|
install_optimized_variant ppc-cell-be ppc-cell-be ".."
|
2010-01-03 12:31:34 +01:00
|
|
|
%endif
|
|
|
|
%if %{powerpc_optimize_cpu_power6}
|
2012-01-04 08:26:35 +01:00
|
|
|
# power6 is compatible with power6x
|
|
|
|
# doing a directory symlink doesnt work, ldconfig follows them and accepts only the first real dir
|
|
|
|
if test -d %{buildroot}/%{_lib}/power6; then
|
|
|
|
mkdir -p %{buildroot}/%{_lib}/power6x
|
|
|
|
for i in %{buildroot}/%{_lib}/power6/*.so; do
|
2014-05-15 18:27:45 +02:00
|
|
|
b=$(basename $i)
|
|
|
|
ln -vs ../power6/$b %{buildroot}/%{_lib}/power6x/$b
|
2012-01-04 08:26:35 +01:00
|
|
|
done
|
2014-05-15 18:27:45 +02:00
|
|
|
cc-base/elf/ldconfig -vn %{buildroot}/%{_lib}/power6x
|
2012-01-04 08:26:35 +01:00
|
|
|
fi
|
2010-01-03 12:31:34 +01:00
|
|
|
%endif
|
|
|
|
%endif # optimize_power
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2010-01-03 12:31:34 +01:00
|
|
|
# Install locales
|
2009-02-20 08:46:43 +01:00
|
|
|
%if %{build_locales}
|
2012-08-28 14:25:24 +02:00
|
|
|
# XXX Do not install locales in parallel!
|
2010-01-03 12:31:34 +01:00
|
|
|
cd cc-base
|
2012-08-28 14:25:24 +02:00
|
|
|
# localedef creates hardlinks to other locales if possible
|
|
|
|
# this will not work if we generate them in parallel.
|
|
|
|
# thus we need to run fdupes on /usr/lib/locale/
|
|
|
|
# Still, on my system this is a speed advantage:
|
|
|
|
# non-parallel build for install-locales: 9:34mins
|
|
|
|
# parallel build with fdupes: 7:08mins
|
|
|
|
make %{?_smp_mflags} install_root=%{buildroot} localedata/install-locales
|
|
|
|
%fdupes %{buildroot}/usr/lib/locale
|
2010-01-03 12:31:34 +01:00
|
|
|
cd ..
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
2010-01-03 12:31:34 +01:00
|
|
|
# Create file list for glibc-locale package
|
2009-02-20 08:46:43 +01:00
|
|
|
%{find_lang} libc
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2010-01-03 12:31:34 +01:00
|
|
|
# Miscelanna:
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2011-06-27 14:05:13 +02:00
|
|
|
install -m 0700 glibc_post_upgrade %{buildroot}%{_sbindir}
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2012-04-19 13:14:21 +02:00
|
|
|
install -m 644 %{SOURCE7} %{buildroot}/etc
|
|
|
|
install -m 644 %{SOURCE5} %{buildroot}/etc
|
2011-06-27 14:05:13 +02:00
|
|
|
install -m 644 posix/gai.conf %{buildroot}/etc
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2011-06-27 14:05:13 +02:00
|
|
|
mkdir -p %{buildroot}/etc/default
|
|
|
|
install -m 644 nis/nss %{buildroot}/etc/default/
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2011-06-27 14:05:13 +02:00
|
|
|
mkdir -p %{buildroot}%{_includedir}/resolv
|
|
|
|
install -m 0644 resolv/mapv4v6addr.h %{buildroot}%{_includedir}/resolv/
|
|
|
|
install -m 0644 resolv/mapv4v6hostent.h %{buildroot}%{_includedir}/resolv/
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2012-04-16 22:11:08 +02:00
|
|
|
%if %{build_html}
|
2011-06-27 14:05:13 +02:00
|
|
|
mkdir -p %{buildroot}%{_datadir}/doc/glibc
|
2012-08-28 14:25:24 +02:00
|
|
|
cp -p cc-base/manual/libc/*.html %{buildroot}%{_datadir}/doc/glibc
|
2012-04-16 22:11:08 +02:00
|
|
|
%endif
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2011-06-27 14:05:13 +02:00
|
|
|
cd manpages; make install_root=%{buildroot} install; cd ..
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2011-07-21 11:06:03 +02:00
|
|
|
# crypt_blowfish man pages
|
|
|
|
pushd crypt_blowfish-%{crypt_bf_version}
|
|
|
|
install -m755 -d %{buildroot}%{_mandir}/man3
|
|
|
|
install -m644 *.3 %{buildroot}%{_mandir}/man3
|
|
|
|
popd
|
|
|
|
|
2010-01-03 12:31:34 +01:00
|
|
|
# nscd tools:
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2016-10-13 11:25:07 +02:00
|
|
|
%ifnarch i686
|
2011-06-27 14:05:13 +02:00
|
|
|
cp nscd/nscd.conf %{buildroot}/etc
|
|
|
|
mkdir -p %{buildroot}/etc/init.d
|
2012-11-24 15:18:54 +01:00
|
|
|
ln -sf /sbin/service %{buildroot}/usr/sbin/rcnscd
|
2014-04-15 15:21:46 +02:00
|
|
|
mkdir -p %{buildroot}/run/nscd
|
2016-10-13 11:25:07 +02:00
|
|
|
mkdir -p %{buildroot}/var/lib/nscd
|
|
|
|
%endif
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
#
|
|
|
|
# Create ld.so.conf
|
|
|
|
#
|
2011-06-27 14:05:13 +02:00
|
|
|
cat > %{buildroot}/etc/ld.so.conf <<EOF
|
2015-06-10 09:15:17 +02:00
|
|
|
%if "%{_lib}" != "lib"
|
|
|
|
/usr/local/%{_lib}
|
2014-02-06 13:58:35 +01:00
|
|
|
%endif
|
|
|
|
%ifarch ppc
|
2011-07-04 15:26:19 +02:00
|
|
|
/usr/local/lib64
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
2011-06-17 13:07:37 +02:00
|
|
|
/usr/local/lib
|
2009-02-20 08:46:43 +01:00
|
|
|
include /etc/ld.so.conf.d/*.conf
|
2011-07-04 15:26:19 +02:00
|
|
|
# /lib64, /lib, /usr/lib64 and /usr/lib gets added
|
|
|
|
# automatically by ldconfig after parsing this file.
|
|
|
|
# So, they do not need to be listed.
|
2009-02-20 08:46:43 +01:00
|
|
|
EOF
|
|
|
|
# Add ldconfig cache directory for directory ownership
|
2011-06-27 14:05:13 +02:00
|
|
|
mkdir -p %{buildroot}/var/cache/ldconfig
|
2010-01-03 12:31:34 +01:00
|
|
|
# Empty the ld.so.cache:
|
2011-06-27 14:05:13 +02:00
|
|
|
rm -f %{buildroot}/etc/ld.so.cache
|
|
|
|
touch %{buildroot}/etc/ld.so.cache
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2010-01-03 12:31:34 +01:00
|
|
|
# Don't look at ldd! We don't wish a /bin/sh requires
|
2011-06-27 14:05:13 +02:00
|
|
|
chmod 644 %{buildroot}%{_bindir}/ldd
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2016-02-24 12:39:39 +01:00
|
|
|
rm -f %{buildroot}/sbin/sln
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2010-01-03 12:31:34 +01:00
|
|
|
# Remove the buildflags tracking section and the build-id
|
2011-06-27 14:05:13 +02:00
|
|
|
for o in %{buildroot}/%{_libdir}/crt[1in].o %{buildroot}/%{_libdir}/lib*_nonshared.a; do
|
2010-01-03 12:31:34 +01:00
|
|
|
objcopy -R ".comment.SUSE.OPTs" -R ".note.gnu.build-id" $o
|
2009-02-20 08:46:43 +01:00
|
|
|
done
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2016-10-13 11:25:07 +02:00
|
|
|
%ifnarch i686
|
2011-07-07 10:29:39 +02:00
|
|
|
mkdir -p %{buildroot}/usr/lib/tmpfiles.d/
|
|
|
|
install -m 644 %{SOURCE20} %{buildroot}/usr/lib/tmpfiles.d/
|
2012-11-28 21:52:39 +01:00
|
|
|
mkdir -p %{buildroot}/usr/lib/systemd/system
|
|
|
|
install -m 644 %{SOURCE21} %{buildroot}/usr/lib/systemd/system
|
2016-10-13 11:25:07 +02:00
|
|
|
%endif
|
2011-07-07 10:29:39 +02:00
|
|
|
|
2013-06-30 21:57:43 +02:00
|
|
|
%ifarch armv6hl armv7hl
|
2012-04-16 22:11:08 +02:00
|
|
|
# Provide compatibility link
|
2016-05-12 10:51:10 +02:00
|
|
|
ln -s ld-%{libversion}.so %{buildroot}/lib/ld-linux.so.3
|
2012-04-16 22:11:08 +02:00
|
|
|
%endif
|
|
|
|
|
2012-09-04 20:58:49 +02:00
|
|
|
# Move getconf to %{_libexecdir}/getconf/ to avoid cross device link
|
|
|
|
mv %{buildroot}%{_bindir}/getconf %{buildroot}%{_libexecdir}/getconf/getconf
|
|
|
|
ln -s %{_libexecdir}/getconf/getconf %{buildroot}%{_bindir}/getconf
|
2012-12-19 18:04:05 +01:00
|
|
|
|
2017-07-12 15:21:16 +02:00
|
|
|
%if !%{build_utils}
|
2012-12-19 18:04:05 +01:00
|
|
|
# Remove unwanted files (packaged in glibc-utils)
|
|
|
|
rm -f %{buildroot}/%{_lib}/libmemusage*
|
|
|
|
rm -f %{buildroot}/%{_lib}/libpcprofile*
|
|
|
|
rm -f %{buildroot}%{_bindir}/memusage*
|
|
|
|
rm -f %{buildroot}%{_bindir}/mtrace
|
|
|
|
rm -f %{buildroot}%{_bindir}/pcprofiledump
|
|
|
|
rm -f %{buildroot}%{_bindir}/sotruss
|
|
|
|
rm -f %{buildroot}%{_bindir}/xtrace
|
|
|
|
rm -f %{buildroot}%{_bindir}/pldd
|
|
|
|
rm -rf %{buildroot}%{_libdir}/audit
|
|
|
|
|
2014-02-24 15:57:11 +01:00
|
|
|
%ifarch i686
|
|
|
|
# Remove files from glibc-{extra,info,i18ndata} and nscd
|
|
|
|
rm -rf %{buildroot}%{_infodir} %{buildroot}%{_prefix}/share/i18n
|
|
|
|
rm -f %{buildroot}%{_bindir}/makedb %{buildroot}/var/lib/misc/Makefile
|
2016-10-13 11:25:07 +02:00
|
|
|
rm -f %{buildroot}%{_sbindir}/nscd
|
2014-02-24 15:57:11 +01:00
|
|
|
%endif # i686
|
2017-07-12 15:21:16 +02:00
|
|
|
%endif # !utils
|
2014-02-24 15:57:11 +01:00
|
|
|
|
2016-04-11 11:37:11 +02:00
|
|
|
# LSB
|
|
|
|
%ifarch %ix86
|
|
|
|
ln -sf /%{_lib}/ld-linux.so.2 $RPM_BUILD_ROOT/%{_lib}/ld-lsb.so.3
|
|
|
|
%endif
|
|
|
|
%ifarch x86_64
|
|
|
|
ln -sf /%{_lib}/ld-linux-x86-64.so.2 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-x86-64.so.3
|
|
|
|
%endif
|
|
|
|
%ifarch ppc
|
|
|
|
ln -sf /%{_lib}/ld.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-ppc32.so.3
|
|
|
|
%endif
|
|
|
|
%ifarch ppc64
|
|
|
|
ln -sf /%{_lib}/ld64.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-ppc64.so.3
|
|
|
|
%endif
|
|
|
|
%ifarch s390
|
|
|
|
ln -sf /%{_lib}/ld.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-s390.so.3
|
|
|
|
%endif
|
|
|
|
%ifarch s390x
|
|
|
|
ln -sf /%{_lib}/ld64.so.1 $RPM_BUILD_ROOT/%{_lib}/ld-lsb-s390x.so.3
|
|
|
|
%endif
|
|
|
|
|
2017-07-12 15:21:16 +02:00
|
|
|
%else # !main
|
2012-12-19 18:04:05 +01:00
|
|
|
|
2017-07-12 15:21:16 +02:00
|
|
|
%if %{build_utils}
|
2012-12-19 18:04:05 +01:00
|
|
|
|
|
|
|
make %{?_smp_mflags} install_root=%{buildroot} install -C cc-base \
|
|
|
|
subdirs='malloc debug elf'
|
|
|
|
cd manpages; make install_root=%{buildroot} install; cd ..
|
|
|
|
# Remove unwanted files
|
|
|
|
rm -f %{buildroot}/%{_lib}/ld*.so* %{buildroot}/%{_lib}/lib[!mp]*
|
2013-05-18 21:11:36 +02:00
|
|
|
rm -f %{buildroot}/lib/ld*.so*
|
2012-12-19 18:04:05 +01:00
|
|
|
rm -f %{buildroot}%{_libdir}/lib*
|
|
|
|
rm -f %{buildroot}%{_bindir}/{catchsegv,ldd*,sprof}
|
2014-09-15 12:37:45 +02:00
|
|
|
rm -rf %{buildroot}%{_mandir}/man*
|
2012-12-19 18:04:05 +01:00
|
|
|
rm -rf %{buildroot}/sbin %{buildroot}%{_includedir}
|
|
|
|
|
2017-07-12 15:21:16 +02:00
|
|
|
%endif # utils
|
|
|
|
|
|
|
|
%endif # !main
|
2012-09-04 20:58:49 +02:00
|
|
|
|
2017-12-14 11:12:57 +01:00
|
|
|
%if %{build_main}
|
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%post -p %{_sbindir}/glibc_post_upgrade
|
|
|
|
%postun -p /sbin/ldconfig
|
|
|
|
|
2010-01-03 12:31:34 +01:00
|
|
|
%post locale
|
|
|
|
for l in /usr/share/locale/locale.alias %{_libdir}/gconv/gconv-modules; do
|
|
|
|
[ -d "$l.d" ] || continue
|
|
|
|
echo "###X# The following is autogenerated from extra files in the .d directory:" >>"$l"
|
|
|
|
cat "$l.d"/* >>"$l"
|
|
|
|
done
|
2011-02-04 05:30:37 +01:00
|
|
|
/usr/sbin/iconvconfig
|
2010-01-03 12:31:34 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%post info
|
|
|
|
%install_info --info-dir=%{_infodir} %{_infodir}/libc.info.gz
|
|
|
|
|
2016-03-08 16:02:57 +01:00
|
|
|
%preun info
|
2009-02-20 08:46:43 +01:00
|
|
|
%install_info_delete --info-dir=%{_infodir} %{_infodir}/libc.info.gz
|
|
|
|
|
2012-11-24 15:18:54 +01:00
|
|
|
%pre -n nscd
|
2013-09-23 12:27:21 +02:00
|
|
|
getent group nscd >/dev/null || %{_sbindir}/groupadd -r nscd
|
2014-04-15 15:21:46 +02:00
|
|
|
getent passwd nscd >/dev/null || %{_sbindir}/useradd -r -g nscd -c "User for nscd" -s /sbin/nologin -d /run/nscd nscd
|
2012-11-24 15:18:54 +01:00
|
|
|
%service_add_pre nscd.service
|
2012-06-28 21:42:24 +02:00
|
|
|
|
2012-11-24 15:18:54 +01:00
|
|
|
%preun -n nscd
|
|
|
|
%service_del_preun nscd.service
|
2009-02-20 08:46:43 +01:00
|
|
|
|
|
|
|
%post -n nscd
|
2012-11-24 15:18:54 +01:00
|
|
|
%service_add_post nscd.service
|
2017-05-22 18:07:34 +02:00
|
|
|
%tmpfiles_create /usr/lib/tmpfiles.d/nscd.conf
|
2012-06-28 21:42:24 +02:00
|
|
|
# Previously we had nscd.socket, remove it
|
2012-12-03 15:51:36 +01:00
|
|
|
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 || :
|
2012-06-28 21:42:24 +02:00
|
|
|
# Hard removal in case the above did not work
|
|
|
|
rm -f /etc/systemd/system/sockets.target.wants/nscd.socket
|
|
|
|
exit 0
|
2009-02-20 08:46:43 +01:00
|
|
|
|
|
|
|
%postun -n nscd
|
2012-11-24 15:18:54 +01:00
|
|
|
%service_del_postun nscd.service
|
2009-02-20 08:46:43 +01:00
|
|
|
exit 0
|
2010-03-18 14:37:59 +01:00
|
|
|
|
2017-08-29 10:02:22 +02:00
|
|
|
%files
|
2010-03-18 14:37:59 +01:00
|
|
|
# glibc
|
2009-02-20 08:46:43 +01:00
|
|
|
%defattr(-,root,root)
|
2018-02-26 12:16:39 +01:00
|
|
|
%license LICENSES
|
2009-02-20 08:46:43 +01:00
|
|
|
%config(noreplace) /etc/bindresvport.blacklist
|
|
|
|
%config /etc/ld.so.conf
|
|
|
|
%attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /etc/ld.so.cache
|
|
|
|
%config(noreplace) /etc/rpc
|
|
|
|
%verify(not md5 size mtime) %config(noreplace) /etc/nsswitch.conf
|
|
|
|
%verify(not md5 size mtime) %config(noreplace) /etc/gai.conf
|
|
|
|
%config(noreplace) /etc/default/nss
|
2012-08-28 14:25:24 +02:00
|
|
|
%doc %{_mandir}/man1/gencat.1.gz
|
2009-02-20 08:46:43 +01:00
|
|
|
%doc %{_mandir}/man1/getconf.1.gz
|
|
|
|
%doc %{_mandir}/man5/*
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/ld-%{libversion}.so
|
2012-04-16 22:11:08 +02:00
|
|
|
|
|
|
|
# Each architecture has a different name for the dynamic linker:
|
|
|
|
%ifarch %arm
|
2013-06-30 21:57:43 +02:00
|
|
|
%ifarch armv6hl armv7hl
|
2012-04-18 13:54:26 +02:00
|
|
|
/%{_lib}/ld-linux-armhf.so.3
|
2012-04-16 22:11:08 +02:00
|
|
|
# Keep compatibility link
|
|
|
|
/%{_lib}/ld-linux.so.3
|
2009-05-27 12:39:38 +02:00
|
|
|
%else
|
2012-05-03 16:04:04 +02:00
|
|
|
/%{_lib}/ld-linux.so.3
|
2009-05-27 12:39:38 +02:00
|
|
|
%endif
|
2012-04-17 14:34:50 +02:00
|
|
|
%endif
|
2012-04-16 22:11:08 +02:00
|
|
|
%ifarch ia64
|
|
|
|
/%{_lib}/ld-linux-ia64.so.2
|
|
|
|
%endif
|
2013-10-11 12:21:14 +02:00
|
|
|
%ifarch ppc s390 mips hppa m68k
|
2012-04-16 22:11:08 +02:00
|
|
|
/%{_lib}/ld.so.1
|
|
|
|
%endif
|
|
|
|
%ifarch ppc64
|
|
|
|
/%{_lib}/ld64.so.1
|
|
|
|
%endif
|
2013-12-10 18:20:34 +01:00
|
|
|
%ifarch ppc64le
|
|
|
|
/%{_lib}/ld64.so.2
|
|
|
|
%endif
|
2012-04-16 22:11:08 +02:00
|
|
|
%ifarch s390x
|
|
|
|
/lib/ld64.so.1
|
|
|
|
/%{_lib}/ld64.so.1
|
|
|
|
%endif
|
|
|
|
%ifarch x86_64
|
|
|
|
/%{_lib}/ld-linux-x86-64.so.2
|
|
|
|
%endif
|
2012-07-20 10:33:20 +02:00
|
|
|
%ifarch %ix86 %sparc
|
2012-04-16 22:11:08 +02:00
|
|
|
/%{_lib}/ld-linux.so.2
|
|
|
|
%endif
|
2013-02-19 18:17:41 +01:00
|
|
|
%ifarch aarch64
|
|
|
|
/lib/ld-linux-aarch64.so.1
|
|
|
|
/%{_lib}/ld-linux-aarch64.so.1
|
|
|
|
%endif
|
Accepting request 572614 from home:Andreas_Schwab:Factory
- Update to glibc 2.27
* Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf,
sinf, sincosf and tan with FMA
* Optimized x86-64 trunc and truncf for processors with SSE4.1
* Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and
sincosf
* In order to support faster and safer process termination the malloc API
family of functions will no longer print a failure address and stack
backtrace after detecting heap corruption
* The abort function terminates the process immediately, without flushing
stdio streams
* On platforms where long double has the IEEE binary128 format (aarch64,
alpha, mips64, riscv, s390 and sparc), the math library now implements
_Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015
These are the same interfaces added in version 2.26 for some platforms where
this format is supported but is not the format of long double
* On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now
implements interfaces for that type, as defined by ISO/IEC TS
18661-3:2015
* The math library now implements interfaces for the _Float32, _Float64 and
_Float32x types, as defined by ISO/IEC TS 18661-3:2015
* glibc now implements the memfd_create and mlock2 functions on Linux
* Support for memory protection keys was added
* The copy_file_range function was added
* The ldconfig utility now processes `include' directives using the C/POSIX
collation ordering
* Support for two grammatical forms of month names has been added
* Support for the RISC-V ISA running on Linux has been added
* Statically compiled applications attempting to load locales compiled for the
OBS-URL: https://build.opensuse.org/request/show/572614
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=491
2018-02-05 11:33:11 +01:00
|
|
|
%ifarch riscv64
|
|
|
|
/lib/ld-linux-riscv64-lp64d.so.1
|
|
|
|
/%{_lib}/ld-linux-riscv64-lp64d.so.1
|
|
|
|
/%{_lib}/lp64d
|
|
|
|
%{_libdir}/lp64d
|
|
|
|
%endif
|
2016-04-11 11:37:11 +02:00
|
|
|
%ifarch %ix86 x86_64 ppc ppc64 s390 s390x
|
|
|
|
# LSB
|
|
|
|
/%{_lib}/*-lsb*.so.3
|
|
|
|
%endif
|
2012-04-16 22:11:08 +02:00
|
|
|
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libBrokenLocale-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libBrokenLocale.so.1
|
|
|
|
/%{_lib}/libSegFault.so
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libanl-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libanl.so.1
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libc-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libc.so.6*
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libcidn-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libcidn.so.1
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libcrypt-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libcrypt.so.1
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libowcrypt-%{libversion}.so
|
2013-07-08 15:10:39 +02:00
|
|
|
/%{_lib}/libowcrypt.so.1
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libdl-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libdl.so.2*
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libm-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libm.so.6*
|
2015-08-06 11:55:23 +02:00
|
|
|
%ifarch x86_64
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libmvec-%{libversion}.so
|
2015-08-06 11:55:23 +02:00
|
|
|
/%{_lib}/libmvec.so.1
|
|
|
|
%endif
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libnsl-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libnsl.so.1
|
2017-10-04 15:27:12 +02:00
|
|
|
/%{_lib}/libnss_compat-%{libversion}.so
|
|
|
|
/%{_lib}/libnss_compat.so.2
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libnss_db-%{libversion}.so
|
2011-12-27 09:19:44 +01:00
|
|
|
/%{_lib}/libnss_db.so.2
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libnss_dns-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libnss_dns.so.2
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libnss_files-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libnss_files.so.2
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libnss_hesiod-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libnss_hesiod.so.2
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libpthread-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libpthread.so.0
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libresolv-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libresolv.so.2
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/librt-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/librt.so.1
|
|
|
|
/%{_lib}/libthread_db-1.0.so
|
|
|
|
/%{_lib}/libthread_db.so.1
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/libutil-%{libversion}.so
|
2009-02-20 08:46:43 +01:00
|
|
|
/%{_lib}/libutil.so.1
|
2012-01-04 08:26:35 +01:00
|
|
|
%define optimized_libs() \
|
|
|
|
%dir %attr(0755,root,root) /%{_lib}/%1\
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/%1/libc-%{libversion}.so\
|
2012-01-04 08:26:35 +01:00
|
|
|
/%{_lib}/%1/libc.so.6*\
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/%1/libm-%{libversion}.so\
|
2012-01-04 08:26:35 +01:00
|
|
|
/%{_lib}/%1/libm.so.6*\
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/%1/libpthread-%{libversion}.so\
|
2012-01-04 08:26:35 +01:00
|
|
|
/%{_lib}/%1/libpthread.so.0\
|
2016-05-12 10:51:10 +02:00
|
|
|
/%{_lib}/%1/librt-%{libversion}.so\
|
2012-01-04 08:26:35 +01:00
|
|
|
/%{_lib}/%1/librt.so.1\
|
|
|
|
/%{_lib}/%1/libthread_db-1.0.so\
|
|
|
|
/%{_lib}/%1/libthread_db.so.1
|
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%if %{optimize_power}
|
2010-04-26 13:34:14 +02:00
|
|
|
%if %{powerpc_optimize_cpu_power4}
|
|
|
|
%{optimized_libs power4}
|
|
|
|
%endif
|
2010-01-03 12:31:34 +01:00
|
|
|
%if %{powerpc_optimize_cpu_power6}
|
|
|
|
%{optimized_libs power6}
|
|
|
|
%{optimized_libs power6x}
|
|
|
|
%endif
|
|
|
|
%if %{powerpc_optimize_cpu_power7}
|
|
|
|
%{optimized_libs power7}
|
|
|
|
%endif
|
|
|
|
%if %{powerpc_optimize_cpu_cell}
|
|
|
|
%{optimized_libs ppc-cell-be}
|
|
|
|
%endif
|
|
|
|
%endif # optimize_power
|
2009-02-20 08:46:43 +01:00
|
|
|
%dir %attr(0700,root,root) /var/cache/ldconfig
|
|
|
|
/sbin/ldconfig
|
2011-06-15 14:55:16 +02:00
|
|
|
%{_bindir}/gencat
|
|
|
|
%{_bindir}/getconf
|
|
|
|
%{_bindir}/getent
|
|
|
|
%{_bindir}/iconv
|
|
|
|
%attr(755,root,root) %{_bindir}/ldd
|
2013-10-11 12:21:14 +02:00
|
|
|
%ifarch %ix86 sparc sparcv9 m68k
|
2011-06-15 14:55:16 +02:00
|
|
|
%{_bindir}/lddlibc4
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
2011-06-15 14:55:16 +02:00
|
|
|
%{_bindir}/locale
|
|
|
|
%{_bindir}/localedef
|
2012-09-04 20:58:49 +02:00
|
|
|
%dir %attr(0755,root,root) %{_libexecdir}/getconf
|
|
|
|
%{_libexecdir}/getconf/*
|
2009-02-20 08:46:43 +01:00
|
|
|
%{_sbindir}/glibc_post_upgrade
|
2011-06-15 14:55:16 +02:00
|
|
|
%{_sbindir}/iconvconfig
|
2009-02-20 08:46:43 +01:00
|
|
|
|
|
|
|
%files locale -f libc.lang
|
|
|
|
%defattr(-,root,root)
|
2011-06-27 14:05:13 +02:00
|
|
|
%{_datadir}/locale/locale.alias
|
2009-02-20 08:46:43 +01:00
|
|
|
%if %{build_locales}
|
2010-01-03 12:31:34 +01:00
|
|
|
/usr/lib/locale
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
%{_libdir}/gconv
|
|
|
|
|
|
|
|
%files devel
|
|
|
|
%defattr(-,root,root)
|
Accepting request 572614 from home:Andreas_Schwab:Factory
- Update to glibc 2.27
* Optimized x86-64 asin, atan2, exp, expf, log, pow, atan, sin, cosf,
sinf, sincosf and tan with FMA
* Optimized x86-64 trunc and truncf for processors with SSE4.1
* Optimized generic expf, exp2f, logf, log2f, powf, sinf, cosf and
sincosf
* In order to support faster and safer process termination the malloc API
family of functions will no longer print a failure address and stack
backtrace after detecting heap corruption
* The abort function terminates the process immediately, without flushing
stdio streams
* On platforms where long double has the IEEE binary128 format (aarch64,
alpha, mips64, riscv, s390 and sparc), the math library now implements
_Float128 interfaces for that type, as defined by ISO/IEC TS 18661-3:2015
These are the same interfaces added in version 2.26 for some platforms where
this format is supported but is not the format of long double
* On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
mips64, powerpc64le, riscv, s390, sparc and x86_64), the math library now
implements interfaces for that type, as defined by ISO/IEC TS
18661-3:2015
* The math library now implements interfaces for the _Float32, _Float64 and
_Float32x types, as defined by ISO/IEC TS 18661-3:2015
* glibc now implements the memfd_create and mlock2 functions on Linux
* Support for memory protection keys was added
* The copy_file_range function was added
* The ldconfig utility now processes `include' directives using the C/POSIX
collation ordering
* Support for two grammatical forms of month names has been added
* Support for the RISC-V ISA running on Linux has been added
* Statically compiled applications attempting to load locales compiled for the
OBS-URL: https://build.opensuse.org/request/show/572614
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=491
2018-02-05 11:33:11 +01:00
|
|
|
%doc COPYING COPYING.LIB NEWS README
|
2009-02-20 08:46:43 +01:00
|
|
|
%doc %{_mandir}/man1/catchsegv.1.gz
|
|
|
|
%doc %{_mandir}/man3/*
|
2011-06-15 14:55:16 +02:00
|
|
|
%{_bindir}/catchsegv
|
|
|
|
%{_bindir}/sprof
|
2011-06-27 14:05:13 +02:00
|
|
|
%{_includedir}/*
|
2009-02-20 08:46:43 +01:00
|
|
|
%{_libdir}/*.o
|
|
|
|
%{_libdir}/*.so
|
2011-06-16 15:36:45 +02:00
|
|
|
# These static libraries are needed even for shared builds
|
2009-02-20 08:46:43 +01:00
|
|
|
%{_libdir}/libc_nonshared.a
|
|
|
|
%{_libdir}/libg.a
|
2013-12-10 18:20:34 +01:00
|
|
|
%ifarch ppc ppc64 ppc64le s390 s390x sparc sparcv8 sparcv9 sparcv9v
|
2010-01-03 12:31:34 +01:00
|
|
|
# This is not built on sparc64.
|
|
|
|
%{_libdir}/libnldbl_nonshared.a
|
2009-02-20 08:46:43 +01:00
|
|
|
%endif
|
|
|
|
%{_libdir}/libmcheck.a
|
Accepting request 359989 from home:Andreas_Schwab:Factory
- tls-dtor-list-mangling.patch: Harden tls_dtor_list with pointer mangling
(BZ #19018)
- prelink-elf-rtype-class.patch: Keep only ELF_RTYPE_CLASS_{PLT|COPY} bits
for prelink (BZ #19178)
- vector-finite-math-aliases.patch: Better workaround for aliases of
*_finite symbols in vector math library (BZ# 19058)
- powerpc-elision-adapt-param.patch: powerpc: Fix usage of elision
transient failure adapt param (BZ #19174)
- catopen-unbound-alloca.patch: Fix unbound alloca in catopen
(CVE-2015-8779, bsc#962739, BZ #17905)
- strftime-range-check.patch: Add range check on time fields
(CVE-2015-8776, bsc#962736, BZ #18985)
- hcreate-overflow-check.patch: Handle overflow in hcreate (CVE-2015-8778,
bsc#962737, BZ #18240)
- errorcheck-mutex-no-elision.patch: Don't do lock elision on an error
checking mutex (bsc#956716, BZ #17514)
- refactor-nan-parsing.patch: Refactor strtod parsing of NaN payloads
(CVE-2014-9761, bsc#962738, BZ #16962)
- send-dg-buffer-overflow.patch: Fix getaddrinfo stack-based buffer
overflow (CVE-2015-7547, bsc#961721, BZ #18665)
- powerpc-lock-elision-race.patch: renamed from
0001-powerpc-Fix-a-race-condition-when-eliding-a-lock-20150730.patch
OBS-URL: https://build.opensuse.org/request/show/359989
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=421
2016-02-17 15:42:34 +01:00
|
|
|
%ifarch x86_64
|
|
|
|
%{_libdir}/libmvec_nonshared.a
|
|
|
|
%endif
|
2011-06-16 15:36:45 +02:00
|
|
|
%{_libdir}/libpthread_nonshared.a
|
|
|
|
|
|
|
|
%files devel-static
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%{_libdir}/libBrokenLocale.a
|
|
|
|
%{_libdir}/libanl.a
|
|
|
|
%{_libdir}/libc.a
|
|
|
|
%{_libdir}/libcrypt.a
|
2013-07-08 15:10:39 +02:00
|
|
|
%{_libdir}/libowcrypt.a
|
2011-06-16 15:36:45 +02:00
|
|
|
%{_libdir}/libdl.a
|
|
|
|
%{_libdir}/libm.a
|
2015-08-06 11:55:23 +02:00
|
|
|
%ifarch x86_64
|
Accepting request 454919 from home:Andreas_Schwab:Factory
- Update to glibc 2.25
* The feature test macro __STDC_WANT_LIB_EXT2__, from ISO/IEC TR
24731-2:2010, is supported to enable declarations of functions from that
TR.
* The feature test macro __STDC_WANT_IEC_60559_BFP_EXT__, from ISO/IEC TS
18661-1:2014, is supported to enable declarations of functions and macros
from that TS.
* The feature test macro __STDC_WANT_IEC_60559_FUNCS_EXT__, from ISO/IEC TS
18661-4:2015, is supported to enable declarations of functions and macros
from that TS.
* The nonstandard feature selection macros _REENTRANT and _THREAD_SAFE are
now treated as compatibility synonyms for _POSIX_C_SOURCE=199506L.
* The inclusion of <sys/sysmacros.h> by <sys/types.h> is deprecated.
* New <fenv.h> features from TS 18661-1:2014 are added to libm: the
fesetexcept, fetestexceptflag, fegetmode and fesetmode functions, the
femode_t type and the FE_DFL_MODE and FE_SNANS_ALWAYS_SIGNAL macros.
* Integer width macros from TS 18661-1:2014 are added to <limits.h>:
CHAR_WIDTH, SCHAR_WIDTH, UCHAR_WIDTH, SHRT_WIDTH, USHRT_WIDTH, INT_WIDTH,
UINT_WIDTH, LONG_WIDTH, ULONG_WIDTH, LLONG_WIDTH, ULLONG_WIDTH; and to
<stdint.h>: INT8_WIDTH, UINT8_WIDTH, INT16_WIDTH, UINT16_WIDTH,
INT32_WIDTH, UINT32_WIDTH, INT64_WIDTH, UINT64_WIDTH, INT_LEAST8_WIDTH,
UINT_LEAST8_WIDTH, INT_LEAST16_WIDTH, UINT_LEAST16_WIDTH,
INT_LEAST32_WIDTH, UINT_LEAST32_WIDTH, INT_LEAST64_WIDTH,
UINT_LEAST64_WIDTH, INT_FAST8_WIDTH, UINT_FAST8_WIDTH, INT_FAST16_WIDTH,
UINT_FAST16_WIDTH, INT_FAST32_WIDTH, UINT_FAST32_WIDTH, INT_FAST64_WIDTH,
UINT_FAST64_WIDTH, INTPTR_WIDTH, UINTPTR_WIDTH, INTMAX_WIDTH,
UINTMAX_WIDTH, PTRDIFF_WIDTH, SIG_ATOMIC_WIDTH, SIZE_WIDTH, WCHAR_WIDTH,
WINT_WIDTH.
* New <math.h> features are added from TS 18661-1:2014:
- Signaling NaN macros: SNANF, SNAN, SNANL.
OBS-URL: https://build.opensuse.org/request/show/454919
OBS-URL: https://build.opensuse.org/package/show/Base:System/glibc?expand=0&rev=451
2017-02-06 11:25:17 +01:00
|
|
|
%{_libdir}/libm-%{libversion}.a
|
2015-08-06 11:55:23 +02:00
|
|
|
%{_libdir}/libmvec.a
|
|
|
|
%endif
|
2009-02-20 08:46:43 +01:00
|
|
|
%{_libdir}/libpthread.a
|
|
|
|
%{_libdir}/libresolv.a
|
|
|
|
%{_libdir}/librt.a
|
|
|
|
%{_libdir}/libutil.a
|
|
|
|
|
2014-02-24 15:57:11 +01:00
|
|
|
%ifnarch i686
|
2009-02-20 08:46:43 +01:00
|
|
|
%files info
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%doc %{_infodir}/libc.info.gz
|
|
|
|
%doc %{_infodir}/libc.info-?.gz
|
|
|
|
%doc %{_infodir}/libc.info-??.gz
|
|
|
|
|
2012-04-16 22:11:08 +02:00
|
|
|
%if %{build_html}
|
2009-02-20 08:46:43 +01:00
|
|
|
%files html
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%doc %{_prefix}/share/doc/glibc
|
2012-04-16 22:11:08 +02:00
|
|
|
%endif
|
2009-02-20 08:46:43 +01:00
|
|
|
|
|
|
|
%files i18ndata
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%{_prefix}/share/i18n
|
|
|
|
|
|
|
|
%files -n nscd
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%config(noreplace) /etc/nscd.conf
|
2011-06-15 14:55:16 +02:00
|
|
|
%{_sbindir}/nscd
|
|
|
|
%{_sbindir}/rcnscd
|
2012-11-28 21:52:39 +01:00
|
|
|
/usr/lib/systemd/system/nscd.service
|
2011-07-07 10:29:39 +02:00
|
|
|
%dir /usr/lib/tmpfiles.d
|
|
|
|
/usr/lib/tmpfiles.d/nscd.conf
|
2014-04-15 15:21:46 +02:00
|
|
|
%dir %attr(0755,root,root) %ghost /run/nscd
|
|
|
|
%attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /run/nscd/nscd.pid
|
|
|
|
%attr(0666,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /run/nscd/socket
|
2016-10-13 11:25:07 +02:00
|
|
|
%dir %attr(0755,root,root) /var/lib/nscd
|
|
|
|
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/lib/nscd/passwd
|
|
|
|
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/lib/nscd/group
|
|
|
|
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/lib/nscd/hosts
|
|
|
|
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/lib/nscd/services
|
|
|
|
%attr(0600,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) /var/lib/nscd/netgroup
|
2014-02-24 15:57:11 +01:00
|
|
|
%endif # !i686
|
2009-02-20 08:46:43 +01:00
|
|
|
|
2012-04-16 22:11:08 +02:00
|
|
|
%if %{build_profile}
|
2009-02-20 08:46:43 +01:00
|
|
|
%files profile
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%{_libdir}/libc_p.a
|
|
|
|
%{_libdir}/libBrokenLocale_p.a
|
|
|
|
%{_libdir}/libanl_p.a
|
|
|
|
%{_libdir}/libm_p.a
|
2015-08-06 11:55:23 +02:00
|
|
|
%ifarch x86_64
|
|
|
|
%{_libdir}/libmvec_p.a
|
|
|
|
%endif
|
2009-02-20 08:46:43 +01:00
|
|
|
%{_libdir}/libcrypt_p.a
|
2013-07-08 15:10:39 +02:00
|
|
|
%{_libdir}/libowcrypt_p.a
|
2009-02-20 08:46:43 +01:00
|
|
|
%{_libdir}/libpthread_p.a
|
|
|
|
%{_libdir}/libresolv_p.a
|
|
|
|
%{_libdir}/librt_p.a
|
|
|
|
%{_libdir}/libutil_p.a
|
|
|
|
%{_libdir}/libdl_p.a
|
2012-04-16 22:11:08 +02:00
|
|
|
%endif
|
2009-02-20 08:46:43 +01:00
|
|
|
|
2014-02-24 15:57:11 +01:00
|
|
|
%ifnarch i686
|
2012-12-19 18:04:05 +01:00
|
|
|
%files extra
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%{_bindir}/makedb
|
|
|
|
/var/lib/misc/Makefile
|
2014-02-24 15:57:11 +01:00
|
|
|
%endif # !i686
|
2012-12-19 18:04:05 +01:00
|
|
|
|
2017-07-12 15:21:16 +02:00
|
|
|
%endif # main
|
2012-12-19 18:04:05 +01:00
|
|
|
|
2017-07-12 15:21:16 +02:00
|
|
|
%if %{build_utils}
|
2018-01-30 16:17:29 +01:00
|
|
|
%files -n glibc-utils
|
2011-06-15 09:27:54 +02:00
|
|
|
%defattr(-,root,root)
|
|
|
|
/%{_lib}/libmemusage.so
|
|
|
|
/%{_lib}/libpcprofile.so
|
2012-12-19 18:04:05 +01:00
|
|
|
%dir %{_libdir}/audit
|
|
|
|
%{_libdir}/audit/sotruss-lib.so
|
|
|
|
%{_bindir}/memusage
|
|
|
|
%{_bindir}/memusagestat
|
2011-06-15 14:55:16 +02:00
|
|
|
%{_bindir}/mtrace
|
|
|
|
%{_bindir}/pcprofiledump
|
2011-08-17 21:42:24 +02:00
|
|
|
%{_bindir}/sotruss
|
2011-06-15 14:55:16 +02:00
|
|
|
%{_bindir}/xtrace
|
2011-12-27 09:19:44 +01:00
|
|
|
%{_bindir}/pldd
|
2017-07-12 15:21:16 +02:00
|
|
|
%endif # utils
|
2012-12-17 14:15:06 +01:00
|
|
|
|
2009-02-20 08:46:43 +01:00
|
|
|
%changelog
|