e5acde4
# remirepo/fedora spec file for php-sabre-dav
663da18
#
e5acde4
# Copyright (c) 2013-2015 Remi Collet
663da18
# License: CC-BY-SA
e5acde4
# http://creativecommons.org/licenses/by-sa/4.0/
663da18
#
663da18
# Please, preserve the changelog entries
663da18
#
c27bbee
%global gh_commit    294b6e133f3b4cf644b9637a734b53f82d46d7f7
663da18
%global gh_short     %(c=%{gh_commit}; echo ${c:0:7})
663da18
%global gh_owner     fruux
663da18
%global gh_project   sabre-dav
663da18
%global with_tests   %{?_without_tests:0}%{!?_without_tests:1}
663da18
663da18
Name:           php-%{gh_project}
663da18
Summary:        WebDAV Framework for PHP
c27bbee
Version:        3.0.7
e5acde4
Release:        1%{?dist}
663da18
663da18
URL:            https://github.com/%{gh_owner}/%{gh_project}
663da18
License:        BSD
663da18
Group:          Development/Libraries
e5acde4
Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}-%{gh_short}.tar.gz
e5acde4
Source1:        %{name}-autoload.php
663da18
e5acde4
# replace composer autoloader
e5acde4
Patch0:         %{name}-autoload.patch
663da18
663da18
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
663da18
BuildArch:      noarch
663da18
%if %{with_tests}
c27bbee
BuildRequires:  php(language) >= 5.4.1
e5acde4
BuildRequires:  php-composer(phpunit/phpunit)
e5acde4
BuildRequires:  php-composer(sabre/vobject) >= 3.3.4
c27bbee
BuildRequires:  php-composer(sabre/event)   >= 2.0
c27bbee
BuildRequires:  php-composer(sabre/xml)     >= 1.0
c27bbee
BuildRequires:  php-composer(sabre/http)    >= 4.0
c27bbee
BuildRequires:  php-composer(sabre/uri)     >= 1.0
e5acde4
BuildRequires:  php-dom
e5acde4
BuildRequires:  php-pcre
e5acde4
BuildRequires:  php-spl
e5acde4
BuildRequires:  php-simplexml
e5acde4
BuildRequires:  php-mbstring
e5acde4
BuildRequires:  php-ctype
e5acde4
BuildRequires:  php-date
e5acde4
BuildRequires:  php-iconv
e5acde4
BuildRequires:  php-libxml
e5acde4
BuildRequires:  php-curl
d49cf9c
BuildRequires:  php-pdo
e5acde4
# Autoloader
e5acde4
BuildRequires:  php-composer(symfony/class-loader)
e5acde4
BuildRequires:  php-pdo_sqlite
663da18
%endif
663da18
e5acde4
# From composer.json,    "require": {
e5acde4
#        "php": ">=5.4.1",
c27bbee
#        "sabre/vobject": "^3.3.4",
c27bbee
#        "sabre/event" : "~2.0",
c27bbee
#        "sabre/xml"  : "~1.0",
c27bbee
#        "sabre/http" : "~4.0",
c27bbee
#        "sabre/uri" : "~1.0",
e5acde4
#        "ext-dom": "*",
e5acde4
#        "ext-pcre": "*",
e5acde4
#        "ext-spl": "*",
e5acde4
#        "ext-simplexml": "*",
e5acde4
#        "ext-mbstring" : "*",
e5acde4
#        "ext-ctype" : "*",
e5acde4
#        "ext-date" : "*",
e5acde4
#        "ext-iconv" : "*",
e5acde4
#        "ext-libxml" : "*"
c27bbee
Requires:       php(language) >= 5.4.1
e5acde4
Requires:       php-composer(sabre/vobject) >= 3.3.4
e5acde4
Requires:       php-composer(sabre/vobject) <  4
c27bbee
Requires:       php-composer(sabre/event)   >= 2.0
c27bbee
Requires:       php-composer(sabre/event)   <  3
c27bbee
Requires:       php-composer(sabre/xml)     >= 1.0
c27bbee
Requires:       php-composer(sabre/xml)     <  2
c27bbee
Requires:       php-composer(sabre/http)    >= 4.0
c27bbee
Requires:       php-composer(sabre/http)    <  5
c27bbee
Requires:       php-composer(sabre/uri)     >= 1.0
c27bbee
Requires:       php-composer(sabre/uri)     <  2
e5acde4
Requires:       php-dom
e5acde4
Requires:       php-pcre
e5acde4
Requires:       php-spl
e5acde4
Requires:       php-simplexml
e5acde4
Requires:       php-mbstring
663da18
Requires:       php-ctype
663da18
Requires:       php-date
663da18
Requires:       php-iconv
663da18
Requires:       php-libxml
e5acde4
# From composer.json, "suggest" : {
e5acde4
#        "ext-curl" : "*",
e5acde4
#        "ext-pdo" : "*"
663da18
Requires:       php-curl
663da18
Requires:       php-pdo
e5acde4
# Autoloader
e5acde4
Requires:       php-composer(symfony/class-loader)
663da18
663da18
663da18
%description
663da18
What is SabreDAV
663da18
663da18
SabreDAV allows you to easily add WebDAV support to a PHP application.
663da18
SabreDAV is meant to cover the entire standard, and attempts to allow
663da18
integration using an easy to understand API.
663da18
663da18
Feature list:
663da18
* Fully WebDAV compliant
663da18
* Supports Windows XP, Windows Vista, Mac OS/X, DavFSv2, Cadaver, Netdrive,
663da18
  Open Office, and probably more.
