]> git.pld-linux.org Git - packages/glibc.git/blobdiff - glibc.spec
- rel 6; update fixes from upstream
[packages/glibc.git] / glibc.spec
index ecd264fb9352af87f483cb83902dde4e7d4111e9..8ffa21d8dd2b9ee6b70bad6cc8a3a08fa90ac853 100644 (file)
@@ -16,6 +16,7 @@
 %bcond_with    cross           # make a cross build, skip native programs
 %bcond_without nss_crypt       # disable crypt features based on Mozilla NSS library
 %bcond_with    bash_nls        # use bash NLS in shell scripts (ldd, sotruss); restores /bin/bash dep
+%bcond_without cet             # Intel Control-flow Enforcement Technology (CET)
 #
 %ifarch %{ix86} %{x8664}
 %{!?min_kernel:%global         min_kernel      3.2.0}
 %ifarch sparc64
 %undefine      with_memusage
 %endif
+%ifnarch i686 %{x8664} x32
+%undefine      with_cet
+%endif
 
-%define                core_version    2.26
+%define                core_version    2.28
 %define                llh_version     7:2.6.32.1-1
 
 Summary:       GNU libc
@@ -41,12 +45,12 @@ Summary(tr.UTF-8):  GNU libc
 Summary(uk.UTF-8):     GNU libc версії
 Name:          glibc
 Version:       %{core_version}
-Release:       4
+Release:       6
 Epoch:         6
 License:       LGPL v2.1+
 Group:         Libraries
 Source0:       http://ftp.gnu.org/gnu/glibc/%{name}-%{version}.tar.xz
-# Source0-md5: 102f637c3812f81111f48f2427611be1
+# Source0-md5: c81d2388896379997bc359d4f2084239
 Source2:       nscd.init
 Source3:       nscd.sysconfig
 Source4:       nscd.logrotate
@@ -58,13 +62,13 @@ Source7:    %{name}-LD-path.c
 Source9:       nscd.tmpfiles
 # use branch.sh to update glibc-git.patch
 Patch0:                glibc-git.patch
-# Patch0-md5:  c6bcd3e3f7f7687a6baee7bac88843c8
+# Patch0-md5:  58ef96284acee989798495055657acde
 # against GNU TP (libc domain)
 #Patch1:               %{name}-pl.po-update.patch
 Patch2:                %{name}-pld.patch
 Patch3:                %{name}-crypt-blowfish.patch
 Patch4:                %{name}-no-bash-nls.patch
-Patch5:                %{name}-sparc-softfp-gcc.patch
+
 Patch6:                %{name}-paths.patch
 
 Patch8:                %{name}-missing-nls.patch
@@ -88,18 +92,21 @@ Patch27:    %{name}-c-utf8-locale.patch
 
 Patch29:       %{name}-arm-alignment-fix.patch
 Patch30:       glibc-rh1124987.patch
+# electron is broken but we have no way to fix it so for now lets break glibc again
+Patch31:       0001-Revert-elf-Correct-absolute-SHN_ABS-symbol-run-time-.patch
 URL:           http://www.gnu.org/software/libc/
 %{?with_selinux:BuildRequires: audit-libs-devel}
 BuildRequires: autoconf >= 2.69
 BuildRequires: automake
-%ifarch alpha
-BuildRequires: binutils >= 2:2.17.50.0.7
-%else
-BuildRequires: binutils >= 2:2.15.90.0.3
-%endif
+BuildRequires: binutils >= 2:2.29
+BuildRequires: bison >= 2.7
 %{!?with_cross:BuildRequires:  dietlibc-static}
 BuildRequires: gawk
+%if %{with cet}
+BuildRequires: gcc >= 6:8.0
+%else
 BuildRequires: gcc >= 6:4.7
+%endif
 %{?with_memusage:BuildRequires:        gd-devel >= 2.0.1}
 BuildRequires: gettext-tools >= 0.10.36
 %{?with_selinux:BuildRequires: libselinux-devel >= 1.18}
@@ -126,6 +133,7 @@ Obsoletes:  glibc-debug
 Provides:      glibc64
 Obsoletes:     glibc64
 %endif
+Suggests:      libidn2 >= 2.0.5
 Suggests:      localedb
 Suggests:      tzdata
 Conflicts:     %{name}-misc < %{epoch}:%{version}-%{release}
@@ -178,6 +186,9 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                _noautoprov             .*\(GLIBC_PRIVATE\)
 %define                _noautoreq              .*\(GLIBC_PRIVATE\)
 
