Sophie

Sophie

distrib > Mageia > 9 > i586 > by-pkgid > af22603ff8b9e06e9deab19a799d1d3d > files > 148

glibc-2.36-49.mga9.src.rpm

# hangs on aarch64
%define dont_check_elf_files 1

# <epoch>:<version>-<release> tags for glibc main package
%define glibcversion	2.36
%define __glibcrelease	49
%define glibcepoch	6

%define source_package	glibc-%{glibcversion}
%define source_dir	glibc-%{glibcversion}
%define _glibcrelease	%{__glibcrelease}

%define glibcrelease	%mkrel %{_glibcrelease}

# Define "cross" to an architecture to which glibc is to be
# cross-compiled
%define build_cross		0
%{expand: %{?cross:		%%global build_cross 1}}

%if %{build_cross}
%define target_cpu	%{cross}
%define cross_prefix	cross-%{target_cpu}-
%define _prefix		/usr/%{target_cpu}-%{_real_vendor}-linux%{gnuext}
%define cross_program_prefix	%{target_cpu}-%{_real_vendor}-linux%{gnuext}-
%define _exec_prefix	%{_prefix}
# brain damage alert: should not be needed imho
# overriding _prefix and _exec_prefix should be enough
%define _bindir		%{_exec_prefix}/bin
%define _sbindir	%{_exec_prefix}/sbin
%define _libexecdir	%{_exec_prefix}/libexec
%define _datadir	%{_prefix}/share
%define _sharedstatedir	%{_prefix}/com
%define _localstatedir	%{_prefix}/var
%define _lib		lib
%define _libdir		%{_exec_prefix}/%{_lib}
%define _slibdir	%{_exec_prefix}/%{_lib}
%define _slibdir32	%{_exec_prefix}/lib
%define _includedir	%{_prefix}/include
%else
%define gnuext		%{_gnu}
%define target_cpu	%{_target_cpu}
%define cross_prefix	%{nil}
%define cross_program_prefix	%{nil}
%define _slibdir	/%{_lib}
%define _slibdir32	/lib
%endif

# Define target (base) architecture
%define arch		%(echo %{target_cpu}|sed -e "s/\\(i.86\\|athlon\\)/i386/" -e "s/amd64/x86_64/")
%define isarch()	%(case " %* " in (*" %{arch} "*) echo 1;; (*) echo 0;; esac)

%if %{build_cross}
%if %isarch %arm
%define gnuext          -gnueabi
%else
%define gnuext          -gnu
%endif
%endif

# Define Xen arches to build with -mno-tls-direct-direct-seg-refs
%define xenarches	%{ix86} x86_64

# arches which requires glibc-port
%define ports_arch	%arm

# Define to build nscd with selinux support
%define build_selinux	0

# Flag for build_pdf_doc:
# 1	build glibc with PDF documentation
# 0	don't build PDF glibc documentation (e.g. for bootstrap build)
%define build_pdf_doc	0

# Enable checking by default for arches where we know tests all pass
%define build_check	0

# Allow make check to fail only when running kernels where we know
# tests must pass (no missing features or bugs in the kernel)
%define check_min_kver 2.6.32

# Define to build a biarch package
%define build_biarch	0
%if %isarch x86_64 
%define build_biarch	1
%endif

# build debug packages
%define build_debug	1

# Define to bootstrap new glibc
%define build_bootstrap	0
%{expand: %{!?build_cross_bootstrap: %global build_cross_bootstrap 0}}

%define build_profile	1
%define build_nscd	1
%define build_doc	1
%define build_utils	1
%define build_i18ndata	1
%define build_timezone	0

# Disable a few defaults when cross-compiling a glibc
%if %{build_cross}
%define build_doc	0
%define build_pdf_doc	0
%define build_biarch	0
%define build_check	0
%define build_nscd	0
%define build_profile	0
%define build_utils	0
%define build_i18ndata	0
%define build_timezone	0
%endif

# Allow --with[out] <feature> at rpm command line build
%{expand: %{?_without_PDF:	%%global build_pdf_doc 0}}
%{expand: %{?_without_CHECK:	%%global build_check 0}}
%{expand: %{?_without_UTILS:	%%global build_utils 0}}
%{expand: %{?_without_BOOTSTRAP:%%global build_bootstrap 0}}
%{expand: %{?_with_PDF:		%%global build_pdf_doc 1}}
%{expand: %{?_with_CHECK:	%%global build_check 1}}
%{expand: %{?_with_UTILS:	%%global build_utils 1}}
%{expand: %{?_with_BOOTSTRAP:	%%global build_bootstrap 1}}

##############################################################################
# Utility functions for pre/post scripts.  Stick them at the beginning of
# any lua %pre, %post, %postun, etc. sections to have them expand into
# those scripts.  It only works in lua sections and not anywhere else.
%define glibc_post_funcs() \
-- We use lua posix.exec because there may be no shell that we can \
-- run during glibc upgrade.  We used to implement much of %%post as a \
-- C program, but from an overall maintenance perspective the lua in \
-- the spec file was simpler and safer given the operations required. \
-- All lua code will be ignored by rpm-ostree; see: \
-- https://github.com/projectatomic/rpm-ostree/pull/1869 \
-- If we add new lua actions to the %%post code we should coordinate \
-- with rpm-ostree and ensure that their glibc install is functional. \
\
function post_exec (program, ...) \
  local pid = posix.fork () \
  if pid == 0 then \
    posix.exec (program, ...) \
    assert (nil) \
  elseif pid > 0 then \
    posix.wait (pid) \
  end \
end \
\
function update_gconv_modules_cache () \
  local iconv_dir = "%{_libdir}/gconv" \
  local iconv_cache = iconv_dir .. "/gconv-modules.cache" \
  local iconv_modules = iconv_dir .. "/gconv-modules" \
  if (posix.utime (iconv_modules) == 0) then \
    if (posix.utime (iconv_cache) == 0) then \
      post_exec ("%{_prefix}/sbin/iconvconfig", \
                 "-o", iconv_cache, \
                 "--nostdlib", \
                 iconv_dir) \
    else \
      io.stdout:write ("Error: Missing " .. iconv_cache .. " file.\n") \
    end \
  end \
end \
%{nil}

Summary:	The GNU libc libraries
Name:		%{cross_prefix}glibc
Version:	%{glibcversion}
Release:	%{glibcrelease}
Epoch:		%{glibcepoch}
License:	LGPL
Group:		System/Libraries
Url:		https://www.gnu.org/software/libc/

# FSF source
Source0:	https://ftpmirror.gnu.org/libc/%{source_package}.tar.xz
Source1:	https://ftpmirror.gnu.org/libc/%{source_package}.tar.xz.sig
Source2:	glibc-git.sh

Source4:	glibc-find-requires.sh
Source5:	glibc-check.sh
Source6:	nscd.service
Source7:	nscd.socket
Source8:	nsswitch.conf
Source9:	nscd.conf

# filter out libc_malloc_debug provides
%global __provides_exclude ^libc_malloc_debug\\.so.*$

%if %{build_cross}
Autoreq:	false
Autoprov:	false
%else
Provides:	should-restart = system
%if %isarch %{xenarches}
Obsoletes:	%{name}-xen
Provides:	%{name}-xen
%endif
# The dynamic linker supports DT_GNU_HASH
Provides: rtld(GNU_HASH)
Autoreq:	false
%endif
BuildRequires:	bison >= 3.3.1-1
BuildRequires:	patch
BuildRequires:	git
BuildRequires:	gettext
BuildRequires:	perl
BuildRequires:	kernel-userspace-headers
BuildRequires:	libstdc++-static-devel
BuildRequires:	hardlink
%if %{build_selinux}
BuildRequires:	pkgconfig(libselinux) >= 1.17.10
BuildRequires:	pkgconfig(libpcre) >= 8.44
%endif
# (tmb) force new gcc 12.3
BuildRequires:	%{cross_prefix}gcc >= 12.3.0-1
# (tmb) force latest binutils 2.40
BuildRequires:	%{cross_prefix}binutils >= 1:2.40-10
# we need the static dash
%define ash_bin		/usr/bin/dash.static
Requires(post):		dash-static
Requires(post):		grep
Requires:		filesystem >= 2.1.9-18
# ensure libxcrypt is installed as glibc crypt is disabled / being obsoleted
Requires:		%{_lib}xcrypt1 >= 4.1.1-1

BuildRequires: systemtap-sdt-devel

BuildRequires:	texinfo
BuildRequires:	texinfo-tex
%if %{build_pdf_doc}
BuildRequires:	texlive
%endif
%if %{build_utils}
BuildRequires:	pkgconfig(gdlib)
%endif
BuildRequires:	autoconf2.5
BuildRequires:	pkgconfig(libcap)
BuildRequires:	rpm-mageia-setup-build >= 1.147
BuildRequires:	spec-helper >= 0.31.2

###
### upstream release/2.36/master branch
### git format-patch --start-number 100 glibc-2.36..origin/release/2.36/master
###
Patch100:	0100-stdlib-Suppress-gcc-diagnostic-that-char8_t-is-a-key.patch
Patch101:	0101-wcsmbs-Add-missing-test-c8rtomb-test-mbrtoc8-depende.patch
Patch102:	0102-dlfcn-Pass-caller-pointer-to-static-dlopen-implement.patch
Patch103:	0103-Update-syscall-lists-for-Linux-5.19.patch
Patch104:	0104-elf-Replace-strcpy-call-with-memcpy-BZ-29454.patch
Patch105:	0105-Linux-Terminate-subprocess-on-late-failure-in-tst-pi.patch
Patch106:	0106-alpha-Fix-generic-brk-system-call-emulation-in-__brk.patch
Patch107:	0107-socket-Check-lengths-before-advancing-pointer-in-CMS.patch
Patch108:	0108-NEWS-Add-entry-for-bug-28846.patch
Patch109:	0109-glibcextract.py-Add-compile_c_snippet.patch
Patch110:	0110-linux-Use-compile_c_snippet-to-check-linux-pidfd.h-a.patch
Patch111:	0111-linux-Mimic-kernel-defition-for-BLOCK_SIZE.patch
Patch112:	0112-linux-Use-compile_c_snippet-to-check-linux-mount.h-a.patch
Patch113:	0113-linux-Fix-sys-mount.h-usage-with-kernel-headers.patch
Patch114:	0114-Linux-Fix-enum-fsconfig_command-detection-in-sys-mou.patch
Patch115:	0115-syslog-Fix-large-messages-BZ-29536.patch
Patch116:	0116-elf-Call-__libc_early_init-for-reused-namespaces-bug.patch
Patch117:	0117-Apply-asm-redirections-in-wchar.h-before-first-use.patch
Patch118:	0118-elf-Restore-how-vDSO-dependency-is-printed-with-LD_T.patch
Patch119:	0119-syslog-Remove-extra-whitespace-between-timestamp-and.patch
Patch120:	0120-Add-NEWS-entry-for-CVE-2022-39046.patch
Patch121:	0121-nscd-Fix-netlink-cache-invalidation-if-epoll-is-used.patch
Patch122:	0122-resolv-Add-tst-resolv-byaddr-for-testing-reverse-loo.patch
Patch123:	0123-resolv-Add-tst-resolv-aliases.patch
Patch124:	0124-resolv-Add-internal-__res_binary_hnok-function.patch
Patch125:	0125-resolv-Add-the-__ns_samebinaryname-function.patch
Patch126:	0126-resolv-Add-internal-__ns_name_length_uncompressed-fu.patch
Patch127:	0127-resolv-Add-DNS-packet-parsing-helpers-geared-towards.patch
Patch128:	0128-nss_dns-Split-getanswer_ptr-from-getanswer_r.patch
Patch129:	0129-nss_dns-Rewrite-_nss_dns_gethostbyaddr2_r-and-getans.patch
Patch130:	0130-nss_dns-Remove-remnants-of-IPv6-address-mapping.patch
Patch131:	0131-nss_dns-Rewrite-getanswer_r-to-match-getanswer_ptr-b.patch
Patch132:	0132-nss_dns-In-gaih_getanswer_slice-skip-strange-aliases.patch
Patch133:	0133-resolv-Add-new-tst-resolv-invalid-cname.patch
Patch134:	0134-nss_dns-Rewrite-_nss_dns_gethostbyname4_r-using-curr.patch
Patch135:	0135-resolv-Fix-building-tst-resolv-invalid-cname-for-ear.patch
Patch136:	0136-NEWS-Note-bug-12154-and-bug-29305-as-fixed.patch
Patch137:	0137-elf-Run-tst-audit-tlsdesc-tst-audit-tlsdesc-dlopen-e.patch
Patch138:	0138-elf-Fix-hwcaps-string-size-overestimation.patch
Patch139:	0139-scripts-dso-ordering-test.py-Generate-program-run-ti.patch
Patch140:	0140-elf-Rename-_dl_sort_maps-parameter-from-skip-to-forc.patch
Patch141:	0141-elf-Implement-force_first-handling-in-_dl_sort_maps_.patch
Patch142:	0142-gconv-Use-64-bit-interfaces-in-gconv_parseconfdir-bu.patch
Patch143:	0143-m68k-Enforce-4-byte-alignment-on-internal-locks-BZ-2.patch
Patch144:	0144-get_nscd_addresses-Fix-subscript-typos-BZ-29605.patch
Patch145:	0145-stdlib-Fix-__getrandom_nocancel-type-and-arc4random-.patch
Patch146:	0146-hppa-Fix-initialization-of-dp-register-BZ-29635.patch
Patch147:	0147-hppa-undef-__ASSUME_SET_ROBUST_LIST.patch
Patch148:	0148-x86-include-BMI1-and-BMI2-in-x86-64-v3-level.patch
Patch149:	0149-x86-64-Require-BMI2-for-AVX2-str-n-casecmp-implement.patch
Patch150:	0150-x86-64-Require-BMI2-for-AVX2-strcmp-implementation.patch
Patch151:	0151-x86-64-Require-BMI2-for-AVX2-strncmp-implementation.patch
Patch152:	0152-x86-64-Require-BMI2-for-AVX2-wcs-n-cmp-implementatio.patch
Patch153:	0153-x86-64-Require-BMI2-for-AVX2-raw-w-memchr-implementa.patch
Patch154:	0154-x86-64-Require-BMI2-and-LZCNT-for-AVX2-memrchr-imple.patch
Patch155:	0155-x86-64-Require-BMI1-BMI2-for-AVX2-strrchr-and-wcsrch.patch
Patch156:	0156-nscd-Drop-local-address-tuple-variable-BZ-29607.patch
Patch157:	0157-Ensure-calculations-happen-with-desired-rounding-mod.patch
Patch158:	0158-nss-Implement-no-addrconfig-option-for-getent.patch
Patch159:	0159-nss-Fix-tst-nss-files-hosts-long-on-single-stack-hos.patch
Patch160:	0160-nss-Use-shared-prefix-in-IPv4-address-in-tst-reload1.patch
Patch161:	0161-elf-Do-not-completely-clear-reused-namespace-in-dlmo.patch
Patch162:	0162-Fix-BZ-29463-in-the-ibm128-implementation-of-y1l-too.patch
Patch163:	0163-Avoid-undefined-behaviour-in-ibm128-implementation-o.patch
Patch164:	0164-linux-Fix-generic-struct_stat-for-64-bit-time-BZ-296.patch
Patch165:	0165-elf-Reinstate-on-DL_DEBUG_BINDINGS-_dl_lookup_symbol.patch
Patch166:	0166-longlong.h-update-from-GCC-for-LoongArch-clz-ctz-sup.patch
Patch167:	0167-linux-Fix-fstatat-on-MIPSn64-BZ-29730.patch
Patch168:	0168-LoongArch-Fix-ABI-related-macros-in-elf.h-to-keep-co.patch
Patch169:	0169-Makerules-fix-MAKEFLAGS-assignment-for-upcoming-make.patch
Patch170:	0170-mktime-improve-heuristic-for-ca-1986-Indiana-DST.patch
Patch171:	0171-Linux-Support-__IPC_64-in-sysvctl-ctl-command-argume.patch
Patch172:	0172-elf-Fix-rtld-audit-trampoline-for-aarch64.patch
Patch173:	0173-x86-Fix-wcsnlen-avx2-page-cross-length-comparison-BZ.patch
Patch174:	0174-Apply-asm-redirections-in-syslog.h-before-first-use-.patch
Patch175:	0175-nis-Build-libnsl-with-64-bit-time_t.patch
Patch176:	0176-nscd-Use-64-bit-time_t-on-libc-nscd-routines-BZ-2940.patch
Patch177:	0177-time-Use-64-bit-time-on-tzfile.patch
Patch178:	0178-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch
Patch179:	0179-sunrpc-Suppress-GCC-Os-warning-on-user2netname.patch
Patch180:	0180-x86-Fix-Os-build-BZ-29576.patch
Patch181:	0181-elf-tst-tlsopt-powerpc-fails-when-compiled-with-mcpu.patch
Patch182:	0182-time-Set-daylight-to-1-for-matching-DST-offset-chang-NEWS.patch
# binary patch bits needs git
Source182:	0182-time-Set-daylight-to-1-for-matching-DST-offset-chang.patch
Patch183:	0183-x86-Prevent-SIGSEGV-in-memcmp-sse2-when-data-is-conc.patch
Patch184:	0184-cdefs-Limit-definition-of-fortification-macros.patch
Patch185:	0185-elf-Fix-GL-dl_phdr-and-GL-dl_phnum-for-static-builds.patch
Patch186:	0186-Use-64-bit-time_t-interfaces-in-strftime-and-strptim.patch
Patch187:	0187-elf-Smoke-test-ldconfig-p-against-system-etc-ld.so.c.patch
Patch188:	0188-stdlib-Undo-post-review-change-to-16adc58e73f3-BZ-27.patch
Patch189:	0189-x86-Check-minimum-maximum-of-non_temporal_threshold-.patch
Patch190:	0190-gshadow-Matching-sgetsgent-sgetsgent_r-ERANGE-handli.patch
Patch191:	0191-x86_64-Fix-asm-constraints-in-feraiseexcept-bug-3030.patch
Patch192:	0192-posix-Fix-system-blocks-SIGCHLD-erroneously-BZ-30163.patch
Patch193:	0193-gmon-Fix-allocated-buffer-overflow-bug-29444.patch
Patch194:	0194-gmon-improve-mcount-overflow-handling-BZ-27576.patch
Patch195:	0195-gmon-fix-memory-corruption-issues-BZ-30101.patch
Patch196:	0196-gmon-Revert-addition-of-tunables-to-preserve-GLIBC_P.patch
Patch197:	0197-gmon-Revert-addition-of-tunables-to-the-manual.patch
Patch198:	0198-__check_pf-Add-a-cancellation-cleanup-handler-BZ-209.patch
Patch199:	0199-Document-BZ-20975-fix.patch
Patch200:	0200-io-Fix-record-locking-contants-on-32-bit-arch-with-6.patch
Patch201:	0201-io-Fix-F_GETLK-F_SETLK-and-F_SETLKW-for-powerpc64.patch
Patch202:	0202-elf-_dl_find_object-may-return-1-during-early-startu.patch
Patch203:	0203-x86-Increase-non_temporal_threshold-to-roughly-sizeo.patch
Patch204:	0204-x86-Fix-slight-bug-in-shared_per_thread-cache-size-c.patch
Patch205:	0205-x86-Use-3-4-sizeof-per-thread-L3-as-low-bound-for-NT.patch
Patch206:	0206-x86-Fix-incorrect-scope-of-setting-shared_per_thread.patch
Patch207:	0207-elf-Introduce-to-_dl_call_fini.patch
Patch208:	0208-elf-Do-not-run-constructors-for-proxy-objects.patch
Patch209:	0209-elf-Always-call-destructors-in-reverse-constructor-o.patch
Patch210:	0210-elf-Remove-unused-l_text_end-field-from-struct-link_.patch
Patch211:	0211-elf-Move-l_init_called_next-to-old-place-of-l_text_e.patch
Patch212:	0212-CVE-2023-4527-Stack-read-overflow-with-large-TCP-res.patch
Patch213:	0213-io-Fix-record-locking-contants-for-powerpc64-with-__.patch
Patch214:	0214-getaddrinfo-Fix-use-after-free-in-getcanonname-CVE-2.patch

###
### upstream master branch
### starts from number 400
###
Patch400:	0400-libio-Improve-performance-of-IO-locks.patch
Patch401:	0401-AArch64-Fix-typo-in-sve-configure-check-BZ-29394.patch
# syscall status update to 6.3 release kernel
Patch402:	0402-Update-syscall-lists-for-Linux-6.0.patch
Patch403:	0403-Update-syscall-lists-for-Linux-6.1.patch
Patch404:	0404-Update-syscall-lists-for-Linux-6.2.patch
Patch405:	0405-Update-syscall-lists-for-Linux-6.3.patch
Patch410:	0410-Update-syscall-lists-for-Linux-6.4.patch
#
Patch406:	0406-Use-O_CLOEXEC-in-more-places-BZ-15722.patch
Patch407:	0407-posix-Fix-some-crashes-in-wordexp-BZ-18096.patch
Patch408:	0408-resolv_conf-release-lock-on-allocation-failure-bug-3.patch
Patch409:	0409-string-strerror-must-not-return-NULL-bug-30555.patch
Patch411:	0411-make-struct-pthread-a-complete-type.patch
Patch412:	0412-nptl-Unconditionally-use-a-32-byte-rseq-area.patch
#
Patch413:	0413-elf-Fix-slow-tls-access-after-dlopen-BZ-19924.patch
Patch414:	0414-intl-Treat-C.UTF-8-locale-like-C-locale-BZ-16621.patch

###
### Mageia patches
###

# various path fix, according to usrmove
Patch01:	glibc-2.17-fhs-usrmove.patch

Patch06:	glibc-2.26-share-locale.patch
# use xvt instead of xterm in xtrace.sh
# cannot be pushed upstream as xvt is Ma* specific 
Patch09:	glibc-2.2.4-xterm-xvt.patch

# add transliteration for "COLON SIGN"
# ( used for the money of money of san salvador )
Patch11:	glibc-2.19-compat-EUR-currencies.patch

# fix the chkconfig header, should be sent upstream
Patch13:	glibc-2.3.3-nscd-enable.patch

# disable cache for hosts on nscd, as this is seen as insecure
# if the system relie on reverse dns for security
Patch14:	glibc-2.9-nscd-no-host-cache.patch

# add some new timezone for various cities
# Halifax, Montreal, Johannesburg 
# should be sent upstream ( I guess )
Patch23:	glibc-2.3.4-timezone.patch
Patch24:	glibc-2.10.1-biarch-cpp-defines.patch

Patch29:	glibc-2.3.5-biarch-utils.patch

# translation fixes, need to be checked with some i18n team member
# should be safe to send upstream once checked
Patch35:	glibc-2.16.0-force-gb18030-for-zh_CN.patch

# check for libcap, even if selinux is disabled
# should be sent upstream
Patch44:	glibc-2.26-dont-tie-libcap-with-selinux.patch


# Determine minium kernel versions
%define		enablekernel 3.2
Conflicts:	kernel < %{enablekernel}

# People changed location of rpm scripts...
%define rpmscripts	/usr/lib/rpm/%{_real_vendor}

# Don't try to explicitly provide GLIBC_PRIVATE versioned libraries
%define __find_provides	%{_builddir}/%{source_dir}/find_provides.sh
%define __find_requires %{_builddir}/%{source_dir}/find_requires.sh

%if !%{build_cross}
Obsoletes:	ld.so
Provides:	ld.so
%endif

Obsoletes:	ldconfig
Provides:	ldconfig = %{glibcepoch}:%{glibcversion}-%{glibcrelease} /sbin/ldconfig
# obsolete nss_db as it got merged again in 2.15
Obsoletes:	nss_db <= 2.2.3-0.pre1.9

%description
The glibc package contains standard libraries which are used by
multiple programs on the system. In order to save disk space and
memory, as well as to make upgrading easier, common system code is
kept in one place and shared between programs. This particular package
contains the most important sets of shared libraries: the standard C
library and the standard math library. Without these two libraries, a
Linux system will not function.  The glibc package also contains
national language (locale) support.

This package now also provides ldconfig which was packaged separately in
the past. Ldconfig is a basic system program which determines run-time
link bindings between ld.so and shared libraries. Ldconfig scans a running
system and sets up the symbolic links that are used to load shared
libraries properly. It also creates a cache (/etc/ld.so.cache) which
speeds the loading of programs which use shared libraries.

%package devel
Summary:	Header and object files for development using standard C libraries
Group:		Development/C
Requires(post):   coreutils
Requires(postun): coreutils, awk
# ensure libxcrypt is installed as glibc crypt is disabled / being obsoleted
Requires:	%{_lib}xcrypt-devel >= 4.1.1-1
# (tmb) filter out requires on self-provides
%global __requires_exclude devel\\(libm.*\\)|devel\\(libnss_files.*\\)
# (tmb) add virtual provides for old libm to ease builds... from glibc-2.22 libmvec is preferred
%ifarch x86_64 aarch64
Provides: devel(libm(64bit))
%endif
# glibc 2.33 -> 2.34 virtual provides upgrade helpers
Provides: devel(libdl)
Provides: devel(libutil)
%ifarch x86_64 aarch64
Provides: devel(libdl(64bit))
Provides: devel(libutil(64bit))
%endif
# (tmb) for glibc 2.34 empty archives (libanl.a, libdl.a, libpthread.a, librt.a, libutil.a)
# are moved from static-devel to keep matching linker options working
Conflicts: glibc-static-devel < 6:2.34-5
Requires:	%{name} = %{glibcepoch}:%{glibcversion}-%{glibcrelease}
%if !%{build_cross}
Requires:	linux-userspace-headers
%endif
%if %{build_cross}
Autoreq:	false
Autoprov:	false
%else
Autoreq:	true
%endif

%description devel
The glibc-devel package contains the header and object files necessary
for developing programs which use the standard C libraries (which are
used by nearly all programs).  If you are developing programs which
will use the standard C libraries, your system needs to have these
standard header and object files available in order to create the
executables.

This package also includes the C header files for the Linux kernel.
The header files define structures and constants that are needed for
building most standard programs. The header files are also needed for
rebuilding the kernel.

Install glibc-devel if you are going to develop programs which will
use the standard C libraries.

%package static-devel
Summary:	Static libraries for GNU C library
Group:		Development/C
Requires:	%{name}-devel = %{glibcepoch}:%{glibcversion}-%{glibcrelease}
# ensure libxcrypt is installed as glibc crypt is disabled / being obsoleted
Requires:	%{_lib}xcrypt-static-devel >= 4.1.1-1