663da18
* Passing all Litmus tests.
663da18
* Supporting class 1, 2 and 3 Webdav servers.
663da18
* Locking support.
663da18
* Custom property support.
663da18
* CalDAV (tested with Evolution, iCal, iPhone and Lightning).
663da18
* CardDAV (tested with OS/X addressbook, the iOS addressbook and Evolution).
663da18
* Over 97% unittest code coverage.
663da18
663da18
663da18
%prep
663da18
%setup -q -n %{gh_project}-%{gh_commit}
663da18
663da18
%patch0 -p0
e5acde4
cp %{SOURCE1} lib/DAV/autoload.php
663da18
663da18
# drop executable as only provided as doc
663da18
chmod -x bin/*
663da18
663da18
663da18
%build
663da18
# nothing to build
663da18
663da18
663da18
%install
663da18
# Install as a PSR-0 library
663da18
mkdir -p %{buildroot}%{_datadir}/php
e5acde4
cp -pr lib %{buildroot}%{_datadir}/php/Sabre
663da18
663da18
663da18
663da18
%check
663da18
%if %{with_tests}
e5acde4
: Fix bootstrap
663da18
cd tests
e5acde4
sed -e 's:@BUILDROOT@:%{buildroot}:' -i bootstrap.php
e5acde4
04f5ad0
# Skip tests with variable result because environment (GMT vs UTC)
e5acde4
#sed -e 's/function testCompTimeRange/function SKIP_testCompTimeRange/' \
e5acde4
#    -e 's/function testComplex/function SKIP_testComplex/' \
e5acde4
#    -i Sabre/CalDAV/CalendarQueryParserTest.php
e5acde4
e5acde4
: Run upstream test suite against installed library
c27bbee
%{_bindir}/phpunit --verbose
c27bbee
c27bbee
if which php70; then
c27bbee
   php70 %{_bindir}/phpunit --verbose
c27bbee
fi
663da18
%else
663da18
: Skip upstream test suite
663da18
%endif
663da18
663da18
663da18
%files
663da18
%defattr(-,root,root,-)
e5acde4
%{!?_licensedir:%global license %%doc}
e5acde4
%license LICENSE
e5acde4
%doc *md
e5acde4
%doc composer.json
d49cf9c
%doc examples bin
e5acde4
%{_datadir}/php/Sabre/DAV
e5acde4
%{_datadir}/php/Sabre/DAVACL
e5acde4
%{_datadir}/php/Sabre/CalDAV
e5acde4
%{_datadir}/php/Sabre/CardDAV
663da18
663da18
663da18
%changelog
c27bbee
* Fri Mar 11 2016 Remi Collet <remi@fedoraproject.org> - 3.0.7-1
c27bbee
- update to 3.0.7
c27bbee
- add dependency on sabre/xml
c27bbee
- add dependency on sabre/uri
c27bbee
- raise dependency on sabre/http >= 4
c27bbee
- run test suite with both PHP 5 and 7 when available
c27bbee
5e66aa9
* Wed Feb 24 2016 James Hogarth <james.hogarth@gmail.com> - 2.1.6-1
5e66aa9
- update to 2.1.6
5e66aa9
c80cc1e
* Wed Feb 24 2016 Remi Collet <remi@fedoraproject.org> - 2.1.5-1
e5acde4
- update to 2.1.5
e5acde4
be7d386
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.12-3
be7d386
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
be7d386
d70211c
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.8.12-2
d70211c
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
d70211c
477ce97
* Fri Mar 06 2015 Adam Williamson <awilliam@redhat.com> - 1.8.12-1
477ce97
- update to 1.8.12 (bugfix release, no bc breaks)
477ce97
b47d63a
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.8.10-2
b47d63a
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
b47d63a
d49cf9c
* Thu May 22 2014 Remi Collet <remi@fedoraproject.org> - 1.8.10-1
d49cf9c
- update to 1.8.10
d49cf9c
1e7c6ff
* Sun Mar  2 2014 Remi Collet <remi@fedoraproject.org> - 1.8.9-1
1e7c6ff
- update to 1.8.9
1e7c6ff
49a11b8
* Thu Feb 20 2014 Remi Collet <remi@fedoraproject.org> - 1.8.8-2
49a11b8
- drop max version for VObject
49a11b8
4990e2a
* Tue Feb 11 2014 Remi Collet <remi@fedoraproject.org> - 1.8.8-1
4990e2a
- update to 1.8.8
4990e2a
663da18
* Tue Dec 31 2013 Remi Collet <remi@fedoraproject.org> - 1.8.7-1
477ce97
- Initial packaging