summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <fedora@famillecollet.com>2016-11-28 16:38:15 +0100
committerRemi Collet <fedora@famillecollet.com>2016-11-28 16:38:15 +0100
commit7b440ebfa764cba28a5bdd76cf27d481192a4d45 (patch)
treec0b23f95a9d96611b39b2ae73c4ca31c255eebd4
parenta34699a9ee494af76147a0836e35e5bf5c7cbd14 (diff)
php-ast: package approved, switch the spec
-rw-r--r--php-ast-dev.spec192
-rw-r--r--php-ast.spec48
2 files changed, 34 insertions, 206 deletions
diff --git a/php-ast-dev.spec b/php-ast-dev.spec
deleted file mode 100644
index 95336da..0000000
--- a/php-ast-dev.spec
+++ /dev/null
@@ -1,192 +0,0 @@
-# remirepo spec file for php-ast
-#
-# Copyright (c) 2015-2016 Remi Collet
-# License: CC-BY-SA
-# http://creativecommons.org/licenses/by-sa/4.0/
-#
-# Please, preserve the changelog entries
-#
-%{?scl: %scl_package php-ast}
-
-%global gh_commit abfef40846cb5454dafa1808769fde851ba8dd70
-%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
-%global gh_owner nikic
-%global gh_project php-ast
-#global gh_date 20160608
-%global pecl_name ast
-%global with_zts 0%{!?_without_zts:%{?__ztsphp:1}}
-# After 20-tokenizer.ini
-%global ini_name 40-%{pecl_name}.ini
-
-Summary: Abstract Syntax Tree
-Name: %{?scl_prefix}php-ast
-Version: 0.1.2
-%if 0%{?gh_date:1}
-Release: 0.2.%{gh_date}git%{gh_short}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
-%else
-Release: 3%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
-%endif
-License: BSD
-Group: Development/Languages
-URL: https://github.com/%{gh_owner}/%{gh_project}
-Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{gh_project}-%{version}-%{gh_short}.tar.gz
-
-Patch0: %{gh_project}-upstream.patch
-
-BuildRequires: %{?scl_prefix}php-devel > 7
-BuildRequires: %{?scl_prefix}php-tokenizer
-
-Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api}
-Requires: %{?scl_prefix}php(api) = %{php_core_api}
-Requires: %{?scl_prefix}php-tokenizer%{?_isa}
-%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}}
-
-%if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1}
-Obsoletes: php70u-%{pecl_name} <= %{version}
-Obsoletes: php70w-%{pecl_name} <= %{version}
-%if "%{php_version}" > "7.1"
-Obsoletes: php71u-%{pecl_name} <= %{version}
-Obsoletes: php71w-%{pecl_name} <= %{version}
-%endif
-%endif
-
-%if 0%{?fedora} < 20 && 0%{?rhel} < 7
-# Filter shared private
-%{?filter_provides_in: %filter_provides_in %{_libdir}/.*\.so$}
-%{?filter_setup}
-%endif
-
-
-%description
-This extension exposes the abstract syntax tree generated by PHP 7.
-
-Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')%{?scl: as Software Collection (%{scl} by %{?scl_vendor}%{!?scl_vendor:rh})}.
-
-
-%prep
-%setup -qc
-mv %{gh_project}-%{gh_commit} NTS
-
-cd NTS
-%patch0 -p1 -b .upstream
-
-# Sanity check, really often broken
-extver=$(sed -n '/#define PHP_AST_VERSION/{s/.* "//;s/".*$//;p}' php_ast.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
-cd ..
-
-%if %{with_zts}
-# duplicate for ZTS build
-cp -pr NTS ZTS
-%endif
-
-# Drop in the bit of configuration
-cat << 'EOF' | tee %{ini_name}
-; Enable '%{summary}' extension module
-extension = %{pecl_name}.so
-EOF
-
-
-%build
-cd NTS
-%{_bindir}/phpize
-%configure \
- --with-php-config=%{_bindir}/php-config \
- --enable-ast
-make %{?_smp_mflags}
-
-%if %{with_zts}
-cd ../ZTS
-%{_bindir}/zts-phpize
-%configure \
- --with-php-config=%{_bindir}/zts-php-config \
- --enable-ast
-make %{?_smp_mflags}
-%endif
-
-
-%install
-# Install the NTS stuff
-make -C NTS install INSTALL_ROOT=%{buildroot}
-install -D -m 644 %{ini_name} %{buildroot}%{php_inidir}/%{ini_name}
-
-%if %{with_zts}
-# Install the ZTS stuff
-make -C ZTS install INSTALL_ROOT=%{buildroot}
-install -D -m 644 %{ini_name} %{buildroot}%{php_ztsinidir}/%{ini_name}
-%endif
-
-
-
-%check
-cd NTS
-: Minimal load test for NTS extension
-%{__php} --no-php-ini \
- --define extension=%{buildroot}%{php_extdir}/%{pecl_name}.so \
- --modules | grep %{pecl_name}
-
-: Upstream test suite for NTS extension
-TEST_PHP_EXECUTABLE=%{__php} \
-TEST_PHP_ARGS="-n -d extension=tokenizer.so -d extension=%{buildroot}%{php_extdir}/%{pecl_name}.so" \
-NO_INTERACTION=1 \
-REPORT_EXIT_STATUS=1 \
-%{__php} -n run-tests.php --show-diff || : ignore
-
-%if %{with_zts}
-cd ../ZTS
-: Minimal load test for ZTS extension
-%{__ztsphp} --no-php-ini \
- --define extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so \
- --modules | grep %{pecl_name}
-
-: Upstream test suite for ZTS extension
-TEST_PHP_EXECUTABLE=%{__ztsphp} \
-TEST_PHP_ARGS="-n -d extension=tokenizer.so -d extension=%{buildroot}%{php_ztsextdir}/%{pecl_name}.so" \
-NO_INTERACTION=1 \
-REPORT_EXIT_STATUS=1 \
-%{__ztsphp} -n run-tests.php --show-diff
-%endif
-
-
-%files
-%{!?_licensedir:%global license %%doc}
-%license NTS/LICENSE
-%doc NTS/README.md
-%doc NTS/ast_stub.php
-%doc NTS/scripts
-%doc NTS/util.php
-
-%config(noreplace) %{php_inidir}/%{ini_name}
-%{php_extdir}/%{pecl_name}.so
-
-%if %{with_zts}
-%config(noreplace) %{php_ztsinidir}/%{ini_name}
-%{php_ztsextdir}/%{pecl_name}.so
-%endif
-
-
-%changelog
-* Fri Nov 25 2016 Remi Collet <remi@fedoraproject.org> - 0.1.2-3
-- fix LICENSE, drop empty file, from review #1398355
-- add upstream patch for php 7.1
-
-* Wed Sep 14 2016 Remi Collet <remi@fedoraproject.org> - 0.1.2-2
-- rebuild for PHP 7.1 new API version
-
-* Fri Aug 5 2016 Remi Collet <remi@fedoraproject.org> - 0.1.2-1
-- update to 0.1.2
-
-* Fri Jun 10 2016 Remi Collet <remi@fedoraproject.org> - 0.1.2-0.1.20160608gitb8f5805
-- update to 0.1.2-dev for PHP 7.1
-
-* Thu Jan 7 2016 Remi Collet <remi@fedoraproject.org> - 0.1.1-1
-- update to 0.1.1
-
-* Thu Oct 29 2015 Remi Collet <remi@fedoraproject.org> - 0.1.0-0.2.20151021gitac969d7
-- add dependency on php-tokenizer, fix test suite
-
-* Wed Oct 28 2015 Remi Collet <remi@fedoraproject.org> - 0.1.0-0.1.20151021gitac969d7
-- new package, version 0.1.0dev
diff --git a/php-ast.spec b/php-ast.spec
index 2fb9585..95336da 100644
--- a/php-ast.spec
+++ b/php-ast.spec
@@ -1,6 +1,3 @@
-# Fedora spec file for php-ast
-# Without SCL compatibility stuff, from:
-#
# remirepo spec file for php-ast
#
# Copyright (c) 2015-2016 Remi Collet
@@ -9,19 +6,26 @@
#
# Please, preserve the changelog entries
#
+%{?scl: %scl_package php-ast}
+
%global gh_commit abfef40846cb5454dafa1808769fde851ba8dd70
%global gh_short %(c=%{gh_commit}; echo ${c:0:7})
%global gh_owner nikic
%global gh_project php-ast
+#global gh_date 20160608
%global pecl_name ast
%global with_zts 0%{!?_without_zts:%{?__ztsphp:1}}
# After 20-tokenizer.ini
%global ini_name 40-%{pecl_name}.ini
Summary: Abstract Syntax Tree
-Name: php-ast
+Name: %{?scl_prefix}php-ast
Version: 0.1.2
-Release: 2%{?dist}
+%if 0%{?gh_date:1}
+Release: 0.2.%{gh_date}git%{gh_short}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+%else
+Release: 3%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+%endif
License: BSD
Group: Development/Languages
URL: https://github.com/%{gh_owner}/%{gh_project}
@@ -29,17 +33,35 @@ Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}
Patch0: %{gh_project}-upstream.patch
-BuildRequires: php-devel > 7
-BuildRequires: php-tokenizer
+BuildRequires: %{?scl_prefix}php-devel > 7
+BuildRequires: %{?scl_prefix}php-tokenizer
+
+Requires: %{?scl_prefix}php(zend-abi) = %{php_zend_api}
+Requires: %{?scl_prefix}php(api) = %{php_core_api}
+Requires: %{?scl_prefix}php-tokenizer%{?_isa}
+%{?_sclreq:Requires: %{?scl_prefix}runtime%{?_sclreq}%{?_isa}}
+
+%if "%{?vendor}" == "Remi Collet" && 0%{!?scl:1}
+Obsoletes: php70u-%{pecl_name} <= %{version}
+Obsoletes: php70w-%{pecl_name} <= %{version}
+%if "%{php_version}" > "7.1"
+Obsoletes: php71u-%{pecl_name} <= %{version}
+Obsoletes: php71w-%{pecl_name} <= %{version}
+%endif
+%endif
-Requires: php(zend-abi) = %{php_zend_api}
-Requires: php(api) = %{php_core_api}
-Requires: php-tokenizer%{?_isa}
+%if 0%{?fedora} < 20 && 0%{?rhel} < 7
+# Filter shared private
+%{?filter_provides_in: %filter_provides_in %{_libdir}/.*\.so$}
+%{?filter_setup}
+%endif
%description
This extension exposes the abstract syntax tree generated by PHP 7.
+Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')%{?scl: as Software Collection (%{scl} by %{?scl_vendor}%{!?scl_vendor:rh})}.
+
%prep
%setup -qc
@@ -130,6 +152,7 @@ REPORT_EXIT_STATUS=1 \
%files
+%{!?_licensedir:%global license %%doc}
%license NTS/LICENSE
%doc NTS/README.md
%doc NTS/ast_stub.php
@@ -146,13 +169,10 @@ REPORT_EXIT_STATUS=1 \
%changelog
-* Fri Nov 25 2016 Remi Collet <remi@fedoraproject.org> - 0.1.2-2
+* Fri Nov 25 2016 Remi Collet <remi@fedoraproject.org> - 0.1.2-3
- fix LICENSE, drop empty file, from review #1398355
- add upstream patch for php 7.1
-* Thu Nov 24 2016 Remi Collet <remi@fedoraproject.org> - 0.1.2-1
-- drop SCL stuff for Fedora review
-
* Wed Sep 14 2016 Remi Collet <remi@fedoraproject.org> - 0.1.2-2
- rebuild for PHP 7.1 new API version