summaryrefslogtreecommitdiffstats
path: root/php-bartlett-php-compatinfo-db.spec
blob: 55a8bbd48945d35e2899a1b3d9116aee76d98c18 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
# remirepo/fedora spec file for php-bartlett-php-compatinfo-db
#
# Copyright (c) 2015 Remi Collet
# License: CC-BY-SA
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
#
# Github
%global gh_commit    b65b06ba30abba8e85c6afc40c8c9ea7921dc434
%global gh_short     %(c=%{gh_commit}; echo ${c:0:7})
%global gh_date      20151031
%global gh_owner     llaville
%global gh_project   php-compatinfo-db
%global prever       alpha1
# Namespace
%global ns_vendor    Bartlett
%global ns_project   CompatInfoDb
# Composer
%global c_vendor     bartlett
%global c_project    php-compatinfo-db

%global with_tests   0%{!?_without_tests:1}

Name:           php-%{c_vendor}-%{c_project}
Version:        1.0.0
%global specrel 1
Release:        %{?gh_date:0.%{specrel}.%{?prever}%{!?prever:%{gh_date}git%{gh_short}}}%{!?gh_date:%{specrel}}%{?dist}
Summary:        Reference Database to be used with php-compatinfo library

Group:          Development/Libraries
License:        BSD
URL:            https://github.com/%{gh_owner}/%{gh_project}
Source0:        https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}%{?prever}-%{gh_short}.tar.gz

# Autoloader for RPM
Source1:        %{name}-autoload.php

# Autoload and sqlite database path
Patch0:         %{name}-1.0.0-rpm.patch

BuildArch:      noarch
# Needed to build the database from sources
BuildRequires:  php(language) >= 5.4.0
BuildRequires:  php-curl
BuildRequires:  php-intl
BuildRequires:  php-libxml
BuildRequires:  php-openssl
BuildRequires:  php-pcre
BuildRequires:  php-spl
BuildRequires:  php-json
BuildRequires:  php-pdo_sqlite
# For our patch / autoloader
BuildRequires:  php-composer(symfony/class-loader)
# From composer.json, "require-dev": {
#        "symfony/console": "~2.5",
#        "psr/log": "~1.0",
#        "monolog/monolog": "~1.10",
#        "bartlett/phpunit-loggertestlistener": "~1.5"
BuildRequires:  php-cli
BuildRequires:  php-composer(symfony/console) >= 2.5
%if %{with_tests}
BuildRequires:  php-composer(phpunit/phpunit)
%endif

# From composer.json, "require"
#        "php": ">=5.4.0",
#        "ext-curl": "*",
#        "ext-intl": "*",
#        "ext-libxml": "*",
#        "ext-openssl": "*",
#        "ext-pcre": "*",
#        "ext-spl": "*",
#        "ext-json": "*",
#        "ext-pdo_sqlite": "*"
Requires:       php(language) >= 5.4.0
Requires:       php-curl
Requires:       php-intl
Requires:       php-libxml
Requires:       php-openssl
Requires:       php-pcre
Requires:       php-spl
Requires:       php-json
Requires:       php-pdo_sqlite
# Required by autoloader
Requires:       php-composer(symfony/class-loader)

Provides:       php-composer(%{c_vendor}/%{c_project}) = %{version}
# Extracted from bartlett/php-compatinfo 4
Conflicts:      php-bartlett-PHP-CompatInfo < 5


%description
%{summary}.


%prep
%setup -q -n %{gh_project}-%{gh_commit}

%patch0 -p1 -b .rpm
cp %{SOURCE1} src/%{ns_vendor}/%{ns_project}/autoload.php

# Cleanup patched files
find src -name \*rpm -delete -print


%build
: Generate the references database
%{_bindir}/php -d date.timezone=Europe/Paris data/handleDB.php db:init


%install
mkdir -p %{buildroot}%{_datadir}/php
cp -pr src/%{ns_vendor} %{buildroot}%{_datadir}/php/%{ns_vendor}

install -D -p -m 644 data/compatinfo.sqlite      %{buildroot}%{_datadir}/%{name}/compatinfo.sqlite


%if %{with_tests}
%check
export BARTLETT_COMPATINFO_DB=%{buildroot}%{_datadir}/%{name}/compatinfo.sqlite

%{_bindir}/phpunit \
    --include-path %{buildroot}%{_datadir}/php \
    -d memory_limit=1G
%endif


%files
%{!?_licensedir:%global license %%doc}
%license LICENSE
%doc composer.json
%doc *.md
%dir %{_datadir}/php/%{ns_vendor}
     %{_datadir}/php/%{ns_vendor}/%{ns_project}
     %{_datadir}/%{name}


%changelog
* Wed Nov  4 2015 Remi Collet <remi@fedoraproject.org> - 1.0.0-0.1.alpha1
- Initial package