Blame SPECS/lasso.spec

f2be37
%global with_java 0
f2be37
%global with_php 0
f2be37
%global with_perl 0
f2be37
%global with_python 1
f2be37
%global with_wsf 0
f2be37
f2be37
%if %{with_php}
f2be37
%if "%{php_version}" < "5.6"
f2be37
%global ini_name     %{name}.ini
f2be37
%else
f2be37
%global ini_name     40-%{name}.ini
f2be37
%endif
f2be37
%endif
f2be37
f2be37
Summary: Liberty Alliance Single Sign On
f2be37
Name: lasso
f2be37
Version: 2.5.1
f2be37
Release: 5%{?dist}
f2be37
License: GPLv2+
f2be37
Group: System Environment/Libraries
f2be37
Source: http://dev.entrouvert.org/lasso/lasso-%{version}.tar.gz
f2be37
%if %{with_wsf}
f2be37
BuildRequires: cyrus-sasl-devel
f2be37
%endif
f2be37
BuildRequires: gtk-doc, libtool-ltdl-devel
f2be37
BuildRequires: glib2-devel >= 2.42, swig
f2be37
Requires: glib2 >= 2.42
f2be37
BuildRequires: libxml2-devel, xmlsec1-devel, openssl-devel, xmlsec1-openssl-devel
f2be37
BuildRequires: zlib-devel, check-devel
f2be37
BuildRequires: libtool autoconf automake
f2be37
BuildRequires: python-six
f2be37
Url: http://lasso.entrouvert.org/
f2be37
f2be37
patch1: cflags.patch
f2be37
patch2: validate_idp_list_test.patch
f2be37
patch3: 0003-Choose-the-Reference-transform-based-on-the-chosen-S.patch
f2be37
patch4: 0004-Fix-ECP-signature-not-found-error-when-only-assertio.patch
f2be37
patch5: 0005-PAOS-Do-not-populate-Destination-attribute.patch
f2be37
patch6: 0006-tests-use-self-generated-certificate-to-sign-federat.patch
f2be37
f2be37
%description
f2be37
Lasso is a library that implements the Liberty Alliance Single Sign On
f2be37
standards, including the SAML and SAML2 specifications. It allows to handle
f2be37
the whole life-cycle of SAML based Federations, and provides bindings
f2be37
for multiple languages.
f2be37
f2be37
%package devel
f2be37
Summary: Lasso development headers and documentation
f2be37
Group: Development/Libraries
f2be37
Requires: %{name}%{?_isa} = %{version}-%{release}
f2be37
f2be37
%description devel
f2be37
This package contains the header files, static libraries and development
f2be37
documentation for Lasso.
f2be37
f2be37
%if %{with_perl}
f2be37
%package perl
f2be37
Summary: Liberty Alliance Single Sign On (lasso) Perl bindings
f2be37
Group: Development/Libraries
f2be37
BuildRequires: perl(ExtUtils::MakeMaker)
f2be37
BuildRequires: perl(Test::More)
f2be37
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
f2be37
Requires: %{name}%{?_isa} = %{version}-%{release}
f2be37
f2be37
%description perl
f2be37
Perl language bindings for the lasso (Liberty Alliance Single Sign On) library.
f2be37
%endif
f2be37
f2be37
%if %{with_java}
f2be37
%package java
f2be37
Summary: Liberty Alliance Single Sign On (lasso) Java bindings
f2be37
Group: Development/Libraries
f2be37
BuildRequires: java-devel
f2be37
BuildRequires: jpackage-utils
f2be37
Requires: java-headless
f2be37
Requires: jpackage-utils
f2be37
Requires: %{name}%{?_isa} = %{version}-%{release}
f2be37
f2be37
%description java
f2be37
Java language bindings for the lasso (Liberty Alliance Single Sign On) library.
f2be37
%endif
f2be37
f2be37
%if %{with_php}
f2be37
%package php
f2be37
Summary: Liberty Alliance Single Sign On (lasso) PHP bindings
f2be37
Group: Development/Libraries
f2be37
BuildRequires: php-devel, expat-devel
f2be37
BuildRequires: python2
f2be37
Requires: %{name}%{?_isa} = %{version}-%{release}
f2be37
Requires: php(zend-abi) = %{php_zend_api}
f2be37
Requires: php(api) = %{php_core_api}
f2be37
Provides: php-lasso = %{version}-%{release}
f2be37
Provides: php-lasso%{?_isa} = %{version}-%{release}
f2be37
f2be37
%description php
f2be37
PHP language bindings for the lasso (Liberty Alliance Single Sign On) library.
f2be37
%endif
f2be37
f2be37
%if %{with_python}
f2be37
%package python
f2be37
Summary: Liberty Alliance Single Sign On (lasso) Python bindings
f2be37
Group: Development/Libraries
f2be37
BuildRequires: python2-devel
f2be37
BuildRequires: python-lxml
f2be37
Requires: python
f2be37
Requires: %{name}%{?_isa} = %{version}-%{release}
f2be37
f2be37
%description python
f2be37
Python language bindings for the lasso (Liberty Alliance Single Sign On)
f2be37
library.
f2be37
%endif
f2be37
f2be37
%prep
f2be37
%setup -q -n %{name}-%{version}
f2be37
%patch1 -p1
f2be37
%patch2 -p1
f2be37
%patch3 -p1
f2be37
%patch4 -p1
f2be37
%patch5 -p1
f2be37
%patch6 -p1
f2be37
f2be37
%build
f2be37
autoreconf -vif
f2be37
%configure --prefix=%{_prefix} \
f2be37
%if !%{with_java}
f2be37
           --disable-java \
