## START: Set by rpmautospec ## (rpmautospec version 0.7.2) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec Name: bearssl Version: 0.6 Release: %{autorelease} Summary: A C implementation of the SSL/TLS protocol (RFC 5246) License: MIT URL: https://www.bearssl.org Source: %{name}-%{version}-clean.tar.gz # Distributed source includes a binary which should be removed # This cleans up code from %{url}/%{name}-%{version}.tar.gz Source: prepare.sh Patch: soname.patch Patch: man-pages.patch BuildRequires: doxygen BuildRequires: gcc %description BearSSL is an implementation of the SSL/TLS protocol (RFC 5246) written in C. It aims at offering the following features: - Be correct and secure. In particular, insecure protocol versions and choices of algorithms are not supported, by design; cryptographic algorithm implementations are constant-time by default. - Be small, both in RAM and code footprint. For instance, a minimal server implementation may fit in about 20 kilobytes of compiled code and 25 kilobytes of RAM. - Be highly portable. BearSSL targets not only “big” operating systems like Linux and Windows, but also small embedded systems and even special contexts like bootstrap code. - Be feature-rich and extensible. SSL/TLS has many defined cipher suites and extensions; BearSSL should implement most of them, and allow extra algorithm implementations to be added afterwards, possibly from third parties. %package devel Summary: %{summary} Requires: %{name}%{?_isa} = %{version}-%{release} %description devel Development files for bearssl. %package static Summary: %{summary} Requires: %{name}-devel%{?_isa} = %{version}-%{release} %description static Static bearssl library. %prep %autosetup -p 1 %build # Use Fedora build flags sed -i "s|CFLAGS = -W -Wall -Os -fPIC|CFLAGS = ${CFLAGS} -fPIC|g" conf/Unix.mk sed -i "s|LDFLAGS = |LDFLAGS = ${LDFLAGS}|g" conf/Unix.mk %make_build # Build documentation doxygen %install mkdir -p %{buildroot}%{_bindir} install -m 755 build/brssl %{buildroot}%{_bindir} mkdir -p %{buildroot}%{_includedir}/bearssl install -m 644 inc/*.h %{buildroot}%{_includedir}/bearssl/ mkdir -p %{buildroot}%{_mandir}/man3/ install -m 644 apidoc/man/man3/*.3 %{buildroot}%{_mandir}/man3/ mkdir -p %{buildroot}%{_libdir} install -m 644 build/libbearssl.a %{buildroot}%{_libdir} install -m 755 build/libbearssl.so.0.0.6 %{buildroot}%{_libdir} pushd %{buildroot}%{_libdir} ln -s libbearssl.so.0.0.6 libbearssl.so.0 ln -s libbearssl.so.0 libbearssl.so popd %check build/testcrypto all build/testx509 %files %license LICENSE.txt %doc README.txt %{_bindir}/brssl %{_libdir}/libbearssl.so.0.* %files devel %dir %{_includedir}/bearssl %{_includedir}/bearssl/*.h %{_libdir}/libbearssl.so %{_libdir}/libbearssl.so.0 %{_mandir}/man3/*.3* %files static %{_libdir}/libbearssl.a %changelog ## START: Generated by rpmautospec * Tue Nov 12 2024 John Doe - 0.6-1 - Uncommitted changes ## END: Generated by rpmautospec