SHA256
1
0
forked from pool/xmlsec1
xmlsec1/xmlsec1.spec

261 lines
7.9 KiB
RPMSpec

#
# spec file for package xmlsec1
#
# 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/
#
%global libname libxmlsec1-1
%global libopenssl libxmlsec1-openssl1
%global libgcrypt libxmlsec1-gcrypt1
%global libgnutls libxmlsec1-gnutls1
%global libnss libxmlsec1-nss1
Name: xmlsec1
Version: 1.2.19
Release: 0
Summary: Library providing support for "XML Signature" and "XML Encryption" standards
License: MIT
Group: Development/Libraries/C and C++
Url: http://www.aleksey.com/xmlsec/
Source0: http://www.aleksey.com/xmlsec/download/xmlsec1-%{version}.tar.gz
BuildRequires: libgcrypt-devel
BuildRequires: libtool
BuildRequires: pkgconfig
BuildRequires: pkgconfig(gnutls)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(libxslt)
BuildRequires: pkgconfig(nspr)
BuildRequires: pkgconfig(nss)
BuildRequires: pkgconfig(openssl)
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%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
%defattr(-,root,root)
%doc README COPYING
%{_mandir}/man1/xmlsec1.1*
%{_bindir}/xmlsec1
%package -n %{libname}
Summary: Library providing support for "XML Signature" and "XML Encryption" standards
Group: System/Libraries
%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".
%post -n %{libname} -p /sbin/ldconfig
%postun -n %{libname} -p /sbin/ldconfig
%files -n %{libname}
%defattr(-,root,root)
%doc COPYING
%{_libdir}/libxmlsec1.so.*
%package -n %{libgcrypt}
Summary: GCrypt crypto plugin for XML Security Library
Group: System/Libraries
%description -n %{libgcrypt}
GCrypt plugin for XML Security Library provides GCrypt based crypto services
for the xmlsec library.
%post -n %{libgcrypt} -p /sbin/ldconfig
%postun -n %{libgcrypt} -p /sbin/ldconfig
%files -n %{libgcrypt}
%defattr(-,root,root)
%doc COPYING
%{_libdir}/libxmlsec1-gcrypt.so.*
%package -n %{libgnutls}
Summary: GNUTls crypto plugin for XML Security Library
Group: System/Libraries
%description -n %{libgnutls}
GNUTls plugin for XML Security Library provides GNUTls based crypto services
for the xmlsec library.
%post -n %{libgnutls} -p /sbin/ldconfig
%postun -n %{libgnutls} -p /sbin/ldconfig
%files -n %{libgnutls}
%defattr(-,root,root)
%doc COPYING
%{_libdir}/libxmlsec1-gnutls.so.*
%package -n %{libnss}
Summary: NSS crypto plugin for XML Security Library
Group: System/Libraries
%description -n %{libnss}
NSS plugin for XML Security Library provides NSS based crypto services
for the xmlsec library.
%post -n %{libnss} -p /sbin/ldconfig
%postun -n %{libnss} -p /sbin/ldconfig
%files -n %{libnss}
%defattr(-,root,root)
%doc COPYING
%{_libdir}/libxmlsec1-nss.so.*
%package -n %{libopenssl}
Summary: OpenSSL crypto plugin for XML Security Library
Group: System/Libraries
%description -n %{libopenssl}
OpenSSL plugin for XML Security Library provides OpenSSL based crypto services
for the xmlsec library.
%post -n %{libopenssl} -p /sbin/ldconfig
%postun -n %{libopenssl} -p /sbin/ldconfig
%files -n %{libopenssl}
%defattr(-,root,root)
%doc COPYING
%{_libdir}/libxmlsec1-openssl.so.*
%package devel
Summary: Libraries, includes for XML Signatures/Encryption
Group: Development/Libraries
Requires: %{libname} = %{version}
Requires: libxml2-devel >= 2.6.0
Requires: libxslt-devel >= 1.1.0
Requires: openssl-devel >= 0.9.6
Requires: zlib-devel
%files devel
%defattr(-,root,root,-)
%doc COPYING AUTHORS ChangeLog NEWS
%doc HACKING __tmp_doc/*
%{_bindir}/xmlsec1-config
%dir %{_includedir}/xmlsec1
%dir %{_includedir}/xmlsec1/xmlsec
%dir %{_includedir}/xmlsec1/xmlsec/private
%{_includedir}/xmlsec1/xmlsec/*.h
%{_includedir}/xmlsec1/xmlsec/private/*.h
%{_libdir}/libxmlsec1.so
%{_libdir}/pkgconfig/xmlsec1.pc
%{_libdir}/xmlsec1Conf.sh
%{_datadir}/aclocal/xmlsec1.m4
%{_mandir}/man1/xmlsec1-config.1*
%description devel
Libraries, includes, etc. you can use to develop applications with XML Digital
Signatures and XML Encryption support.
%package openssl-devel
Summary: OpenSSL crypto plugin for XML Security Library
Group: Development/Libraries/C and C++
Requires: %{libopenssl} = %{version}
Requires: %{name}-devel = %{version}
%description openssl-devel
Libraries, includes, etc. for developing XML Security applications with OpenSSL
%files openssl-devel
%defattr(-,root,root,-)
%{_libdir}/libxmlsec1-openssl.so
%{_includedir}/xmlsec1/xmlsec/openssl/
%{_libdir}/pkgconfig/xmlsec1-openssl.pc
%package gcrypt-devel
Summary: GCrypt crypto plugin for XML Security Library
Group: Development/Libraries/C and C++
Requires: %{libgcrypt} = %{version}
Requires: %{name}-devel = %{version}
%description gcrypt-devel
Libraries, includes, etc. for developing XML Security applications with GCrypt.
%files gcrypt-devel
%defattr(-,root,root,-)
%{_libdir}/libxmlsec1-gcrypt.so
%{_includedir}/xmlsec1/xmlsec/gcrypt/
%{_libdir}/pkgconfig/xmlsec1-gcrypt.pc
%package gnutls-devel
Summary: GNUTls crypto plugin for XML Security Library
Group: Development/Libraries/C and C++
Requires: %{libgnutls} = %{version}
Requires: %{name}-devel = %{version}
Requires: %{name}-openssl-devel = %{version}
Requires: gnutls-devel >= 1.0.20
Requires: libgcrypt-devel >= 1.2.0
%description gnutls-devel
Libraries, includes, etc. for developing XML Security applications with GNUTls.
%files gnutls-devel
%defattr(-,root,root,-)
%{_libdir}/libxmlsec1-gnutls.so
%{_includedir}/xmlsec1/xmlsec/gnutls/
%{_libdir}/pkgconfig/xmlsec1-gnutls.pc
%package nss-devel
Summary: NSS crypto plugin for XML Security Library
Group: Development/Libraries/C and C++
Requires: %{libnss} = %{version}
Requires: %{name}-devel = %{version}
Requires: mozilla-nspr-devel
Requires: mozilla-nss-devel >= 3.2
%description nss-devel
Libraries, includes, etc. for developing XML Security applications with NSS.
%files nss-devel
%defattr(-,root,root,-)
%{_libdir}/libxmlsec1-nss.so
%{_includedir}/xmlsec1/xmlsec/nss/
%{_libdir}/pkgconfig/xmlsec1-nss.pc
%prep
%setup -q
%build
%configure --disable-static
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
V=1 make
# positively ugly but only sane way to get around #192756
sed 's+/lib64+/$archlib+g' < xmlsec1-config | sed 's+/lib+/$archlib+g' | sed 's+ -DXMLSEC_NO_SIZE_T++' > xmlsec1-config.$$ && mv xmlsec1-config.$$ xmlsec1-config
%install
mkdir -p %{buildroot}%{_prefix}/bin
mkdir -p %{buildroot}%{_includedir}/xmlsec1
mkdir -p %{buildroot}%{_libdir}
mkdir -p %{buildroot}%{_prefix}/man/man1
make DESTDIR=%{buildroot} install %{?_smp_mflags}
find %{buildroot} -type f -name "*.la" -delete -print
# move installed docs to include them in -devel package via %%doc magic
rm -rf __tmp_doc ; mkdir __tmp_doc
mv %{buildroot}%{_datadir}/doc/xmlsec1/* __tmp_doc
rmdir %{buildroot}%{_datadir}/doc/xmlsec1
%changelog