From 9d1f9f0e1c289494b7d602ca1e3bf521e85a5a96 Mon Sep 17 00:00:00 2001
From: Yaroslav Lobankov <y.lobankov@tarantool.org>
Date: Thu, 19 May 2022 22:05:18 +0400
Subject: [PATCH] ci: fix RPM spec to build packages for Fedora 36

In Fedora 36 the default version of the `openssl-devel` package is 3.
But for now Tarantool doesn't work with this version. So this patch
adds a workaround with installation of the `openssl1.1-devel` package
to build rpms and exporting env variable `OPENSSL_CONF=/dev/null` to
pass tests.

See for details: https://github.com/tarantool/tarantool/issues/6477.

NO_DOC=ci
NO_TEST=ci
NO_CHANGELOG=ci
---
 rpm/tarantool.spec | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/rpm/tarantool.spec b/rpm/tarantool.spec
index 84cebb12fb..3366e56fbc 100644
--- a/rpm/tarantool.spec
+++ b/rpm/tarantool.spec
@@ -35,7 +35,14 @@ BuildRequires: gcc-c++ >= 4.5
 BuildRequires: coreutils
 BuildRequires: sed
 BuildRequires: readline-devel
+%if 0%{?fedora} >= 36
+# In Fedora 36 the default version of the openssl-devel package is 3.
+# But for now Tarantool doesn't work with this version. See for details:
+# https://github.com/tarantool/tarantool/issues/6477
+BuildRequires: openssl1.1-devel
+%else
 BuildRequires: openssl-devel
+%endif
 BuildRequires: libicu-devel
 #BuildRequires: msgpuck-devel
 %if 0%{?fedora} > 0
@@ -127,7 +134,14 @@ Requires: /etc/protocols
 Requires: /etc/services
 # Deps for built-in package manager
 # https://github.com/tarantool/tarantool/issues/2612
+%if 0%{?fedora} >= 36
+# In Fedora 36 the default version of the openssl-devel package is 3.
+# But for now Tarantool doesn't work with this version. See for details:
+# https://github.com/tarantool/tarantool/issues/6477
+Requires: openssl1.1
+%else
 Requires: openssl
+%endif
 %if (0%{?fedora} >= 22 || 0%{?rhel} >= 8 || 0%{?sle_version} >= 1500)
 # RHEL <= 7 doesn't support Recommends:
 Recommends: tarantool-devel
@@ -208,7 +222,13 @@ make %{?_smp_mflags}
 rm -rf %{buildroot}%{_datarootdir}/doc/tarantool/
 
 %check
+%if 0%{?fedora} >= 36
+# Workaround to make app/crypto.test.lua and app/digest.test.lua tests work.
+# See for details: https://github.com/tarantool/tarantool/issues/6477
+OPENSSL_CONF=/dev/null make test-force
+%else
 make test-force
+%endif
 
 %pre
 /usr/sbin/groupadd -r tarantool > /dev/null 2>&1 || :
-- 
GitLab