%description static-devel
The glibc-static-devel package contains the static libraries necessary
for developing programs which use the standard C libraries. Install
glibc-static-devel if you need to statically link your program or
library.

%package profile
Summary:	The GNU libc libraries, including support for gprof profiling
Group:		Development/C
Obsoletes:	libc-profile
Provides:	libc-profile = %{glibcversion}-%{glibcrelease}
Autoreq:	true

%description profile
The glibc-profile package includes the GNU libc libraries and support
for profiling using the gprof program.  Profiling is analyzing a
program's functions to see how much CPU time they use and determining
which functions are calling other functions during execution.  To use
gprof to profile a program, your program needs to use the GNU libc
libraries included in glibc-profile (instead of the standard GNU libc
libraries included in the glibc package).

If you are going to use the gprof program to profile a program, you'll
need to install the glibc-profile program.

%package -n nscd
Summary:	A Name Service Caching Daemon (nscd)
Group:		System/Servers
Requires(post):  systemd >= %{systemd_required_version}
Requires(post):  rpm-helper >= 0.24.8-1
Requires(preun): rpm-helper >= 0.24.8-1
Autoreq:	true

%description -n nscd
Nscd caches name service lookups and can dramatically improve
performance with NIS+, and may help with DNS as well. Install
nscd if you need a name service lookup caching daemon.

%package utils
Summary:	Development utilities from GNU C library
Group:		Development/Other
Requires:	%{name} = %{glibcepoch}:%{glibcversion}-%{glibcrelease}

%description utils
The glibc-utils package contains memusage, a memory usage profiler,
mtrace, a memory leak tracer and xtrace, a function call tracer which
can be helpful during program debugging.

If unsure if you need this, don't install this package.

%if %{build_i18ndata}
%package i18ndata
Summary:	Database sources for 'locale'
Group:		System/Libraries

%description i18ndata
This package contains the data needed to build the locale data files
to use the internationalization features of the GNU libc.
%endif

%if %{build_timezone}
%package -n timezone
Summary:	Time zone descriptions
Group:		System/Base

%description -n timezone
These are configuration files that describe possible
time zones.
%endif

### glibc core "debuginfo and debugsource" sub-packages
%if %{build_debug}
%define debug_package %{nil}
%define __debug_install_post %{nil}
%global __debug_package 1
# Disable thew new features that glibc packages don't use.
%undefine _debugsource_packages
%undefine _debuginfo_subpackages
%undefine _unique_debug_names
%undefine _unique_debug_srcs

%package debuginfo
Summary:	Debug information for package %{name}
Group:		Development/Debug
AutoReqProv: no

%description debuginfo
This package provides debug information for package %{name}.
Debug information is useful when developing applications that use this
package or when debugging this package.

%package debugsource
Summary:	Debug source for package %{name}
Group:		Development/Debug
AutoReqProv: no

%description debugsource
This package provides debug source for %{name}
%endif

%package doc
Summary:	GNU C library documentation
Group:		Development/Other
BuildArch:	noarch

%description doc
The glibc-doc package contains documentation for the GNU C library in
info format.

%if %{build_pdf_doc}
%package doc-pdf
Summary:	GNU C library documentation
Group:		Development/Other
BuildArch:	noarch

%description doc-pdf
The glibc-doc-pdf package contains the printable documentation for the
GNU C library in PDF format.
%endif

%prep
%setup -q -n %{source_dir}
%autopatch -p1
# binary patch needs git
git apply -p1 <%{SOURCE182}

%if %{build_selinux}
# XXX kludge to build nscd with selinux support as it added -nostdinc
# so /usr/include/selinux is not found
ln -s %{_includedir}/selinux selinux
%endif

find . -type f -size 0 -o -name "*.orig" -exec rm -f {} \;

# \\(Anssi 03/2008\\) FIXME: use __provides_exclude
cat > find_provides.sh << EOF
#!/bin/sh
%{rpmscripts}/find-provides | grep -v GLIBC_PRIVATE
exit 0
EOF
chmod +x find_provides.sh

cat > find_requires.bootstrap.sh << EOF
/bin/sh %{SOURCE4} %{buildroot} %{_target_cpu} | grep -v "\(GLIBC_PRIVATE\|linux-gate\|linux-vdso\)"
exit 0
EOF
chmod +x find_requires.bootstrap.sh

# XXX: use better way later to avoid LD_LIBRARY_PATH issue
cat %{rpmscripts}/find-requires | sed '/.*LD_LIBRARY_PATH.*/d;' > find_requires
chmod +x find_requires
# \\(Anssi 03/2008\\) FIXME: use __requires_exclude
cat > find_requires.noprivate.sh << EOF
%{_builddir}/%{source_dir}/find_requires %{buildroot} %{_target_cpu} | \
	grep -v GLIBC_PRIVATE
exit 0
EOF
chmod +x find_requires.noprivate.sh

# FIXME: fix system rpm find-requires to use the prefix cross version
%if %{build_bootstrap} || "%{_target_cpu}" != "%{target_cpu}"
ln -s find_requires.bootstrap.sh find_requires.sh
%else
ln -s find_requires.noprivate.sh find_requires.sh
%endif

# Remove patch backups from files we ship in glibc packages
rm -fr ChangeLog.old
rm -f localedata/locales/{???_??,??_??}.*
rm -f localedata/locales/[a-z_]*.*

%build
# Prepare test matrix in the next function
CheckList=$PWD/Check.list
rm -f $CheckList
touch $CheckList

#
# CompareKver <kernel version>
# function to compare the desired kernel version with running kernel
# version (package releases not taken into account in comparison). The
# function returns:
# -1 = <kernel version> is lesser than current running kernel
#  0 = <kernel version> is equal to the current running kernel
#  1 = <kernel version> is greater than current running kernel
#
function CompareKver() {
  v1=`echo $1 | sed 's/\.\?$/./'`
  v2=`uname -r | sed 's/[^.0-9].*//' | sed 's/\.\?$/./'`
  n=1
  s=0
  while true; do
    c1=`echo "$v1" | cut -d "." -f $n`
    c2=`echo "$v2" | cut -d "." -f $n`
    if [ -z "$c1" -a -z "$c2" ]; then
      break
    elif [ -z "$c1" ]; then
      s=-1
      break
    elif [ -z "$c2" ]; then
      s=1
      break
    elif [ "$c1" -gt "$c2" ]; then
      s=1
      break
    elif [ "$c2" -gt "$c1" ]; then
      s=-1
      break
    fi
    n=$((n + 1))
  done
  echo $s
}

#
# BuildGlibc <arch> [<extra_configure_options>+]
#
function BuildGlibc() {
  arch="$1"
  shift 1

  # PowerPC CPU add-on
  case $arch in
    cpu-addon,*)
      cpu=` echo "$arch" | sed -n "/.*,\([^,]*\),.*$/s//\1/p"`
      arch=`echo "$arch" | sed -n "/.*,.*,\([^,]*\)$/s//\1/p"`
      ;;
    *)
      cpu=$arch
      ;;
  esac

  # Select optimization flags and compiler to use
  BuildAltArch="no"
  BuildCompFlags=""
  BuildFlags=""
  case $arch in
    i[3456]86 | athlon)
      BuildFlags="-march=$arch -mtune=generic"
      if [[ "`uname -m`" = "x86_64" ]]; then
        BuildAltArch="yes"
        BuildCompFlags="-m32"
      fi
      ;;
    x86_64)
      BuildFlags="-mtune=generic"
      ;;
    armv4t*)
      BuildFlags="-march=armv4t"
      BuildCompFlags="-march=armv4t"
      ;;
    armv5t*)
      BuildFlags="-march=armv5t"
      BuildCompFlags="-march=armv5t"
      ;;
    # to check
    armv7h*)
      BuildFlags="-march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16"
      BuildCompFlags="-march=armv7-a -mfloat-abi=hard -mfpu=vfpv3-d16"
      ;;
  esac

  # Choose multiarch support
  MultiArchFlags=
  case $arch in
    i686 | x86_64)
      MultiArchFlags="--enable-multi-arch"
      ;;
  esac

  # Determine C & C++ compilers
  BuildCC="%{__cc} $BuildCompFlags"
  BuildCXX="%{__cxx} $BuildCompFlags"

  # Are we supposed to cross-compile?
  if [[ "%{target_cpu}" != "%{_target_cpu}" ]]; then
    # Can't use BuildCC anymore with previous changes.
    BuildCC="%{cross_program_prefix}gcc $BuildCompFlags"
    BuildCXX="%{cross_program_prefix}g++ $BuildCompFlags"
    BuildCross="--build=%{_target_platform}"
    export libc_cv_forced_unwind=yes libc_cv_c_cleanup=yes
  fi

  BuildFlags="$BuildFlags -DNDEBUG=1 -O2 -finline-functions -g"

  # Do not use direct references against %gs when accessing tls data
  # XXX make it the default in GCC? (for other non glibc specific usage)
  case $arch in
    i[3456]86 | x86_64)
      BuildFlags="$BuildFlags -mno-tls-direct-seg-refs"
      ;;
  esac

  # Arch specific compilation flags
  if [[ "$arch" = "ppc64" ]]; then
    BuildFlags="$BuildFlags -fno-inline-functions -mno-minimal-toc"
  fi

  # Extra configure flags
  ExtraFlags=
  if [[ "%{build_profile}" != "0" ]]; then
    ExtraFlags="$ExtraFlags --enable-profile"
  fi

  # NPTL+TLS are now the default
  # check for other arches
  %if %isarch %ports_arch
    Pthreads="ports nptl"
  %else
    Pthreads="nptl"
  %endif

  # Add-ons
  AddOns="libidn"
  if [[ "$cpu" != "$arch" ]]; then
    AddOns="$AddOns,powerpc-cpu"
    BuildFlags="$BuildFlags -mcpu=$cpu"
    ExtraFlags="$ExtraFlags --with-cpu=$cpu"
  fi

  # Build with selinux support?
%if %{build_selinux}
  SElinuxFlags="--with-selinux"
%else
  SElinuxFlags="--without-selinux"
%endif

  # Kernel headers directory
  KernelHeaders=%{_includedir}

  # Determine library name
  glibc_cv_cc_64bit_output=no
  if echo ".text" | $BuildCC -c -o test.o -xassembler -; then
    case `/usr/bin/file test.o` in
    *"ELF 64"*)
      glibc_cv_cc_64bit_output=yes
      ;;
    esac
  fi
  rm -f test.o

  # Force a separate and clean object dir
  rm -rf build-$cpu-linux
  mkdir  build-$cpu-linux
  pushd  build-$cpu-linux
  [[ "$BuildAltArch" = "yes" ]] && touch ".alt" || touch ".main"
  CC="$BuildCC" CXX="$BuildCXX" CFLAGS="$BuildFlags -Wno-unused-but-set-variable -Wno-unused-variable -Wno-unused-function -Wno-maybe-uninitialized" ../configure \
    $arch-%{_real_vendor}-linux%{gnuext} $BuildCross \
    --prefix=%{_prefix} \
    --libexecdir=%{_prefix}/libexec \
    --infodir=%{_infodir} \
    --enable-add-ons="$AddOns" --without-cvs \
    $ExtraFlags $MultiArchFlags $SElinuxFlags \
    --enable-kernel=%{enablekernel} \
    --with-headers=$KernelHeaders ${1+"$@"} \
    --enable-systemtap \
    --disable-crypt
  %make_build -r -s
  popd

  # All tests are expected to pass on certain platforms, depending also
  # on the version of the kernel running
  case $arch in
  athlon | ia64 | ppc | ppc64)
    if [ "`CompareKver %{check_min_kver}`" -lt 0 ]; then
      check_flags=""
    else
      check_flags="-k"
    fi
    ;;
  *)
    check_flags="-k"
    ;;
  esac

  # Generate test matrix
  [[ -d "build-$arch-linux" ]] || {
    echo "ERROR: PrepareGlibcTest: build-$arch-linux does not exist!"
    return 1
  }
  local BuildJobs="-j`getconf _NPROCESSORS_ONLN`"
  echo "$BuildJobs -d build-$arch-linux $check_flags" >> $CheckList

  case $cpu in
  i686|athlon)	base_arch=i586;;
  power*)	base_arch=$arch;;
  *)		base_arch=none;;
  esac

  [[ -d "build-$base_arch-linux" ]] && {
    check_flags="$check_flags -l build-$base_arch-linux/elf/ld.so"
    echo "$BuildJobs -d build-$arch-linux $check_flags" >> $CheckList
  }
  return 0
}

# Build main glibc
BuildGlibc %{target_cpu}

%if %{build_biarch}
%if %isarch x86_64
BuildGlibc i686
%endif
%endif

# Build i686 libraries if not already building for i686/athlon
case %{target_cpu} in
  i686 | athlon)
    ;;
  i[3-6]86)
#    BuildGlibc i686 --disable-profile
    ;;
esac

%if %{build_check}
export TMPDIR=/tmp
export TIMEOUTFACTOR=16
Check="$PWD/glibc-check.sh"
cat %{SOURCE5} > $Check
chmod +x $Check
while read arglist; do
  $Check $arglist || exit 1
done < $CheckList
%endif

%install
# force use of _NPROCESSORS_ONLN jobs since RPM_BUILD_NCPUS could be
# greater for icecream
BuildJobs="-j`getconf _NPROCESSORS_ONLN`"

make install_root=%{buildroot} install -C build-%{target_cpu}-linux
%if %{build_i18ndata}
(cd build-%{target_cpu}-linux;
  make $BuildJobs -C ../localedata objdir=`pwd` \
	install_root=%{buildroot} \
	install-locales
)
install -m 0644 localedata/SUPPORTED %{buildroot}/%{_datadir}/i18n/
%endif

# Empty filelist for non i686/athlon targets
> extralibs.filelist

# Install biarch libraries
%if %{build_biarch}
%if %isarch x86_64
ALT_ARCHES=i686-linux
%endif

for ALT_ARCH in $ALT_ARCHES; do
mkdir -p %{buildroot}/$ALT_ARCH
make install_root=%{buildroot}/$ALT_ARCH install -C build-$ALT_ARCH

# Dispatch */lib only
LIB=/lib
%if !%{build_cross}
mv     %{buildroot}/$ALT_ARCH/$LIB %{buildroot}/$LIB
mv     %{buildroot}/$ALT_ARCH%{_prefix}/libexec/getconf/* \
       %{buildroot}%{_prefix}/libexec/getconf/
[ ! -d %{buildroot}/%{_prefix}/$LIB/ ] && mkdir -p %{buildroot}/%{_prefix}/$LIB/
mv     %{buildroot}/$ALT_ARCH/%{_prefix}/$LIB/* %{buildroot}/%{_prefix}/$LIB/
%else
mv     %{buildroot}/$ALT_ARCH/%{_prefix}/lib %{buildroot}/$LIB
sed -i %{buildroot}/$LIB/libc.so -e "s!%{_slibdir}!$LIB!g"
%endif

rm -rf %{buildroot}/$ALT_ARCH
# XXX Dispatch 32-bit stubs
(sed '/^@/d' include/stubs-prologue.h; LC_ALL=C sort $(find build-$ALT_ARCH -name stubs)) \
> %{buildroot}%{_includedir}/gnu/stubs-32.h
done
%endif

# Install extra glibc libraries
function InstallGlibc() {
  local BuildDir="$1"
  local SubDir="$2"
  local LibDir="$3"

  case $BuildDir in
  *)      Pthreads=nptl         ;;
  esac

  [[ -z "$LibDir" ]] && LibDir="%{_slibdir}"

  pushd $BuildDir
  mkdir -p %{buildroot}$LibDir/$SubDir/
  install -m755 libc.so %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/libc-*.so`
  ln -sf `basename %{buildroot}$LibDir/libc-*.so` %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/libc.so.*`
  install -m755 math/libm.so %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/libm-*.so`
  ln -sf `basename %{buildroot}$LibDir/libm-*.so` %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/libm.so.*`
  install -m755 $Pthreads/libpthread.so %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/libpthread-*.so`
  ln -sf `basename %{buildroot}$LibDir/libpthread-*.so` %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/libpthread.so.*`
  install -m755 ${Pthreads}_db/libthread_db.so %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/libthread_db-*.so`
  ln -sf `basename %{buildroot}$LibDir/libthread_db-*.so` %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/libthread_db.so.*`
  install -m755 rt/librt.so %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/librt-*.so`
  ln -sf `basename %{buildroot}$LibDir/librt-*.so` %{buildroot}$LibDir/$SubDir/`basename %{buildroot}$LibDir/librt.so.*`
  echo "%dir $LibDir/$SubDir" >> ../extralibs.filelist
  find %{buildroot}$LibDir/$SubDir -maxdepth 1  -type f -o -type l | sed -e "s|%{buildroot}||" >> ../extralibs.filelist
  popd
}

# Install arch-specific optimized libraries
%if %isarch %{ix86}
case %{target_cpu} in
i[3-5]86)
#  InstallGlibc build-i686-linux i686
  ;;
esac
%endif

# Remove the files we don't want to distribute
rm -f %{buildroot}%{_libdir}/libNoVersion*
rm -f %{buildroot}%{_slibdir}/libNoVersion*

%if "%{name}" == "glibc"
install -m 644 %{SOURCE8} %{buildroot}%{_sysconfdir}/nsswitch.conf
%endif

# This is for ncsd - in glibc 2.2
%if %{build_nscd}
install -m 644 nscd/nscd.conf %{buildroot}%{_sysconfdir}
install -d -m 755 %{buildroot}%{_unitdir}
install -m 644 %{SOURCE6} %{buildroot}%{_unitdir}/nscd.service
install -m 644 %{SOURCE7} %{buildroot}%{_unitdir}/nscd.socket
install -D -m 644 %{SOURCE9} %{buildroot}%{_tmpfilesdir}/nscd.conf
install -d -m 755 %{buildroot}%{_var}/db/nscd
%endif

# Useless and takes place
rm -rf %buildroot/%{_datadir}/zoneinfo/{posix,right}

# Include ld.so.conf
%if "%{name}" == "glibc"
echo "include /etc/ld.so.conf.d/*.conf" > %{buildroot}%{_sysconfdir}/ld.so.conf
chmod 644 %{buildroot}%{_sysconfdir}/ld.so.conf
mkdir -p  %{buildroot}%{_sysconfdir}/ld.so.conf.d

# ldconfig cache
mkdir -p %{buildroot}%{_var}/cache/ldconfig
touch %{buildroot}%{_var}/cache/ldconfig/aux-cache
%endif

# Include %{_libdir}/gconv/gconv-modules.cache
> %{buildroot}%{_libdir}/gconv/gconv-modules.cache
chmod 644 %{buildroot}%{_libdir}/gconv/gconv-modules.cache

%if "%{name}" == "glibc"
touch %{buildroot}%{_sysconfdir}/ld.so.cache
%endif

# Are we cross-compiling?
Strip="strip"
if [[ "%{_target_cpu}" != "%{target_cpu}" ]]; then
  Strip="%{cross_program_prefix}$Strip"
fi

# Strip debugging info from all static libraries
pushd %{buildroot}%{_slibdir}
for i in *.a; do
  if [ -f "$i" ]; then
    case "$i" in
    *_p.a) ;;
    *) $Strip -g -R .comment $i ;;
    esac
  fi
done
popd
pushd %{buildroot}%{_libdir}
for i in libc_nonshared.a; do
  if [ -f "$i" ]; then
    $Strip -g -R .comment $i
  fi
done
popd

# rquota.x and rquota.h are now provided by quota
rm -f %{buildroot}%{_includedir}/rpcsvc/rquota.[hx]

# Hardlink identical locale files together
%if %{build_i18ndata}
%{_bindir}/hardlink -vc %{buildroot}%{_datadir}/locale
%endif

rm -rf %{buildroot}%{_includedir}/netatalk/

# nuke libc_malloc_debug
%if %{build_biarch}
rm -f  %{buildroot}%{_prefix}/lib/libc_malloc_debug.so
%endif
rm -f  %{buildroot}%{_libdir}/libc_malloc_debug.so

# Build file list for devel package
find %{buildroot}%{_includedir} -type f -or -type l > devel.filelist
find %{buildroot}%{_includedir} -type d  | sed "s/^/%dir /" | \
  grep -v "%{_libdir}/libnss1.*.so$" | \
  grep -v "%{_includedir}$" | >> devel.filelist
find %{buildroot}%{_libdir} -maxdepth 1 -name "*.so" -o -name "*.o" | egrep -v "(libmemusage.so|libpcprofile.so)" >> devel.filelist
# biarch libs
%if %{build_biarch}
find %{buildroot}%{_prefix}/lib -maxdepth 1 -name "*.so" -o -name "*.o" | egrep -v "(libmemusage.so|libpcprofile.so)" >> devel.filelist
%endif
perl -pi -e "s|%{buildroot}||" devel.filelist

# /etc/localtime - we're proud of our timezone #Well we may put Paris
%if %{build_timezone}
rm -f %{buildroot}%{_sysconfdir}/localtime
cp -f %{buildroot}%{_datadir}/zoneinfo/US/Eastern %{buildroot}%{_sysconfdir}/localtime
#ln -sf ..%{_datadir}/zoneinfo/US/Eastern %{buildroot}%{_sysconfdir}/localtime
%endif

# [gg] build PDF documentation
%if %{build_pdf_doc}
(cd manual; texi2dvi -p -t @afourpaper -t @finalout libc.texinfo)
%endif

# Leave a compatibility symlink for the dynamic loader on armhfp targets,
# at least until the world gets rebuilt
%ifarch armv7hl
ln -sf %{_slibdir}/ld-linux-armhf.so.3 %{buildroot}%{_slibdir}/ld-linux.so.3
%endif

# Generate final rpm filelist, with localized libc.mo files
rm -f rpm.filelist
%if "%{name}" == "glibc"
%find_lang libc
perl -ne '/^\s*$/ or print' libc.lang > rpm.filelist
%endif
cat extralibs.filelist >> rpm.filelist

# Remove unpackaged files
rm -f  %{buildroot}%{_infodir}/dir.old*
rm -rf %{buildroot}%{_includedir}/asm-*/mach-*/
rm -f  %{buildroot}%{_datadir}/locale/locale-archive*
rm -f  %{buildroot}%{_var}/db/Makefile

%if !%{build_utils}
%if %{build_biarch}
rm -f  %{buildroot}%{_slibdir32}/libmemusage.so
rm -f  %{buildroot}%{_slibdir32}/libpcprofile.so
%endif
rm -f  %{buildroot}%{_slibdir}/libmemusage.so
rm -f  %{buildroot}%{_slibdir}/libpcprofile.so
rm -f  %{buildroot}%{_bindir}/memusage
rm -f  %{buildroot}%{_bindir}/memusagestat
rm -f  %{buildroot}%{_bindir}/mtrace
rm -f  %{buildroot}%{_bindir}/pcprofiledump
rm -f  %{buildroot}%{_bindir}/xtrace
%endif

%if !%{build_timezone}
rm -f  %{buildroot}%{_sysconfdir}/localtime
rm -f  %{buildroot}%{_bindir}/zdump
rm -f  %{buildroot}%{_sbindir}/zic
rm -rf %{buildroot}%{_datadir}/zoneinfo
%endif

%if !%{build_i18ndata}
rm -rf %{buildroot}%{_datadir}/i18n
%endif

%if "%{name}" != "glibc"
rm -rf %{buildroot}/boot
rm -rf %{buildroot}/sbin
rm -rf %{buildroot}/usr/share
rm -rf %{buildroot}%{_bindir}
rm -rf %{buildroot}%{_sbindir}
rm -rf %{buildroot}%{_datadir}
rm -rf %{buildroot}%{_infodir}
rm -rf %{buildroot}%{_prefix}/etc
rm -rf %{buildroot}%{_libdir}/gconv
%endif

# In case we are cross-compiling, don't bother to remake symlinks and
# fool spec-helper when stripping files
%if "%{name}" != "glibc"
export DONT_SYMLINK_LIBS=1
export PATH=%{_bindir}:$PATH
%endif

# This will make the '-g' argument to be passed to eu-strip for these
# libraries, so that only debug symbols are stripped and gdb/valgrind continue
# to work without needing glibc-debug package to be installed.
export EXCLUDE_FROM_FULL_STRIP="ld-%{glibcversion}.so libpthread libc-%{glibcversion}.so"