f2be37
%endif
f2be37
%if !%{with_python}
f2be37
           --disable-python \
f2be37
%endif
f2be37
%if !%{with_perl}
f2be37
           --disable-perl \
f2be37
%endif
f2be37
%if %{with_php}
f2be37
           --enable-php5=yes \
f2be37
           --with-php5-config-dir=%{php_inidir} \
f2be37
%else
f2be37
           --enable-php5=no \
f2be37
%endif
f2be37
%if %{with_wsf}
f2be37
           --enable-wsf \
f2be37
           --with-sasl2=%{_prefix}/sasl2 \
f2be37
%endif
f2be37
#           --with-html-dir=%{_datadir}/gtk-doc/html
f2be37
f2be37
make %{?_smp_mflags} CFLAGS="%{optflags}"
f2be37
f2be37
%check
f2be37
make check
f2be37
f2be37
%install
f2be37
#install -m 755 -d %{buildroot}%{_datadir}/gtk-doc/html
f2be37
f2be37
make install exec_prefix=%{_prefix} DESTDIR=%{buildroot}
f2be37
find %{buildroot} -type f -name '*.la' -exec rm -f {} \;
f2be37
find %{buildroot} -type f -name '*.a' -exec rm -f {} \;
f2be37
f2be37
# Perl subpackage
f2be37
%if %{with_perl}
f2be37
find %{buildroot} \( -name perllocal.pod -o -name .packlist \) -exec rm -v {} \;
f2be37
f2be37
find %{buildroot}/usr/lib*/perl5 -type f -print |
f2be37
        sed "s@^%{buildroot}@@g" > %{name}-perl-filelist
f2be37
if [ "$(cat %{name}-perl-filelist)X" = "X" ] ; then
f2be37
    echo "ERROR: EMPTY FILE LIST"
f2be37
    exit -1
f2be37
fi
f2be37
%endif
f2be37
f2be37
# PHP subpackage
f2be37
%if %{with_php}
f2be37
install -m 755 -d %{buildroot}%{_datadir}/php/%{name}
f2be37
mv %{buildroot}%{_datadir}/php/lasso.php %{buildroot}%{_datadir}/php/%{name}
f2be37
f2be37
# rename the PHP config file when needed (PHP 5.6+)
f2be37
if [ "%{name}.ini" != "%{ini_name}" ]; then
f2be37
  mv %{buildroot}%{php_inidir}/%{name}.ini \
f2be37
     %{buildroot}%{php_inidir}/%{ini_name}
