summaryrefslogtreecommitdiffstats
path: root/php-zephir-parser.spec
blob: 1f919f3e2bd899c9a8867c8208b6d35c11d9432b (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
142
143
144
145
146
147
148
149
150
# remirepo/fedora spec file for php-zephir-parser
#
# Copyright (c) 2016-2017 Remi Collet
# License: CC-BY-SA
# http://creativecommons.org/licenses/by-sa/4.0/
#
# Please, preserve the changelog entries
#

%if 0%{?scl:1}
%global with_tests   0
%scl_package zephyr-parser
%else
%if 0%{?fedora}
%global with_tests   0%{!?_without_tests:1}
%else
# Disable in EL as 5.5 can't use phpunit
%global with_tests   0%{?_with_tests:1}
%endif
%endif

%global gh_commit    475ce655ff418856c2ca836e10995907dbbc9b73
%global gh_short     %(c=%{gh_commit}; echo ${c:0:7})
#global gh_date      20161126
%global gh_owner     phalcon
%global gh_project   php-zephir-parser
%global ext_name     zephir_parser

Name:           %{?scl_prefix}%{gh_project}
Version:        1.0.3
Release:        1%{?gh_date:.%{gh_date}git%{gh_short}}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
Summary:        Zephir parser extension

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

BuildRequires:  %{?scl_prefix}php-devel > 5.5
BuildRequires:  re2c
%if %{with_tests}
# From composer.json, "require"
#        "phpunit/phpunit": "^4.8"
BuildRequires:  php-composer(phpunit/phpunit) >= 4.8
# For test autoloader
BuildRequires:  php-composer(theseer/autoload)
%endif

Requires:     %{?scl_prefix}php(zend-abi) = %{php_zend_api}
Requires:     %{?scl_prefix}php(api) = %{php_core_api}
%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}}

Obsoletes:    %{?scl_prefix}zephir-parser < 0.10
Provides:     %{?scl_prefix}zephir-parser = %{version}


%description
The Zephir Parser delivered as a C extension for the PHP language.



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

# drop install and cleanup stuff
sed -e '/-s install/,$d' -i install

# Sanity check, really often broken
extver=$(sed -n '/#define PHP_ZEPHIR_PARSER_VERSION/{s/.* "//;s/".*$//;p}' php_zephir_parser.h)
if test "x${extver}" != "x%{version}%{?gh_date:-dev}"; then
   : Error: Upstream extension version is ${extver}, expecting %{version}%{?gh_date:-dev}.
   exit 1
fi


%build
%{?dtsenable}
%{?scl:scl enable %{scl}} ./install


%install
%{?dtsenable}
make install INSTALL_ROOT=%{buildroot}


%check
: Check extension
%{_bindir}/php -n -d extension=modules/%{ext_name}.so -m | grep "Zephir Parser"

%if %{with_tests}
mkdir vendor
%{_bindir}/phpab --output vendor/autoload.php unit-tests

: Run test suite
%{_bindir}/php -d extension=modules/%{ext_name}.so %{_bindir}/phpunit \
    --verbose unit-tests
%else
: Test suite disabled
%endif


%files
%{!?_licensedir:%global license %%doc}
%license LICENSE
%doc CREDITS
%doc *.md
%{php_extdir}/%{ext_name}.so


%changelog
* Wed Oct 11 2017 Remi Collet <remi@remirepo.net> - 1.0.3-1
- rename from zephir-parser to php-zephir-parser
- update to 1.0.3 (for zephir 0.10)

* Fri Aug  4 2017 Remi Collet <remi@remirepo.net> - 0.9.11-1
- version 0.9.11

* Tue Aug  1 2017 Remi Collet <remi@remirepo.net> - 0.9.10-1
- version 0.9.10

* Tue Jul 18 2017 Remi Collet <remi@remirepo.net> - 0.9.9-2
- rebuild for PHP 7.2.0beta1 new API

* Wed Jun 21 2017 Remi Collet <remi@remirepo.net> - 0.9.9-1
- version 0.9.9

* Mon May 22 2017 Remi Collet <remi@remirepo.net> - 0.9.8-1
- version 0.9.8

* Wed Apr  5 2017 Remi Collet <remi@fedoraproject.org> - 0.9.7-1
- version 0.9.7

* Tue Feb 21 2017 Remi Collet <remi@fedoraproject.org> - 0.9.6-1
- version 0.9.6

* Sun Nov 27 2016 Remi Collet <remi@fedoraproject.org> - 0.9.5-1
- version 0.9.5

* Fri Oct 14 2016 Remi Collet <remi@fedoraproject.org> - 0.9.4-2.20161014git23856e1
- new snapshot to fix PHP 7.1 compatibility of generated code

* Mon Oct 10 2016 Remi Collet <remi@fedoraproject.org> - 0.9.4-1.20160929git22f6632
- new snapshot to fix PHP 7.1 compatibility of generated code

* Wed Sep 14 2016 Remi Collet <remi@fedoraproject.org> - 0.9.3-2.20160728gite716dbe
- rebuild for PHP 7.1 new API version

* Sat Jul 30 2016 Remi Collet <remi@fedoraproject.org> - 0.9.0-1.20160728gite716dbe
- Initial package