liboqs/liboqs.spec
Marcus Meissner 7a3705cf7f Accepting request 1230160 from home:msmeissn:branches:devel:libraries:c_c++
- Updated to 0.12.0:
  - This release updates the ML-DSA implementation to the [final
    FIPS 204](https://csrc.nist.gov/pubs/fips/204/final) version. This
    release still includes the NIST Round 3 version of Dilithium for
    interoperability purposes, but we plan to remove Dilithium Round 3 in
    a future release.
  - This will be the last release of liboqs to include Kyber (that is,
    the NIST Round 3 version of Kyber, prior to its standardization by NIST
    as ML-KEM in FIPS 203). Applications should switch to ML-KEM (FIPS 203).
  - The addition of ML-DSA FIPS 204 final version to liboqs has
    introduced a new signature API which includes a context string
    parameter. We are planning to remove the old version of the API
    without a context string in the next release to streamline the
    API and bring it in line with NIST specifications. Users who
    have an opinion on this removal are invited to provide input at
    https://github.com/open-quantum-safe/liboqs/issues/2001.
  Security issues:
  - CVE-2024-54137: Fixed bug in HQC decapsulation that leads to incorrect
    shared secret value during decapsulation when called with an invalid
    ciphertext. (bsc#1234292)

OBS-URL: https://build.opensuse.org/request/show/1230160
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/liboqs?expand=0&rev=27
2024-12-11 16:00:31 +00:00

104 lines
3.1 KiB
RPMSpec

#
# spec file for package liboqs
#
# Copyright (c) 2024 SUSE LLC
#
# 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/
#
Name: liboqs
Version: 0.12.0
Release: 0
Summary: C library for quantum-resistant cryptographic algorithms
License: MIT
Group: Productivity/Security
URL: https://github.com/open-quantum-safe/liboqs/
Source: https://github.com/open-quantum-safe/liboqs/archive/refs/tags/%{version}.tar.gz
Source1: baselibs.conf
Patch0: liboqs-fix-build.patch
Patch1: liboqs-fix-prototypemismatch.patch
BuildRequires: cmake
BuildRequires: doxygen
BuildRequires: libopenssl-devel
%description
liboqs is a C library for quantum-resistant cryptographic algorithms.
See the bundled README.md for particular limitations on intended use.
%package -n liboqs7
Summary: C library for quantum-resistant cryptographic algorithms
Group: System/Libraries
%description -n liboqs7
liboqs is a C library for quantum-resistant cryptographic algorithms.
See the bundled README.md for particular limitations on intended use.
%package devel
Summary: Headers for liboqs, a library for quantum-resistant cryptography
Group: Development/Languages/C and C++
Requires: liboqs7 = %{version}
%description devel
liboqs is a C library for quantum-resistant cryptographic algorithms.
See the bundled README.md for particular limitations on intended use.
%prep
%autosetup -p1
%build
export RPM_OPT_FLAGS="%{optflags} -std=gnu11"
# 20220702: The %%cmake macro can't be used because a 'CMakeLists.txt' folder
# exists
cmake -S . -B build -DBUILD_SHARED_LIBS:BOOL=ON -DOQS_DIST_BUILD:BOOL=ON
pushd build
%cmake_build
popd
%install
%cmake_install
# need to find out what cmake option is needed
mv %{buildroot}%{_prefix}/local/* %{buildroot}%{_prefix}
#if [ "%{_lib}" != "lib" ]; then
# mv %{buildroot}%{_prefix}/lib %{buildroot}%{_libdir}
#fi
rmdir %{buildroot}%{_prefix}/local/
%post -n liboqs7 -p /sbin/ldconfig
%postun -n liboqs7 -p /sbin/ldconfig
%files -n liboqs7
%license LICENSE.txt
%{_libdir}/liboqs.so.%version
%{_libdir}/liboqs.so.7
%doc README.md
%files devel
%license LICENSE.txt
%dir %{_includedir}/oqs
%{_includedir}/oqs/*
%{_libdir}/liboqs.so
%{_libdir}/pkgconfig/liboqs.pc
%dir %{_libdir}/cmake/
%dir %{_libdir}/cmake/liboqs/
%{_libdir}/cmake/liboqs/liboqsTargets-noconfig.cmake
%{_libdir}/cmake/liboqs/liboqsTargets.cmake
%{_libdir}/cmake/liboqs/liboqsConfig.cmake
%{_libdir}/cmake/liboqs/liboqsConfigVersion.cmake
%changelog