f2be37
fi
f2be37
%endif
f2be37
f2be37
# Remove bogus doc files
f2be37
rm -fr %{buildroot}%{_defaultdocdir}/%{name}
f2be37
f2be37
%post -p /sbin/ldconfig
f2be37
f2be37
%postun -p /sbin/ldconfig
f2be37
f2be37
%files
f2be37
%defattr(-,root,root)
f2be37
%{_libdir}/liblasso.so.*
f2be37
%doc AUTHORS COPYING NEWS README
f2be37
f2be37
%files devel
f2be37
%defattr(-,root,root)
f2be37
%{_libdir}/liblasso.so
f2be37
%{_libdir}/pkgconfig/lasso.pc
f2be37
%{_includedir}/%{name}
f2be37
f2be37
%if %{with_perl}
f2be37
%files perl -f %{name}-perl-filelist
f2be37
%defattr(-,root,root)
f2be37
%endif
f2be37
f2be37
%if %{with_java}
f2be37
%files java
f2be37
%defattr(-,root,root)
f2be37
%{_libdir}/java/libjnilasso.so
f2be37
%{_javadir}/lasso.jar
f2be37
%endif
f2be37
f2be37
%if %{with_php}
f2be37
%files php
f2be37
%defattr(-,root,root)
f2be37
%attr(755,root,root) %{php_extdir}/lasso.so
f2be37
%config(noreplace) %attr(644,root,root) %{php_inidir}/%{ini_name}
f2be37
%attr(755,root,root) %dir %{_datadir}/php/%{name}
f2be37
%attr(644,root,root) %{_datadir}/php/%{name}/lasso.php
f2be37
%endif
f2be37
f2be37
%if %{with_python}
f2be37
%files python
f2be37
%defattr(-,root,root)
f2be37
%{python_sitearch}/lasso.py*
f2be37
%{python_sitearch}/_lasso.so
f2be37
%endif
f2be37
f2be37
%changelog
f2be37
* Tue Aug  6 2019 Jakub Hrozek <jhrozek@redhat.com> - 2.5.1-5
f2be37
- Resolves: #1719014 - Expired certificate prevents tests from running
f2be37
- Actually apply the patch file for the previous build
f2be37
- Related: #1730009 - lasso includes "Destination" attribute in SAML
f2be37
                       AuthnRequest populated with SP
f2be37
                       AssertionConsumerServiceURL when ECP workflow
f2be37
                       is used which leads to IdP-side errors
f2be37
f2be37
* Tue Jul 23 2019 Jakub Hrozek <jhrozek@redhat.com> - 2.5.1-4
f2be37
- Resolves: #1730009 - lasso includes "Destination" attribute in SAML
f2be37
                       AuthnRequest populated with SP
f2be37
                       AssertionConsumerServiceURL when ECP workflow
f2be37
                       is used which leads to IdP-side errors
f2be37
f2be37
* Sun Feb 10 2019 Jakub Hrozek <jhrozek@redhat.com> - 2.5.1-3
f2be37
- Resolves: #1634267 - ECP signature check fails with
f2be37
                       LASSO_DS_ERROR_SIGNATURE_NOT_FOUND when assertion signed
f2be37
                       instead of response
f2be37
f2be37
* Fri Jun 17 2016 John Dennis <jdennis@redhat.com> - 2.5.1-2
f2be37
- Rebase to upstream 2.5.1
f2be37
  Resolves: #1310860
f2be37
- add validate_idp_list_test patch
f2be37
f2be37
* Thu Jun  9 2016 John Dennis <jdennis@redhat.com> - 2.5.1-1
f2be37
- Rebase to upstream 2.5.1
f2be37
  Resolves: #1310860
f2be37
f2be37
* Thu Sep  3 2015 John Dennis <jdennis@redhat.com> - 2.5.0-1
f2be37
- Rebase to upstream, now includes our ECP patches, no need to patch any more
f2be37
  Resolves: #1205342
