]> git.pld-linux.org Git - packages/glibc.git/blobdiff - glibc.spec
- make rpm 4.16 happy
[packages/glibc.git] / glibc.spec
index b0f1880d94a2a1141c3396ee17c2fe54603d5257..73affece60fbc4a9dd31ea9bdff108f47fd66006 100644 (file)
@@ -17,6 +17,8 @@
 %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)
+%bcond_without crypt           # don't build obsolete libcrypt
+%bcond_without static_pie      # disable static PIE support
 #
 %ifarch %{ix86} %{x8664}
 %{!?min_kernel:%global         min_kernel      3.2.0}
@@ -30,6 +32,9 @@
 %ifnarch i686 %{x8664} x32
 %undefine      with_cet
 %endif
+%ifarch %{arm}
+%undefine              with_static_pie
+%endif
 
 %define                core_version    2.32
 %define                llh_version     7:2.6.32.1-1
@@ -45,7 +50,7 @@ Summary(tr.UTF-8):    GNU libc
 Summary(uk.UTF-8):     GNU libc версії
 Name:          glibc
 Version:       %{core_version}
-Release:       1
+Release:       7
 Epoch:         6
 License:       LGPL v2.1+
 Group:         Libraries
@@ -62,7 +67,7 @@ Source7:      %{name}-LD-path.c
 Source9:       nscd.tmpfiles
 # use branch.sh to update glibc-git.patch
 Patch0:                glibc-git.patch
-# Patch0-md5:  b23f89a8ac84091eee12ac8e764483e6
+# Patch0-md5:  a10fb51443b3e009bc14072cadda7585
 # against GNU TP (libc domain)
 #Patch1:               %{name}-pl.po-update.patch
 Patch2:                %{name}-pld.patch
@@ -113,7 +118,7 @@ BuildRequires:      perl-base
 BuildRequires: python3 >= 1:3.4
 BuildRequires: python3-modules >= 1:3.4
 BuildRequires: rpm-build >= 4.3-0.20030610.28
-BuildRequires: rpmbuild(macros) >= 1.567
+BuildRequires: rpmbuild(macros) >= 1.752
 BuildRequires: sed >= 4.0.5
 BuildRequires: texinfo >= 4.7
 Requires:      %{name}-ld = %{epoch}:%{version}-%{release}
@@ -146,7 +151,7 @@ Conflicts:  rc-scripts < 0.3.1-13
 Conflicts:     rpm < 4.1
 Conflicts:     util-linux < 2.35.1-2
 Conflicts:     xorg-driver-video-nvidia-libs < 1:295.33
-ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} x32 ia64 alpha s390 s390x sparc sparc64 sparcv9 ppc ppc64 armv5tel aarch64
+ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} x32 ia64 alpha s390 s390x sparc sparc64 sparcv9 ppc ppc64 armv5tel armv6hl aarch64
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 # avoid -s here (ld.so must not be stripped to allow any program debugging)
@@ -464,7 +469,11 @@ Group:             Development/Libraries
 Requires:      %{name} = %{epoch}:%{version}-%{release}
 Requires:      %{name}-devel-utils = %{epoch}:%{version}-%{release}
 Requires:      %{name}-headers = %{epoch}:%{version}-%{release}
+%if %{with crypt}
 Requires:      %{name}-libcrypt(%{_target_cpu}) = %{epoch}:%{version}-%{release}
+%else
+Requires:      libxcrypt-devel
+%endif
 Provides:      %{name}-devel(%{_target_cpu}) = %{epoch}:%{version}-%{release}
 %ifarch %{ix86}
 Provides:      %{name}-devel(ix86) = %{epoch}:%{version}-%{release}
@@ -533,33 +542,33 @@ kitaplıklar.
 Summary:       Header files for development using standard C libraries
 Summary(pl.UTF-8):     Pliki nagłówkowe do tworzenia programów przy użyciu standardowych bibliotek C
 Group:         Development/Building
