# generated by cabal-rpm-2.1.0 # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ %global pkg_name cipher-aes %global pkgver %{pkg_name}-%{version} # testsuite missing deps: crypto-cipher-tests test-framework test-framework-quickcheck2 Name: ghc-%{pkg_name} Version: 0.2.11 Release: %autorelease Summary: Fast AES cipher implementation with advanced mode of operations License: BSD-3-Clause Url: https://hackage.haskell.org/package/%{pkg_name} # Begin cabal-rpm sources: Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz # End cabal-rpm sources # Begin cabal-rpm deps: BuildRequires: ghc-Cabal-devel BuildRequires: ghc-rpm-macros BuildRequires: ghc-base-devel BuildRequires: ghc-byteable-devel BuildRequires: ghc-bytestring-devel BuildRequires: ghc-crypto-cipher-types-devel BuildRequires: ghc-securemem-devel %if %{with ghc_prof} BuildRequires: ghc-base-prof BuildRequires: ghc-byteable-prof BuildRequires: ghc-bytestring-prof BuildRequires: ghc-crypto-cipher-types-prof BuildRequires: ghc-securemem-prof %endif # End cabal-rpm deps %description Fast AES cipher implementation with advanced mode of operations. The modes of operations available are ECB (Electronic code book), CBC (Cipher block chaining), CTR (Counter), XTS (XEX with ciphertext stealing), GCM (Galois Counter Mode). The AES implementation uses AES-NI when available (on x86 and x86-64 architecture), but fallback gracefully to a software C implementation. The software implementation uses S-Boxes, which might suffer for cache timing issues. However do notes that most other known software implementations, including very popular one (openssl, gnutls) also uses similar implementation. If it matters for your case, you should make sure you have AES-NI available, or you'll need to use a different implementation. %package devel Summary: Haskell %{pkg_name} library development files Provides: %{name}-static = %{version}-%{release} Provides: %{name}-static%{?_isa} = %{version}-%{release} %if %{defined ghc_version} Requires: ghc-compiler = %{ghc_version} %endif Requires: %{name}%{?_isa} = %{version}-%{release} %description devel This package provides the Haskell %{pkg_name} library development files. %if %{with haddock} %package doc Summary: Haskell %{pkg_name} library documentation BuildArch: noarch Requires: ghc-filesystem %description doc This package provides the Haskell %{pkg_name} library documentation. %endif %if %{with ghc_prof} %package prof Summary: Haskell %{pkg_name} profiling library Requires: %{name}-devel%{?_isa} = %{version}-%{release} Supplements: (%{name}-devel and ghc-prof) %description prof This package provides the Haskell %{pkg_name} profiling library. %endif %prep # Begin cabal-rpm setup: %setup -q -n %{pkgver} # End cabal-rpm setup %build # Begin cabal-rpm build: %ghc_lib_build # End cabal-rpm build %install # Begin cabal-rpm install %ghc_lib_install # End cabal-rpm install %files -f %{name}.files # Begin cabal-rpm files: %license LICENSE # End cabal-rpm files %files devel -f %{name}-devel.files %if %{with haddock} %files doc -f %{name}-doc.files %license LICENSE %endif %if %{with ghc_prof} %files prof -f %{name}-prof.files %endif %changelog %autochangelog