File mingw64-gnutls.spec of Package mingw64-gnutls

#
# spec file for package mingw64-gnutls
#
# Copyright (c) 2014 SUSE LINUX Products 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/
#

%define _with_doc 0
%define realname gnutls

Name:           mingw64-%{realname}
Version:        3.8.9
Release:        0
Summary:        GnuTLS TLS/SSL encryption library
License:        LGPL-3.0-or-later and GPL-3.0-or-later
Group:          Development/Libraries/C and C++
URL:            https://www.gnutls.org/
Source0:        https://www.gnupg.org/ftp/gcrypt/gnutls/v3.8/%{realname}-%{version}.tar.xz
Source1:        https://www.gnupg.org/ftp/gcrypt/gnutls/v3.8/%{realname}-%{version}.tar.xz.sig
Source3:        %name.keyring
#!BuildIgnore: post-build-checks
Patch1:         gnutls-3.5.11-skip-trust-store-tests.patch
Patch2:         gnutls-3.6.14-compile-fix.patch
BuildRequires:  autoconf
BuildRequires:  automake
BuildRequires:  gtk-doc
BuildRequires:  libtool
BuildRequires:  mingw64-cross-binutils
BuildRequires:  mingw64-cross-gcc
BuildRequires:  mingw64-cross-gcc-c++
BuildRequires:  mingw64-cross-pkg-config
BuildRequires:  mingw64-gmp-devel
BuildRequires:  mingw64-libgcrypt-devel
BuildRequires:  mingw64-libgpg-error-devel
BuildRequires:  mingw64-libintl-devel
BuildRequires:  mingw64-libnettle-devel >= 2.5
BuildRequires:  mingw64-libtasn1-devel >= 3.1
BuildRequires:  mingw64-p11-kit-devel
BuildRequires:  mingw64-win_iconv-devel
BuildRequires:  mingw64-zlib-devel
BuildRequires:  xz
Requires:       %{name}-lang = %{version}
%_mingw64_package_header_debug
BuildArch:      noarch
BuildRequires:  makeinfo

%description
GnuTLS is a secure communications library implementing the SSL and TLS protocols and technologies around them.
It provides a simple C language application programming interface (API) to access the secure communications
protocols as well as APIs to parse and write X.509, PKCS #12, OpenPGP and other required structures.

%package -n mingw64-libgnutls30
Summary:        GnuTLS TLS/SSL encryption library
Group:          System/Libraries
Obsoletes:      mingw64-libgnutls < %{version}
Provides:       mingw64-libgnutls = %{version}

%description -n mingw64-libgnutls30
GnuTLS is a secure communications library implementing the SSL and TLS protocols and technologies around them.
It provides a simple C language application programming interface (API) to access the secure communications
protocols as well as APIs to parse and write X.509, PKCS #12, OpenPGP and other required structures.

%package -n mingw64-libgnutlsxx30
Summary:        GnuTLS TLS/SSL encryption library
Group:          System/Libraries
Obsoletes:      mingw64-libgnutlsxx < %{version}
Provides:       mingw64-libgnutlsxx = %{version}

%description -n mingw64-libgnutlsxx30
GnuTLS is a secure communications library implementing the SSL and TLS protocols and technologies around them.
It provides a simple C language application programming interface (API) to access the secure communications
protocols as well as APIs to parse and write X.509, PKCS #12, OpenPGP and other required structures.

%package -n mingw64-libgnutls-openssl27
Summary:        GnuTLS TLS/SSL encryption library
Group:          System/Libraries
Obsoletes:      mingw64-libgnutls-openssl < %{version}
Provides:       mingw64-libgnutls-openssl = %{version}

%description -n mingw64-libgnutls-openssl27
GnuTLS is a secure communications library implementing the SSL and TLS protocols and technologies around them.
It provides a simple C language application programming interface (API) to access the secure communications
protocols as well as APIs to parse and write X.509, PKCS #12, OpenPGP and other required structures.

