Name: perl-Crypt-Curve25519
Version: 0.06
Release: 1%{?dist}
Summary: Generate shared secret using elliptic-curve Diffie-Hellman function
License: GPL+ or Artistic
URL: https://metacpan.org/release/Crypt-Curve25519
Source0: https://cpan.metacpan.org/modules/by-module/Crypt/Crypt-Curve25519-%{version}.tar.gz
Patch0: Crypt-Curve25519-0.06-fmul.patch
# Build
BuildRequires: coreutils
BuildRequires: findutils
BuildRequires: gcc
BuildRequires: make
BuildRequires: perl-devel
BuildRequires: perl-generators
BuildRequires: perl-interpreter
BuildRequires: perl(Config)
BuildRequires: perl(ExtUtils::MakeMaker)
# Module
BuildRequires: perl(Carp)
BuildRequires: perl(Exporter)
BuildRequires: perl(strict)
BuildRequires: perl(warnings)
BuildRequires: perl(XSLoader)
# Test Suite
BuildRequires: perl(blib)
BuildRequires: perl(File::Spec)
BuildRequires: perl(IO::Handle)
BuildRequires: perl(IPC::Open3)
BuildRequires: perl(Test::More) >= 0.88
# Runtime
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
%description
Curve25519 is a Diffie-Hellman function suitable for a wide variety of
applications.
Given a user's 32-byte secret key, Curve25519 computes the user's 32-byte
public key. Given the user's 32-byte secret key and another user's 32-byte
public key, Curve25519 computes a 32-byte secret shared by the two users. This
secret can then be used to authenticate and encrypt messages between the two
users.
%prep
%setup -q -n Crypt-Curve25519-%{version}
# Fix compile error with glibc
# https://github.com/ajgb/crypt-curve25519/issues/6 and many others
%patch0
%build
perl Makefile.PL INSTALLDIRS=vendor OPTIMIZE="%{optflags}"
make %{?_smp_mflags}
%install
make pure_install DESTDIR=%{buildroot}
find %{buildroot} -type f -name .packlist -delete
find %{buildroot} -type f -name '*.bs' -empty -delete
%{_fixperms} -c %{buildroot}
%check
make test
%files
%license LICENSE
%doc Changes README
%{perl_vendorarch}/auto/Crypt/
%{perl_vendorarch}/Crypt/
%{_mandir}/man3/Crypt::Curve25519.3*
%changelog
* Fri Mar 4 2022 Paul Howarth <paul@city-fan.org> - 0.06-1
- Initial RPM version