# If we are building a debug package then copy all of the static archives
# into the debug directory to keep them as unstripped copies.
%if %{build_debug}
mkdir -p %{buildroot}%{_prefix}/lib/debug%{_libdir}
cp -a %{buildroot}%{_libdir}/*.a \
	%{buildroot}%{_prefix}/lib/debug%{_libdir}/
rm -f %{buildroot}%{_prefix}/lib/debug%{_libdir}/*_p.a
%endif

# Strip all of the installed object files.
strip -g %{buildroot}%{_libdir}/*.o

find_debuginfo_args='--strict-build-id -g -i'
/usr/bin/find-debuginfo.sh $find_debuginfo_args -o debuginfo.filelist

# List all of the *.a archives in the debug directory.
list_debug_archives()
{
	local dir=%{_prefix}/lib/debug%{_libdir}
	find %{buildroot}$dir -name "*.a" -printf "$dir/%%P\n"
}

# Remove some common directories from the common package debuginfo so that we
# don't end up owning them.
exclude_common_dirs()
{
	exclude_dirs="%{_prefix}/src/debug"
	exclude_dirs="$exclude_dirs $(echo %{_prefix}/lib/debug{,/%{_lib},/bin,/sbin})"
	exclude_dirs="$exclude_dirs $(echo %{_prefix}/lib/debug%{_prefix}{,/%{_lib},/libexec,/bin,/sbin})"

	for d in $(echo $exclude_dirs | sed 's/ /\n/g'); do
		sed -i "\|^%%dir $d/\?$|d" $1
	done
}

exclude_common_dirs debuginfo.filelist

# remove debug source dir
sed -i 's/\%{_prefix}\/src\/debug\/%{name}-%{version}//' debuginfo.filelist

%if "%{name}" == "glibc"

%post -p <lua>
%glibc_post_funcs
-- (1) Remove multilib libraries from previous installs.
-- In order to support in-place upgrades, we must immediately remove
-- obsolete platform directories after installing a new glibc
-- version.  RPM only deletes files removed by updates near the end
-- of the transaction.  If we did not remove the obsolete platform
-- directories here, they may be preferred by the dynamic linker
-- during the execution of subsequent RPM scriptlets, likely
-- resulting in process startup failures.

-- Full set of libraries glibc may install.
install_libs = { "anl", "BrokenLocale", "c", "dl", "m", "mvec",
                 "nss_compat", "nss_db", "nss_dns", "nss_files",
                 "nss_hesiod", "pthread", "resolv", "rt", "SegFault",
                 "thread_db", "util" }

-- We are going to remove these libraries. Generally speaking we remove
-- all core libraries in the multilib directory.
-- For the versioned install names, the version are [2.0,9.9*], so we
-- match "libc-2.0.so" and so on up to "libc-9.9*".
-- For the unversioned install names, we match the library plus ".so."
-- followed by digests.
remove_regexps = {}
for i = 1, #install_libs do
  -- Versioned install name.
  remove_regexps[#remove_regexps + 1] = ("lib" .. install_libs[i]
                                         .. "%%-[2-9]%%.[0-9]+%%.so$")
  -- Unversioned install name.
  remove_regexps[#remove_regexps + 1] = ("lib" .. install_libs[i]
                                         .. "%%.so%%.[0-9]+$")
end

-- Two exceptions:
remove_regexps[#install_libs + 1] = "libthread_db%%-1%%.0%%.so"
remove_regexps[#install_libs + 2] = "libSegFault%%.so"

-- We are going to search these directories.
local remove_dirs = { "%{_libdir}/i686",
                    }

-- Add all the subdirectories of the glibc-hwcaps subdirectory.
repeat
  local iter = posix.files("%{_libdir}/glibc-hwcaps")
  if iter ~= nil then
    for entry in iter do
      if entry ~= "." and entry ~= ".." then
        local path = "%{_libdir}/glibc-hwcaps/" .. entry
        if posix.access(path .. "/.", "x") then
          remove_dirs[#remove_dirs + 1] = path
        end
      end
    end
  end
until true

-- Walk all the directories with files we need to remove...
for _, rdir in ipairs (remove_dirs) do
  if posix.access (rdir) then
    -- If the directory exists we look at all the files...
    local remove_files = posix.files (rdir)
    for rfile in remove_files do
      for _, rregexp in ipairs (remove_regexps) do
        -- Does it match the regexp?
        local dso = string.match (rfile, rregexp)
        if (dso ~= nil) then
          -- Removing file...
          os.remove (rdir .. '/' .. rfile)
        end
      end
    end
  end
end

-- (2) Update /etc/ld.so.conf
-- Next we update /etc/ld.so.conf to ensure that it starts with
-- a literal "include ld.so.conf.d/*.conf".

local ldsoconf = "/etc/ld.so.conf"
local ldsoconf_tmp = "/etc/glibc_post_upgrade.ld.so.conf"

if posix.access (ldsoconf) then

  -- We must have a "include ld.so.conf.d/*.conf" line.
  local have_include = false
  for line in io.lines (ldsoconf) do
    -- This must match, and we don't ignore whitespace.
    if string.match (line, "^include ld.so.conf.d/%%*%%.conf$") ~= nil then
      have_include = true
    end
  end

  if not have_include then
    -- Insert "include ld.so.conf.d/*.conf" line at the start of the
    -- file. We only support one of these post upgrades running at
    -- a time (temporary file name is fixed).
    local tmp_fd = io.open (ldsoconf_tmp, "w")
    if tmp_fd ~= nil then
      tmp_fd:write ("include ld.so.conf.d/*.conf\n")
      for line in io.lines (ldsoconf) do
        tmp_fd:write (line .. "\n")
      end
      tmp_fd:close ()
      local res = os.rename (ldsoconf_tmp, ldsoconf)
      if res == nil then
        io.stdout:write ("Error: Unable to update configuration file (rename).\n")
      end
    else
      io.stdout:write ("Error: Unable to update configuration file (open).\n")
    end
  end
end

-- (3) Rebuild ld.so.cache early.
-- If the format of the cache changes then we need to rebuild
-- the cache early to avoid any problems running binaries with
-- the new glibc.

-- Note: We use _prefix because Fedora's UsrMove says so.
post_exec ("%{_prefix}/sbin/ldconfig")

-- (4) Update gconv modules cache.
-- If the /usr/lib/gconv/gconv-modules.cache exists, then update it
-- with the latest set of modules that were just installed.
-- We assume that the cache is in _libdir/gconv and called
-- "gconv-modules.cache".

update_gconv_modules_cache()

-- (5) On upgrades, restart systemd if installed.  "systemctl -q" does
-- not suppress the error message (which is common in chroots), so
-- open-code post_exec with standard error suppressed.
if tonumber(arg[2]) >= 2
   and posix.access("%{_prefix}/bin/systemctl", "x")
then
  local pid = posix.fork()
  if pid == 0 then
    posix.redirect2null(2)
    assert(posix.exec("%{_prefix}/bin/systemctl", "daemon-reexec"))
  elseif pid > 0 then
    posix.wait(pid)
  end
end

%transfiletriggerin -p %{ash_bin} -P 2000000 -- /lib /usr/lib /lib64 /usr/lib64
ldconfig -X

%transfiletriggerin -p %{ash_bin} -P 2000000 -- /etc/ld.so.conf.d/
ldconfig -X

%transfiletriggerpostun -p %{ash_bin} -P 2000000 -- /lib /usr/lib /lib64 /usr/lib64
ldconfig -X

%endif

%if %{build_nscd}
%pre -n nscd
%_pre_useradd nscd / /bin/false

%post -n nscd
%_tmpfilescreate nscd
%_post_service nscd

%preun -n nscd
%_preun_service nscd

%postun -n nscd
%_postun_userdel nscd

if [ "$1" -ge "1" ]; then
  /sbin/service nscd condrestart > /dev/null 2>&1 || :
fi
%endif

#
# glibc
#
%files -f rpm.filelist
%if "%{name}" == "glibc"
%if %{build_timezone}
%verify(not md5 size mtime) %config(noreplace) %{_sysconfdir}/localtime
%endif
%verify(not md5 size mtime) %config(noreplace) %{_sysconfdir}/nsswitch.conf
%verify(not md5 size mtime) %config(noreplace) %{_sysconfdir}/ld.so.conf
%dir %{_sysconfdir}/ld.so.conf.d
%config(noreplace) %{_sysconfdir}/rpc
#doc nis/nss
%doc posix/gai.conf
%{_datadir}/locale/locale.alias
/sbin/sln
%dir %{_prefix}/libexec/getconf
%{_prefix}/libexec/getconf/*
%endif
%if %isarch i386
%{_slibdir}/ld-linux.so.2
%endif
%if %isarch %arm
%if %isarch armv7hl
%{_slibdir}/ld-linux-armhf.so.3
%endif
%{_slibdir}/ld-linux.so.3
%endif
%if %isarch x86_64
%{_slibdir}/ld-linux-x86-64.so.2
%endif
%{_slibdir}/lib*.so.[0-9]*
%if "%{name}" == "glibc"
%dir %{_libdir}/audit
%{_libdir}/audit/sotruss-lib.so
%dir %{_libdir}/gconv
%dir %{_libdir}/gconv/gconv-modules.d
%{_libdir}/gconv/gconv-modules.d/gconv-modules-extra.conf
%{_libdir}/gconv/*.so
%{_libdir}/gconv/gconv-modules
%ghost %{_libdir}/gconv/gconv-modules.cache
%{_bindir}/gencat
%{_bindir}/getconf
%{_bindir}/getent
%{_bindir}/iconv
%{_bindir}/ld.so
%{_bindir}/ldd
%if %isarch i386
%{_bindir}/lddlibc4
%endif
%{_bindir}/locale
%{_bindir}/localedef
%{_bindir}/makedb
%{_bindir}/pldd
%{_bindir}/sotruss
%{_bindir}/sprof
%{_bindir}/tzselect
%{_sbindir}/iconvconfig
%endif

%if %isarch aarch64
%{_slibdir32}/ld-linux-aarch64.so.1
%endif

%if %{build_biarch}
%{_slibdir32}/ld-linux*.so.2
%{_slibdir32}/lib*.so.[0-9]*
%dir %{_prefix}/lib/audit
%{_prefix}/lib/audit/sotruss-lib.so
%dir %{_prefix}/lib/gconv
%{_prefix}/lib/gconv/*
%endif

#
# ldconfig
#
%if "%{name}" == "glibc"
/sbin/ldconfig
%ghost %{_sysconfdir}/ld.so.cache
%dir %{_var}/cache/ldconfig
%ghost %{_var}/cache/ldconfig/aux-cache
%endif

#
# glibc-devel
#
%files devel -f devel.filelist
%doc README NEWS INSTALL
# (tmb) FIXME, figure out rpm doc breakage/change
#doc COPYING COPYING.LIB
#doc documentation/*
#doc hesiod/README.hesiod
#doc crypt/README.ufc-crypt
%{_libdir}/libanl.a
%{_libdir}/libc_nonshared.a
%{_libdir}/libdl.a
%{_libdir}/libg.a
%{_libdir}/libmcheck.a
%{_libdir}/libpthread.a
%{_libdir}/librt.a
%{_libdir}/libutil.a
%if %isarch x86_64
%{_libdir}/libm-%{glibcversion}.a
%{_libdir}/libmvec.a
%endif

%if %{build_biarch}
%{_prefix}/lib/libanl.a
%{_prefix}/lib/libc_nonshared.a
%{_prefix}/lib/libdl.a
%{_prefix}/lib/libg.a
%{_prefix}/lib/libmcheck.a
%{_prefix}/lib/libpthread.a
%{_prefix}/lib/librt.a
%{_prefix}/lib/libutil.a
%endif

#
# glibc-static-devel
#
%files static-devel
%doc COPYING COPYING.LIB
%{_libdir}/libBrokenLocale.a
%{_libdir}/libc.a
%{_libdir}/libm.a
%{_libdir}/libresolv.a

%if %{build_biarch}
%{_prefix}/lib/libBrokenLocale.a
%{_prefix}/lib/libc.a
%{_prefix}/lib/libm.a
%{_prefix}/lib/libresolv.a
%endif

#
# glibc-doc
#
%if %{build_doc}
%files doc
%{_infodir}/libc.info*
%endif

#
# glibc-doc-pdf
#
%if %{build_pdf_doc}
%files doc-pdf
%doc manual/libc.pdf
%endif

#
# glibc-profile
#
%if %{build_profile}
%files profile
%{_libdir}/lib*_p.a
%if %{build_biarch}
%{_prefix}/lib/lib*_p.a
%endif
%endif

#
# glibc-utils
#
%if %{build_utils}
%files utils
%if %{build_biarch}
%{_slibdir32}/libmemusage.so
%{_slibdir32}/libpcprofile.so
%endif
%{_slibdir}/libmemusage.so
%{_slibdir}/libpcprofile.so
%{_bindir}/memusage
%{_bindir}/memusagestat
%{_bindir}/mtrace
%{_bindir}/pcprofiledump
%{_bindir}/xtrace
%endif

#
# nscd
#
%if %{build_nscd}
%files -n nscd
%config(noreplace) %{_sysconfdir}/nscd.conf
%{_sbindir}/nscd
%{_unitdir}/nscd.service
%{_unitdir}/nscd.socket
%{_tmpfilesdir}/nscd.conf
%dir %{_var}/db/nscd
%endif

#
# timezone
#
%if %{build_timezone}
%files -n timezone
%{_sbindir}/zdump
%{_sbindir}/zic
%dir %{_datadir}/zoneinfo
%{_datadir}/zoneinfo/*
%endif

#
# glibc-i18ndata
#
%if %{build_i18ndata}
%files i18ndata
%dir %{_datadir}/i18n
%dir %{_datadir}/i18n/charmaps
%{_datadir}/i18n/charmaps/*
%dir %{_datadir}/i18n/locales
%{_datadir}/i18n/locales/*
%{_datadir}/i18n/SUPPORTED
%endif

%if %{build_debug}
%files debuginfo -f debuginfo.filelist

%files debugsource
%dir %{_prefix}/src/debug/%{name}-%{version}
%{_prefix}/src/debug/%{name}-%{version}/*
%endif


%changelog
* Sat Sep 16 2023 tmb <tmb> 6:2.36-49.mga9
+ Revision: 1987088
- getaddrinfo: Fix use after free in getcanonname (CVE-2023-4806)
- elf: Introduce to _dl_call_fini
- elf: Do not run constructors for proxy objects
- elf: Always call destructors in reverse constructor order [BZ #30785]
- elf: Remove unused l_text_end field from struct link_map
- elf: Move l_init_called_next to old place of l_text_end in link map
- CVE-2023-4527: Stack read overflow with large TCP responses in no-aaaa mode
- elf: Fix slow tls access after dlopen [BZ #19924]
- intl: Treat C.UTF-8 locale like C locale [BZ# 16621]
- x86: Increase non_temporal_threshold to roughly "sizeof_L3 / 4"
- x86: Fix slight bug in shared_per_thread cache size calculation
- x86: Use 3/4*sizeof(per-thread-L3) as low bound for NT threshold
- x86: Fix incorrect scope of setting shared_per_thread [BZ# 30745]

* Sat Jul 22 2023 tmb <tmb> 6:2.36-45.mga9
+ Revision: 1964077
- elf: _dl_find_object may return 1 during early startup [BZ #30515]
- nptl: make ‘struct pthread’ a complete type
- nptl: Unconditionally use a 32-byte rseq area
- Update syscall lists for Linux 6.4

* Fri Jun 23 2023 tmb <tmb> 6:2.36-44.mga9
+ Revision: 1962868
- string: strerror must not return NULL [BZ #30555]

* Wed Jun 07 2023 tmb <tmb> 6:2.36-43.mga9
+ Revision: 1961295
- resolv_conf: release lock on allocation failure [BZ #30527]

* Fri Jun 02 2023 tmb <tmb> 6:2.36-42.mga9
+ Revision: 1960589
- io: Fix record locking contants on 32 bit arch with 64 bit default time_t [BZ #30477]

* Fri May 26 2023 tmb <tmb> 6:2.36-41.mga9
+ Revision: 1958608
- __check_pf: Add a cancellation cleanup handler [BZ #20975]

* Thu May 18 2023 tmb <tmb> 6:2.36-40.mga9
+ Revision: 1957197
- Use O_CLOEXEC in more places [BZ #15722]
- posix: Fix some crashes in wordexp [BZ #18096]
- update syscall lists for kernel 6.3

* Tue May 09 2023 tmb <tmb> 6:2.36-38.mga9
+ Revision: 1956289
- rebuild with gcc 12.3 final

* Sat Apr 29 2023 tmb <tmb> 6:2.36-36.mga9
+ Revision: 1955391
- posix: Fix system blocks SIGCHLD erroneously [BZ# 30163]
- gmon: Fix allocated buffer overflow [BZ# 29444]
- gmon: improve mcount overflow handling [BZ# 27576]
- gmon: fix memory corruption issues [BZ# 30101]
- gmon: Revert addition of tunables to preserve GLIBC_PRIVATE ABI
- gmon: Revert addition of tunables to the manual

* Mon Apr 24 2023 tmb <tmb> 6:2.36-35.mga9
+ Revision: 1954817
- gshadow: Matching sgetsgent, sgetsgent_r ERANGE handling [BZ #30151]
- x86_64: Fix asm constraints in feraiseexcept [BZ #30305]

* Mon Feb 20 2023 tmb <tmb> 6:2.36-34.mga9
+ Revision: 1944410
- stdlib: Undo post review change to 16adc58e73f3 [BZ #27749]

* Fri Feb 10 2023 tmb <tmb> 6:2.36-33.mga9
+ Revision: 1940079
- Use 64-bit time_t interfaces in strftime and strptime [BZ #30053]
- elf: Smoke-test ldconfig -p against system /etc/ld.so.cache

* Fri Feb 03 2023 tmb <tmb> 6:2.36-32.mga9
+ Revision: 1938002
- cdefs: Limit definition of fortification macros
- elf: Fix GL(dl_phdr) and GL(dl_phnum) for static builds [BZ #29864]

* Sun Jan 22 2023 tmb <tmb> 6:2.36-31.mga9
+ Revision: 1934809
- rebuild with new binutils

* Thu Jan 12 2023 tmb <tmb> 6:2.36-30.mga9
+ Revision: 1932691
- time: Set daylight to 1 for matching DST/offset change [BZ #29951]

* Mon Jan 09 2023 tmb <tmb> 6:2.36-29.mga9
+ Revision: 1932009
- x86: Check minimum/maximum of non_temporal_threshold [BZ #29953]

* Thu Dec 29 2022 tmb <tmb> 6:2.36-28.mga9
+ Revision: 1927939
- nis: Build libnsl with 64 bit time_t
- nscd: Use 64 bit time_t on libc nscd routines [BZ #29402]
- time: Use 64 bit time on tzfile
- locale: prevent maybe-uninitialized errors with -Os [BZ #19444]
- sunrpc: Suppress GCC -Os warning on user2netname
- x86: Fix -Os build [BZ #29576]

* Sun Dec 18 2022 tmb <tmb> 6:2.36-27.mga9
+ Revision: 1924727
- x86: Prevent SIGSEGV in memcmp-sse2 when data is concurrently
  modified [BZ #29863]

* Wed Dec 07 2022 tmb <tmb> 6:2.36-26.mga9
+ Revision: 1919001
- Apply asm redirections in syslog.h before first use [BZ #27087]

* Fri Nov 25 2022 tmb <tmb> 6:2.36-25.mga9
+ Revision: 1911146
- x86: Fix wcsnlen-avx2 page cross length comparison [BZ #29591]

* Wed Nov 23 2022 tmb <tmb> 6:2.36-24.mga9
+ Revision: 1910399
- elf: Fix rtld-audit trampoline for aarch64

* Fri Nov 11 2022 tmb <tmb> 6:2.36-23.mga9
+ Revision: 1905828
- Makerules: fix MAKEFLAGS assignment for upcoming make-4.4 [BZ# 29564]
- mktime: improve heuristic for ca-1986 Indiana DST
- Linux: Support __IPC_64 in sysvctl *ctl command arguments [BZ# 29771]

* Wed Oct 26 2022 tmb <tmb> 6:2.36-22.mga9
+ Revision: 1899554
- linux: Fix generic struct_stat for 64 bit time [BZ #29657]
- elf: Reinstate on DL_DEBUG_BINDINGS _dl_lookup_symbol_x

* Tue Oct 25 2022 tmb <tmb> 6:2.36-21.mga9
+ Revision: 1899281
- ensure calculations happen with desired rounding mode in
  in the ibm128 implementation of y1l too [BZ #29463]
- Avoid undefined behaviour in ibm128 implementation of
  llroundl [BZ #29488]

* Fri Oct 14 2022 tmb <tmb> 6:2.36-20.mga9
+ Revision: 1896865
- nss: Implement --no-addrconfig option for getent
- nss: Fix tst-nss-files-hosts-long on single-stack hosts [BZ #24816]
- nss: Use shared prefix in IPv4 address in tst-reload1
- elf: Do not completely clear reused namespace in dlmopen [BZ #29600]

* Tue Oct 11 2022 tmb <tmb> 6:2.36-19.mga9
+ Revision: 1896244
- Ensure calculations happen with desired rounding mode in y1lf128 [BZ# 29463]

* Wed Oct 05 2022 tmb <tmb> 6:2.36-18.mga9
+ Revision: 1894960
- nscd: Drop local address tuple variable [BZ #29607]

* Tue Oct 04 2022 tmb <tmb> 6:2.36-17.mga9
+ Revision: 1894789
- x86: include BMI1 and BMI2 in x86-64-v3 level
- x86-64: Require BMI2 for AVX2 str(n)casecmp implementations
- x86-64: Require BMI2 for AVX2 strcmp implementation
- x86-64: Require BMI2 for AVX2 strncmp implementation
- x86-64: Require BMI2 for AVX2 wcs(n)cmp implementations
- x86-64: Require BMI2 for AVX2 (raw|w)memchr implementations
- x86-64: Require BMI2 and LZCNT for AVX2 memrchr implementation
- x86-64: Require BMI1/BMI2 for AVX2 strrchr and wcsrchr implementations

* Fri Sep 30 2022 tmb <tmb> 6:2.36-16.mga9
+ Revision: 1893559
- stdlib: Fix __getrandom_nocancel type and arc4random usage [BZ #29638]

* Wed Sep 28 2022 tmb <tmb> 6:2.36-15.mga9
+ Revision: 1893093
- get_nscd_addresses: Fix subscript typos [BZ #29605]

* Wed Sep 21 2022 tmb <tmb> 6:2.36-14.mga9
+ Revision: 1891273
- scripts/dso-ordering-test.py: Generate program run-time dependencies
- elf: Rename _dl_sort_maps parameter from skip to force_first
- elf: Implement force_first handling in _dl_sort_maps_dfs [BZ #28937]
- gconv: Use 64-bit interfaces in gconv_parseconfdir [BZ #29583]

* Sun Sep 18 2022 tmb <tmb> 6:2.36-13.mga9
+ Revision: 1889741
- rebuild with gcc 12.2.1 and binutils 2.39

* Fri Sep 16 2022 tmb <tmb> 6:2.36-12.mga9
+ Revision: 1889173
- resolv: Add tst-resolv-byaddr for testing reverse lookup
- resolv: Add tst-resolv-aliases
- resolv: Add internal __res_binary_hnok function
- resolv: Add the __ns_samebinaryname function
- resolv: Add internal __ns_name_length_uncompressed function
- resolv: Add DNS packet parsing helpers geared towards wire format
- nss_dns: Split getanswer_ptr from getanswer_r
- nss_dns: Rewrite _nss_dns_gethostbyaddr2_r and getanswer_ptr
- nss_dns: Remove remnants of IPv6 address mapping
- nss_dns: Rewrite getanswer_r to match getanswer_ptr [BZ #12154, BZ #29305]
- nss_dns: In gaih_getanswer_slice, skip strange aliases [BZ #12154]
- resolv: Add new tst-resolv-invalid-cname
- nss_dns: Rewrite _nss_dns_gethostbyname4_r using current interfaces
- resolv: Fix building tst-resolv-invalid-cname for earlier C standards
- elf: Run tst-audit-tlsdesc, tst-audit-tlsdesc-dlopen everywhere
- elf: Fix hwcaps string size overestimation

* Wed Sep 07 2022 tmb <tmb> 6:2.36-11.mga9
+ Revision: 1885072
- nscd: Fix netlink cache invalidation if epoll is used [BZ #29415]

* Mon Sep 05 2022 tmb <tmb> 6:2.36-10.mga9
+ Revision: 1884239
- syslog: Remove extra whitespace between timestamp and message [BZ #29544]

* Sun Sep 04 2022 tmb <tmb> 6:2.36-9.mga9
+ Revision: 1883818
- syslog: Fix large messages [BZ #29536]
- elf: Call __libc_early_init for reused namespaces [BZ #29528]
- Apply asm redirections in wchar.h before first use
- elf: Restore how vDSO dependency is printed with LD_TRACE_LOADED_OBJECTS
  [BZ #29539]

* Thu Aug 25 2022 tmb <tmb> 6:2.36-8.mga9
+ Revision: 1880416
- socket: Check lengths before advancing pointer in CMSG_NXTHDR

* Tue Aug 16 2022 tmb <tmb> 6:2.36-7.mga9
+ Revision: 1878218
- Linux: Terminate subprocess on late failure in tst-pidfd [BZ #29485]
- Linux: Fix enum fsconfig_command detection in <sys/mount.h>

* Mon Aug 15 2022 tmb <tmb> 6:2.36-6.mga9
+ Revision: 1877698
- glibcextract.py: Add compile_c_snippet
- linux: Mimic kernel defition for BLOCK_SIZE
- linux: Use compile_c_snippet to check linux/mount.h availability
- linux: Fix sys/mount.h usage with kernel headers
- AArch64: Fix typo in sve configure check [BZ# 29394]
- libio: Improve performance of IO locks

* Sat Aug 13 2022 tmb <tmb> 6:2.36-5.mga9
+ Revision: 1877321
- elf: Replace 'strcpy' call with 'memcpy' [BZ #29454]

* Sat Aug 06 2022 tmb <tmb> 6:2.36-4.mga9
+ Revision: 1875594
- Update syscall lists for Linux 5.19

* Thu Aug 04 2022 tmb <tmb> 6:2.36-3.mga9
+ Revision: 1875280
- dlfcn: Pass caller pointer to static dlopen implementation [BZ #29446]

* Wed Aug 03 2022 tmb <tmb> 6:2.36-2.mga9
+ Revision: 1874978
- stdlib: Suppress gcc diagnostic that char8_t is a keyword in C++20 in uchar.h.
- wcsmbs: Add missing test-c8rtomb/test-mbrtoc8 dependency

* Wed Aug 03 2022 tmb <tmb> 6:2.36-1.mga9
+ Revision: 1874953
- disable check_elf_files
- revert 'disable multithreaded rpmbuild'
- disable multithreaded rpmbuild
- update to 2.36
  * drop merged/obsolete patches

* Sun Jul 24 2022 tmb <tmb> 6:2.35-36.mga9
+ Revision: 1870848
- x86_64: Remove bzero optimization
- x86_64: Implement evex512 version of strlen, strnlen, wcslen and wcsnlen
- x86-64: Ignore r_addend for R_X86_64_GLOB_DAT/R_X86_64_JUMP_SLOT
- x86_64: Add strstr function with 512-bit EVEX
- x86: Create header for VEC classes in x86 strings library
- x86: Add COND_VZEROUPPER that can replace vzeroupper if no `ret`
- x86: Optimize memrchr-sse2.S
- x86: Optimize memrchr-evex.S
- x86: Optimize memrchr-avx2.S
- x86: Shrink code size of memchr-avx2.S
- x86: Shrink code size of memchr-evex.S
- x86: ZERO_UPPER_VEC_REGISTERS_RETURN_XTEST expect no transactions
- x86: Align varshift table to 32-bytes
- x86: Fix misordered logic for setting `rep_movsb_stop_threshold`
- x86: Add sse42 implementation to strcmp's ifunc
- x86: Add bounds `x86_non_temporal_threshold`
- x86: Cleanup bounds checking in large memcpy case
- x86: Add BMI1/BMI2 checks for ISA_V3 check
- x86: Align entry for memrchr to 64-bytes.
- x86: Put wcs{n}len-sse4.1 in the sse4.1 text section
- x86: Add definition for __wmemset_chk AVX2 RTM in ifunc impl list
- x86: Move and slightly improve memset_erms
- x86: Move mem{p}{mov|cpy}_{chk_}erms to its own file
- x86: Add missing IS_IN (libc) check to strncmp-sse4_2.S
- Apply asm redirections in stdio.h before first use [BZ #27087]
- Update syscall-names.list for Linux 5.18
- malloc: Simplify implementation of __malloc_assert

* Sun Jul 17 2022 tmb <tmb> 6:2.35-35.mga9
+ Revision: 1869216
- nptl: Fix ___pthread_unregister_cancel_restore asynchronous restore

* Sat Jul 02 2022 tmb <tmb> 6:2.35-34.mga9
+ Revision: 1867077
- linux: Fix mq_timereceive check for 32 bit fallback code [BZ #29304]

* Tue Jun 14 2022 tmb <tmb> 6:2.35-33.mga9
+ Revision: 1864433
- nss: add assert to DB_LOOKUP_FCT [BZ #28752]
- nss: handle stat failure in check_reload_and_get [BZ #28752]

* Wed Jun 08 2022 tmb <tmb> 6:2.35-32.mga9
+ Revision: 1863583
- nptl: Fix __libc_cleanup_pop_restore asynchronous restore [BZ# 29214]

* Mon Jun 06 2022 tmb <tmb> 6:2.35-30.mga9
+ Revision: 1861424
- socket: Fix mistyped define statement in socket/sys/socket.h [BZ #29225]

* Wed Jun 01 2022 tmb <tmb> 6:2.35-28.mga9
+ Revision: 1861032
- misc: Use 64 bit stat for daemon [BZ# 29203]
- misc: Use 64 bit stat for getusershell [BZ# 29204]
- posix: Use 64 bit stat for posix_fallocate fallback [BZ# 29207]
- posix: Use 64 bit stat for fpathconf (_PC_ASYNC_IO) [BZ# 29208]
- socket: Use 64 bit stat for isfdtype [BZ# 29209]
- inet: Use 64 bit stat for ruserpass [BZ# 29210]
- catgets: Use 64 bit stat for __open_catalog [BZ# 29211]
- iconv: Use 64 bit stat for gconv_parseconfdir [BZ# 29213]

* Tue May 31 2022 tmb <tmb> 6:2.35-27.mga9
+ Revision: 1860846
- Fix deadlock when pthread_atfork handler calls pthread_atfork or dlclose
  [BZ #24595, BZ #27054]

* Thu May 26 2022 tmb <tmb> 6:2.35-26.mga9
+ Revision: 1860253
- string.h: fix __fortified_attr_access macro call [BZ #29162]
- x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #29127]

* Fri May 20 2022 tmb <tmb> 6:2.35-25.mga9
+ Revision: 1859479
- rtld: Use generic argv adjustment in ld.so [BZ #23293]
- linux: Add a getauxval test [BZ #23293]

* Tue May 17 2022 tmb <tmb> 6:2.35-24.mga9
+ Revision: 1858519
- x86: Improve L to support L(XXX_SYMBOL (YYY, ZZZ))
- x86_64/multiarch: Sort sysdep_routines and put one entry per line
- x86-64: Remove bzero weak alias in SS2 memset
- x86-64: Define __memcmpeq in ld.so
- x86_64: Remove bcopy optimizations
- x86: Code cleanup in strchr-avx2 and comment justifying branch
- x86: Code cleanup in strchr-evex and comment justifying branch
- x86: Optimize strcspn and strpbrk in strcspn-c.c
- x86: Optimize strspn in strspn-c.c
- x86: Remove strcspn-sse2.S and use the generic implementation
- x86: Remove strpbrk-sse2.S and use the generic implementation
- x86: Remove strspn-sse2.S and use the generic implementation
- x86: Optimize str{n}casecmp TOLOWER logic in strcmp.S
- x86: Optimize str{n}casecmp TOLOWER logic in strcmp-sse42.S
- x86: Add AVX2 optimized str{n}casecmp
- x86: Add EVEX optimized str{n}casecmp
- x86: Remove AVX str{n}casecmp
- x86: Small improvements for wcslen
- x86: Optimize memcmp SSE2 in memcmp.S
- x86: Remove memcmp-sse4.S
- x86: Cleanup page cross code in memcmp-avx2-movbe.S
- x86: Fix missing __wmemcmp def for disable-multiarch build
- x86-64: Fix SSE2 memcmp and SSSE3 memmove for x32
- x86: Optimize {str|wcs}rchr-sse2
- x86: Optimize {str|wcs}rchr-avx2
- x86: Optimize {str|wcs}rchr-evex
- elf: Merge dl-sysdep.c into the Linux version
- Linux: Remove HAVE_AUX_SECURE, HAVE_AUX_XID, HAVE_AUX_PAGESIZE
- Linux: Remove DL_FIND_ARG_COMPONENTS
- Linux: Assume that NEED_DL_SYSINFO_DSO is always defined
- Linux: Include <dl-auxv.h> in dl-sysdep.c only for SHARED
- Linux: Consolidate auxiliary vector parsing (redo)
- elf: Remove __libc_init_secure
- i386: Remove OPTIMIZE_FOR_GCC_5 from Linux libc-do-syscall.S
- i386: Honor I386_USE_SYSENTER for 6-argument Linux system calls
- Linux: Define MMAP_CALL_INTERNAL
- Linux: Implement a useful version of _startup_fatal
- Linux: Introduce __brk_call for invoking the brk system call
- csu: Implement and use _dl_early_allocate during static startup

* Mon May 16 2022 tmb <tmb> 6:2.35-22.mga9
+ Revision: 1858464
- fortify: Ensure that __glibc_fortify condition is a constant [BZ #29141]

* Sat May 14 2022 tmb <tmb> 6:2.35-21.mga9
+ Revision: 1858059
- manual: Document the dlinfo function
- dlfcn: Implement the RTLD_DI_PHDR request type for dlinfo
+ wally <wally>
- update nscd description

* Fri May 06 2022 tmb <tmb> 6:2.35-20.mga9
+ Revision: 1856546
- manual: Clarify that abbreviations of long options are allowed
- x86: Optimize strcmp-avx2.S
- x86: Optimize strcmp-evex.S
- x86-64: Fix strcmp-avx2.S
- x86-64: Fix strcmp-evex.S
- x86: Improve vec generation in memset-vec-unaligned-erms.S
- x86: Remove SSSE3 instruction for broadcast in memset.S (SSE2 Only)
- Optimize bzero
- x86: Set .text section in memset-vec-unaligned-erms
- x86: Fix bug in strncmp-evex and strncmp-avx2 [BZ #28895]
- x86: Fix fallback for wcsncmp_avx2 in strcmp-avx2.S [BZ #28896]
- linux: Fix posix_spawn return code if clone fails [BZ#29109]

* Tue May 03 2022 tmb <tmb> 6:2.35-18.mga9
+ Revision: 1855617
- Update syscall lists for Linux 5.17
- Update kernel version to 5.17 in tst-mman-consts.py
- Add SOL_MPTCP, SOL_MCTP from Linux 5.16 to bits/socket.h
- Add HWCAP2_AFP, HWCAP2_RPRES from Linux 5.17 to AArch64 bits/hwcap.h

* Thu Apr 28 2022 tmb <tmb> 6:2.35-17.mga9
+ Revision: 1854979
- rebuild for armv7

* Thu Apr 28 2022 tmb <tmb> 6:2.35-16.mga9
+ Revision: 1854947
- scripts: Add glibcelf.py module
- Default to --with-default-link=no [BZ #25812]
- misc: Fix rare fortify crash on wchar funcs. [BZ #29030]
- INSTALL: Rephrase -with-default-link documentation
- dlfcn: Do not use rtld_active () to determine ld.so state [BZ #29078]
- scripts/glibcelf.py: Mark as UNSUPPORTED on Python 3.5 and earlier
- elf: Fix DFS sorting algorithm for LD_TRACE_LOADED_OBJECTS with
  missing libraries [BZ #28868]
- linux: Fix missing internal 64 bit time_t stat usage
- i386: Regenerate ulps
- linux: Fix fchmodat with AT_SYMLINK_NOFOLLOW for 64 bit time_t [BZ #29097]
- posix/glob.c: update from gnulib

* Thu Apr 21 2022 tmb <tmb> 6:2.35-15.mga9
+ Revision: 1852466
- nptl: Fix pthread_cancel cancelhandling atomic operations

* Sat Apr 16 2022 tmb <tmb> 6:2.35-14.mga9
+ Revision: 1850635
- elf: Fix memory leak in _dl_find_object_update [BZ #29062]
- nptl: Handle spurious EINTR when thread cancellation is
  disabled [BZ #29029]

* Fri Mar 11 2022 tmb <tmb> 6:2.35-13.mga9
+ Revision: 1790421
- io: Add fsync call in tst-stat
- nss: Do not mention NSS test modules in <gnu/lib-names.h>
- nss: Protect against errno changes in function lookup [BZ #28953]

* Tue Mar 08 2022 tmb <tmb> 6:2.35-12.mga9
+ Revision: 1789883
- pthread: Do not overwrite tests-time64
- inet: Fix getnameinfo (NI_NOFQDN) race condition [BZ #28566]
- inet: Remove strdupa from nrl_domainname()
- inet: Return EAI_MEMORY when nrl_domainname() fails to allocate memory
- libio: Ensure output buffer for wchars [BZ #28828]

* Sat Mar 05 2022 tmb <tmb> 6:2.35-11.mga9
+ Revision: 1788863
- nptl: Fix cleanups for stack grows up [BZ# 28899]

* Thu Mar 03 2022 tmb <tmb> 6:2.35-10.mga9
+ Revision: 1788164
- rebuild with gcc 12

* Wed Mar 02 2022 tmb <tmb> 6:2.35-8.mga9
+ Revision: 1787810
- elf: Replace tst-audit24bmod2.so with tst-audit24bmod2
- resolv: Fix tst-resolv tests for 2.35 ABIs and later
- localedef: Update LC_MONETARY handling (Bug 28845)
- localedata: Do not generate output if warnings were present

* Mon Feb 21 2022 tmb <tmb> 6:2.35-7.mga9
+ Revision: 1782533
- elf: Check invalid hole in PT_LOAD segments [BZ #28838]

* Mon Feb 21 2022 tmb <tmb> 6:2.35-6.mga9
+ Revision: 1782320
- realpath: Do not copy result on failure [BZ #28815]

* Sat Feb 19 2022 tmb <tmb> 6:2.35-5.mga9
+ Revision: 1781445
- rebuild with binutils 2.38-2

* Sat Feb 19 2022 tmb <tmb> 6:2.35-4.mga9
+ Revision: 1781351
- string: Add a testcase for wcsncmp with SIZE_MAX [BZ #28755]
- x86: Fallback {str|wcs}cmp RTM in the ncmp overflow case [BZ #28896]
- x86: Test wcscmp RTM in the wcsncmp overflow case [BZ #28896]
- x86: Fix TEST_NAME to make it a string in tst-strncmp-rtm.c

* Wed Feb 16 2022 tmb <tmb> 6:2.35-3.mga9
+ Revision: 1778004
- pthread: Use 64 bit time_t stat internally for sem_open [BZ #28880]
- nsswitch.conf: networks: add dns service provider entry
- update nsswitch.conf help text from upstream
- linux: Use socket-constants-time64.h on tst-socket-timestamp-compat

* Thu Feb 10 2022 tmb <tmb> 6:2.35-2.mga9
+ Revision: 1772838
- linux: fix accuracy of get_nprocs and get_nprocs_conf [BZ #28865]

* Mon Feb 07 2022 tmb <tmb> 6:2.35-1.mga9
+ Revision: 1772595
- Regenerate configure
- posix: Fix tst-spawn6 terminal handling (BZ #28853)
- linux: __get_nprocs_sched: do not feed CPU_COUNT_S with garbage [BZ #28850]
- linux: Fix missing __convert_scm_timestamps [BZ #28860]
- update to 2.35
  * drop merged patches
  * update filelists

* Thu Feb 03 2022 tmb <tmb> 6:2.34-26.mga9
+ Revision: 1771340
- x86: Fix __wcsncmp_avx2 in strcmp-avx2.S [BZ# 28755]
- x86: Fix __wcsncmp_evex in strcmp-evex.S [BZ# 28755]
- Fix glibc 2.34 ABI omission (missing GLIBC_2.34 in dynamic loader)
- x86: Black list more Intel CPUs for TSX [BZ #27398]
- x86: Use CHECK_FEATURE_PRESENT to check HLE [BZ #27398]
- support: Add support_socket_so_timestamp_time64
- linux: Fix ancillary 64-bit time timestamp conversion [BZ #28349, BZ #28350]
- Linux: Only generate 64 bit timestamps for 64 bit time_t recvmsg/recvmmsg
- tst-socket-timestamp-compat.c: Check __TIMESIZE [BZ #28837]
- linux: __get_nprocs_sched: do not feed CPU_COUNT_S with garbage [BZ #28850]
- Linux: Simplify __opensock and fix race condition [BZ #28353]
- socket: Do not use AF_NETLINK in __opensock
- linux: Fix missing __convert_scm_timestamps [BZ #28860]

* Wed Jan 26 2022 tmb <tmb> 6:2.34-25.mga9
+ Revision: 1769898
- regex: copy back from Gnulib (mga#29942)
- realpath: Avoid overwriting preexisting error (CVE-2021-3998)
- Linux: Detect user namespace support in io/tst-getcwd-smallbuff

* Mon Jan 24 2022 tmb <tmb> 6:2.34-24.mga9
+ Revision: 1769627
- fix CVE-2021-3998 and CVE-2021-3999 (mga#29935)

* Sat Jan 22 2022 tmb <tmb> 6:2.34-23.mga9
+ Revision: 1769457
- socket: Add the __sockaddr_un_set function
- CVE-2022-23219: Buffer overflow in sunrpc clnt_create for "unix" [BZ #22542]
- sunrpc: Test case for clnt_create "unix" buffer overflow [BZ #22542]
- CVE-2022-23218: Buffer overflow in sunrpc svcunix_create [BZ #28768]
- x86: use default cache size if it cannot be determined [BZ #28784]

* Sun Jan 16 2022 tmb <tmb> 6:2.34-22.mga9
+ Revision: 1768662
- nptl: Add one more barrier to nptl/tst-create1
- Run conform/ tests using newly built libc
- Use (pie-default) with conformtest
- pthread/tst-cancel28: Fix barrier re-init race condition
- arm: Guard ucontext _rtld_global_ro access by SHARED, not PIC macro
- nss: Use "files dns" as the default for the hosts database [BZ #28700]
- elf: Fix tst-cpu-features-cpuinfo for KVM guests on some AMD systems [BZ #28704]
- linux: Add sparck brk implementation
- intl/plural.y: Avoid conflicting declarations of yyerror and yylex
- AArch64: Check for SVE in ifuncs [BZ #28744]
- Fix subscript error with odd TZif file [BZ #28338]
- timezone: handle truncated timezones from tzcode-2021d and later [BZ #28707]
- timezone: test-case for [BZ #28707]
- Update syscall lists for Linux 5.15
- i386: Remove broken CAN_USE_REGISTER_ASM_EBP [BZ #28771]
- Update syscall lists for Linux 5.16
- Disable debuginfod in printer tests [BZ #28757]

* Thu Nov 25 2021 tmb <tmb> 6:2.34-20.mga9
+ Revision: 1759227
- linux: Use /proc/stat fallback for __get_nprocs_conf [BZ #28624]

* Thu Nov 25 2021 tmb <tmb> 6:2.34-19.mga9
+ Revision: 1759151
- regex: fix buffer read overrun in search [BZ#28470]

* Wed Nov 24 2021 tmb <tmb> 6:2.34-18.mga9
+ Revision: 1759097
- nptl: Do not set signal mask on second setjmp return [BZ #28607]

* Mon Nov 08 2021 tmb <tmb> 6:2.34-17.mga9
+ Revision: 1754723
- elf: Earlier missing dynamic segment check in _dl_map_object_from_fd

* Fri Nov 05 2021 tmb <tmb> 6:2.34-16.mga9
+ Revision: 1753992
- ld.so: Replace DL_RO_DYN_SECTION with dl_relocate_ld [BZ #28340]
- ld.so: Initialize bootstrap_map.l_ld_readonly [BZ #28340]
- Avoid warning: overriding recipe for .../tst-ro-dynamic-mod.so
- gconv: Do not emit spurious NUL character in ISO-2022-JP-3 [BZ #28524]

* Fri Oct 29 2021 tmb <tmb> 6:2.34-15.mga9
+ Revision: 1753269
- login: Add back libutil as an empty library
- Handle NULL input to malloc_usable_size [BZ #28506]

* Sun Oct 24 2021 tmb <tmb> 6:2.34-14.mga9
+ Revision: 1752764
- linux: Fix a possibly non-constant expression in _Static_assert

* Tue Oct 19 2021 tmb <tmb> 6:2.34-12.mga9
+ Revision: 1752209
- timex: Use 64-bit fields on 32-bit TIMESIZE=64 systems [BZ #28469]

* Sat Oct 09 2021 tmb <tmb> 6:2.34-11.mga9
+ Revision: 1750379
- Fix inaccuracy of j0f [BZ #28185]
- io: Fix ftw internal realloc buffer [BZ #28126]

* Thu Oct 07 2021 tmb <tmb> 6:2.34-10.mga9
+ Revision: 1749973
- update to Unicode 14.0.0 [BZ #28390]
- support: Also return fd when it is 0

* Mon Oct 04 2021 tmb <tmb> 6:2.34-8.mga9
+ Revision: 1749415
- elf: Avoid deadlock between pthread_create and ctors [BZ #28357]

* Fri Oct 01 2021 tmb <tmb> 6:2.34-7.mga9
+ Revision: 1747312
- rebuild for release

* Fri Oct 01 2021 tmb <tmb> 6:2.34-6.mga9
+ Revision: 1747291
- elf: Replace nsid with args.nsid [BZ #27609]
- support: Add check for TID zero in support_wait_for_thread_exit
- nptl: pthread_kill must send signals to a specific thread [BZ #28407]
- misc: Add __get_nprocs_sched
- linux: Simplify get_nprocs
- linux: Revert the use of sched_getaffinity on get_nproc [BZ #28310]
- Suppress -Wcast-qual warnings in bsearch
- Add missing braces to bsearch inline implementation [BZ #28400]

* Sun Sep 26 2021 tmb <tmb> 6:2.34-5.mga9
+ Revision: 1746439
- move empty archives (libanl.a, libdl.a, libpthread.a, librt.a, libutil.a)
  from static-devel to devel package to keep matching linker options working
+ wally <wally>
- add 64 bit devel() provides for smooth upgrade to aarch64 pkgs also

* Fri Sep 24 2021 tmb <tmb> 6:2.34-4.mga9
+ Revision: 1746326
- dont provide libc_malloc_debug*
- glibc-devel:
  * add virtual provides for devel(libdl* and devel(libutil* to support upgrade
- nptl: Avoid setxid deadlock with blocked signals in thread exit [BZ #28361]

* Tue Sep 21 2021 tmb <tmb> 6:2.34-2.mga9
+ Revision: 1746161
- filter out self-requires on libmss_files
- posix: Fix attribute access mode on getcwd [BZ #27476]
- nptl: pthread_kill needs to return ESRCH for old programs [BZ #19193]
- nptl: Fix type of pthread_mutexattr_getrobust_np,
  pthread_mutexattr_setrobust_np [BZ #28036]
- support: Add support_open_dev_null_range
- Use support_open_dev_null_range io/tst-closefrom, misc/tst-close_range,
  and posix/tst-spawn5 [BZ #28260]

* Sat Sep 18 2021 tmb <tmb> 6:2.34-1.mga9
+ Revision: 1745864
- update filelists
- convert glibc-post-wrapper to lua (based on Fedora work)
- update C.UTF-8 support to official upstream merged patches
- add post release fixes from upstream 2.34 release branch
- update to 2.34
  * drop merged / obsolete patches

* Fri Sep 17 2021 tmb <tmb> 6:2.33-20.mga9
+ Revision: 1745661
- posix: Fix attribute access mode on getcwd [BZ #27476]

* Mon Aug 09 2021 tmb <tmb> 6:2.33-18.mga9
+ Revision: 1740950
- librt: fix NULL pointer dereference [BZ# 28213]

* Tue Jul 20 2021 tmb <tmb> 6:2.33-17.mga9
+ Revision: 1737171
- rebuild with binutils 2.37

* Thu Jul 08 2021 tmb <tmb> 6:2.33-16.mga9
+ Revision: 1735141
- wordexp: handle overflow in positional parameter number [BZ #28011]

* Tue Jul 06 2021 tmb <tmb> 6:2.33-15.mga9
+ Revision: 1735020
- x86: Fix tst-cpu-features-cpuinfo on Ryzen 9 [BZ #27873]
+ wally <wally>
- rebuild due to a missing signature

* Tue Jul 06 2021 tmb <tmb> 6:2.33-13.mga9
+ Revision: 1735015
- x86: Copy IBT and SHSTK usable only if CET is enabled
- x86: Check RTM_ALWAYS_ABORT for RTM [BZ #28033]

* Wed Jun 23 2021 tmb <tmb> 6:2.33-12.mga9
+ Revision: 1732054
- fix path to find-debuginfo.sh
- nptl_db: Support different libpthread/ld.so load orders [BZ #27744]
- nptl: Check for compatible GDB in nptl/tst-pthread-gdb-attach
- nptl: Do not build nptl/tst-pthread-gdb-attach as PIE
- dlfcn: Failures after dlmopen should not terminate process [BZ #15271]
- Use __pthread_attr_copy in mq_notify [BZ #27896]
- Fix use of __pthread_attr_copy in mq_notify [BZ #27896]
- elf: Use _dl_catch_error from base namespace in dl-libc.c [BZ #27646]

* Sun Apr 25 2021 tmb <tmb> 6:2.33-11.mga9
+ Revision: 1719605
- Update Nios II libm-test-ulps
- tst: Provide test for select
- misc: Fix tst-select timeout handling [BZ#27648]
- libsupport: Add support_select_modifies_timeout
- libsupport: Add support_select_normalizes_timeout
- linux: Normalize and return timeout on select [BZ#27651]
- linux: always update select timeout [BZ#27706]
- tunables: Fix comparison of tunable values
- support: Typo and formatting fixes
- support: Pass environ to child process
- support: Add capability to fork an sgid child
- tst-env-setuid: Use support_capture_subprogram_self_sgid
- Enhance setuid-tunables test
- Fix SXID_ERASE behavior in setuid programs [BZ#27471]
- Remove PR_TAGGED_ADDR_ENABLE from sys/prctl.h
- x86: tst-cpu-features-supports.c: Update AMX check

* Sun Apr 25 2021 tmb <tmb> 6:2.33-10.mga9
+ Revision: 1719255
- rebuild with gcc 11.1

* Sat Apr 17 2021 wally <wally> 6:2.33-8.mga9
+ Revision: 1716308
- run %%transfiletrigger(in|postun) ldconfig for all files in lib directories to avoid broken pipe msg
- fix %%transfiletriggerin ldconfig to run also for files installed into /usr/lib and /usr/lib64 (mga#28797)
- run ldconfig via %%transfiletriggerpostun also when removing libs

* Mon Mar 29 2021 tmb <tmb> 6:2.33-7.mga9
+ Revision: 1711679
- malloc: Fix a realloc crash with heap tagging [BZ #27468]

* Tue Mar 16 2021 tmb <tmb> 6:2.33-6.mga9
+ Revision: 1703782
- elf: Always set l in _dl_init_paths [BZ #23462]
- elf: ld.so --help calls _dl_init_paths without a main map [BZ #27577]
- pthread_once hangs when init routine throws an exception [BZ #18435]
- nptl: Remove private futex optimization [BZ #27304]
- test-container: Always copy test-specific support files [BZ #27537]

* Mon Mar 15 2021 tmb <tmb> 6:2.33-5.mga9
+ Revision: 1703537
- x86: Handle _SC_LEVEL1_ICACHE_LINESIZE [BZ #27444]

* Thu Mar 11 2021 tmb <tmb> 6:2.33-4.mga9
+ Revision: 1701529
- io: Return EBAFD for negative file descriptor on fstat [BZ #27559]

* Sun Mar 07 2021 tmb <tmb> 6:2.33-3.mga9
+ Revision: 1700528
- ld.so: Implement the --list-diagnostics option
- x86: Automate generation of PREFERRED_FEATURE_INDEX_1 bitfield
- x86: Add CPU-specific diagnostics to ld.so --list-diagnostics
- x86: Set minimum x86-64 level marker [BZ #27318]

* Tue Mar 02 2021 tmb <tmb> 6:2.33-2.mga9
+ Revision: 1696508
- nscd: Fix double free in netgroupcache [BZ #27462]
- nss: Re-enable NSS module loading after chroot [BZ #27389]
- remove 32bit selinux deps that wont work on 64bit builds

* Sun Feb 28 2021 tmb <tmb> 6:2.33-1.mga9
+ Revision: 1693197
- update to 2.33
  * drop merged/obsolete patches
- add post 2.33 fixes from glibc-2.33 branch

* Sun Jan 31 2021 tmb <tmb> 6:2.32-14.mga8
+ Revision: 1674208
- rebuild with new binutils / gcc

* Thu Jan 28 2021 tmb <tmb> 6:2.32-12.mga8
+ Revision: 1673800
- gconv: Fix assertion failure in ISO-2022-JP-3 module [BZ #27256]

* Fri Jan 22 2021 tmb <tmb> 6:2.32-11.mga8
+ Revision: 1672828
- aarch64: Fix missing BTI protection from dependencies [BZ #26926]
- aarch64: align address for BTI protection [BZ #26988]
-elf: Move note processing after l_phdr is updated
- elf: Pass the fd to note processing
- aarch64: Use mmap to add PROT_BTI instead of mprotect [BZ #26831]
- __vfscanf_internal: fix aliasing violation [BZ #26690]
- aarch64: fix static PIE start code for BTI [BZ #27068]

* Thu Jan 14 2021 tmb <tmb> 6:2.32-10.mga8
+ Revision: 1671756
- tests-mcheck: New variable to run tests with MALLOC_CHECK_=3
- x86: Set header.feature_1 in TCB for always-on CET [BZ #27177]
- x86: Check IFUNC definition in unrelocated executable [BZ #20019]

* Mon Jan 04 2021 tmb <tmb> 6:2.32-9.mga8
+ Revision: 1668870
- aarch64: fix stack missing after sp is updated
- x86-64: Avoid rep movsb with short distance [BZ #27130]

* Fri Dec 25 2020 tmb <tmb> 6:2.32-8.mga8
+ Revision: 1663698
- revert enabling SELinux
+ oden <oden>
- enable SELinux

* Mon Dec 21 2020 tmb <tmb> 6:2.32-7.mga8
+ Revision: 1662564
- Fix buffer overrun in EUC-KR conversion module [bz #24973]
- update syscall list for linux 5.10

* Sat Dec 12 2020 tmb <tmb> 6:2.32-6.mga8
+ Revision: 1655850
- Fix parsing of /sys/devices/system/cpu/online [BZ #25859]
- Handle out-of-memory case in svc_tcp.c/svc_unix.c:rendezvous_request
- malloc: Detect infinite-loop in _int_free when freeing tcache [BZ#27052]

* Wed Dec 09 2020 tmb <tmb> 6:2.32-5.mga8
+ Revision: 1654770
- iconv: Fix incorrect UCS4 inner loop bounds [BZ #26923] (CVE-2020-29562)
- glibc-devel: drop deps on libtirpc and libnsl as they dont really help fixing anything

* Wed Dec 02 2020 tmb <tmb> 6:2.32-4.mga8
+ Revision: 1651569
- iconv: Accept redundant shift sequences in IBM1364 [BZ #26224] (CVE-2020-27618)

* Thu Nov 26 2020 tmb <tmb> 6:2.32-3.mga8
+ Revision: 1649550
- linux: Allow adjtime with NULL argument [BZ #26833]
- sync in glibc-2.32 branch
  - update to 2.32
  - rebase P27
  - update filelists
  - add fixes from upstream 2.32 branch
  - drop upstream removed --enable-obsolete-rpc,  --enable-obsolete-nsl build flags
  - glibc-devel: require libtirpc and libnsl to simplify transition to glibc 2.32
  - Use O_CLOEXEC in sysconf [BZ #26791]

* Mon Nov 16 2020 tmb <tmb> 6:2.31-17.mga8
+ Revision: 1646717
- aarch64: Fix DT_AARCH64_VARIANT_PCS handling [BZ #26798]

* Thu Nov 05 2020 ghibo <ghibo> 6:2.31-16.mga8
+ Revision: 1642869
- Sync latest patches with upstream git (optimizations for memcpy for Zen Arch)

* Fri Oct 16 2020 ghibo <ghibo> 6:2.31-15.mga8
+ Revision: 1636366
- Merge latest patches from 2.31 branch (fixes for AArch64)

* Sun Aug 16 2020 ghibo <ghibo> 6:2.31-14.mga8
+ Revision: 1614446
- Rebuild for core/release from updates_testing

* Sat Aug 08 2020 ghibo <ghibo> 6:2.31-13.mga8
+ Revision: 1612001
- Add more patches from upstream 2.31 branch.

* Thu May 21 2020 tmb <tmb> 6:2.31-12.mga8
+ Revision: 1586535
- aarch64: fix strcpy and strnlen for big-endian [BZ #25824]
- nss_compat: internal_end*ent may clobber errno, hiding ERANGE [BZ #25976]
+ tv <tv>
- improve debuginfo description

* Mon May 18 2020 tmb <tmb> 6:2.31-10.mga8
+ Revision: 1586064
- split out debugsource from debuginfo
- switch from RPM_BUILD_ROOT to buildroot macro
- replace non-existant glibc_sysroot with buildroot
- allow to disable debuginfo package
- debuginfo: add missing Group and description
- add fixes by Thierry Vignaud:
  * we do not support ppc64
  * generate debuginfo like FC does (mga#26517)
  * strip debuging from libc_nonshared.a (mga#26517)
  * kill 10+ years old %%pre as those are no more symlinks
  * kill sync header that has never been updated in mga

* Fri May 15 2020 tmb <tmb> 6:2.31-9.mga8
+ Revision: 1583751
- oc_FR locale: Fix spelling of Thursday [BZ #25639]
- oc_FR locale: Fix spelling of April [BZ #25639]
- x86-64: Use RDX_LP on __x86_shared_non_temporal_threshold [BZ #25966]
- aarch64: Accept PLT calls to __getauxval within libc.so
+ tv <tv>
- kill very old obsoletes
- we never ever ship glibc-debug in mga...
- locale: Fix C.UTF-8 ranges:
  The ellipsis range support only allows <Uxxxx> or <Uxxxxxxxx> as
  valid unicode code points, otherwise it treats it as a symbol and
  since we don't define the symbol the entire range is unused.

* Thu May 07 2020 tmb <tmb> 6:2.31-8.mga8
+ Revision: 1581497
- x32: Properly pass long to syscall [BZ #25810]
- Add SYSCALL_ULONG_ARG_[12] to pass long to syscall [BZ #25810]
- Add a syscall test for [BZ #25810]
- Mark unsigned long arguments with U in more syscalls [BZ #25810]
- Add C wrappers for process_vm_readv/process_vm_writev [BZ #25810]
- Add a C wrapper for prctl [BZ #25896]

* Mon May 04 2020 tmb <tmb> 6:2.31-6.mga8
+ Revision: 1579649
- rebuild with gcc 10.1

* Mon May 04 2020 tmb <tmb> 6:2.31-5.mga8
+ Revision: 1579639
- Fix build with GCC 10 when long double = double
- support/shell-container.c: Return 127 if execve fail
- support/shell-container.c: Add builtin exit
- support/shell-container.c: Add builtin kill
- stdlib: Move tst-system to tests-container
- mips: Fix bracktrace result for signal frames

* Tue Mar 24 2020 tmb <tmb> 6:2.31-4.mga8
+ Revision: 1559492
- posix: Fix system error return value [BZ #25715]

* Fri Mar 20 2020 tmb <tmb> 6:2.31-3.mga8
+ Revision: 1558340
- [AArch64] Improve integer memcpy

* Fri Mar 20 2020 tmb <tmb> 6:2.31-2.1.mga8
+ Revision: 1558336
- malloc/tst-mallocfork2: Kill lingering process for unexpected failures
- Improve IFUNC check [BZ #25506]
- i386: Use comdat instead of .gnu.linkonce for i386 setup pic register
  [BZ #20543]
- linux: Clear mode_t padding bits [BZ#25623]
- linux/sysipc: Include linux/posix_types.h for __kernel_mode_t
- arm: Fix softp-fp Implies [BZ #25635]
- Update syscall lists for Linux 5.5

* Thu Mar 05 2020 tmb <tmb> 6:2.31-2.mga8
+ Revision: 1554162
- sinl() stack corruption from crafted input [BZ 25487] (CVE-2020-10029)
- Fix use-after-free in glob when expanding ~user [BZ 25414]
- Convert Python scripts to Python 3
- enable systemtap support (tv)
- drop obsolete mips support (tv)

* Sun Feb 02 2020 tmb <tmb> 6:2.31-1.mga8
+ Revision: 1486465
- update filelists
- update to 2.31
  * drop merged patches

* Sun Nov 24 2019 tmb <tmb> 6:2.30-6.mga8
+ Revision: 1462537
- Make tst-strftime2 and tst-strftime3 depend on locale generation
- Add glibc.malloc.mxfast tunable
- malloc: Various cleanups for malloc/tst-mxfast
- Base max_fast on alignment, not width, of bins [BZ #24903]
- Don't use a custom wrapper macro around __has_include [BZ #25189]
- rtld: Check __libc_enable_secure before honoring LD_PREFER_MAP_32BIT_EXEC
  (CVE-2019-19126) [BZ #25204]

* Tue Oct 15 2019 tmb <tmb> 6:2.30-5.mga8
+ Revision: 1453890
- aarch64: Disable using DC ZVA in emag memset
- Fix bad pointer / leak in regex code [BZ#24844]
- Remove dead regex code
- Fix small error in HP_TIMING_PRINT trailing null char setting
- Chinese locales: Set first_weekday to 2 [BZ #24682]

* Mon Oct 14 2019 tmb <tmb> 6:2.30-4.mga8
+ Revision: 1452985
- rebuild with binutils 2.33.1

* Wed Aug 14 2019 tmb <tmb> 6:2.30-3.mga8
+ Revision: 1429312
- Get new entropy on each attempt __gen_tempname [BZ #15813]
- malloc: Fix missing accounting of top chunk in malloc_info [BZ #24026]

* Tue Aug 13 2019 tmb <tmb> 6:2.30-2.mga8
+ Revision: 1429118
- rebuild with gcc 9.2

* Sun Aug 04 2019 tmb <tmb> 6:2.30-1.mga8
+ Revision: 1427350
- malloc: Remove unwanted leading whitespace in malloc_info [BZ #24867]
- update to 2.30
  * drop merged patches

* Sat Jul 13 2019 tmb <tmb> 6:2.29-15.mga8
+ Revision: 1420997
- io: Remove copy_file_range emulation [BZ #24744
- aarch64: add STO_AARCH64_VARIANT_PCS and DT_AARCH64_VARIANT_PCS
- aarch64: handle STO_AARCH64_VARIANT_PCS

* Sat Jun 29 2019 tmb <tmb> 6:2.29-14.mga8
+ Revision: 1415586
- malloc: Fix warnings in tests with GCC 9
- Use a proper C tokenizer to implement the obsolete typedefs test
- libio: do not attempt to free wide buffers of legacy streams [BZ #24228]

* Sun May 26 2019 tmb <tmb> 6:2.29-13.mga7
+ Revision: 1399181
- Fix tcache count maximum [BZ #24531]

* Sat May 18 2019 tmb <tmb> 6:2.29-12.mga7
+ Revision: 1398347
- dlfcn: Guard __dlerror_main_freeres with __libc_once_get (once) [BZ #24476]

* Wed May 15 2019 tmb <tmb> 6:2.29-11.mga7
+ Revision: 1397895
- Fix crash in _IO_wfile_sync [BZ #20568]

* Mon May 06 2019 tmb <tmb> 6:2.29-10.mga7
+ Revision: 1396479
- aarch64: thunderx2 memcpy implementation cleanup and streamlining
- aarch64: thunderx2 memmove performance improvements

* Fri May 03 2019 tmb <tmb> 6:2.29-8.mga7
+ Revision: 1396255
- support: Add support_capture_subprogram
- elf: Fix pldd [BZ #18035]
- malloc: Check for large bin list corruption when inserting unsorted chunk

* Mon Apr 22 2019 tmb <tmb> 6:2.29-7.mga7
+ Revision: 1394835
- iconv, localedef: avoid floating point rounding differences [BZ #24372]
- Fix parentheses error in iconvconfig.c and ld-collate.c [BZ #24372]

* Sun Apr 21 2019 tmb <tmb> 6:2.29-6.mga7
+ Revision: 1394411
- ja_JP: Change the offset for Taisho gan-nen from 2 to 1 [BZ #24162]
- ja_JP locale: Add entry for the new Japanese era [BZ #22964]
- malloc: Set and reset all hooks for tracing [BZ #16573]

* Mon Mar 18 2019 tmb <tmb> 6:2.29-5.mga7
+ Revision: 1378691
- fixes from upstream master branch
  * nss_files: Fix /etc/aliases null pointer dereference [BZ #24059]
  * nptl: Reinstate pthread_timedjoin_np as a cancellation point [BZ #24215]
  * resolv: Enable full ICMP errors for UDP DNS sockets [BZ #24047]
  * malloc: Check for large bin list corruption when inserting unsorted chunk
- switch to autopatch
- ensure upstream patches are applied before Mageia ones
- really apply P206-P208 (noticed by ghibo)

* Sun Mar 17 2019 tmb <tmb> 6:2.29-4.mga7
+ Revision: 1378405
- fix output of LD_SHOW_AUXV=1
- regex: fix read overrun [BZ #24114] (CVE-2019-9169)

* Sat Feb 23 2019 tmb <tmb> 6:2.29-3.mga7
+ Revision: 1369549
- rebuild with gcc 8.3.0 final

* Sat Feb 16 2019 tmb <tmb> 6:2.29-2.mga7
+ Revision: 1367554
- nptl: Fix invalid Systemtap probe in pthread_join [BZ #24211]

* Fri Feb 08 2019 tmb <tmb> 6:2.29-1.mga7
+ Revision: 1364262
- nptl: Avoid fork handler lock for async-signal-safe fork [BZ #24161]

* Thu Feb 07 2019 tmb <tmb> 6:2.29-0.3.mga7
+ Revision: 1364014
- Add compiler barriers around modifications of the robust
  mutex list for pthread_mutex_trylock. [BZ #24180]

* Wed Feb 06 2019 tmb <tmb> 6:2.29-0.2.mga7
+ Revision: 1363530
- BR binutils 2.32
- arm: Use nr constraint for Systemtap probes [BZ #24164]

* Tue Feb 05 2019 tmb <tmb> 6:2.29-0.1.mga7
+ Revision: 1363480
- nptl: Fix pthread_rwlock_try*lock stalls [BZ #23844]
- x86-64 memcmp: Use unsigned Jcc instructions on size [BZ #24155]
- update to 2.29
  * drop merged patches

* Sat Feb 02 2019 tmb <tmb> 6:2.28-29.mga7
+ Revision: 1362333
- BR fixed bison
- getaddrinfo: Fully parse IPv4 address strings (CVE-2016-10739) [BZ #20018]
- fix CVE-2019-6488

* Wed Jan 09 2019 tmb <tmb> 6:2.28-28.mga7
+ Revision: 1352951
- Only build libm with -fno-math-errno [BZ #24024]

* Sat Jan 05 2019 tmb <tmb> 6:2.28-27.mga7
+ Revision: 1349903
- support: Do not require overflow builtin in support/blob_repeat.c
- malloc: Always call memcpy in _int_realloc [BZ #24027]
- intl: Do not return NULL on asprintf failure in gettext [BZ #24018]
- ARM: fix kernel assisted atomics with GCC 8 [BZ #24034]
- sysdeps/ieee754/soft-fp: ignore maybe-uninitialized with -O [BZ #19444]

* Sat Dec 15 2018 tmb <tmb> 6:2.28-26.mga7
+ Revision: 1341406
- support: Implement support_quote_string
- support_quote_string: Do not use str parameter name
- support: Close original descriptors in support_capture_subprocess
- support: Implement <support/descriptors.h> to track file descriptors
- inet/tst-if_index-long: New test case for CVE-2018-19591 [BZ #23927]
- malloc: Add another test for tcache double free check
- powerpc: Add missing CFI register information [BZ #23614]
- Fix rwlock stall with PREFER_WRITER_NONRECURSIVE_NP [BZ #23861]

* Tue Dec 11 2018 tmb <tmb> 6:2.28-25.mga7
+ Revision: 1340285
- compat getdents64: Use correct offset for retry [BZ #23972]

* Fri Dec 07 2018 tmb <tmb> 6:2.28-24.mga7
+ Revision: 1338835
- malloc: tcache double free check
- Fix _dl_profile_fixup data-dependency issue [BZ 23690]

* Wed Nov 28 2018 tmb <tmb> 6:2.28-22.mga7
+ Revision: 1336487
- CVE-2018-19591: if_nametoindex: Fix descriptor for overlong name [BZ #23927]

* Thu Nov 22 2018 tmb <tmb> 6:2.28-20.mga7
+ Revision: 1333352
- disable P244-P246 for now as they cause gcc segfaults

* Wed Nov 21 2018 tmb <tmb> 6:2.28-19.mga7
+ Revision: 1332910
- Increase timeout of libio/tst-readline
- support: Print timestamps in timeout handler
- malloc: tcache double free check

* Mon Nov 12 2018 tmb <tmb> 6:2.28-18.mga7
+ Revision: 1329670
- Update syscall-names.list for Linux 4.18
- malloc: Verify size of top chunk
- malloc: Mitigate null-byte overflow attacks
- malloc: Additional checks for unsorted bin integrity I
- nscd: Fix use-after-free in addgetnetgrentX [BZ #23520]
- Add newlines in __libc_fatal calls [BZ #20271]
- Fix tzfile low-memory assertion failure [BZ #21716]
- Update kernel version in syscall-names.list to 4.19

* Sat Nov 10 2018 tmb <tmb> 6:2.28-17.mga7
+ Revision: 1329398
- Check multiple NT_GNU_PROPERTY_TYPE_0 notes [BZ #23509]
- Add an additional test to resolv/tst-resolv-network.c

* Wed Nov 07 2018 tmb <tmb> 6:2.28-16.mga7
+ Revision: 1328793
- libanl: properly cleanup if first helper thread creation failed [BZ #22927]

* Fri Nov 02 2018 tmb <tmb> 6:2.28-15.mga7
+ Revision: 1327660
- Fix creating temporary files in source tree, and undefined behavior in
  test [BZ #23400]
- Test stdlib/test-bz22786 exits now with unsupported if malloc fails
- stdlib/test-bz22786: Avoid spurious test failures using alias mappings
- stdlib/test-bz22786: Avoid memory leaks in the test itself
- support_blob_repeat: Call mkstemp directory for the backing file
- stdlib/tst-strtod-overflow: Switch to support_blob_repeat
- x86: Fix Haswell strong flags [BZ #23709]

* Wed Oct 24 2018 tmb <tmb> 6:2.28-14.mga7
+ Revision: 1324947
- signal: Use correct type for si_band in siginfo_t [BZ #23562]

* Fri Oct 19 2018 tmb <tmb> 6:2.28-13.mga7
+ Revision: 1322321
- Fix race in pthread_mutex_lock while promoting to PTHREAD_MUTEX_ELISION_NP
  [BZ #23275]

* Sat Oct 13 2018 tmb <tmb> 6:2.28-12.mga7
+ Revision: 1320048
- kl_GL: Fix spelling of Sunday, should be "sapaat" [BZ #20209]
- i386: Use _dl_runtime_[resolve|profile]_shstk for SHSTK [BZ #23716]

* Mon Oct 01 2018 tmb <tmb> 6:2.28-10.mga7
+ Revision: 1313765
- Fix misreported errno on preadv2/pwritev2 [BZ #23579]

* Fri Sep 28 2018 tmb <tmb> 6:2.28-9.mga7
+ Revision: 1309742
- fixes from upstream glibc-2.28 branch
  * Fix tst-setcontext9 for optimized small stacks
  * Fix strstr bug with huge needles [BZ #23637]
  * i386: Use ENTRY and END in start.S [BZ #23606]
  * Fix stack overflow in tst-setcontext9 [BZ 23717]
  §

* Thu Sep 20 2018 tmb <tmb> 6:2.28-8.mga7
+ Revision: 1287661
- Fix segfault in maybe_script_execute
- Linux gethostid: Check for NULL value from gethostbyname_r [BZ #23679]
- misc: New test misc/tst-gethostid [BZ #23679]
- really apply earlier patches 203-211, 300-302 (got lost in patch re-order)
+ tv <tv>
- rely on filetriggers for info system (mga#23482)

* Tue Aug 28 2018 tmb <tmb> 6:2.28-7.mga7
+ Revision: 1255346
- fixes from upstream master branch:
  * Speedup first memmem match
  * regex: fix uninitialized memory access
  * regex: Add test tst-regcomp-truncated [BZ #23578]

* Tue Aug 28 2018 tmb <tmb> 6:2.28-6.mga7
+ Revision: 1255230
- updates from upstream 2.28 branch:
  * RISC-V: Fix rounding save/restore bug
  * Regen RISC-V rvd ULPs
  * Improve ChangeLog message
  * pthread_cond_broadcast: Fix waiters-after-spinning case [BZ #23538]

* Fri Aug 24 2018 tmb <tmb> 6:2.28-5.mga7
+ Revision: 1253657
- set minimum supported kernel to 3.2

* Thu Aug 16 2018 tv <tv> 6:2.28-4.mga7
+ Revision: 1251920
- add fixes from git:
  o nss_files: Fix file stream leak in aliases lookup [BZ #23521]
  o nscd: Deallocate existing user names in file parser
  o error, error_at_line: Add missing va_end call
  o hurd: Avoid PLTs for __pthread_get/setspecific
  o hurd: Add missing symbols for proper libc_get/setspecific
- make clear which patches crom from 2.28 branch & which come from master

* Fri Aug 10 2018 tmb <tmb> 6:2.28-3.mga7
+ Revision: 1250909
- Linux: Rewrite __old_getdents64 [BZ #23497]

* Wed Aug 08 2018 tmb <tmb> 6:2.28-2.mga7
+ Revision: 1250035
- require libxcrypt packages to ensure crypt support is always available
- disable glibc crypt
- drop all crypt_blowfish / crypt_freesec stuff, we are switching to libxcrypt

* Mon Aug 06 2018 tmb <tmb> 6:2.28-1.mga7
+ Revision: 1248421
- regex: fix memory leak in Gnulib
- Simplify and speedup strstr/strcasestr first match

* Sun Aug 05 2018 tmb <tmb> 6:2.28-0.5.mga7
+ Revision: 1247878
- disable the added crypt_blowfish / crypt_freesec stuff atleast for now
- update to 2.28

* Tue Jul 31 2018 tmb <tmb> 6:2.27-14.mga7
+ Revision: 1246309
- x86: Correct index_cpu_LZCNT [BZ #23456]
- x86: Populate COMMON_CPUID_INDEX_80000001 for Intel CPUs [BZ #23459]

* Sun Jul 29 2018 tmb <tmb> 6:2.27-13.mga7
+ Revision: 1245749
- nisplus: Correct pwent parsing issue and resulting build error [BZ #23266]
- rebuild with gcc 8.2

* Tue Jul 24 2018 tmb <tmb> 6:2.27-12.mga7
+ Revision: 1245049
- Fix parameter type in C++ version of iseqsig [BZ #23171]
- Use _STRUCT_TIMESPEC as guard in <bits/types/struct_timespec.h> [BZ #23349]
- getifaddrs: Don't return ifa entries with NULL names [BZ #21812]
- libio: Disable vtable validation in case of interposition [BZ #23313]
- Synchronize support/ infrastructure with master
- libio: Add tst-vtables, tst-vtables-interposed
- stdio-common/tst-printf.c: Remove part under a non-free license [BZ #23363]
- math: Set 387 and SSE2 rounding mode for tgamma on i386 [BZ #23253]
- conform/conformtest.pl: Escape literal braces in regular expressions
- es_BO locale: Change LC_PAPER to en_US [BZ #22996]
- regexec: Fix off-by-one bug in weight comparison [BZ #23036]

* Sun Jul 22 2018 tmb <tmb> 6:2.27-10.mga7
+ Revision: 1244826
- testbuild with new binutils

* Wed Jun 20 2018 tv <tv> 6:2.27-9.mga7
+ Revision: 1238288
- add fixes from git:
  o math: Update i686 ulps
  o posix: Fix posix_spawnp to not execute invalid binaries in non compat mode (#23264)
  o x86: Make strncmp usable from rtld
  o Improve DST handling (Bug 23102, Bug 21942, Bug 18018, Bug 23259)
    * [18018] Additional $ORIGIN handling issues (CVE-2011-0536)
    * [21942] _dl_dst_substitute incorrectly handles $ORIGIN: with AT_SECURE=1
    * [23102] Incorrect parsing of consecutive $ variables in runpath entries
    * [23259] Unsubstituted ${ORIGIN} remains in DT_NEEDED for AT_SECURE

* Mon Jun 04 2018 tmb <tmb> 6:2.27-8.mga7
+ Revision: 1234461
- libio: Avoid _allocate_buffer, _free_buffer function pointers [BZ #23236]

* Sun May 27 2018 wally <wally> 6:2.27-6.mga7
+ Revision: 1232483
- fix binary name in glibc-post-wrapper info messages

* Sun May 27 2018 tv <tv> 6:2.27-5.mga7
+ Revision: 1232447
- Fix i586 upgrades by removing /lib/i686 early

* Sat May 26 2018 tmb <tmb> 6:2.27-4.mga7
+ Revision: 1232323
- rebuild with new optflags
+ tv <tv>
- drop early mga5 conflicts against old microcode (2014-10-10)
- drop very old conflicts against prelink from mdv times (Dec 03 2009)

* Fri May 25 2018 tv <tv> 6:2.27-3.mga7
+ Revision: 1232172
- add back C.UTF-8 locale (from fedora)

* Thu May 24 2018 tmb <tmb> 6:2.27-2.mga7
+ Revision: 1232075
- update fixes from upstream 2.27 branch and really apply them

* Thu May 24 2018 tv <tv> 6:2.27-1.mga7
+ Revision: 1232007
- Do not run "telinit u" on upgrades (rhbz#1579225, debian#753725)
  This tell init to re-exec itself. This was added so the system can shutdown
  cleanly when sysvinit is the active PID 1.
  Under systemd this is not necessary since systemd uses a dedicated
  systemd-shutdown tool which replaces init on shutdown. This ensures all file
  systems can be unmounted cleanly.
  There's no open fds as with sysvinit (see old debian#25444).
  Running "telinit u" midway through a dist-upgrade can have unwanted side
  effects as the systemd package might be in an inconsistent state.
- Remove sshd restart from glibc_post_upgrade
  /etc/rc.d/init.d/sshd no longer exists in mga for quite some times
  so the code had never run for years
- sunrpc: Remove stray exports (rhbz#1577210, BZ#2316)
+ wally <wally>
- add aarch64 support

* Sun May 13 2018 tv <tv> 6:2.27-0.3.mga7
+ Revision: 1228740
- disable /lib/i686/ optimized build on 32bit due to segfault on startup

* Sat May 12 2018 tv <tv> 6:2.27-0.2.mga7
+ Revision: 1228644
- add fixes from git

* Sat May 12 2018 tv <tv> 6:2.27-0.1.mga7
+ Revision: 1228582
- BR bison
- adjust filelist
- fix removing ChangeLog.old
- rediff localedef patch

* Fri Feb 02 2018 tv <tv> 6:2.22-28.mga7
+ Revision: 1198659
- drop merged git changes
+ tmb <tmb>
- update to 2.27

* Sat Jan 20 2018 tmb <tmb> 6:2.22-27.mga7
+ Revision: 1195088
+ rebuild (emptylog)

* Fri Dec 08 2017 tmb <tmb> 6:2.26-9.mga7
+ Revision: 1181660
- update fixes from 2.26 branch

* Sat Nov 04 2017 tmb <tmb> 6:2.26-8.mga7
+ Revision: 1175914
- rebuild with new binutils
- update fixes from 2.26 branch

* Sat Sep 23 2017 tmb <tmb> 6:2.26-7.mga7
+ Revision: 1158371
- move glibc post calls to glibc-post-wrapper
- drop obsolete removal of major 1 symlinks on upgrade
- drop ancient adding include /etc/ld.so.conf.d/*.conf to /etc/ld.so.conf
  on upgrade path as that has been default since way before Mageia was born

* Sat Sep 23 2017 tmb <tmb> 6:2.26-5.mga7
+ Revision: 1157939
- update fixes from 2.26 branch

* Fri Sep 08 2017 tmb <tmb> 6:2.26-4.mga7
+ Revision: 1151851
- update fixes from 2.26 branch

* Sat Sep 02 2017 tmb <tmb> 6:2.26-2.mga7
+ Revision: 1150640
- update fixes from upstream 2.26 branch
- enable build of 'obsolete' nsl libs

* Sun Aug 27 2017 tmb <tmb> 6:2.26-1.mga7
+ Revision: 1148399
- disable maybe-uninitialized warning for now
- fix filelist
- build with binutils 2.29 and gcc 7.2.1
- update filelists
- add fixes from upstream 2.26 branch
- fix crypt/wrapper libc-lock include
- constify crypt_blowfish
- rebase P30, P33, P40, P42, P44
- drop obsolete posix nice __setpriority() range check
- drop old hptiming hack
- drop obsolete CMOV checks
- rediff P06: localedir changes
- drop merged patches
- update to 2.26

* Sat Jun 24 2017 tmb <tmb> 6:2.22-25.mga6
+ Revision: 1108315
- sunrpc: xdr_bytes/xdr_string need to free buffer on error [BZ #21461]
  (CVE-2017-8804)
- Ignore LD_LIBRARY_PATH for AT_SECURE=1 programs [BZ #21624]
  (CVE-2017-1000366)
- ld.so: Reject overly long LD_PRELOAD path elements
- ld.so: Reject overly long LD_AUDIT path elements
- Ignore and remove LD_HWCAP_MASK for AT_SECURE programs (bug #21209)

* Tue Apr 25 2017 martinw <martinw> 6:2.22-24.mga6
+ Revision: 1097412
- use /bin/dash.static for glibc file trigger scriplets
  o removes circular dependency with bash (mga#20111)

* Tue Mar 28 2017 tmb <tmb> 6:2.22-23.mga6
+ Revision: 1095015
- rebuild with new gcc

* Sat Mar 25 2017 tmb <tmb> 6:2.22-22.mga6
+ Revision: 1094850
- Do not override objects in libc.a in other static libraries [BZ #20452]
- malloc: Avoid premature fallback to mmap [BZ #20284]
- arm: mark __startcontext as .cantunwind [BZ #20435] (CVE-2016-6323)
- Return proper status from _nss_nis_initgroups_dyn [BZ #20262]
- nss_db: Fix initialization of iteration position [BZ #20237]
- nss_db: Propagate ERANGE error if parse_line fails [BZ #19837]
- fopencookie: Mangle function pointers stored on the heap [BZ #20222]
- argp: Do not override GCC keywords with macros [BZ #16907]
- nptl/tst-once5: Reduce time to expected failure
- Fixed x86_64 vector sincos/sincosf ABI [BZ #20024]
- Don't compile do_test with -mavx/-mavx2/-mavx512 [BZ #20384]
- resolv: Fix crash with internal QTYPE [BZ #18784] (CVE-2015-5180)

* Sat Oct 01 2016 akien <akien> 6:2.22-21.mga6
+ Revision: 1058004
- armv7hl: Add a ld-linux.so.3 compatibility symlink
  o Rationale: https://ml.mageia.org/l/arc/basesystem/2016-10/msg00000.html

* Sat Aug 06 2016 tmb <tmb> 6:2.22-20.mga6
+ Revision: 1044855
- malloc: Preserve arena free list/thread count invariant [BZ #20370]
- add note about CVE-2016-5417 fix

* Thu Jun 02 2016 tmb <tmb> 6:2.22-19.mga6
+ Revision: 1020035
- fork in libpthread cannot use IFUNC resolver [BZ #19861]

* Mon May 30 2016 tmb <tmb> 6:2.22-18.mga6
+ Revision: 1019403
- CVE-2016-4429: sunrpc: Do not use alloca in clntudp_call [BZ#20112]

* Wed May 11 2016 tmb <tmb> 6:2.22-17.mga6
+ Revision: 1013595
- glob: Simplify the interface for the GLOB_ALTDIRFUNC callback gl_readdir
- CVE-2016-1234: glob: Do not copy d_name field of struct dirent [BZ #19779]
  . CVE-2016-3706: getaddrinfo: stack overflow in hostent conversion [BZ #20010]
- hesiod: Remove RCS keywords
- hesiod: Always use thread-local resolver state [BZ #19573]

* Sat Apr 30 2016 tmb <tmb> 6:2.22-16.mga6
+ Revision: 1008243
- Gracefully handle incompatible locale data
- Handle overflow in __hcreate_r
- Improve check against integer wraparound in hcreate_r [BZ #18240]
- hsearch_r: Apply VM size limit in test case
- Fix x86_64 fma4 pow inappropriate contraction [BZ #19003]
- Use PIC relocation in ALIAS_IMPL
- Fix resource leak in resolver [BZ #19257]
- math: don't clobber old libm.so on install [BZ #19822]
- resolv: Always set *resplen2 out parameter in send_dg [BZ #19791]
- CVE-2016-3075: Stack overflow in _nss_dns_getnetbyname_r [BZ #19879]
- Increase internal precision of ldbl-128ibm decimal printf [BZ #19853]
- malloc: Prevent arena free_list from turning cyclic [BZ #19048]
- malloc: Fix attached thread reference count handling [BZ #19243]
- malloc: Fix list_lock/arena lock deadlock [BZ #19182]
- tst-malloc-thread-exit: Use fewer system resources
+ pterjan <pterjan>
- Update flags and file list for armv7hl

* Thu Feb 18 2016 tmb <tmb> 6:2.22-15.mga6
+ Revision: 967163
- redo/rebase CVE-2015-7547 fix from upstream
- fix CVE-2015-7547 fix to apply properly
- drop P131, it is duplicate of P129
- rebase P130 for glibc 2.20
- move P203 to security fixes as P132
- drop P130, already applied as P119
- really apply patches

* Thu Feb 18 2016 shlomif <shlomif> 6:2.22-14.mga6
+ Revision: 966898
- Apply patches to MGA#17394.
  Taken from the commits of glibc to the 2.22 branch (as mentioned in the
  glibc bugzilla bugs) and one was taken from the Fedora package (thanks!).

* Sun Dec 20 2015 tv <tv> 6:2.22-13.mga6
+ Revision: 912596
- bump filetriggers priority (mga#17217)

* Sat Dec 12 2015 tmb <tmb> 6:2.22-12.mga6
+ Revision: 909747
- grantpt: trust the kernel about pty group and permission mode [BZ #19347]

* Fri Dec 04 2015 tmb <tmb> 6:2.22-11.mga6
+ Revision: 908057
- Corrected path to installed libmvec_nonshared.a

* Sun Nov 29 2015 tmb <tmb> 6:2.22-10.mga6
+ Revision: 907036
- fix filelist
- sync in upstream 2.22 branch fixes
  * Always enable pointer guard [BZ #18928]
  * Harden tls_dtor_list with pointer mangling [BZ #19018]
  * PowerPC: Fix a race condition when eliding a lock
  * Keep only ELF_RTYPE_CLASS_{PLT|COPY} bits for prelink
  * Add a test for prelink output
  * NaCl: Use open_resource API for shared objects
  * Run tst-prelink test for GLOB_DAT reloc
  * NaCl: Use allocate_code_data after dyncode_create
  * Better workaround for aliases of *_finite symbols in vector math library.
+ tv <tv>
- switch to pkgconfig() BRs

* Thu Oct 22 2015 blino <blino> 6:2.22-9.mga6
+ Revision: 894038
- requires(post) grep for new file trigger

* Mon Oct 12 2015 tmb <tmb> 6:2.22-8.mga6
+ Revision: 889993
- Fix static dlopen default library search path [BZ #17250]
- strcoll: remove incorrect strdiff based optimization [[BZ#18589]
- sync stable patches with upsteam glibc 2.22 maintenance branch

* Thu Sep 17 2015 tmb <tmb> 6:2.22-7.mga6
+ Revision: 880068
- Fix opendir inverted o_directory_works test [BZ#18921]

* Tue Sep 08 2015 blino <blino> 6:2.22-6.mga6
+ Revision: 874242
- fix file location in crypt_blowfish_arm patch

* Sat Sep 05 2015 tv <tv> 6:2.22-5.mga6
+ Revision: 873133
- switch to new upstream file trigger syntax

* Sun Aug 30 2015 tmb <tmb> 6:2.22-4.mga6
+ Revision: 871360
- getmntent: fix memory corruption w/blank lines [BZ #18887]

* Thu Aug 20 2015 tmb <tmb> 6:2.22-3.mga6
+ Revision: 867007
- rebuild with new gcc

* Thu Aug 20 2015 tmb <tmb> 6:2.22-2.mga6
+ Revision: 866654
- rebuild with gcc 5.2.1

* Tue Aug 18 2015 tmb <tmb> 6:2.22-1.mga6
+ Revision: 865404
- glibc-devel: add virtual provides for devel(libm(64bit)) to ease
  rebuilding packages. Beginning with glibc 2.22 the new
  devel(libmvec(64bit)) is the preferred one.

* Mon Aug 17 2015 tmb <tmb> 6:2.22-0.7.mga6
+ Revision: 865346
- Readd O_LARGEFILE flag for openat64 [BZ #18781]
- clear DF_1_NODELETE flag only for failed to load library [BZ #18778]

* Sun Aug 16 2015 tmb <tmb> 6:2.22-0.6.mga6
+ Revision: 865126
- glibc-devel: remove requires on self-provided devel(libm*)

* Sun Aug 16 2015 tmb <tmb> 6:2.22-0.5.mga6
+ Revision: 865056
- fix i586 filelist
- buildfixes for owl sha and fresec crypt
- update filelists
- update crypt_blowfish to 1.3
- update crypt_freesec to 1.8
- rediff P26, P30, P33
- drop obsolete P46
- drop upstream merged patches
- update to 2.22

* Sun Aug 02 2015 tmb <tmb> 6:2.20-22.mga6
+ Revision: 860865
- rebuild with new binutils

* Sat Aug 01 2015 tmb <tmb> 6:2.20-21.mga6
+ Revision: 860200
- testbuild with new binutils

* Sat May 02 2015 tmb <tmb> 6:2.20-20.mga5
+ Revision: 821015
- Do not close NSS files database during iteration [BZ #18007] (CVE-2014-8121)

* Fri May 01 2015 tmb <tmb> 6:2.20-19.mga5
+ Revision: 821001
- resolv/nss_dns/dns-host.c buffer overflow (CVE-2015-1781) [BZ#18287]

* Sun Apr 19 2015 tmb <tmb> 6:2.20-18.mga5
+ Revision: 820468
- nscd needs /var/db/nscd (mga#15545)

* Sat Apr 18 2015 tmb <tmb> 6:2.20-17.mga5
+ Revision: 820464
- Fix _IO_wstr_overflow integer overflow (PR/BZ #17269)
- Fix read past end of pattern in fnmatch (PR/BZ #18032)

* Sat Feb 21 2015 tmb <tmb> 6:2.20-16.mga5
+ Revision: 816252
- sync with upstream glibc-2.20 maintenance branch:
  * Update Russian translation
  * Revert to defining __extern_inline only for gcc-4.3+ (BZ #17266)
  * Update French translation
  * BZ#17460: Fix buffer overrun in nscd --help
  * MIPS: Avoid a dangling `vfork@GLIBC_2.0' reference
  * AArch64: End frame record chain correctly
  * Make __extern_always_inline usable on clang++ again
  * Move findidx nested functions to top-level
  * Fix memory handling in strxfrm_l [BZ #16009] (CVE pending)
  * Use AVX unaligned memcpy only if AVX2 is available

* Sun Feb 08 2015 tmb <tmb> 6:2.20-15.mga5
+ Revision: 814068
- wscanf allocates too little memory (CVE-2015-1472, CVE-2015-1473)

* Sun Dec 21 2014 tmb <tmb> 6:2.20-14.mga5
+ Revision: 804687
- Fix stack overflow in vfprintf [BZ #16617] (CVE-2012-3406)
- Avoid infinite loop in nss_dns getnetbyname [BZ #17630] (CVE-2014-9402)

* Sat Nov 22 2014 tmb <tmb> 6:2.20-12.mga5
+ Revision: 798301
- posix wordexp fails to honour WRDE_NOCMD (CVE-2014-7817)

* Wed Oct 15 2014 tmb <tmb> 6:2.20-11.mga5
+ Revision: 751288
- elf/dl-load.c (open_path): Avoid writing to 'env_path_list'
  when none of the search directories exist. (BZ #15378)
- Fix infinite loop in check_pf (BZ #12926)
- disable lock elision again

* Fri Oct 10 2014 tmb <tmb> 6:2.20-10.mga5
+ Revision: 737970
- re-enable lock elision for now as disabling it triggesrs SIGILL traps

* Fri Oct 10 2014 tmb <tmb> 6:2.20-9.mga5
+ Revision: 737928
- add missing checks on ELIDE_UNLOCK for disabled lock elision (mga#14172)

* Fri Oct 10 2014 tmb <tmb> 6:2.20-8.mga5
+ Revision: 737868
- ensure adaptive elision in rwlocks is disabled (mga#14172)

* Thu Oct 09 2014 tv <tv> 6:2.20-7.mga5
+ Revision: 737764
- convert %%pretrans from dash to lua (one less Requires(pre), one less dep loop)
  (note that previous scriptlet was broken since UsrMove)

* Sun Sep 28 2014 tmb <tmb> 6:2.20-6.mga5
+ Revision: 731421
- disable lock-elision as glibc breaks on intel microcode update

* Thu Sep 25 2014 tmb <tmb> 6:2.20-5.mga5
+ Revision: 724574
- Fix memory leak in libio/wfileops.c do_ftell_wide [BZ #17370]
- Fix memory leak in error path of do_ftell_wide [BZ #17370]
+ tv <tv>
- autoconvert to new prov/req excludes

* Sat Sep 13 2014 tmb <tmb> 6:2.20-4.mga5
+ Revision: 674978
- fix segfault in getifaddrs_internal [BZ#17371]
- malloc: additional unlink hardening for non-small bins [BZ#17344]
- Add new Linux 3.16 constants to netinet/udp.h

* Tue Sep 09 2014 tmb <tmb> 6:2.20-3.mga5
+ Revision: 674336
- submit to release

* Mon Sep 08 2014 tmb <tmb> 6:2.20-2.mga5
+ Revision: 673679
- hp-timing.c is dropped upstream
- rebase some patches so they apply
- dont use conditional patching for mips build
- drop old powerpc fix
- nptl is not an addon anymore, adjust build accordingly
- drop merged patches
- update to 2.20

* Thu Sep 04 2014 tmb <tmb> 6:2.19-12.mga5
+ Revision: 672173
- fix crashes on invalid input in IBM gconv modules [BZ #17325] (CVE-2014-6040)

* Thu Aug 28 2014 tmb <tmb> 6:2.19-11.mga5
+ Revision: 669052
- _gconv_translit_find: Disable function [BZ #17187]
  (CVE-2014-5119) (mga#13995)

* Sun Jul 27 2014 tmb <tmb> 6:2.19-10.mga5
+ Revision: 657579
- rebuild with fixed gcc

* Wed Jul 23 2014 tmb <tmb> 6:2.19-9.mga5
+ Revision: 656122
- setlocale: Use the heap for the copy of the locale argument
- _nl_find_locale: Improve handling of crafted locale names
  (BZ#17137, CVE-2014-0475)

* Wed Jul 23 2014 colin <colin> 6:2.19-8.mga5
+ Revision: 655883
- Rename ldconfig filetrigger to make sure it's run first

* Sun Jun 29 2014 tmb <tmb> 6:2.19-7.mga5
+ Revision: 640940
-  posix_spawn_file_actions_addopen needs to copy the path argument
   (BZ 17048, CVE-2014-4043)

* Tue May 13 2014 tmb <tmb> 6:2.19-6.mga5
+ Revision: 622540
- rebuild with gcc 4.9

* Wed May 07 2014 tmb <tmb> 6:2.19-3.mga5
+ Revision: 620910
- misc/sys/xattr.h: guard against linux uapi header inclusion

* Sat Mar 01 2014 tmb <tmb> 6:2.19-2.mga5
+ Revision: 598263
- Fix sign of input to bsloww1 (glibc #16623)
- Update x86_64 libm-test-ulps on AMD family 21h model 1 (glibc #16545)

* Mon Feb 17 2014 tmb <tmb> 6:2.19-1.mga5
+ Revision: 593923
- submit to /release

* Sat Feb 08 2014 tmb <tmb> 6:2.19-0.1.mga5
+ Revision: 585854
- drop P12, ancient  ppc fix
- dummy libbsd now removed upstream
- rediff P06, P11, P44
- drop merged patches
- update to 2.19

* Wed Feb 05 2014 tmb <tmb> 6:2.18-10.mga5
+ Revision: 582832
- x86: Disable x87 inline functions for SSE2 math

* Sun Jan 05 2014 tmb <tmb> 6:2.18-9.mga4
+ Revision: 564795
- malloc: Fix race in free() of fastbin chunk (Glibc BZ #15073)

* Wed Dec 04 2013 tmb <tmb> 6:2.18-8.mga4
+ Revision: 555189
- Print the reason why preloading failed in do_preload()
- Fix PI mutex check in pthread_cond_broadcast and pthread_cond_signal

* Fri Oct 25 2013 tmb <tmb> 6:2.18-7.mga4
+ Revision: 546939
- Fix stack overflow due to large AF_INET6 requests (CVE-2013-4458)

* Wed Oct 16 2013 tmb <tmb> 6:2.18-6.mga4
+ Revision: 501486
- rebuild with new gcc & binutils
- Fix handling LC_CTYPE nonascii-case fallback in i686 SSE4.2 and SSSE3
  strcasecmp/strncasecmp

* Sat Oct 12 2013 tmb <tmb> 6:2.18-5.mga4
+ Revision: 496066
- rebuild with new binutils & make

* Fri Oct 11 2013 tmb <tmb> 6:2.18-4.mga4
+ Revision: 495280
- allow building wit GNU Make 4
- (struct __dirstream): Fix alignment of directory block (broken by CVE-2013-4237 fix)

* Sun Oct 06 2013 tmb <tmb> 6:2.18-3.mga4
+ Revision: 492209
- initialize the pointer guard used for pointer mangling (CVE-2013-4788)

* Wed Sep 25 2013 tmb <tmb> 6:2.18-2.mga4
+ Revision: 486293
- inet: avoid redefinition of some structs in kernel

* Tue Sep 17 2013 tmb <tmb> 6:2.18-1.mga4
+ Revision: 480803
- malloc: check for integer overflows in pvalloc, valloc, memalign (CVE-2013-4332)
- make silent builds so only warnings and errors gets logged
- Correct the processing of '\x80' characters in crypt_freesec.c
- fix typo in nscd.service

* Sun Aug 25 2013 tmb <tmb> 6:2.18-0.5.mga4
+ Revision: 471565
- temporarily disable build_check as it eats i686 libs on i586 build
- remove more references to pt_chown
- enable lock elision support
- fix strcoll() integer overflow leading to buffer overflow (CVE-2012-4412),
  and alloca() stack overflow in the strcoll() interface (CVE-2012-4424)
  (fedora, P102)
- install a sanitized LinuxThreads <bits/libc-lock.h> (fedora)
- gcc >= 4.4 is needed to build glibc
- binutils >= 2.20 is needed to build glibc
- experimental-malloc is default since 2011-06-28
- drop obsolete TlsFlags
- fix segfault with __strstr_sse42 (P60)
- Fix cbrtl for ldbl-96 (P100)
- Fix CVE-2013-4237, BZ #14699: Buffer overflow in readdir_r (P101)
- drop minimal required kernel to 2.6.32 so it works in chroots on top
  of enterprise kernels
- pt_chown is disabled/removed as part of fix for CVE-2013-2207
- rediff P17, P38
- drop P18, P60, P61 (merged)
- update to 2.18

* Sun Aug 11 2013 tmb <tmb> 6:2.17-10.mga4
+ Revision: 465392
- rebuild with new gcc

* Thu Aug 01 2013 tmb <tmb> 6:2.17-9.mga4
+ Revision: 462088
- test gcc-4.8.2 build

* Fri Jul 26 2013 colin <colin> 6:2.17-8.mga4
+ Revision: 458507
- Add myhostname to the hosts config in the default nsswitch.conf

* Mon Jun 03 2013 fwang <fwang> 6:2.17-7.mga4
+ Revision: 435858
- rebuild for new libpng

* Mon May 27 2013 oden <oden> 6:2.17-6.mga4
+ Revision: 428749
- rebuilt against libgd.so.3

* Tue Apr 09 2013 tmb <tmb> 6:2.17-5.mga3
+ Revision: 409175
- Fix stack overflow in getaddrinfo with many results (CVE-2013-1914)
- remove duplicate cve patch reference

* Sun Mar 24 2013 colin <colin> 6:2.17-4.mga3
+ Revision: 404859
- Add systemd requires and general post/pre fixes (mga#9302)
+ fwang <fwang>
- fix CVE-2013-0242
+ tmb <tmb>
- re-enable checks disabled by mistake

* Wed Jan 09 2013 tmb <tmb> 6:2.17-2.mga3
+ Revision: 343961
- fix fhs-usrmove patch that broke util-linux mounting /proc
- fix install of nscd.conf for tempfiles
- fix rest of nscd to use /run directly
+ colin <colin>
- Ensure tmpfiles is run to create /run/nscd dir on pkg install
+ nanardon <nanardon>
- revert wrong fix for missing /var/run/nscd
- provide need /var/run/nscd in nscd package otherwise nscd failed to start

* Tue Jan 01 2013 tmb <tmb> 6:2.17-1.mga3
+ Revision: 337371
- BR libstdc++-static-devel for testsuite
- update to 2.17
- drop upstream release screwup fix
- ports is now merged back with upstream glibc
- adapt P1 (path fixes) according to Mga and UsrMove setup
- rediff P2 (nss upgrade)
- drop P5 (assign global scope to RFC1918 adresses, fixed properly upstream)
- drop P10 (revert pthread_cond_wait change, merged upstream)
- rediff P26: nice priority fix
- rediff P30 (filter out multiarch headers)
- rediff P38 (disable parellel testusite on powerpc)
- rediff P42 (avx owl crypt)
- rediff P39 (freesec crypt support)
- drop P60, P61 (strncasecmp segfault fix, strtod integer buffer overflow
  fix, merged)
+ tv <tv>
- nsswitch.conf: document all modules

* Mon Oct 15 2012 tmb <tmb> 6:2.16-13.mga3
+ Revision: 306734
- fix and re-enable P43: sha256-crypt and sha512 crypt support (#7793)

* Sat Oct 06 2012 tmb <tmb> 6:2.16-12.mga3
+ Revision: 303047
- require filesystem to get it in same transaction during install

* Wed Oct 03 2012 tmb <tmb> 6:2.16-11.mga3
+ Revision: 302587
- adapt for new dash.static

* Sun Sep 23 2012 tmb <tmb> 6:2.16-10.mga3
+ Revision: 296840
- Fix strtod integer/buffer overflow (P61, upstream BZ 14459)
- Fix segmentation fault in strncasecmp for i686 (P60, upstream)

* Tue Aug 28 2012 tv <tv> 6:2.16-9.mga3
+ Revision: 284978
- rebuild for new binutils

* Sun Aug 05 2012 fwang <fwang> 6:2.16-8.mga3
+ Revision: 278875
- force gb18030 charset for zh_CN locale

* Sat Aug 04 2012 tv <tv> 6:2.16-7.mga3
+ Revision: 278427
- rebuild with compressed debug info

* Thu Aug 02 2012 tv <tv> 6:2.16-6.mga3
+ Revision: 277892
- rebuild with mini debug info

* Sat Jul 28 2012 blino <blino> 6:2.16-5.mga3
+ Revision: 275516
- revert upstream pthread_cond_wait change that cause hangs in pulseaudio

* Sat Jul 28 2012 guillomovitch <guillomovitch> 6:2.16-4.mga3
+ Revision: 275194
- drop sysinit support
+ tmb <tmb>
- rebuild for kernel 3.5 series

* Mon Jul 23 2012 blino <blino> 6:2.16-3.mga3
+ Revision: 273680
- add a nscd.conf file in tmpfiles.d to create the nscd dir in /var/run (now in tmpfs), from openSUSE

* Fri Jul 20 2012 tmb <tmb> 6:2.16-2.mga3
+ Revision: 272812
- obsolete nss_db as it got merged back in glibc-2.15
- drop old manpages in favour of the newer man-pages rpm
- drop P22 (old kernel bug workaround, already disabled in Mageia 2)
- convert nsswitch.conf patch (P7) to normal source (S8)
- drop obsolete glibc-redhat tarball
- add BR on hardlink as that was the only thing we used from
  the old glibc-redhat tarball

* Wed Jul 18 2012 tmb <tmb> 6:2.16-1.mga3
+ Revision: 272322
- merge glibc-2.16 branch:
  * update to 2.16.0
  * rediff P4, P6, P12, P28, P30, P31, P38, P44
  * drop P49 (rpc change revert) as its replaced by
    '--enable-obsolete-rpc' configure flag
  * drop P48, P60-P62 (merged upstream)
  * disable broken pdf doc build for now
  * update filelists
  * drop obsolete defattr and buildroot from spec

* Wed Jun 27 2012 tmb <tmb> 6:2.14.1-10.mga3
+ Revision: 264229
- rebuild with gcc-4.7.1

* Tue Jun 26 2012 tmb <tmb> 6:2.14.1-9.mga3
+ Revision: 263781
- BR: texinfo-tex
- Upstream fixes needed for upcoming gcc-4.7.1
  * Fix warnings in regex (P60)
  * Fix up regcomp/regexec (P61)
  * Fix regex incomplete multi-byte character (P62)

* Sat Apr 28 2012 tmb <tmb> 6:2.14.1-8.mga2
+ Revision: 233821
- nscd: Require rpm-helper >= 0.24.8-1 for systemd support

* Tue Apr 03 2012 colin <colin> 6:2.14.1-7.mga2
+ Revision: 227986
- Fix PIDFile location in nscd systemd unit.

* Mon Apr 02 2012 guillomovitch <guillomovitch> 6:2.14.1-6.mga2
+ Revision: 227855
- add systemd support for nscd

* Sat Mar 03 2012 tmb <tmb> 6:2.14.1-5.mga2
+ Revision: 217216
- rebuild with new gcc
- linux-userspace-headers is now kernel-userspace-headers

* Tue Dec 27 2011 anssi <anssi> 6:2.14.1-4.mga2
+ Revision: 188165
- use rpm-mageia-setup's new $EXCLUDE_FROM_FULL_STRIP to only strip
  debug symbols from ld.so, libpthread.so, libc.so instead of using
  EXCLUDE_FROM_STRIP and manual stripping with -g (from Mandriva)
  o fixes missing debug symbols in glibc-debug for libc.so and
    libpthread.so
  o fixes completely missing stripping of ld.so (it will now be
    stripped of debugging symbols only, to avoid issues with gdb)

* Mon Dec 05 2011 tmb <tmb> 6:2.14.1-3.mga2
+ Revision: 176926
- rebuild with new gcc-4.6.2 and binutils-2.22
+ rtp <rtp>
- Fix crypt blowfish build failure on arm

* Mon Oct 24 2011 dmorgan <dmorgan> 6:2.14.1-2.mga2
+ Revision: 157664
- revert sunrpc removal ( P49)

* Fri Oct 21 2011 tmb <tmb> 6:2.14.1-1.mga2
+ Revision: 157233
- push to /release

* Thu Oct 20 2011 tmb <tmb> 6:2.14.1-0.4.mga2
+ Revision: 156969
- fix segfault at dl lookup (glibc bz #12871)
- fix glibc-ports setup
- drop P47 (already merged in glibc-ports-2.14.1)

* Tue Oct 18 2011 tmb <tmb> 6:2.14.1-0.2.mga2
+ Revision: 156310
- update filelists
- rediff P40, P41
- disable P22 (old tcsetattr kernel bug workaround)
- update crypt_freesec, add urls (pok, mdv)
- update crypt_blowfish to 1.2
- rediff P47 to apply cleanly
- set minimum/required kernel to 2.6.33
- drop ia64, ppc(64), sparc(64) support
- BR texlive
- drop merged patches, rediff P44
- update to 2.14.1
+ tv <tv>
- make the huge doc subpackages be noarch
+ rtp <rtp>
- remove native pt_chown when generating cross glibc for non-biarch/mips* case
  too
- fix cross_program_prefix
- move gnuext macro for build_cross case after isarch definition
- doesn't create a ld.so.cache in build_cross case

* Tue Mar 22 2011 rtp <rtp> 6:2.12.1-11.mga1
+ Revision: 75374
- Add support for glibc-ports
- Add arm support
- Add early mips support
- Attempt to fix cross glibc generation

* Thu Feb 24 2011 misc <misc> 6:2.12.1-10.mga1
+ Revision: 58741
- rebuilt for removing various Conflicts and Obsoletes
- remove timezone links that are already present in upstream glibc
- do not hardcode our distro name
- clean old Obsoletes
- remove various Conflicts that are no longer relevant ( like on kernel 2.0.. )
- remove old conflict on rpm < 4.2.2 that date back to 5 years ago

* Mon Jan 10 2011 dmorgan <dmorgan> 6:2.12.1-9.mga1
+ Revision: 5255
- Rediff glibc-2.3.6-nsswitch.conf.patch
+ blino <blino>
- add back wrongly removed endif
- remove old comment
- remove old ldconfig scriptlets
+ tmb <tmb>
- imported package glibc


* Thu Jan 06 2011 Thomas Backlund <tmb@mageia.org> 6:2.12.1-9.mga1
- initial import
- drop rpm tags
- drop mandriva specific changes

* Mon Dec 27 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.12.1-8mnb2
+ Revision: 625383
- Fix _PATH_VI for Mandriva also in sysdeps/unix/sysv/linux/paths.h
  (MDV #60929).

* Tue Nov 23 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.12.1-7mnb2
+ Revision: 600264
- Include getlogin_r fixes from glibc head (MDV #61145).

* Sun Oct 24 2010 Oden Eriksson <oeriksson@mandriva.com> 6:2.12.1-6mnb2
+ Revision: 587863
- P45: security fix for CVE-2010-3856 (redhat)

* Wed Oct 20 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.12.1-5mnb2
+ Revision: 586990
- Add fix for CVE-2010-3847
  (http://sourceware.org/ml/libc-hacker/2010-10/msg00007.html)

* Sat Oct 16 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.12.1-4mnb2
+ Revision: 585932
- Add patch from Andreas Schwab, posted on libc-hacker, that fixes
  another make 3.82 issue in glibc, detected by tst-xmmymm failure
  (http://sources.redhat.com/ml/libc-hacker/2010-09/msg00001.html)

* Wed Sep 29 2010 Anssi Hannula <anssi@mandriva.org> 6:2.12.1-3mnb2
+ Revision: 582103
- fix regression of ldconfig -r when /var/cache/ldconfig does not exist
  inside the chroot and running as non-root (as used by e.g. icecream)
  (upstream bug #11149, patch by Petr Baudis)

* Tue Sep 28 2010 Anssi Hannula <anssi@mandriva.org> 6:2.12.1-2mnb2
+ Revision: 581834
- fix build of locales package by adding transliteration for U20A1
  (COLON SIGN) (patch by Aurelien Jarno from Debian tree as spotted by
  Thomas Backlund)

* Fri Aug 27 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.12.1-0.1mnb2
+ Revision: 573446
- Updated to version 2.12.1
- Fix build with make 3.82
- Rediffed assign-global-scope-to-RFC-1918-addresses patch
- Include nss config file template for /etc/default in documentation
- Dropped merged/obsolete patches:
  glibc-2.11-Prevent-silent-errors-should-x86-64-strncmp-be-neede.patch
  glibc-2.11-Avoid-ELF-lookup-race.patch
  glibc-2.11-Fix-malloc_info-without-prioor-allocations.patch
  glibc-2.11-Pass-sysdep-LDFLAGS-when-using-print-file-name.patch
  glibc-2.11-_nl_load_locale-incorrectly-handles-mmap-failures.patch
  glibc-2.11-sysdeps-ieee754-ldbl-128-fixes.patch
  glibc-2.11-Don-t-map-U00DF-to-U1E9E-in-toupper-table.patch
  glibc-2.11-check-fd-arg-in-futimens.patch
  glibc-2.11-Add-nonnull-attribute-to-unsetenv-declaration.patch
  glibc-2.11-Additional-setcontext-etc.-conformance-tests.patch
  glibc-2.11-Make-unistd.h-pre-c-safe.patch
  glibc-2.6.1-CVE-2010-0296.diff
  glibc-2.11-Remove-unnecessary-returns.patch
  glibc-2.11-Always-use-IPv4-sockets-for-IPv4-addresses.patch
  glibc-2.11-Fix-error-checking-in-iconv.patch
  glibc-2.11-Redefine-O_SYNC-and-O_DSYNC-to-match-2.6.33-kernels.patch
  glibc-2.11-regcomp.c-do-not-ignore-memory-allocation-failure.patch
  glibc-2.6.1-CVE-2010-0015.diff
  glibc-2.11-Use-struct-timespec-for-timestamps-in-struct-stat-al.patch
  glibc-2.11-Remove-duplicate-definitions-of-O_DSYNC-and-O_RSYNC.patch
  glibc-2.11-Fix-typo-in-feature-selection-macro-use.patch
  glibc-2.11-Fix-file-descriotor-leak-in-nftw-with-FTW_CHDIR.patch
  glibc-2.11-Try-harder-to-re-exec-nscd-in-paranoia-mode.patch
  glibc-2.11-assign-global-scope-to-RFC-1918-addresses.patch
  glibc-2.11-Fix-a-few-more-cases-of-ignored-return-values-in-reg.patch
  glibc-2.11-Fix-endless-loop-with-invalid-etc-shells-file.patch
  glibc-2.11-Follow-kernel-F_OWNER_-GID-PGRP-change.patch
  glibc-2.11-Define-IPTOS_CLASS_-macros-according-to-RFC-2474.patch
  glibc-2.11-Use-correct-type-when-casting-d_tag.patch
  glibc-2.11-Invalid-timeouts-in-i386-sem_timedwait.patch
  glibc-2.11-more-re-fixes.patch
  glibc-2.11-Define-SCHED_IDLE-and-SCHED_RESET_ON_FORK-for-Linux.patch
  glibc-2.11-Fix-sorting-of-malayalam-letter-na.patch
  glibc-2.11-Update-constants-for-current-kernels.patch
  glibc-2.11-Ignore-negative-dynamic-entry-types.patch
  glibc-2.11-Avoid-alloca-in-setenv-for-long-strings.patch
  glibc-2.11-Update-poll.h-header-for-POSIX-2008.patch

* Tue Jun 08 2010 Oden Eriksson <oeriksson@mandriva.com> 6:2.11.1-8mnb2
+ Revision: 547264
- P95: security fix for CVE-2010-0015
- P96: security fix for CVE-2010-0296

* Mon May 31 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.11.1-7mnb2
+ Revision: 546806
- Fix permission of /usr/share/doc/glibc-devel/crypt_blowfish-1.0.2/*
  files (#59585).

* Fri May 14 2010 Eugeni Dodonov <eugeni@mandriva.com> 6:2.11.1-6mnb2
+ Revision: 544813
- Bump release.

  + Herton Ronaldo Krzesinski <herton@mandriva.com.br>
    - Revert removal of exclusion list to avoid stripping of some of glibc
      libraries and loader (#59247).
    - Removal of more unwanted patch backup files shipped in created packages.

* Tue Apr 27 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.11.1-4mnb2
+ Revision: 539689
- Rebuild with rpm-mandriva-setup-build >= 1.104, with fixed stripping
  of shared libraries (reported/requested by Christophe Fergeau).

* Mon Apr 19 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.11.1-3mnb2
+ Revision: 536772
- Assign global scope to RFC 1918 addresses in getaddrinfo (MDV #58834).

* Thu Apr 08 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.11.1-2mnb2
+ Revision: 533159
- Fix localedef --add-to-archive with locales which have symlinked
  common files to optimize disk space usage.

* Wed Mar 31 2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.11.1-1mnb2
+ Revision: 530536
- Updated to glibc 2.11.1, dropped merged patches:
  glibc-2.11-restore-locking-in-free_check.patch
  glibc-2.11-Add-missing-Linux-MADV_-definitions.patch
  glibc-2.11-Fix-getwc-and-putwc-on-non-wide-streams.patch
  glibc-2.11-Avoid-warnings-in-CPU_-macros-when-using-const-bitsets.patch
  glibc-2.11-Fix-startup-to-security-relevant-static-binaries.patch
  glibc-2.11-Fix-F_SETOWN_EX-and-F_GETOWN_EX-definitions.patch
  glibc-2.11-Fix-spelling-in-memusagestat.c.patch
  glibc-2.11-Fix-week-information-for-nl_NL-locale.patch
  glibc-2.11-Properly-handle-STT_GNU_IFUNC-symbols-in-do_sym.patch
  glibc-2.11-Prevent-unintended-file-desriptor-leak-in-grantpt.patch
  glibc-2.11-Handle-running-out-of-buffer-space-with-IPv6-mapping.patch
  glibc-2.11-Fixes-for-bz10968-bz10969.patch
  glibc-2.11-Reinitialize-_create_xid-state-after-fork.patch
  glibc-2.11-Define-week-first_weekday-and-first_workday-for-en_DK.patch
  glibc-2.11-Define-week-first_weekday-and-first_workday-for-hsb_DE.patch
  glibc-2.10.1-fix-preadv-pwritev-fallocate-__off_t.patch
  glibc-2.11-Fix-ranges-with-multibyte-characters-as-endpoints.patch
  glibc-2.11-Fix-infloop-in-__pthread_disable_asynccancel-on-x86_64.patch

* Fri Mar 05 2010 Per Øyvind Karlsen <peroyvind@mandriva.org> 6:2.11-2mnb2
+ Revision: 514736
- fix #57754 at the source in rpm-mandriva-setup-build & spec-helper in stead
- don't strip away symbols needed for ie. valgrind (fixes #57754)

  + Herton Ronaldo Krzesinski <herton@mandriva.com.br>
    - Apply fixes/additions from glibc git master in glibc 2.11 for
      following upstream tickets: bz11126, bz11120, bz11200, bz10992,
      bz11115, bz11194, bz11141, bz11127, bz11271, bz11242, bz11027,
      bz11183, bz11184, bz11185, bz11186, bz11187, bz11188, bz11189,
      bz11190, bz11191, bz11192, bz11193, bz10414, bz11235, bz11093.
    - Apply following fixes from glibc git master:
      * Avoid ELF lookup race
      * Pass $(sysdep-LDFLAGS) when using --print-file-name
      * sysdeps/ieee754/ldbl-128/ fixes
      * Don't map U00DF to U1E9E in toupper table
      * Add nonnull attribute to unsetenv declaration
      * Make unistd.h pre-c99-safe
      * Fix error checking in iconv
      * Redefine O_SYNC and O_DSYNC to match 2.6.33+ kernels
      * Remove duplicate definitions of O_DSYNC and O_RSYNC for Linux/sparc
      * Fix typo in feature selection macro use
      * Fix a few more cases of ignored return values in regex
      * Use correct type when casting d_tag
      * Invalid timeouts in i386 sem_timedwait
      * Simplify test in re_string_skip_chars
      * Ignore negative dynamic entry types
      * Avoid alloca in setenv for long strings

* Thu Dec 03 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.11-1mnb2
+ Revision: 472873
- Added conflicts for old prelink versions that brakes the system with
  glibc 2.11
- Added fix for bz10851, patch from upstream bugzilla.
- Apply upstream fixes/testcases after glibc 2.11, consisting in the
  following patches:
  glibc-2.11-Properly-handle-STT_GNU_IFUNC-symbols-in-do_sym.patch
  glibc-2.11-Fix-spelling-in-memusagestat.c.patch
  glibc-2.11-Handle-running-out-of-buffer-space-with-IPv6-mapping.patch
  glibc-2.11-Fix-F_SETOWN_EX-and-F_GETOWN_EX-definitions.patch
  glibc-2.11-Add-missing-Linux-MADV_-definitions.patch
  glibc-2.11-Fixes-for-bz10968-bz10969.patch
  glibc-2.11-Fix-ranges-with-multibyte-characters-as-endpoints.patch
  glibc-2.11-Follow-kernel-F_OWNER_-GID-PGRP-change.patch
  glibc-2.11-Avoid-warnings-in-CPU_-macros-when-using-const-bitsets.patch
  glibc-2.11-Fix-getwc-and-putwc-on-non-wide-streams.patch
  glibc-2.11-Reinitialize-_create_xid-state-after-fork.patch
  glibc-2.11-Fix-week-information-for-nl_NL-locale.patch
  glibc-2.11-Try-harder-to-re-exec-nscd-in-paranoia-mode.patch
  glibc-2.11-Use-struct-timespec-for-timestamps-in-struct-stat-al.patch
  glibc-2.11-Define-week-first_weekday-and-first_workday-for-en_DK.patch
  glibc-2.11-Define-week-first_weekday-and-first_workday-for-hsb_DE.patch
  glibc-2.11-Fix-startup-to-security-relevant-static-binaries.patch
  glibc-2.11-Prevent-unintended-file-desriptor-leak-in-grantpt.patch
  glibc-2.11-Fix-infloop-in-__pthread_disable_asynccancel-on-x86_64.patch
  glibc-2.11-Define-SCHED_IDLE-and-SCHED_RESET_ON_FORK-for-Linux.patch
- Enable experimental-malloc, and replace mdv51545 patch by "Restore
  locking in free_check" upstream fix.
- Enable multi-arch for i686 and x86_64.
- Enable verbose build for checking.
- Do not build with -U_FORTIFY_SOURCE
- kernel-headers was renamed to linux-userspace-headers, update
  BuildRequires/Requires.
- Use /usr/libexec as libexec directory.
- Add BuildRequires for libcap-devel
- Updated to 2.11
  * dropped merged patches:
    glibc-2.10-branch.patch
    glibc-2.10.1-branch-revert-fix-permission-slave-dev-on-devpts.patch
  * dropped libidn tarballs, libidn is now included in main glibc 2.11
  * provide againt pt_chown after grantpt/pt_chown changes in 2.11, also
    allow libcap to be used without selinux.

* Tue Nov 17 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.10.1-8mnb2
+ Revision: 467050
- Ship SUPPORTED localedata file with glibc-i18ndata

* Mon Nov 09 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.10.1-7mnb2
+ Revision: 463354
- Apply "Fix preadv, pwritev and fallocate for -D_FILE_OFFSET_BITS=64"
  change from glibc upstream.

* Fri Oct 09 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.10.1-6mnb2
+ Revision: 456468
- glibc-manpages.tar.bz2: remove tzselect man page, it's outdated, newer
  versions are provided by man-pages* packages (#20326).

  + Pascal Terjan <pterjan@mandriva.org>
    - Fix service name for mysql (Guillaume Rousse)

* Fri Jul 31 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.10.1-5mnb2
+ Revision: 405246
- Mandriva does not ship pt_chown with glibc, not supporting system
  without devpts. After glibc 2.10.1 we will must ship it again with
  suid because of grantpt changes upstream, but for now just revert the
  grantpt commit cherry pick from upstream changes with bug fixes in
  glibc-2.10-branch.patch (patch with pull from Petr Baudis repository
  at git://repo.or.cz/glibc/pb-stable.git glibc-2.10-branch).
- Updated glibc-2.10-branch.patch, and drop i386-futex-typo patch merged
  at it.

* Thu Jun 25 2009 Per Øyvind Karlsen <peroyvind@mandriva.org> 6:2.10.1-4mnb2
+ Revision: 389221
- add a versioned buildrequires on spec-helper just to be on the safe side :)
- with the mystery of the missing debug symbols solved in spec-helper 0.30.5,
  rebuild to really solve this one (closes #51374)

* Tue Jun 23 2009 Pascal Terjan <pterjan@mandriva.org> 6:2.10.1-3mnb2
+ Revision: 388677
- Rebuild to hopefuly get -debug

* Thu Jun 11 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.10.1-2mnb2
+ Revision: 385040
- Fixed free_check locking issue (#51545).
- Fixed typo in i386 version of LOAD_FUTEX_WAIT_ABS macro.
- Updated glibc 2.10.1 branch patch (glibc-2.10-branch.patch).

* Wed May 27 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.10.1-1mnb2
+ Revision: 380201
- Updated to version 2.10.1
- Dropped merged patches:
  glibc-2.9-bz7067.patch
  glibc-2.9-bz9741.patch
  glibc-2.9-fedora_upstream_fixes.patch
  glibc-2.9-expm1-error.patch
  glibc-2.9-bz6545.patch
  glibc-2.9-bz9750.patch
  glibc-2.9-bz9694.patch
  glibc-2.9-en_GB-first-week-work-day.patch
  glibc-2.9-newer-link-scripts-insert-_begin.patch
  glibc-2.9-SHM_EXEC.patch
  glibc-2.9-dup2_avoid_access_through_PLT.patch
  glibc-2.9-bz7056.patch
  glibc-2.9-_nss_dns_gethostbyaddr2_r-buffer-aligment.patch
  glibc-2.9-bug-hsearch1.patch
  glibc-2.9-bz7040.patch
- Include patch with pull from "git://repo.or.cz/glibc/pb-stable.git
  glibc-2.10-branch", glibc 2.10.1 branch provided by Petr Baudis from
  Suse (http://sources.redhat.com/ml/libc-alpha/2009-05/msg00117.html)
- Rediffed patches: mdv-avx-owl-crypt, mdv-owl-crypt_freesec, multiarch,
  biarch-cpp-defines
- Drop glibc-2.9-dns-no-gethostbyname4.patch, newer glibc has handling
  now to workaround IPv4-IPv6 parallel lookup problems with broken DNS
  servers.

* Mon Apr 06 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.9-0.20081113.5mnb2
+ Revision: 364483
- Fix first_weekday/first_workday for en_GB locale (#49506).

* Mon Apr 06 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.9-0.20081113.4mnb2
+ Revision: 364480
- Conflict with fileutils < 4.3.5 to avoid problems when upgrading
  (#49589).

* Thu Mar 26 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.9-0.20081113.3mnb2
+ Revision: 361466
- Added fixes from glibc cvs for:
  * upstream glibc bz7056 (closes also mdv bug #49142).
  * build issue with binutils 2.19.51.0.2, reference:
    http://sourceware.org/bugzilla/show_bug.cgi?id=9843

* Fri Feb 06 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.9-0.20081113.2mnb2
+ Revision: 338006
- Add fixes from glibc cvs that deals with following upstream tickets:
  bz7067, bz9741, bz6545, bz9750, bz9694, bz7040. Also another
  miscellaneous fixes included (patches expm1-error, SHM_EXEC,
  _nss_dns_gethostbyaddr2_r-buffer-aligment bug-hsearch1).
- Avoid backup file created with patch glibc-2.9-fedora_upstream_fixes.patch to
  end up in glibc-i18ndata package.

* Mon Jan 19 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.9-0.20081113.1mnb2
+ Revision: 331180
- Additional fix on top of fedora_upstream_fixes added from glibc cvs to
  avoid local plt check error (make check).
- Removed some uneeded old patches.
- Update glibc to version 2.9 (20081113).
- Unfuzz following patches:
  glibc-2.9-ldd-non-exec.patch
  glibc-2.9-share-locale.patch
  glibc-2.2.5-nscd-no-host-cache.patch
  glibc-2.7-mdv-owl-crypt_freesec.patch
  glibc-2.3.5-avx-relocate_fcrypt.patch
- Remove uneeded patch glibc-2.1.95-string2-pointer-arith.patch, there is no
  need to force cast to char * for point arithmetic, as explicitely the gcc
  extension for void * pointer arithmetic is being used.
- Removed patches already applied:
  glibc-2.3.2-config-amd64-alias.patch
  glibc-nscd_fixes.patch
  glibc-2.8-tst-iconv-fixes.patch
- Apply 'hot fixes' from fedora/upstream and workaround for glibc bz7060

* Fri Aug 29 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.8-1.20080520.5mnb2
+ Revision: 277480
- Handle properly upgrades from ld.so.conf with relative ld.so.conf.d
  include path after previous commit.

  + Helio Chissini de Castro <helio@mandriva.com>
    - Lack of relative path on ld.so.conf is breaking usage of ldconfig -r. Reviewed by Herton

  + Per Øyvind Karlsen <peroyvind@mandriva.org>
    - handle libraries in non-standard locations with ld.so.conf config in /etc/ld.so.conf.d/
    - fix file trigger filter match for lib64

* Wed Jul 02 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.8-1.20080520.4mnb2
+ Revision: 230820
- Add more should start entries for nscd init service, reported by
  Guillaume Rousse (#41055).
- Added more upstream nscd fixes.
- Add upstream change that replaces
  glibc-2.8-bug-iconv6_tst-iconv7-localedata.patch (one of bug-iconv6
  and tst-iconv7 fixes). I didn't saw that there were already a change
  that fixed the same issue.

  + Vincent Danen <vdanen@mandriva.com>
    - properly use conditionals for build_i18ndata and build_timezone so recent rpm doesn't complain
    - update the wrapper_handle_sha patch to fully handle sha256c and sha512c; this makes sha256c viable with passwd (although sha512c still needs some work)

  + Pixel <pixel@mandriva.com>
    - do not call ldconfig in %%post/%%postun, it is now handled by filetriggers

* Thu Jun 05 2008 Pixel <pixel@mandriva.com> 6:2.8-1.20080520.3mnb2
+ Revision: 215279
- add rpm filetrigger running "ldconfig -X" when rpm install/remove libraries
- drop patch5 since ldconfig is now nicely handled using rpm filetrigger

* Mon May 26 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.8-1.20080520.2mnb2
+ Revision: 211410
- Add bug-iconv6 and tst-iconv7 fixes from glibc cvs. Even with them
  tests would fail: localedata isn't processed before iconvdata, so
  de_DE.UTF-8 isn't available for the tests. Probably this wasn't
  catched as this problem is masked if de_DE.UTF-8 is already installed
  on main system. Made a patch to make iconvdata depend on localedata.
- nscd init service should start ldap service if present (mdv bug
  41055).
- Remove patches not needed anymore for glibc tests related to gcc 4.2
- Cleanup mdkversion uses from spec: there is no reason for backporting
  or using current package on older distro releases.
- Use different numbering scheme in package release for this glibc 2.8
  "stable-snapshot" release, discussed on Cooker mailing list (asked by
  Anssi Hannula, Thierry Vignaud).
- Remove uneeded README.upgrade.urpmi message since addition of Provides
  to "should-restart = system".
- Rediffed ENOTTY-fr-translation patch.

* Wed May 21 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.8-1mnb2
+ Revision: 209635
- Disable temporarily make check for x86_64.
- Update to glibc 2.8 (no official tarball, generated one from
  glibc-2_8-branch glibc cvs branch).
- Drop glibc cvs patches already applied.
- Merge glibc-2.3.4-nscd-fixes.patch and glibc-2.6-nscd_HUP.patch into
  glibc-nscd_fixes.patch and added more updates/fixes from RedHat.
- Removed update for perl 5.10 (mtrace-perl-5.10.0 patch), already
  applied.

* Tue May 06 2008 Vincent Danen <vdanen@mandriva.com> 6:2.7-13mnb2
+ Revision: 201765
- bump release
- imported crypt-blowfish support from Annvix (2.6.1-8123avx):
  - added crypt-blowfish 1.0.2
  - added crypt_freesec.[ch] source files
  - crypt_freesec.patch which addes support for extended/new-style/BSDI hashes in crypt(3)
  - relocate_fcrypt.patch relocates the fcrypt definition from crypt-entry.c to crypt_blowfish's wrapper.c to enable gcc4 builds
  - increase_BF_FRAME.pach increases the BF_FRAME and BF_CLEAN values
  - crypt.patch is the crypt_blowfish patch for glibc 2.4 (rediffed from the crypt_blowfish package)
  - packages provide glibc-crypt_blowfish
- rediffed crypt.patch
- rediffed crypt_freesec.patch
- added wrapper_handle_sha.patch to add sha256-crypt and sha512-crypt support to the Openwall wrapper.c file, otherwise sha(256|512)-crypt support won't work

* Thu Mar 20 2008 Toshihiro Yamagishi <toshihiro@turbolinux.co.jp> 6:2.7-12mnb1
+ Revision: 189119
- use %%_real_vendor macro instead of mandriva as rpmscripts directory name.

* Wed Mar 12 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-11mnb1
+ Revision: 187259
- Disable again make check failure for i[3456]8: failure happens on
  build system but not locally here, and 32 bits on x86_64 fails too
  because missing 32 libs (fixable later with BuildRequires etc.).
- Revert again change that causes java programs use too much memory on
  x86_64 (#38830).
- Workaround test-double failure on x86 with gcc 4.2, found out by
  Makoto Dei (#38794). Also reenable make check failure for i[3456]8.

* Mon Mar 10 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-10mnb1
+ Revision: 183209
- Added cacheinfo update for Intel Tolapai and fix for bz5541 from glibc
  cvs.

  + Anssi Hannula <anssi@mandriva.org>
    - add comments regarding _(provides|requires)_exceptions

* Tue Mar 04 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-9mnb1
+ Revision: 178439
- Provides should be used for previous change (not Suggests), reported
  by Anssi Hannula.

* Mon Mar 03 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-8mnb1
+ Revision: 178073
- Added "Suggests: should-restart = system" to main glibc package,
  proposed by Frederic Crozat (see "RFC: add support in packages for
  notifying user about system reboot needed (or service restart needed)"
  message on cooker ML).

* Wed Feb 27 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-7mnb1
+ Revision: 175818
- Require dash-static instead of dash, because dash requires glibc and
  introduces dependency problems (reported by Pascal Rigaux - pixel).

* Tue Feb 26 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-6mnb1
+ Revision: 175412
- Added fixes from glibc cvs: bz5465, fix-tzh_version-check,
  i486-memmove-with-fortify-fix, x86_64-memset-add-missing-sfence,
  bz5439, bz5441, bz5346.

  + Pixel <pixel@mandriva.com>
    - replace %%mkrel with %%manbo_mkrel for Manbo Core 1

* Sun Feb 10 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-5mdv2008.1
+ Revision: 164745
- Rebuild glibc with kernel-headers-2.6.24-2mdv2008.1

* Fri Feb 08 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-4mdv2008.1
+ Revision: 164302
- Removed kernel-headers, now provided by a standalone package.

* Fri Feb 08 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-3mdv2008.1
+ Revision: 164149
- Prepare to remove kernel-headers from glibc-devel package (removed
  provides, obsoletes and header files, to be able to insert separated
  kernel-headers package on distro).

* Fri Feb 01 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-2mdv2008.1
+ Revision: 161195
- Added patch to avoid $* deprecated warning when using perl 5.10.0 with
  mtrace.
- Updated kernel-headers to version 2.6.24.1mdv
- Added manual fixes from glibc cvs (glibc-2.7-manual_update.patch).
  Removed glibc-2.6-texi_buildpdf_fix.patch, as this obsoletes it.
- Added fixes for bz5222 and bz5600 from glibc cvs.

* Fri Jan 04 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.7-1mdv2008.1
+ Revision: 144915
- Updated to version 2.7
- Updated kernel-headers to version 2.6.24-0.rc6.3mdv
- Removed glibc-2.4.90-powerpc-no-clock_gettime-vdso.patch, seems to be
  not needed anymore.
- Added patch from upstream cvs to fix i586 build
  (glibc-2.7-memcpy_chk_i586.patch).
- Removed already applied patches in glibc 2.7:
  glibc-2.5-ldconfig-old-cache.diff
  glibc-cvs-nscd_dont_cache_ttl0.patch
  glibc-cvs-utimensat.patch
  glibc-bz4599.patch
  glibc-bz4125.patch
  glibc-cvs-gcc_init_fini.patch
  glibc-bz4647.patch
  glibc-bz4773.patch
  glibc-_nl_explode_name_segfault_fix.patch
  glibc-bz4776.patch
  glibc-bz4775.patch
  glibc-cvs-popen_bug_fix.patch
  glibc-bz4792.patch
  glibc-cvs-_cs_posix_v6_width_restricted_envs.patch
  glibc-bz4813.patch
  glibc-bz4812.patch
  glibc-bz4772.patch
  glibc-cvs-warning_patrol_fixes.patch
  glibc-cvs-getconf_add_missing_lvl4_cache_linesize.patch
  glibc-cvs-libc_texinfo_update.patch
  glibc-cvs-ix86_rwlock_fixes.patch
  glibc-cvs-gettext_memleak_fixes.patch
  glibc-cvs-strtod_handle_minuszero.patch
  glibc-cvs-ar_SA-dz_BT-LC_TIME-fixes.patch
  glibc-cvs-po_updates.patch
  glibc-cvs-rh250492.patch
- Removed already applied kernel-headers-dvb-video-fix-includes.patch in
  kernel headers.
- Fix test-ldouble with gcc 4.2 on x86. test-double still fails though,
  so disable make check failure for i[3456]8; it passes on x86_64, not
  sure if it's related to gcc 4.2, will need a better check later and
  someone that knows better about complex math.
- Rebuild with new lzma to fix permissions of man pages (#36176).

  + Olivier Blin <oblin@mandriva.com>
    - restore BuildRoot

  + Thierry Vignaud <tv@mandriva.org>
    - kill re-definition of %%buildroot on Pixel's request

* Wed Oct 31 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6.1-5mdv2008.1
+ Revision: 104208
- gconv-modules.cache is volatile (always changed by iconvconfig on
  post), mark it as ghost in rpm files section, so it's ignored in rpm
  -V output.
- Fix installation of lib{memusage,pcprofile}.so files (#35178). Don't
  move them around anymore and hack xtrace/memusage, just use upstream
  defaults avoiding troubles like this in the future.

* Thu Sep 27 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6.1-4mdv2008.0
+ Revision: 93205
- Revert pl_PL LC_TIME changes from glibc 2.6, it's causing problems for
  polish users, see http://qa.mandriva.com/show_bug.cgi?id=34134

* Fri Aug 31 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6.1-3mdv2008.0
+ Revision: 76895
- Rebuild for fixed package changelog.

* Mon Aug 27 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6.1-2mdv2008.0
+ Revision: 72022
- Added ldconfig cache speed up patch (added upstream, reported by
  Pascal Rigaux).
- Make package own ld.so.cache.
- Added pt_BR-i18nfixes patch, minor translation fixes for
  pt_BR, see patch for credits.
- Provide gai.conf sample.

  + Thierry Vignaud <tv@mandriva.org>
    - buildrequires obsoletes buildprereq

* Wed Aug 08 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6.1-1mdv2008.0
+ Revision: 60011
- Updated to version 2.6.1 (technically with previously added patches we
  were already there, this is more a cosmetic change).
- Removed patches already applied in 2.6.1: x86_64-memcpy_cacheinfo,
  epoll, nscd_get_mapping_crash_fix, sparc_build_fix,
  provide_CFI_for_the_outermost_function (reverted apply),
  i386_sync_file_range, bz4745, branch_misc_fixes, malloc,
  x86_64_dummy_files_prevent_stub, bz4512, bz4514,
  ld_hwcap_mask_handling_fix, bz4858, pthread_getattr_np_fix,
  tst_shm_fstat64, ldbl128ibm_fixes, bz4702.
- Added the following upstream fixes: rh250492, strtod_handle_minuszero,
  libc_texinfo_update, ar_SA-dz_BT-LC_TIME-fixes, po_updates,
  gettext_memleak_fixes, ix86_rwlock_fixes.
- Updated warning_patrol_fixes patch with more fixes.
- Really enable libidn addon.

* Mon Aug 06 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6-6mdv2008.0
+ Revision: 59528
- Added patch texi_buildpdf_fix, to fix build when build_pdf_doc is
  enabled (parse error fixes for texi2dvi).
- Re-enabled glibc-doc-pdf again (it was fixed in tetex 3.0-23mdk), from
  Giuseppe Ghib?\195?\178 <ghibo@mandriva.com>.

  + Anssi Hannula <anssi@mandriva.org>
    - Really apply kernel-headers-dvb-video-fix-includes.patch.

* Thu Aug 02 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6-5mdv2008.0
+ Revision: 58194
- Updated kernel-headers to version 2.6.22.3mdv. The only change inside
  it is to add pci_ids.h file, needed by ldetect as reported by Thierry
  Vignaud.

* Mon Jul 30 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6-4mdv2008.0
+ Revision: 56752
- Fixed missing header on popen_bug_fix patch.
- Added one more fix that went upstream related to
  _nl_explode_name_segfault_fix patch.
- Updated nscd_HUP patch from fedora.
- Added more fixes/additions that went upstream: bz4813, bz4772,
  warning_patrol_fixes, sparc_build_fix, bz4812, bz4792, bz4858,
  _cs_posix_v6_width_restricted_envs,
  getconf_add_missing_lvl4_cache_linesize.

* Wed Jul 25 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6-3mdv2008.0
+ Revision: 55382
- As reported and found out by Anssi Hannula, revert the following
  upstream change:
  2006-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
  	* sysdeps/unix/sysv/linux/i386/clone.S: Provide CFI for the
  	* outermost
  	`clone' function to ensure proper unwinding stop of gdb.
  	* sysdeps/unix/sysv/linux/x86_64/clone.S: Likewise.
  It is causing memory leaks with gcj 4.3 on some cases on x86_64, and
  probably other problems, may be because of a binutils bug.
- Added fix for a popen bug from glibc cvs.

* Fri Jul 20 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 6:2.6-2mdv2008.0
+ Revision: 53918
- Added patch from Anssi Hannula to fix a kernel header issue
  (kernel-headers-dvb-video-fix-includes.patch).
- Added missing fixes to ldbl128ibm_fixes patch.
- Removed hunk from kernel-headers-gnu-extensions.patch that patched
  linux/byteorder/swab.h, as code changed and isn't needed anymore (no
  need now for __extension__ as code no more uses "({ ... })" gcc
  extension).
- Updated kernel-headers to version 2.6.22.1mdv.
- Replaced init_tls_calls with more complete branch_misc_fixes patch,
  that includes it along with more fixes from upstream glibc 2.6 branch.
- Added upstream fix bz4775.
- Don't use echo on post, instead use README.upgrade.urpmi because of
  rpmdrake, as reported by Anssi Hannula. Also use better warning
  message.
- Removed glibc-post-upgrade, dont't restart all services on update
  (#21730). Only re-exec init and sshd if possible/needed.

  + Ademar de Souza Reis Jr <ademar@mandriva.com.br>
    - remove unecessary 'xset fp=[...]' from %%post, since xfs is not
      used anymore (besides, it was pointing to the wrong location)

* Fri Jul 13 2007 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 2.6-1mdv2008.0
+ Revision: 51838
- Only allow make check to fail if current running kernel version is
  known to work.
- Added more fixes from Jakub Jelinek (upstream):
  _nl_explode_name_segfault_fix, bz4776.
- Deal with LD_LIBRARY_PATH bug when building package between major
  glibc versions.
- Added upstream fixes: nscd_get_mapping_crash_fix, bz4599,
  gcc_init_fini, i386_sync_file_range, init_tls_calls, bz4745, bz4647,
  x86_64_dummy_files_prevent_stub, ld_hwcap_mask_handling_fix,
  bz4773, pthread_getattr_np_fix, tst_shm_fstat64, ldbl128ibm_fixes,
  bz4125, bz4702, nscd_dont_cache_ttl0, utimensat, bz4586.
- Replaced amd64-string patch with x86_64-memcpy_cacheinfo that went
  upstream.
- Replaced futex-waiters with bz4512 patch (only test cases added).
- Replaced printf diff with glibc-bz4514.patch.
- Use new gcc 4.2 -mtune=generic flags for BuildFlags on x86/x86_64.
- Updated kernel headers (2.6.21.2mdv). Because of this removed/modified
  the following patches:
  * avx-kernel-headers-audit_support: already applied.
  * kernel-headers-include-2.6.17.1mdk, syscall-mem-clobbers: obsolete,
    not needed anymore.
  * gnu-extensions: modified, one hunk is not applying anymore as the
    file it patches is gone.
  This new kernel headers use the new scheme of sanitized upstream
  kernel headers, the tarball is generated from make
  headers_install_all.
- Updated create_asm_headers.sh script for new kernel headers.
- Added upstream/redhat patches printf, malloc, futex-waiters, epoll.
  Fix bugs/incompatibility issues in glibc 2.6 (the diffs are from
  suse).
- Updated to version 2.6.
- Redid patches that were not applying anymore: nscd_HUP, nice_fix,
  multiarch, new-charsets.
- Drop patches already applied: hwcap-check-platform, brazil-daylight,
  slovenia-euro, unicode5, all bz* patches, powerpc-ldbl-fixes,
  powerpc-hwcaps, fix-nptl-testcases, powerpc-regdump,
  ttyname-dont-use-isatty, fix-ppc32-setcontext,
  fix-pthread_mutex_timedlock.
- Disabled amd64 patches new-libm, amd64-fix-ceil, amd64-string: don't
  apply anymore, are not approved upstream yet, no updated version.

  + Andreas Hasenack <andreas@mandriva.com>
    - added audit patch, from Vdanen, so we can build audit

  + Per Øyvind Karlsen <peroyvind@mandriva.org>
    - merge ldconfig package with glibc package
    - replace file dependency /sbin/install-info with package dependency info-install
    - s/mandrake/mandriva/
    - do not build and install localedata for $ALT_ARCH too (fixes #27214)
    - drop libnldbl_nonshared.a from sparc64 (fixes #30589)
    - fix reckless usage of s/.bz2// that broke patch names

  + Pixel <pixel@mandriva.com>
    - explicit file provide /sbin/ldconfig


* Wed Mar 07 2007 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.4-8mdv2007.1
+ Revision: 134573
- split timezone package off glibc
- fix pthread_mutex_timedlock() on x86_64
- fix setcontext on ppc32
- fix floor() and ceil() inlines on i386 (BZ#3451)
- fix cross-compilation and packaging

* Thu Jan 18 2007 Gwenole Beauchesne <gbeauchesne@mandriva.com> 6:2.4-7mdv2007.1
+ Revision: 110379
- add Unicode 5.0 support (Pablo)
- use Euro in Slovenia
- enable DT_GNU_HASH support only for MDK >= 2007.1
- explicitly optimize for Cell on powerpc

* Fri Jan 12 2007 Gwenole Beauchesne <gbeauchesne@mandriva.com> 6:2.4-6mdv2007.1
+ Revision: 108082
- backport DT_GNU_HASH support
- sparc64 updates (Peroyvind)
- fix lsb T.ttyname_r (Stew, glibc head)

* Tue Oct 24 2006 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.4-5mdv
- update Brazil tzdata (andreas, #26570)
- update powerpc-cpu add-on to 0.03
- reintroduce dl-cache AT_PLATFORM check from glibc 2.2.5
- really don't use -frename-registers (workaround rpmb bug)
- add selected fixes from 2.5-branch:
  * fix ppc{32,64} libSegFault.so register dump
  * fix 2 NPTL testcases
  * fix ppc{32,64} longjmp (BZ#3225)
  * use AT_PLATFORM and limit the number of important hwcaps on ppc
  * fix ppc{32,64} lrintl/lroundl
  * fix lrint on ppc32 (BZ#3155)
  * fix lrint, llrint (BZ#2592)
  * fix pthread_create() called from cancellation handlers (BZ#3124)
  * fix pthread_cond_{,timed}wait() cancellation (BZ#3123)
  * fix invalid free in error(3) (BZ#2998)
  * fix printing of hexadecimal floating point numbers (BZ#2908)
  * fix too large key check in pthread_setspecific (BZ#2892)
  * fix pthread_join() in already cancelled thread (BZ#2843)
  * fix UINT8_C and UINT16_C definitions in <stdint.h> (BZ#2841)
  * fix mktime() on 32-bit platforms for dates > 2038 (BZ#2821)
  * fix uninitialized len for alloca in ld.so $ORIGIN/$PLATFORM handling (BZ#2792)
  * fix malloc(0xFFFFnnnn) corruption from 32-bit wraparound (BZ#2775)
  * fix insque() to conform to POSIX (BZ#2766)
  * fix envz_strip() (BZ#2703)
  * fix dladdr() with SHN_UNDEF symbols (BZ#2683)
  * provide getlogin prototype even for -D_XOPEN_SOURCE=500 (BZ#2680)
  * fix cacosh() (BZ#2182)

* Mon Jul 24 2006 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.4-4mdk
- update kernel headers to 2.6.17
- --enable-kernel=2.6.12 on powerpc arches
- add powerpc-cpu add-on and optimize for power5 and power6
- install generic <bits/stdio-lock.h> header (RH #162634)
- cleanups (use new %%isarch)
- sparc changes from Per Oyvind Karlsen
- buildrequires: texinfo (Christiaan Welvaart)
- build glibc-post-wrapper against newly installed libs (Christiaan)

* Mon May 22 2006 Arnaud Patard <apatard@mandriva.com> 2.4-3mdk
- update kernel-headers to the 2.6.16-2mdk to be able to build applications
  that are including linux/input.h

* Fri May 19 2006 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.4-2mdk
- update new-charsets patch
- update kernel-headers to 2.6.16
- update x86_64 strings library from AMD

* Thu May 11 2006 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.4-1mdk
- update to glibc 2.4 + CVS (2006/05/11) minus 2.5-specific bits
- drop linuxthreads for now, nptl is the default
- update x86_64 math library from AMD

* Mon Mar 20 2006 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.3.6-3mdk
- refactor nsswitch.conf
- fix ENOTTY fr translation (noticed by Rafael)
- fix build on sparc32 (Per Oyvind, from Debian)
- fix nftw with root directory and FTW_CHDIR (#9121)
- fix dlopen() memory leaks (#21691, BZ #2451, from CVS HEAD)

* Mon Feb 20 2006 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.3.6-2mdk
- all tests pass on ppc64
- fix localedef for complex LC_COLLATE rules (BZ #368, HEAD)
- make -mno-tls-direct-seg-refs the default for x86 Xen arches
- don't ship ppc64 asm headers for ppc32 builds
- don't provide ld-linux.so.2 on ppc (Christiaan Welvaart)

* Thu Feb 16 2006 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.3.6-1mdk
- 2.3.6
- kernel-headers fixes (ppc64, ethtool.h, rsbac_syscall4)
- use dedicated macros to handle nscd service (FredL)
- fix permissions for */lib/*.so
- fix glibc-devel deps (#19145)
- fix upgrades from conectiva, aka conflicts glibc-base <= 2.3.4 (#19256)

* Wed Oct 19 2005 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.3.5-6mdk
- support kernel 2.6 series only on ppc64
- add missing ppc64 asm headers for newer kernels

* Mon Aug 29 2005 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.3.5-5mdk
- update to 2.6.12-11mdk kernel headers
- make glibc-utils scripts biarch capable
- ship with localised libc.mo files again
- ship with 32-bit profile libs on biarch platforms
- move Xen optimized libraries to their own subpackage
- check for /lib* prior to writing the upgrade stamp (G. Niemeyer)
- fix BZ #1188 (Sergio Gelato, mountd crash)

* Sat Aug 06 2005 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.3.5-4mdk
- enable fortify with our gcc4
- fix amd64 string routines (latest snapshot from SuSE)
- provide nptl libraries suitable when running under Xen
- drop build support with distcc, icecream is used instead
- run testsuite with _NPROCESSORS_ONLN jobs at most (i.e. local run)

* Tue Aug 02 2005 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.3.5-3mdk
- fix requires for shiny new rpm... and its bugs
- update to 2.6.12-8mdk kernel headers
- support only 2.6+ kernel series on ppc64
- minimal NPTL kernel for 2006 is >= 2.6.9, this brings the following:
  * getdents syscall returns d_type information as well
  * ppc adds signal/swapcontext support for VMX instructions & regstate
  * x86 has a fixed version of posix_fadvise64
  * new syscalls: waitid, utimes, tgkill, statfs64
- updates from 2.3-branch (2005/07/21):
  * avoid dynamically sized stack arrays in regex (BZ #1101)
  * fix sign-extension issues in xdr_stdio on 64-bit big endian
    machines + xdr{,_u}_hyper fixes (BZ #1098, #1097)
  * fix ISO-4217 spec for sr_CS locale, aka add CSD currency (BZ #549)
  * correctly account for characters of decimal points right after +-,
    aka scanf fixes (BZ #1110)
  * fix recursive dlclose (BZ #1081)
  * add %%z format to strptime (BZ #1105)
  * fix age calculation in nscd cache pruning (BZ #1094)
  * fix segfault in regexec (BZ #934)
  * fix posix_fallocate semantics using ftruncate (BZ #1083)
  * fix BZs #1099, #1108, #1100, #1103, #1095, #1101, #779, #1087,

* Wed Jun 15 2005 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.3.5-2mdk
- generate gconv-modules.cache
- requires and post scripts tweaks
- add optimized AMD64 strings library
- fix tst-cancel17 with newer kernels (CVS HEAD)

* Fri Jun 03 2005 Gwenole Beauchesne <gbeauchesne@mandriva.com> 2.3.5-1mdk
- factor out test matrix
- build 32-bit tls libs on x86_64
- build tls libraries on sparc64 (Stefan)
- remove -fno-unit-at-a-time from build flags
- fix aliasing in AMD64 new libm
- updates from 2.3-branch (2005/04/27):
  * update from Intel ia64 libm 2005-03-21
  * fix BZs #253, #776, #821, #822, #825, #851, #877

* Wed Mar 16 2005 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.4-8mdk
- fix initstate_r (#14591)

* Thu Mar 10 2005 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.4-7mdk
- fix package url (MDK #14468, Zeb)
- update to 2.6.11-2mdk kernel headers (inotify 0.20)
- update to stable 2.3-branch (2005/03/01):
  * fix BZs #284, #671, #719, #722, #726, #727, #729, #730, #731,
      * fix segfault in open_path, aka fix rsync --daemon (BZ #738)
  * fix powerpc64 set/swap context (BZ #700)
  * support -mno-tls-direct-seg-refs builds (BZ #737)
  * update to tz{code,data}2005c (BZ #736)
  * do not allocate potentially large buffers on the stack
  * futimes() should not fail with ENOENT (BZ #633)
  * declare ftruncate for POSIX 2003 (BZ #640)
  * fix rint on powerpc (BZ #602)
  * update ia64 libm (BZ #592)
  * fix round() to round return value to nearest (BZ #626)
  * fix {,q}ecvt{,_r} on denormals (BZ #725)
  * fix i386 stack alignment in clone and linuxthreads (BZ #723)

* Wed Feb 23 2005 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.4-6mdk
- fix fdim() in x86_64 libm, use glibc implementation
- really stick with getconf files in /usr/lib/getconf
- update kernel headers to 2.6.10-3mdk for new inotify
- kernel header fixes (cdp, fddi)

* Thu Feb 10 2005 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.4-5mdk
- kernel headers fixes (christiaan/ppc, directfb/x86_64, usbutils/any)

* Thu Jan 27 2005 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.4-4mdk
- add missing getconf files
- always propagate pgoff_t definition (workaround kernel header)

* Mon Jan 24 2005 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.4-3mdk
- relax __le64 and __be64 definitions in kernel headers

* Fri Jan 21 2005 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.4-2mdk
- update to 2.6.10 kernel headers
- add memory clobbers in asm-i386 syscalls as arguments may be
  pointers to modifiable memory and values need to be reloaded
  (e.g. _llseek() in util-linux)

* Tue Dec 28 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.4-1mdk
- 2.3.4
- fix kernel headers (videodev2.h, blkpg.h on ppc64)
- bring "compat" only to nsswitch.conf
- cosmetics to make check machinery

* Thu Nov 25 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-23mdk
- fix cross bootstrap builds
- enable biarch support on ppc64
- enable tls and nptl on ia64 and ppc64

* Fri Oct 08 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-22mdk
- revert nsswitch.conf change
- fix <linux/ijxuser.h> on non x86 platforms
- reread /etc/localtime even if just mtime has changed (CVS)

* Thu Sep 16 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-21mdk
- add pcc to nptl arches
- fix path to nscd socket
- bring "compat" mode to nsswitch.conf
- fix kernel headers for usbutils rebuild

* Thu Sep 02 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-20mdk
- add ppc to tls arches (Christiaan Welvaart)
- selected fixes from CVS (2004/09/01):
  * fix locking issues in nscd
  * fix some IPv6 related bugs

* Wed Aug 25 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-19mdk
- fix nice
- fix nscd runlevels
- selected fixes from CVS (2004/08/24):
  * add O_NOATIME to linux <fcntl.h> from 2.6.8+ (BZ #341)
  * fix nis nss_compat's initgroups handling
  * fix possible problem with ld.so and brk management (BZ #227)

* Wed Aug 18 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-18mdk
- add missing glibc compat symlinks
- add sparc to TLS arches (Per Oyvind)
- fix <linux/capi.h> standalone inclusion

* Tue Aug 17 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-17mdk
- enable AMD optimized libm for x86_64
- add pow10 and friends in x86_64 libm

* Fri Aug 13 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-16mdk
- some minor build arrangements
- add compat glibc 2.0 for some ancient programs

* Fri Aug 13 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-15mdk
- fix <linux/crc-ccitt.h>
- update from CVS (2004/08/12):
  * fix BZ #150, #198, #217, #218, #219, #230, #231, #232, #262, #263
  * fix pthread_rwlock_timedrdlock on x86_64
  * fix values for -m32 -D_FILE_OFFSET_BITS=64 on x86_64
  * fix psignal() changes from previous CVS syncs
  * fix backtrace in statically linked programs on ia64/x86-64/s390{,x}
  * fix possible buffer overflow in crypt()
  * fix lowmem handling in chroot_canon() (BZ #199)
  * handle more than 6 args correctly on x86_64 makecontext()

* Wed Aug 11 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-14mdk
- update to 2.6.8 kernel headers (fix #10693)
- selected fixes from CVS:
  * make inet_pton() RFC2133 (BZ #295)
  * fix strtold() on 32-bit arches with ldbl-96 (BZ #274)
  * fix pow{,f,l}() on IA-32 and powl() on AMD64 (BZ #258)

* Mon Jul 05 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-13mdk
- fix upgrades for /etc/ld.so.conf.d/*
- update to 2.3.4 CVS snapshot (2004/06/01)
- update to 2.6.6+ kernel headers, I want POSIX message queues
- update patch to handle multiple types of libraries from one ld.so

* Tue May 25 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-12mdk
- Make ldconfig handle "include ld.so.conf.d/*.conf" (2.3.4-cvs)

* Thu Apr 15 2004 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com> 2.3.3-11mdk
- Enable use of kernel timers for NPTL timer_create()
- Fix mathinline.h again
- alpha & sparc64 updates (Stefan)
- Merge from AMD64 branch:
  * Fix rwlocks on AMD64 with NPTL
  * Various fixes to kernel-headers
  * Really fix build on AMD64 with 2.4 kernel