From a00e8887d9fb0b8597ac7db0042e5d81baf54e18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Tue, 19 Feb 2019 13:07:20 +0100 Subject: [PATCH] Update Obsoletes, Provides, and Requires to glibc 2.27 --- libxcrypt.spec | 48 +++++++++++++++++++++++++++++------------------- 1 file changed, 29 insertions(+), 19 deletions(-) diff --git a/libxcrypt.spec b/libxcrypt.spec index 9453f7a..5b43cc9 100644 --- a/libxcrypt.spec +++ b/libxcrypt.spec @@ -58,6 +58,10 @@ %endif +# First version of glibc built without libcrypt. +%global glibc_minver 2.27 + + # Hash methods and API supported by libcrypt. # NEVER EVER touch this, if you do NOT know what you are doing! %global hash_methods all @@ -143,7 +147,7 @@ fi \ Name: libxcrypt Version: 4.4.3 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Extended crypt library for descrypt, md5crypt, bcrypt, and others # For explicit license breakdown, see the @@ -167,30 +171,31 @@ BuildRequires: valgrind %endif # We do not need to keep this forever. -%if (0%{?fedora} && 0%{?fedora} <= 31) || (0%{?rhel} && 0%{?rhel} <= 10) +%if !(0%{?fedora} > 31 || 0%{?rhel} > 10) # Inherited from former libcrypt package. -Obsoletes: libcrypt-nss <= 2.26.9000-33 -Provides: libcrypt-nss == 2.26.9000-34 +Obsoletes: libcrypt-nss < %{glibc_minver} +Provides: libcrypt-nss = %{glibc_minver} +Provides: libcrypt-nss%{?_isa} = %{glibc_minver} # Obsolete former libcrypt properly and provide a virtual libcrypt # package as it has been done by the former packages, which were # built by glibc before. -Obsoletes: libcrypt <= 2.26.9000-46 -Provides: libcrypt == 2.26.9000-47 -Provides: libcrypt%{?_isa} == 2.26.9000-47 +Obsoletes: libcrypt < %{glibc_minver} +Provides: libcrypt = %{glibc_minver} +Provides: libcrypt%{?_isa} = %{glibc_minver} # Obsolete former libxcrypt-common properly. -Obsoletes: %{name}-common < 4.3.3-4 -Provides: %{name}-common == %{version}-%{release} - -# We need a version of glibc, that doesn't build libcrypt anymore. -Requires: glibc%{?_isa} >= 2.26.9000-46 +Obsoletes: %{name}-common < 4.3.3-4 +Provides: %{name}-common = %{version}-%{release} %endif %if %{with new_api} && %{without compat_pkg} -Obsoletes: %{name}-compat <= %{version}-%{release} +Obsoletes: %{name}-compat < %{version}-%{release} %endif +# We need a version of glibc, that doesn't build libcrypt anymore. +Requires: glibc%{?_isa} > %{glibc_minver} + %if 0%{?fedora} >= 30 Recommends: mkpasswd %endif @@ -226,7 +231,8 @@ that have been provided by glibc's libcrypt.so.1. %package compat Summary: Compatibility library providing legacy API functions -Requires: %{name}%{?_isa} == %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: glibc%{?_isa} > %{glibc_minver} %description compat This package contains the library providing the compatibility API @@ -244,10 +250,10 @@ work unmodified with the library supplied by this package. %package devel Summary: Development files for %{name} -Conflicts: man-pages < 4.15-3 +Conflicts: man-pages < 4.15-3 -Requires: %{name}%{?_isa} == %{version}-%{release} -Requires: glibc-devel%{?_isa} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: glibc-devel%{?_isa} > %{glibc_minver} %description devel The %{name}-devel package contains libraries and header files for @@ -258,8 +264,9 @@ developing applications that use %{name}. %package static Summary: Static library for -static linking with %{name} -Requires: %{name}-devel%{?_isa} == %{version}-%{release} -Requires: glibc-static%{?_isa} +Requires: %{name}-devel%{?_isa} = %{version}-%{release} +Requires: glibc-devel%{?_isa} > %{glibc_minver} +Requires: glibc-static%{?_isa} > %{glibc_minver} %description static This package contains the libxcrypt static library for -static @@ -461,6 +468,9 @@ done %changelog +* Tue Feb 19 2019 Björn Esser - 4.4.3-8 +- Update Obsoletes, Provides, and Requires to glibc 2.27 + * Tue Feb 19 2019 Björn Esser - 4.4.3-7 - Add patch to fix the output formatting of a test