f2be37
f2be37
* Tue Sep  1 2015 John Dennis <jdennis@redhat.com> - 2.4.1-8
f2be37
- Add explicit minimum dependency on glib2 2.42,
f2be37
  for some reason RPM is not automatically detecting the dependency
f2be37
  Resolves: #1254989
f2be37
f2be37
* Wed Aug 19 2015 John Dennis <jdennis@redhat.com> - 2.4.1-7
f2be37
- Add ECP support, brings Lasso up to current upstream tip + revised ECP patches
f2be37
  Resolves: #1205342
f2be37
f2be37
* Mon Jun 22 2015 John Dennis <jdennis@redhat.com> - 2.4.1-6
f2be37
- Add ECP support, brings Lasso up to current upstream tip + ECP patches
f2be37
  Resolves: #1205342
f2be37
f2be37
* Fri Dec  5 2014 Simo Sorce <simo@redhat.com> - 2.4.1-5
f2be37
- Add support for ADFS interoperability
f2be37
- Resolves: #1160803
f2be37
f2be37
* Thu Sep 11 2014 Simo Sorce <simo@redhat.com> - 2.4.1-4
f2be37
- Add missing covscan related patches previously sent upstream
f2be37
- Related: #1120360
f2be37
f2be37
* Thu Sep 11 2014 Simo Sorce <simo@redhat.com> - 2.4.1-3
f2be37
- ppc4le fails to build without autoreconf being run first
f2be37
- Resolves: #1140419
f2be37
f2be37
* Fri Sep  5 2014 Simo Sorce <simo@redhat.com> - 2.4.1-2
f2be37
- Import packge in RHEL7
f2be37
- Resolves: #1120360
f2be37
f2be37
* Thu Aug 28 2014 Simo Sorce <simo@redhat.com> - 2.4.1-1
f2be37
- New upstream relase 2.4.1
f2be37
- Drop patches as they have all been integrated upstream
f2be37
f2be37
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.0-5
f2be37
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
f2be37
f2be37
* Fri Jun 20 2014 Remi Collet <rcollet@redhat.com> - 2.4.0-4
f2be37
- rebuild for https://fedoraproject.org/wiki/Changes/Php56
f2be37
- add numerical prefix to extension configuration file
f2be37
- drop unneeded dependency on pecl
f2be37
- add provides php-lasso
f2be37
f2be37
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.4.0-3
f2be37
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
f2be37
f2be37
* Fri Apr 25 2014 Simo Sorce <simo@redhat.com> - 2.4.0-2
f2be37
- Fixes for arches where pointers and integers do not have the same size
f2be37
  (ppc64, s390, etc..)
f2be37
f2be37
* Mon Apr 14 2014 Stanislav Ochotnicky <sochotnicky@redhat.com> - 2.4.0-1
f2be37
- Use OpenJDK instead of GCJ for java bindings
f2be37
f2be37
* Sat Jan 11 2014 Simo Sorce <simo@redhat.com> 2.4.0-0
f2be37
- Update to final 2.4.0 version
f2be37
- Drop all patches, they are now included in 2.4.0
f2be37
- Change Source URI
f2be37
f2be37
* Mon Dec  9 2013 Simo Sorce <simo@redhat.com> 2.3.6-0.20131125.5
f2be37
- Add patches to fix rpmlint license issues
f2be37
- Add upstream patches to fix some build issues
f2be37
f2be37
* Thu Dec  5 2013 Simo Sorce <simo@redhat.com> 2.3.6-0.20131125.4
f2be37
- Add patch to support automake-1.14 for rawhide
f2be37
f2be37
* Mon Nov 25 2013 Simo Sorce <simo@redhat.com> 2.3.6-0.20131125.3
f2be37
- Initial packaging
f2be37
- Based on the spec file by Jean-Marc Liger <jmliger@siris.sorbonne.fr>
f2be37
- Code is updated to latest master via a jumbo patch while waiting for
f2be37
  official upstream release.
f2be37
- Jumbo patch includes also additional patches sent to upstream list)
f2be37
  to build on Fedora 20
f2be37
- Perl bindings are disabled as they fail to build
f2be37
- Disable doc building as it doesn't ork correctly for now