-Provides:      %{name}-headers(%{_target_cpu}) = %{epoch}:%{version}-%{release}
+Provides:      %{name}-header-cpu-(%{_target_cpu} = %{epoch}:%{version}-%{release}
 %ifarch %{ix86}
-Provides:      %{name}-headers(ix86) = %{epoch}:%{version}-%{release}
+Provides:      %{name}-headers-cpu-ix86 = %{epoch}:%{version}-%{release}
 %endif
 %ifarch %{x8664} x32
 # If both -m32 and -m64 is to be supported on x86_64, x86_64 package
 # have to be installed, not ix86 one.
-Obsoletes:     glibc-headers(athlon)
-Obsoletes:     glibc-headers(i386)
-Obsoletes:     glibc-headers(i486)
-Obsoletes:     glibc-headers(i586)
-Obsoletes:     glibc-headers(i686)
-Obsoletes:     glibc-headers(ix86)
-Obsoletes:     glibc-headers(pentium3)
-Obsoletes:     glibc-headers(pentium4)
+Obsoletes:     glibc-headers-cpu-athlon
+Obsoletes:     glibc-headers-cpu-i386
+Obsoletes:     glibc-headers-cpu-i486
+Obsoletes:     glibc-headers-cpu-i586
+Obsoletes:     glibc-headers-cpu-i686
+Obsoletes:     glibc-headers-cpu-ix86
+Obsoletes:     glibc-headers-cpu-pentium3
+Obsoletes:     glibc-headers-cpu-pentium4
 %endif
 %ifarch x32
-Obsoletes:     glibc-headers(x86_64)
+Obsoletes:     glibc-headers-cpu-x86_64
 %endif
 %ifarch ppc64
-Obsoletes:     glibc-headers(ppc)
+Obsoletes:     glibc-headers-cpu-ppc
 %endif
 %ifarch s390x
-Obsoletes:     glibc-headers(s390)
+Obsoletes:     glibc-headers-cpu-s390
 %endif
 %ifarch sparc64
-Obsoletes:     glibc-headers(sparc)
+Obsoletes:     glibc-headers-cpu-sparc
 %endif
 Requires:      linux-libc-headers >= %{llh_version}
 
@@ -588,33 +597,33 @@ korzystające ze standardowych bibliotek C.
 Summary:       Utilities needed for development using standard C libraries
 Summary(pl.UTF-8):     Narzędzia do tworzenia programów przy użyciu standardowych bibliotek C
 Group:         Development/Libraries
-Provides:      %{name}-devel-utils(%{_target_cpu}) = %{epoch}:%{version}-%{release}
+Provides:      %{name}-devel-util-cpu-(%{_target_cpu} = %{epoch}:%{version}-%{release}
 %ifarch %{ix86}
-Provides:      %{name}-devel-utils(ix86) = %{epoch}:%{version}-%{release}
+Provides:      %{name}-devel-utils-cpu-ix86 = %{epoch}:%{version}-%{release}
 %endif
 %ifarch %{x8664} x32
 # If both -m32 and -m64 is to be supported on AMD64, x86_64 package
 # have to be installed, not ix86 one.
-Obsoletes:     glibc-devel-utils(athlon)
-Obsoletes:     glibc-devel-utils(i386)
-Obsoletes:     glibc-devel-utils(i486)
-Obsoletes:     glibc-devel-utils(i586)
-Obsoletes:     glibc-devel-utils(i686)
-Obsoletes:     glibc-devel-utils(ix86)
-Obsoletes:     glibc-devel-utils(pentium3)
-Obsoletes:     glibc-devel-utils(pentium4)
+Obsoletes:     glibc-devel-utils-cpu-athlon
+Obsoletes:     glibc-devel-utils-cpu-i386
+Obsoletes:     glibc-devel-utils-cpu-i486
+Obsoletes:     glibc-devel-utils-cpu-i586
+Obsoletes:     glibc-devel-utils-cpu-i686
+Obsoletes:     glibc-devel-utils-cpu-ix86
+Obsoletes:     glibc-devel-utils-cpu-pentium3
+Obsoletes:     glibc-devel-utils-cpu-pentium4
 %endif
 %ifarch x32
-Obsoletes:     glibc-devel-utils(x86_64)
+Obsoletes:     glibc-devel-utils-cpu-x86_64
 %endif
 %ifarch ppc64
-Obsoletes:     glibc-devel-utils(ppc)
+Obsoletes:     glibc-devel-utils-cpu-ppc
 %endif
 %ifarch s390x
-Obsoletes:     glibc-devel-utils(s390)
+Obsoletes:     glibc-devel-utils-cpu-s390
 %endif
 %ifarch sparc64
-Obsoletes:     glibc-devel-utils(sparc)
+Obsoletes:     glibc-devel-utils-cpu-sparc
 %endif
 Conflicts:     man-pages < 4.00
 
@@ -643,9 +652,7 @@ Summary:    Documentation needed for development using standard C libraries
 Summary(pl.UTF-8):     Dokumentacja do tworzenia programów przy użyciu standardowych bibliotek C
 Group:         Documentation
 Conflicts:     man-pages < 4.09
-%if "%{_rpmversion}" >= "4.6"
-BuildArch:     noarch
-%endif
+%{?noarchpackage}
 
 %description devel-doc
 The glibc-devel-doc package contains info and manual pages necessary
@@ -671,6 +678,7 @@ Summary(ru.UTF-8):  Статические библиотеки glibc
 Summary(uk.UTF-8):     Статичні бібліотеки glibc
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{epoch}:%{version}-%{release}
+%{!?with_crypt:Requires:       libxcrypt-static}
 Provides:      %{name}-static(%{_target_cpu}) = %{epoch}:%{version}-%{release}
 %ifarch %{ix86}
 Provides:      %{name}-static(ix86) = %{epoch}:%{version}-%{release}
@@ -967,6 +975,9 @@ AWK="gawk" \
 ../%configure \
 %if %{with cet}
        --enable-cet \
+%endif
+%if %{without crypt}
+       --disable-crypt \
 %endif
        --enable-bind-now \
        --enable-experimental-malloc \
@@ -977,7 +988,7 @@ AWK="gawk" \
        --enable-profile \
        --enable-stack-protector=strong \
        --enable-stackguard-randomization \
-       --enable-static-pie \
+       %{?with_static_pie:--enable-static-pie} \
        --enable-tunables \
        --with-binutils=$(pwd)/alt-tools \
        --with-bugurl=http://bugs.pld-linux.org/ \
@@ -1055,7 +1066,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 crypt dl \
+for l in BrokenLocale anl %{?with_crypt:crypt} dl \
 %ifarch %{x8664} x32
        mvec \
 %endif
@@ -1135,6 +1146,7 @@ done
 #   guc    (gtk-vnc)
 #   haw    (iso-codes, stellarium)
 #   hrx    (stellarium)
+#   hye    (tumbler)
 #   ie     (xfce, cinnamon)
 #   ilo    (kudzu, libosinfo, libreport)
 #   io     (alacarte, gtk+2, gnome, iso-codes)
@@ -1210,6 +1222,7 @@ done
 # nl=nl_NL
 # om=om_ET
 # or=or_IN
+# os=os_RU
 # pa=pa_IN
 # pt=pt_PT
 # quz=quz_PE
@@ -1244,7 +1257,7 @@ for i in aa aa@saaho af ak am an ang anp ar ar_TN as ast az az_IR \
        et eu fa ff fil fo fr_BE fr_CA fr_CH fur fy ga gd gez gu gv \
        ha he hi hne ht hsb hy ia id ig ik is it_CH iu \
        ka kab kg kk kl km kn kok ks ks@devanagari ku kw ky la lb lg li ln lo lt lv \
-       mai mg mhr mi mjw mk ml mn mni mr ms mt my nds ne nl_BE nn nr nso oc om or \
+       mai mg mhr mi mjw mk ml mn mni mr ms mt my nds ne nl_BE nn nr nso oc om or os \
        pa pap ps pt ps quz rm ro \
        sa sat sc sd sd@devanagari se shn si sid sl so sq \
        sr sr@Latn sr@ije sr@ijekavian sr@ijekavianlatin sr@latin ss st sw szl \
@@ -1721,6 +1734,7 @@ fi
 %lang(zh_CN) %{_mandir}/zh_CN/man1/ldd.1*
 %lang(zh_TW) %{_mandir}/zh_TW/man1/ldd.1*
 
+%if %{with crypt}
 %files libcrypt
 %defattr(644,root,root,755)
 %attr(755,root,root) /%{_lib}/libcrypt-%{core_version}.so
@@ -1729,6 +1743,7 @@ fi
 %else
 %attr(755,root,root) %ghost /%{_lib}/libcrypt.so.1
 %endif
+%endif
 
 %files ld
 %defattr(644,root,root,755)
@@ -1756,6 +1771,9 @@ fi
 %attr(755,root,root) /lib/ld-linux-aarch64.so.1
 %attr(755,root,root) /%{_lib}/ld-linux-aarch64.so.1
 %endif
+%ifarch armv6hl
+%attr(755,root,root) /lib/ld-linux-armhf.so.3
+%endif
 %ifnarch %{ix86} sparc sparcv9 sparc64 alpha sh ia64 %{x8664} x32 ppc64 s390x %{arm} aarch64
 %attr(755,root,root) /%{_lib}/ld.so.1
 %endif
@@ -1824,7 +1842,7 @@ fi
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libBrokenLocale.so
 %attr(755,root,root) %{_libdir}/libanl.so
-%attr(755,root,root) %{_libdir}/libcrypt.so
+%{?with_crypt:%attr(755,root,root) %{_libdir}/libcrypt.so}
 %attr(755,root,root) %{_libdir}/libdl.so
 %attr(755,root,root) %{_libdir}/libm.so
 %ifarch %{x8664} x32
@@ -1837,7 +1855,7 @@ fi
 %attr(755,root,root) %{_libdir}/libutil.so
 %{_libdir}/crt[1in].o
 %{_libdir}/[MSgr]crt1.o
-%{_libdir}/grcrt1.o
+%{?with_static_pie:%{_libdir}/grcrt1.o}
 # ld scripts
 %{_libdir}/libc.so
 %{_libdir}/libpthread.so
@@ -1847,7 +1865,7 @@ fi
 %ifarch alpha ppc sparc
 %{_libdir}/libnldbl_nonshared.a
 %endif
-%ifarch %{ix86} %{x8664} x32 ppc ppc64 s390 s390x sparc sparcv9 sparc64 aarch64
+%ifarch %{ix86} %{x8664} x32 ppc ppc64 s390 s390x sparc sparcv9 sparc64 aarch64 armv6hl
 # ABI-dependent headers
 %{_includedir}/gnu/stubs-*.h
 %endif
@@ -1890,14 +1908,16 @@ fi
 %attr(755,root,root) %{_bindir}/sprof
 %attr(755,root,root) %{_bindir}/xtrace
 %{_mandir}/man1/mtrace.1*
+%{_mandir}/man1/sprof.1*
 %lang(ja) %{_mandir}/ja/man1/mtrace.1*
+%lang(ja) %{_mandir}/ja/man1/sprof.1*
+%lang(ru) %{_mandir}/ru/man1/sprof.1*
 
 %files devel-doc
 %defattr(644,root,root,755)
 %doc documentation/*
 %{_infodir}/libc.info*
 
-%{_mandir}/man1/sprof.1*
 %{_mandir}/man3/*
 %{_mandir}/man7/aio.7*
 %{_mandir}/man7/attributes.7*
@@ -1933,7 +1953,6 @@ fi
 %lang(hu) %{_mandir}/hu/man3/*
 %lang(it) %{_mandir}/it/man3/*
 %lang(it) %{_mandir}/it/man7/glob.7*
-%lang(ja) %{_mandir}/ja/man1/sprof.1*
 %lang(ja) %{_mandir}/ja/man3/*
 %lang(ja) %{_mandir}/ja/man7/aio.7*
 %lang(ja) %{_mandir}/ja/man7/complex.7*
@@ -1951,7 +1970,6 @@ fi
 %lang(pl) %{_mandir}/pl/man3/*
 %lang(pt) %{_mandir}/pt/man3/*
 %lang(pt) %{_mandir}/pt/man7/glob.7*
-%lang(ru) %{_mandir}/ru/man1/sprof.1*
 %lang(ru) %{_mandir}/ru/man3/*
 %lang(ru) %{_mandir}/ru/man7/glob.7*
 %lang(tr) %{_mandir}/tr/man3/*
@@ -1966,7 +1984,7 @@ fi
 %{_libdir}/libanl.a
 %{_libdir}/libBrokenLocale.a
 %{_libdir}/libc.a
-%{_libdir}/libcrypt.a
+%{?with_crypt:%{_libdir}/libcrypt.a}
 %{_libdir}/libdl.a
 %{_libdir}/libm.a
 %{_libdir}/libmcheck.a
This page took 0.04699 seconds and 4 git commands to generate.