Blob Blame History Raw
# generated by cabal-rpm-2.1.5
# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/

%global pkg_name HsOpenSSL
%global pkgver %{pkg_name}-%{version}

%bcond_without tests

Name:           ghc-%{pkg_name}
Version:        0.11.7.6
Release:        %autorelease
Summary:        Partial OpenSSL binding for Haskell

# see also the ChangeLog entry for 2013-11-07
License:        CC0-1.0
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-bytestring-devel
BuildRequires:  ghc-network-devel
BuildRequires:  ghc-time-devel
%if %{with ghc_prof}
BuildRequires:  ghc-base-prof
BuildRequires:  ghc-bytestring-prof
BuildRequires:  ghc-network-prof
BuildRequires:  ghc-time-prof
%endif
BuildRequires:  openssl-devel
# End cabal-rpm deps

%description
HsOpenSSL is an OpenSSL binding for Haskell. It can generate RSA and DSA keys,
read and write PEM files, generate message digests, sign and verify messages,
encrypt and decrypt messages. It has also some capabilities of creating SSL
clients and servers.

This package is in production use by a number of Haskell based systems and stable.


%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}
# Begin cabal-rpm deps:
Requires:       openssl-devel%{?_isa}
# End cabal-rpm deps

%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
# https://github.com/haskell-cryptography/HsOpenSSL/issues/88
%define cabal_configure_options --ghc-option="-optc=-Wno-incompatible-pointer-types"
# Begin cabal-rpm build:
%ghc_lib_build
# End cabal-rpm build


%install
# Begin cabal-rpm install
%ghc_lib_install
# End cabal-rpm install


%check
%if %{with tests}
%cabal_test
%endif


%files -f %{name}.files
# Begin cabal-rpm files:
%license COPYING
# End cabal-rpm files


%files devel -f %{name}-devel.files
%doc AUTHORS ChangeLog README.md examples


%if %{with haddock}
%files doc -f %{name}-doc.files
%license COPYING
%endif


%if %{with ghc_prof}
%files prof -f %{name}-prof.files
%endif


%changelog
%autochangelog