File libpqcrypto.spec of Package libpqcrypto
#
# spec file for package leancrypto
#
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#
Name: libpqcrypto
# https://libpqcrypto.org/libpqcrypto-latest-version.txt
Version: 20180314
Release: 0
Summary: Cryptographic software library produced by the PQCRYPTO project
License: MIT
Group: Productivity/Security
Url: https://libpqcrypto.org/
Source: https://libpqcrypto.org/libpqcrypto-%version.tar.gz
Patch0: libpqcrypto-shortertimeouts.patch
Patch1: libpqcrypto-gnu-stack.patch
Patch2: libpqcrypto-generic-compiler.patch
BuildRequires: libopenssl-devel
BuildRequires: gmp-devel
BuildRequires: clang
BuildRequires: python3
%description
libpqcrypto is a cryptographic software library with software from
the PQCRYPTO NIST proposals.
%package -n libpqcrypto1
Summary: Cryptographic software library produced by the PQCRYPTO project
Group: System/Libraries
Provides: %{name} = %{version}-%{release}
Obsoletes: %{name} < %{version}-%{release}
%description -n libpqcrypto1
libpqcrypto is a cryptographic software library with software from
the PQCRYPTO NIST proposals, with:
- BIG QUAKE: crypto_kem_bigquake{1,3,5}
- Classic McEliece: crypto_kem_mceliece{6960119,8192128}
- CRYSTALS-DILITHIUM: crypto_sign_dilithium{2,3,4}
- CRYSTALS-KYBER: crypto_kem_kyber{512,768,1024}
- DAGS: crypto_kem_dags{3,5}
- FrodoKEM: crypto_kem_frodokem{640,976}
- Gui: crypto_sign_gui{184,312,448}
- KINDI: crypto_kem_kindi{256342,256522,512222,512241,512321}
- LUOV: crypto_sign_luov{863256,890351,8117404,4849242,6468330,8086399}
- MQDSS: crypto_sign_mqdss{48,64}
- NewHope: crypto_kem_newhope{512,1024}cca
- NTRU-HRSS-KEM: crypto_kem_ntruhrss701
- NTRU Prime: crypto_kem_{ntrulpr,sntrup}4591761
- Picnic: crypto_sign_picnicl{1,3,5}{fs,ur}
- qTESLA: crypto_sign_qtesla{128,192,256}
- Rainbow: crypto_sign_rainbow{1a,1b,1c,3b,3c,4a,5c,6a,6b}
- Ramstake: crypto_kem_ramstakers{216091,756839}
- SABER: crypto_kem_{firesaber,lightsaber,saber}
- SPHINCS+: crypto_sign_sphincs{f,s}{128,192,256}{haraka,sha256,shake256}
libpqcrypto integrates some symmetric-crypto software from SUPERCOP,
including AES-256-CTR, Salsa20-256, ChaCha20-256, Poly1305, SHA-512,
portions of Keccak, and SHAKE256.
This is the shared library of the pqcrypto package.
%package devel
Summary: Cryptographic software library produced by the PQCRYPTO project
Group: Development/Languages/C and C++
Requires: libpqcrypto1 = %{version}
%description devel
libpqcrypto is a cryptographic software library with software from
the PQCRYPTO NIST proposals.
%package examples
Summary: Examples for the library produced by the PQCRYPTO project
Group: Development/Languages/C and C++
Requires: libpqcrypto1 = %{version}
%description examples
libpqcrypto is a cryptographic software library with software from
the PQCRYPTO NIST proposals.
This packages contain example tools using the library.
%prep
%autosetup -p1
%build
./do
%install
find -ls
mkdir %buildroot/usr
mkdir %buildroot/%_libdir
mkdir %buildroot/%_libdir/%name
mv link-install/run-20180314/*/include %buildroot/usr
mv link-install/run-20180314/*/lib/0/lib* %buildroot/%_libdir
#mv link-install/run-20180314/*/command/* %buildroot/%_libdir/%name
%post -n libpqcrypto1 -p /sbin/ldconfig
%postun -n libpqcrypto1 -p /sbin/ldconfig
%files -n libpqcrypto1
/%{_libdir}/libpqcrypto.so.1
%files devel
%{_includedir}/*
/%{_libdir}/libpqcrypto.so
/%{_libdir}/libpqcrypto.a
#files examples
#dir /%{_libdir}/%name
#/%{_libdir}/%name/*
%changelog