File aws-lc.spec of Package aws-lc
#
# spec file for package aws-lc
#
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define sover 0
%define __builder ninja
Name: aws-lc
Version: 1.59.0
Release: 0
Summary: Checksums package for AWS SDK for C
License: Apache-2.0
URL: https://github.com/aws/aws-lc
Source0: %{name}-%{version}.tar.gz
Source1: vendor.tar.gz
# integration test needs internet
Patch0: disable-integrationtest.patch
Patch1: vendor-fix.patch
BuildRequires: clang
BuildRequires: cmake >= 3.5
BuildRequires: fdupes
BuildRequires: go
BuildRequires: libstdc++-devel
BuildRequires: llvm-gold
BuildRequires: ninja
BuildRequires: cmake(aws-c-common)
BuildRequires: pkgconfig(libunwind)
Conflicts: libressl
Conflicts: openssl
ExcludeArch: %{arm}
%description
Core c99 package for AWS SDK for C. Includes cross-platform primitives,
configuration, data structures, and error handling.
%package devel
Summary: AWS-LC development headers
Requires: libcrypto-awslc%{sover} = %{version}
Requires: libssl-awslc%{sover} = %{version}
Conflicts: libopenssl-3-devel
Conflicts: libressl-devel
%description devel
AWS-LC is a general-purpose cryptographic library maintained by the AWS
Cryptography team for AWS and their customers. It іs based on code from the
Google BoringSSL project and the OpenSSL project.
%package -n libssl-awslc%{sover}
Summary: Library file for %{name}
%description -n libssl-awslc%{sover}
%{summary}.
%package -n libcrypto-awslc%{sover}
Summary: Crypto library for %{name}
%description -n libcrypto-awslc%{sover}
%{summary}.
%package benchmark
Summary: Benchmarktool for %{name}
%description benchmark
%{summary}.
%prep
%autosetup -a1 -p1
%build
%cmake -DCMAKE_C_FLAGS="-Wno-error=unused-variable -Wno-error=stringop-overflow=" -DENABLE_PRE_SONAME_BUILD=0
%cmake_build
%install
%cmake_install
%fdupes %{buildroot}
# fix shebang
sed -i 's|/usr/bin/env bash|/usr/bin/bash|g' %{buildroot}%{_bindir}/c_rehash
%ldconfig_scriptlets -n libssl-awslc%{sover}
%ldconfig_scriptlets -n libcrypto-awslc%{sover}
%check
%ninja_build -C build run_tests
%files
%{_bindir}/openssl
%{_bindir}/c_rehash
%files benchmark
%{_bindir}/bssl
%files devel
%dir %{_libdir}/crypto
%dir %{_libdir}/ssl
%{_includedir}/openssl
%{_libdir}/crypto/cmake
%{_libdir}/libcrypto.so
%{_libdir}/libssl.so
%{_libdir}/pkgconfig/libcrypto.pc
%{_libdir}/pkgconfig/libssl.pc
%{_libdir}/pkgconfig/openssl.pc
%{_libdir}/ssl/cmake/
%files -n libssl-awslc%{sover}
%{_libdir}/libssl-awslc.so.%{sover}
%{_libdir}/libssl-awslc.so.%{version}
%files -n libcrypto-awslc%{sover}
%{_libdir}/libcrypto-awslc.so.%{sover}
%{_libdir}/libcrypto-awslc.so.%{version}
%changelog