+# to avoid multi-arch conflicts on getconf/* files
+%define                _libexecdir             %{_libdir}
+
 %description
 Contains the standard libraries that are used by multiple programs on
 the system. In order to save disk space and memory, as well as to ease
@@ -956,11 +967,11 @@ exit 1
 %patch2 -p1
 %patch3 -p0
 %{!?with_bash_nls:%patch4 -p1}
-%patch5 -p1
+
 %patch6 -p1
 
 %patch8 -p1
-%patch9 -p0
+%patch9 -p1
 
 %patch10 -p1
 %patch11 -p1
@@ -978,6 +989,7 @@ exit 1
 
 %patch29 -p1
 %patch30 -p1
+%patch31 -p1
 
 # cleanup backups after patching
 find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
@@ -1006,7 +1018,9 @@ PATH=$(pwd)/alt-tools:$PATH; export PATH
 
 AWK="gawk" \
 ../%configure \
-       --enable-add-ons=libidn \
+%if %{with cet}
+       --enable-cet \
+%endif
        --enable-bind-now \
        --enable-experimental-malloc \
        --enable-hidden-plt \
@@ -1017,6 +1031,7 @@ AWK="gawk" \
        --enable-profile \
        --enable-stack-protector=strong \
        --enable-stackguard-randomization \
+       --enable-static-pie \
        --enable-tunables \
        --with-binutils=$(pwd)/alt-tools \
        --with-bugurl=http://bugs.pld-linux.org/ \
@@ -1086,7 +1101,7 @@ install -p glibc-postinst                         $RPM_BUILD_ROOT/sbin
 mv -f $RPM_BUILD_ROOT/%{_lib}/libpcprofile.so  $RPM_BUILD_ROOT%{_libdir}
 
 # make symlinks across top-level directories absolute
-for l in BrokenLocale anl cidn crypt dl \
+for l in BrokenLocale anl crypt dl \
 %ifarch %{x8664} x32
        mvec \
 %endif
@@ -1129,7 +1144,7 @@ cp -p %{SOURCE9} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/nscd.conf
 rm -rf documentation
 install -d documentation
 
-for f in ChangeLog.old DESIGN-systemtap-probes.txt TODO{,-kernel,-testing}; do
+for f in DESIGN-systemtap-probes.txt TODO{,-kernel,-testing}; do
        cp -af nptl/$f documentation/$f.nptl
 done
 cp -af crypt/README.ufc-crypt ChangeLog* documentation
@@ -1381,7 +1396,7 @@ fi
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc README NEWS BUGS CONFORMANCE
+%doc README NEWS
 %if %{without cross}
 %attr(755,root,root) /sbin/glibc-postinst
 %endif
@@ -1421,8 +1436,6 @@ fi
 %else
 %attr(755,root,root) /%{_lib}/libc.so.6
 %endif
-%attr(755,root,root) /%{_lib}/libcidn-%{core_version}.so
-%attr(755,root,root) /%{_lib}/libcidn.so.1
 %attr(755,root,root) /%{_lib}/libdl-%{core_version}.so
 %ifarch alpha
 %attr(755,root,root) /%{_lib}/libdl.so.2.1
@@ -1820,7 +1833,6 @@ fi
 %attr(755,root,root) %{_libdir}/libBrokenLocale.so
 %attr(755,root,root) %{_libdir}/libanl.so
 %attr(755,root,root) %{_libdir}/libcrypt.so
-%attr(755,root,root) %{_libdir}/libcidn.so
 %attr(755,root,root) %{_libdir}/libdl.so
 %attr(755,root,root) %{_libdir}/libm.so
 %ifarch %{x8664} x32
@@ -1833,7 +1845,8 @@ fi
 %attr(755,root,root) %{_libdir}/libthread_db.so
 %attr(755,root,root) %{_libdir}/libutil.so
 %{_libdir}/crt[1in].o
-%{_libdir}/[MSg]crt1.o
+%{_libdir}/[MSgr]crt1.o
+%{_libdir}/grcrt1.o
 # ld scripts
 %{_libdir}/libc.so
 %{_libdir}/libpthread.so
@@ -1843,11 +1856,9 @@ fi
 %endif
 %{_libdir}/libc_nonshared.a
 %{_libdir}/libg.a
-%{_libdir}/libieee.a
 %ifarch alpha ppc sparc
 %{_libdir}/libnldbl_nonshared.a
 %endif
-%{_libdir}/libpthread_nonshared.a
 %{_libdir}/librpcsvc.a
 %ifarch %{ix86} %{x8664} x32 ppc ppc64 s390 s390x sparc sparcv9 sparc64
 # ABI-dependent headers
This page took 0.032522 seconds and 4 git commands to generate.