xmlsec1/xmlsec1.spec
Your Name fa0d458340
Some checks failed
Run CI/CD... / main (push) Failing after 3m56s
1.3.7
2025-02-11 19:27:47 +00:00

165 lines
4.9 KiB
RPMSpec

%define major 1
%define libname %mklibname xmlsec1_ %{major}
%define devname %mklibname xmlsec1 -d
%define libname_gcrypt %mklibname xmlsec1-gcrypt %{major}
%define libname_gnutls %mklibname xmlsec1-gnutls %{major}
%define libname_nss %mklibname xmlsec1-nss %{major}
%define libname_openssl %mklibname xmlsec1-openssl %{major}
#%global optflags %(echo %{optflags} | sed -e 's/-Wnull-dereference//g' -e 's/-Wformat-overflow=2//g')
Summary: Library providing support for "XML Signature" and "XML Encryption"
Name: xmlsec1
Version: 1.3.7
Release: 1
License: MIT
Group: System/Libraries
URL: https://www.aleksey.com/xmlsec
Source0: %{url}/download/%{name}-%{version}.tar.gz
Patch1: xmlsec1-1.2.16-linkage.patch
BuildRequires: libtool-devel
BuildRequires: pkgconfig(gnutls)
BuildRequires: pkgconfig(libgcrypt)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(libxslt)
BuildRequires: pkgconfig(nss) >= 3.59
#BuildRequires: pkgconfig(openssl)
#BuildRequires: openssl-devel
#BuildRequires: openssl
#BuildRequires: openssl1.1-devel
#BuildRequires: openssl1.1
BuildRequires: pkgconfig(openssl3.3)
%description
XML Security Library is a C library based on LibXML2 and OpenSSL.
The library was created with a goal to support major XML security
standards "XML Digital Signature" and "XML Encryption".
%files
%doc README.md Copyright COPYING docs/*.html docs/images/* docs/api/*.html docs/api/*.png docs/api/images/*
%{_bindir}/xmlsec1
%{_mandir}/man1/xmlsec1.1*
#----------------------------------------------------------------------------
%package -n %{libname}
Summary: Library providing support for "XML Signature" and "XML Encryption"
Group: System/Libraries
Obsoletes: %{_lib}xmlsec1-1 < 1.2.16
%description -n %{libname}
XML Security Library is a C library based on LibXML2 and OpenSSL.
The library was created with a goal to support major XML security
standards "XML Digital Signature" and "XML Encryption".
%files -n %{libname}
%{_libdir}/libxmlsec1.so.%{major}*
#----------------------------------------------------------------------------
%package -n %{libname_gcrypt}
Summary: Gcrypt crypto plugin for XML Security Library
Group: System/Libraries
%description -n %{libname_gcrypt}
gcrypt plugin for XML Security Library provides gcrypt based crypto services
for the xmlsec library.
%files -n %{libname_gcrypt}
%{_libdir}/libxmlsec1-gcrypt.so.%{major}*
#----------------------------------------------------------------------------
%package -n %{libname_gnutls}
Summary: Gnutls crypto plugin for XML Security Library
Group: System/Libraries
%description -n %{libname_gnutls}
gnutls plugin for XML Security Library provides gnutls based crypto services
for the xmlsec library.
%files -n %{libname_gnutls}
%{_libdir}/libxmlsec1-gnutls.so.%{major}*
#----------------------------------------------------------------------------
%package -n %{libname_nss}
Summary: NSS crypto plugin for XML Security Library
Group: System/Libraries
%description -n %{libname_nss}
NSS plugin for XML Security Library provides NSS based crypto services
for the xmlsec library.
%files -n %{libname_nss}
%{_libdir}/libxmlsec1-nss.so.%{major}*
#----------------------------------------------------------------------------
%package -n %{libname_openssl}
Summary: OpenSSL crypto plugin for XML Security Library
Group: System/Libraries
%description -n %{libname_openssl}
OpenSSL plugin for XML Security Library provides OpenSSL based crypto services
for the xmlsec library.
%files -n %{libname_openssl}
%{_libdir}/libxmlsec1-openssl.so.%{major}*
#----------------------------------------------------------------------------
%package -n %{devname}
Summary: Libraries to develop applications with XML security
Group: Development/C
Requires: %{libname} = %{EVRD}
Requires: %{libname_gcrypt} = %{EVRD}
Requires: %{libname_gnutls} = %{EVRD}
Requires: %{libname_nss} = %{EVRD}
Requires: %{libname_openssl} = %{EVRD}
Provides: %{name}-devel = %{EVRD}
Obsoletes: %{_lib}xmlsec1-gnutls-devel < 1.2.16
Obsoletes: %{_lib}xmlsec1-nss-devel < 1.2.16
Obsoletes: %{_lib}xmlsec1-openssl-devel < 1.2.16
%description -n %{devname}
Libraries you can use to develop applications with XML security standarts.
%files -n %{devname}
%doc README.md Copyright COPYING
%{_bindir}/xmlsec1-config
%{_includedir}/xmlsec1
%{_datadir}/aclocal/xmlsec1.m4
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%{_libdir}/xmlsec1Conf.sh
%{_mandir}/man1/xmlsec1-config.1*
#----------------------------------------------------------------------------
%prep
%setup -q
sed -i 's/-Wnull-dereference//g;s/-Wformat-overflow=2//g' ./configure
%build
#export OPENSSL_LIBS="-L/opt/openssl1.1/lib"
#export OPENSSL_CFLAGS="-L/opt/openssl1.1/lib"
#export LIBS="/opt/openssl1.1/lib/ $LIBS"
export LD_LIBRARY_PATH=/opt/openssl3.3/lib:${LD_LIBRARY_PATH}
%configure \
--disable-static \
--enable-gost \
--enable-gost2012 \
--with-gnutls \
--enable-openssl3-engines \
--with-openssl=/opt/openssl1.1 \
LIBS="${LIBS} -L/opt/openssl1.1/lib"
%make_build
%install
%make_install