Initial MinGW package support
Merge the mingw-gnutls package into the native one.
This commit is contained in:
parent
9ba1f58c0f
commit
86c02ce9dc
129
gnutls.spec
129
gnutls.spec
@ -74,6 +74,22 @@ BuildRequires: unbound-devel unbound-libs
|
|||||||
BuildRequires: guile22-devel
|
BuildRequires: guile22-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: make gtk-doc
|
BuildRequires: make gtk-doc
|
||||||
|
BuildRequires: mingw32-filesystem >= 95
|
||||||
|
BuildRequires: mingw32-gcc
|
||||||
|
BuildRequires: mingw32-gcc-c++
|
||||||
|
BuildRequires: mingw32-libtasn1 >= 4.3
|
||||||
|
BuildRequires: mingw32-readline
|
||||||
|
BuildRequires: mingw32-zlib
|
||||||
|
BuildRequires: mingw32-p11-kit >= 0.23.1
|
||||||
|
BuildRequires: mingw32-nettle >= 3.6
|
||||||
|
BuildRequires: mingw64-filesystem >= 95
|
||||||
|
BuildRequires: mingw64-gcc
|
||||||
|
BuildRequires: mingw64-gcc-c++
|
||||||
|
BuildRequires: mingw64-libtasn1 >= 4.3
|
||||||
|
BuildRequires: mingw64-readline
|
||||||
|
BuildRequires: mingw64-zlib
|
||||||
|
BuildRequires: mingw64-p11-kit >= 0.23.1
|
||||||
|
BuildRequires: mingw64-nettle >= 3.6
|
||||||
URL: http://www.gnutls.org/
|
URL: http://www.gnutls.org/
|
||||||
%define short_version %(echo %{version} | grep -m1 -o "[0-9]*\.[0-9]*" | head -1)
|
%define short_version %(echo %{version} | grep -m1 -o "[0-9]*\.[0-9]*" | head -1)
|
||||||
Source0: https://www.gnupg.org/ftp/gcrypt/gnutls/v%{short_version}/%{name}-%{version}.tar.xz
|
Source0: https://www.gnupg.org/ftp/gcrypt/gnutls/v%{short_version}/%{name}-%{version}.tar.xz
|
||||||
@ -170,6 +186,28 @@ other required structures.
|
|||||||
This package contains Guile bindings for the library.
|
This package contains Guile bindings for the library.
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
# Win32
|
||||||
|
%package -n mingw32-%{name}
|
||||||
|
Summary: MinGW GnuTLS TLS/SSL encryption library
|
||||||
|
Requires: pkgconfig
|
||||||
|
Requires: mingw32-libtasn1 >= 4.3
|
||||||
|
|
||||||
|
%description -n mingw32-gnutls
|
||||||
|
GnuTLS TLS/SSL encryption library. This library is cross-compiled
|
||||||
|
for MinGW.
|
||||||
|
|
||||||
|
# Win64
|
||||||
|
%package -n mingw64-%{name}
|
||||||
|
Summary: MinGW GnuTLS TLS/SSL encryption library
|
||||||
|
Requires: pkgconfig
|
||||||
|
Requires: mingw64-libtasn1 >= 4.3
|
||||||
|
|
||||||
|
%description -n mingw64-gnutls
|
||||||
|
GnuTLS TLS/SSL encryption library. This library is cross-compiled
|
||||||
|
for MinGW.
|
||||||
|
|
||||||
|
%{?mingw_debug_package}
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
|
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
|
||||||
|
|
||||||
@ -204,6 +242,9 @@ eval $(sed -n 's/^\(\(NAME\|VERSION_ID\)=.*\)/OS_\1/p' /etc/os-release)
|
|||||||
export FIPS_MODULE_NAME="$OS_NAME ${OS_VERSION_ID%%.*} %name"
|
export FIPS_MODULE_NAME="$OS_NAME ${OS_VERSION_ID%%.*} %name"
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
mkdir native_build
|
||||||
|
pushd native_build
|
||||||
|
%global _configure ../configure
|
||||||
%configure \
|
%configure \
|
||||||
%if %{with fips}
|
%if %{with fips}
|
||||||
--enable-fips140-mode \
|
--enable-fips140-mode \
|
||||||
@ -254,9 +295,31 @@ export FIPS_MODULE_NAME="$OS_NAME ${OS_VERSION_ID%%.*} %name"
|
|||||||
--with-default-priority-string="@SYSTEM"
|
--with-default-priority-string="@SYSTEM"
|
||||||
|
|
||||||
%make_build
|
%make_build
|
||||||
|
popd
|
||||||
|
|
||||||
|
# MinGW does not support CCASFLAGS
|
||||||
|
export CCASFLAGS=""
|
||||||
|
%mingw_configure \
|
||||||
|
--enable-sha1-support \
|
||||||
|
--disable-static \
|
||||||
|
--disable-openssl-compatibility \
|
||||||
|
--disable-non-suiteb-curves \
|
||||||
|
--disable-guile \
|
||||||
|
--disable-libdane \
|
||||||
|
--disable-rpath \
|
||||||
|
--disable-nls \
|
||||||
|
--disable-cxx \
|
||||||
|
--enable-local-libopts \
|
||||||
|
--enable-shared \
|
||||||
|
--without-tpm \
|
||||||
|
--with-included-unistring \
|
||||||
|
--disable-doc \
|
||||||
|
--with-default-priority-string="@SYSTEM"
|
||||||
|
%mingw_make %{?_smp_mflags}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%make_install
|
%make_install -C native_build
|
||||||
|
pushd native_build
|
||||||
make -C doc install-html DESTDIR=$RPM_BUILD_ROOT
|
make -C doc install-html DESTDIR=$RPM_BUILD_ROOT
|
||||||
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
||||||
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
|
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
|
||||||
@ -283,13 +346,43 @@ sed -i "s^$RPM_BUILD_ROOT/usr^^" $RPM_BUILD_ROOT%{_libdir}/.gnutls.hmac
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%find_lang gnutls
|
%find_lang gnutls
|
||||||
|
popd
|
||||||
|
|
||||||
|
%mingw_make_install
|
||||||
|
|
||||||
|
# Remove .la files
|
||||||
|
rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/*.la
|
||||||
|
rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/*.la
|
||||||
|
|
||||||
|
# The .def files aren't interesting for other binaries
|
||||||
|
rm -f $RPM_BUILD_ROOT%{mingw32_bindir}/*.def
|
||||||
|
rm -f $RPM_BUILD_ROOT%{mingw64_bindir}/*.def
|
||||||
|
|
||||||
|
# Remove info and man pages which duplicate stuff in Fedora already.
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{mingw32_infodir}
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{mingw32_mandir}
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{mingw32_docdir}/gnutls
|
||||||
|
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{mingw64_infodir}
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{mingw64_mandir}
|
||||||
|
rm -rf $RPM_BUILD_ROOT%{mingw64_docdir}/gnutls
|
||||||
|
|
||||||
|
# Remove test libraries
|
||||||
|
rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/crypt32.dll*
|
||||||
|
rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/ncrypt.dll*
|
||||||
|
rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/crypt32.dll*
|
||||||
|
rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/ncrypt.dll*
|
||||||
|
|
||||||
|
%mingw_debug_install_post
|
||||||
|
|
||||||
%check
|
%check
|
||||||
%if %{with tests}
|
%if %{with tests}
|
||||||
|
pushd native_build
|
||||||
make check %{?_smp_mflags} GNUTLS_SYSTEM_PRIORITY_FILE=/dev/null
|
make check %{?_smp_mflags} GNUTLS_SYSTEM_PRIORITY_FILE=/dev/null
|
||||||
|
popd
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%files -f gnutls.lang
|
%files -f native_build/gnutls.lang
|
||||||
%{_libdir}/libgnutls.so.30*
|
%{_libdir}/libgnutls.so.30*
|
||||||
%if %{with fips}
|
%if %{with fips}
|
||||||
%{_libdir}/.gnutls.hmac
|
%{_libdir}/.gnutls.hmac
|
||||||
@ -340,5 +433,37 @@ make check %{?_smp_mflags} GNUTLS_SYSTEM_PRIORITY_FILE=/dev/null
|
|||||||
%{_datadir}/guile/site/2.2/gnutls/extra.scm
|
%{_datadir}/guile/site/2.2/gnutls/extra.scm
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%files -n mingw32-%{name}
|
||||||
|
%license LICENSE doc/COPYING doc/COPYING.LESSER
|
||||||
|
%{mingw32_bindir}/certtool.exe
|
||||||
|
%{mingw32_bindir}/gnutls-cli-debug.exe
|
||||||
|
%{mingw32_bindir}/gnutls-cli.exe
|
||||||
|
%{mingw32_bindir}/gnutls-serv.exe
|
||||||
|
%{mingw32_bindir}/libgnutls-30.dll
|
||||||
|
%{mingw32_bindir}/ocsptool.exe
|
||||||
|
%{mingw32_bindir}/p11tool.exe
|
||||||
|
%{mingw32_bindir}/psktool.exe
|
||||||
|
%{mingw32_bindir}/srptool.exe
|
||||||
|
%{mingw32_libdir}/libgnutls.dll.a
|
||||||
|
%{mingw32_libdir}/libgnutls-30.def
|
||||||
|
%{mingw32_libdir}/pkgconfig/gnutls.pc
|
||||||
|
%{mingw32_includedir}/gnutls/
|
||||||
|
|
||||||
|
%files -n mingw64-%{name}
|
||||||
|
%license LICENSE doc/COPYING doc/COPYING.LESSER
|
||||||
|
%{mingw64_bindir}/certtool.exe
|
||||||
|
%{mingw64_bindir}/gnutls-cli-debug.exe
|
||||||
|
%{mingw64_bindir}/gnutls-cli.exe
|
||||||
|
%{mingw64_bindir}/gnutls-serv.exe
|
||||||
|
%{mingw64_bindir}/libgnutls-30.dll
|
||||||
|
%{mingw64_bindir}/ocsptool.exe
|
||||||
|
%{mingw64_bindir}/p11tool.exe
|
||||||
|
%{mingw64_bindir}/psktool.exe
|
||||||
|
%{mingw64_bindir}/srptool.exe
|
||||||
|
%{mingw64_libdir}/libgnutls.dll.a
|
||||||
|
%{mingw64_libdir}/libgnutls-30.def
|
||||||
|
%{mingw64_libdir}/pkgconfig/gnutls.pc
|
||||||
|
%{mingw64_includedir}/gnutls/
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
%autochangelog
|
%autochangelog
|
||||||
|
Loading…
Reference in New Issue
Block a user