The package rpms/tdlib.git has added or updated architecture specific content in its spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s): https://src.fedoraproject.org/cgit/rpms/tdlib.git/commit/?id=544ef84b46ccbed....
Change: +ExclusiveArch: %{ix86} x86_64
Thanks.
Full change: ============
commit 544ef84b46ccbed6afb2534cba31a36f22a2adc0 Author: Vitaly Zaitsev vitaly@easycoding.org Date: Mon Sep 17 15:51:13 2018 +0200
Initial SPEC upload.
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..dff6816 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/tdlib-1.3.0.tar.gz diff --git a/sources b/sources new file mode 100644 index 0000000..4130be5 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (tdlib-1.3.0.tar.gz) = d69a0d0821e4d06b2d15c1eab15b6a2f374a022eecebe9f9fc7e8115213cc6f26fd1ff8dd72b77d469f10cb62548c326516b1b3cdf9a8164aae071cda0490c67 diff --git a/tdlib-system-crypto.patch b/tdlib-system-crypto.patch new file mode 100644 index 0000000..b70053a --- /dev/null +++ b/tdlib-system-crypto.patch @@ -0,0 +1,28 @@ +From 9da7dffcb048e409b51faadbae241cbd8d5ea165 Mon Sep 17 00:00:00 2001 +From: Vitaly Zaitsev vitaly@easycoding.org +Date: Mon, 17 Sep 2018 00:55:54 +0200 +Subject: [PATCH] Use system-wide crypto policies. + +More information: https://fedoraproject.org/wiki/Packaging:CryptoPolicies + +Signed-off-by: Vitaly Zaitsev vitaly@easycoding.org +--- + tdnet/td/net/SslStream.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tdnet/td/net/SslStream.cpp b/tdnet/td/net/SslStream.cpp +index 64f7a9c..c04c44e 100644 +--- a/tdnet/td/net/SslStream.cpp ++++ b/tdnet/td/net/SslStream.cpp +@@ -295,7 +295,7 @@ class SslStreamImpl { + + // TODO(now): cipher list + string cipher_list; +- if (SSL_CTX_set_cipher_list(ssl_ctx, cipher_list.empty() ? "DEFAULT" : cipher_list.c_str()) == 0) { ++ if (SSL_CTX_set_cipher_list(ssl_ctx, cipher_list.empty() ? "PROFILE=SYSTEM" : cipher_list.c_str()) == 0) { + return create_openssl_error(-9, PSLICE() << "Failed to set cipher list "" << cipher_list << '"'); + } + +-- +2.17.1 + diff --git a/tdlib.spec b/tdlib.spec new file mode 100644 index 0000000..571d81f --- /dev/null +++ b/tdlib.spec @@ -0,0 +1,102 @@ +# Enable or disable clang compiler... +%global clang 0 + +# Applying workaround to RHBZ#1559007... +%if 0%{?clang} +%global optflags %(echo %{optflags} | sed -e 's/-mcet//g' -e 's/-fcf-protection//g') +%endif + +Name: tdlib +Version: 1.3.0 +Release: 2%{?dist} +Summary: Cross-platform library for building Telegram clients + +License: Boost +URL: https://github.com/%%7Bname%7D/td +Source0: %{url}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz +Patch0: %{name}-system-crypto.patch + +BuildRequires: gperftools-devel +BuildRequires: openssl-devel +BuildRequires: ninja-build +BuildRequires: gcc-c++ +BuildRequires: gperf +BuildRequires: cmake +BuildRequires: gcc + +%if 0%{?clang} +BuildRequires: clang +BuildRequires: llvm +%endif + +# Building with default settings require at least 16 GB of free RAM. +# Builds on ARM and other low-memory architectures are failing. +ExclusiveArch: %{ix86} x86_64 + +%description +TDLib (Telegram Database library) is a cross-platform library for +building Telegram clients. It can be easily used from almost any +programming language. + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + +%package static +Summary: Static libraries for %{name} +Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: %{name}-devel%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} + +%description devel +%{summary}. + +%description static +%{summary}. + +%prep +%autosetup -n td-%{version} -p1 +mkdir -p %{_target_platform} + +# Adding missing SOVERSION for shared libraries... +echo "set_property(TARGET tdclient PROPERTY SOVERSION 1)" >> CMakeLists.txt +echo "set_property(TARGET tdjson PROPERTY SOVERSION 1)" >> CMakeLists.txt + +# Patching LIBDIR path... +sed -e 's@DESTINATION lib@DESTINATION %{_lib}@g' -e 's@lib/@%{_lib}/@g' -i CMakeLists.txt +sed -i 's@DESTINATION lib@DESTINATION %{_lib}@g' {sqlite,tdactor,tddb,tdnet,tdutils}/CMakeLists.txt + +%build +%if 0%{?clang} +export CC=clang +export CXX=clang++ +%endif + +pushd %{_target_platform} + %cmake -G Ninja \ + -DCMAKE_BUILD_TYPE=Release \ + .. +popd +%ninja_build -C %{_target_platform} + +%install +%ninja_install -C %{_target_platform} + +%files +%license LICENSE_1_0.txt +%doc README.md CHANGELOG.md +%{_libdir}/libtd*.so.1* + +%files devel +%{_includedir}/td +%{_libdir}/libtd*.so +%{_libdir}/cmake/Td + +%files static +%{_libdir}/libtd*.a + +%changelog +* Sun Sep 16 2018 Vitaly Zaitsev vitaly@easycoding.org - 1.3.0-2 +- Fixed issue with crypto policies. + +* Sat Sep 15 2018 Vitaly Zaitsev vitaly@easycoding.org - 1.3.0-1 +- Initial SPEC release.