%package -n mingw64-libgnutls-devel
Summary:        GnuTLS TLS/SSL encryption library
Group:          Development/Libraries/C and C++
Requires:       mingw64(pkg:libtasn1)

%description -n mingw64-libgnutls-devel
MinGW Windows GnuTLS TLS/SSL encryption library development files.

%package -n mingw64-libgnutlsxx-devel
Summary:        GnuTLS TLS/SSL encryption library
Group:          Development/Libraries/C and C++
Requires:       mingw64(pkg:gnutls)

%description -n mingw64-libgnutlsxx-devel
MinGW Windows GnuTLS TLS/SSL encryption library development files.

%package -n mingw64-libgnutls-openssl-devel
Summary:        GnuTLS TLS/SSL encryption library
Group:          Development/Libraries/C and C++
Requires:       mingw64(pkg:gnutls)

%description -n mingw64-libgnutls-openssl-devel
MinGW Windows GnuTLS TLS/SSL encryption library development files.

%_mingw64_debug_package

%lang_package

%prep
%setup -q -n gnutls-%{version}
%autopatch -p1

%build
libtoolize --force --copy --install
autoreconf -fi
echo "lt_cv_deplibs_check_method='pass_all'" >>%{_mingw64_cache}
%{_mingw64_configure} \
  --enable-shared \
  --disable-static \
  --enable-cxx \
%if !%{?_with_doc}  
  --disable-doc \
%endif
  --enable-nls \
  --enable-openssl-compatibility \
  --disable-guile \
  --with-included-libtasn1 \
  --with-included-unistring \
  --with-default-trust-store-file
%{_mingw64_make} %{?_smp_mflags} || %{_mingw64_make}

%install
%{_mingw64_make} DESTDIR=%{buildroot} install

rm -v %{buildroot}%{_mingw64_libdir}/*.def

%find_lang gnutls

# cleanup debug package
find . -type f -name '*.bak' -exec rm {} \;


%files
%{_mingw64_bindir}/certtool.exe
%{_mingw64_bindir}/gnutls-cli.exe
%{_mingw64_bindir}/gnutls-cli-debug.exe
%{_mingw64_bindir}/gnutls-serv.exe
%{_mingw64_bindir}/ocsptool.exe
%{_mingw64_bindir}/p11tool.exe
%{_mingw64_bindir}/psktool.exe
%if %{?_with_doc}
%{_mingw64_mandir}/man1
%endif

%files lang -f gnutls.lang

%files -n mingw64-libgnutls30
%{_mingw64_bindir}/libgnutls-30.dll

%files -n mingw64-libgnutlsxx30
%{_mingw64_bindir}/libgnutlsxx-30.dll

%files -n mingw64-libgnutls-openssl27
%{_mingw64_bindir}/libgnutls-openssl-27.dll

%files -n mingw64-libgnutls-devel
%{_mingw64_includedir}/gnutls
%exclude %{_mingw64_includedir}/gnutls/openssl.h
%exclude %{_mingw64_includedir}/gnutls/gnutlsxx.h
%{_mingw64_libdir}/libgnutls.dll.a
%{_mingw64_libdir}/pkgconfig/gnutls.pc
%if %{?_with_doc}
%{_mingw64_infodir}
%exclude %{_mingw64_infodir}/dir*
%{_mingw64_mandir}/man3
%doc %{_mingw64_docdir}/gnutls
%endif

%files -n mingw64-libgnutlsxx-devel
%{_mingw64_includedir}/gnutls/gnutlsxx.h
%{_mingw64_libdir}/libgnutlsxx.dll.a

%files -n mingw64-libgnutls-openssl-devel
%{_mingw64_includedir}/gnutls/openssl.h
%{_mingw64_libdir}/libgnutls-openssl.dll.a

%changelog
openSUSE Build Service is sponsored by