%bcond_with php5
%bcond_without php73
%bcond_without php74

%define modname clearsilver

Summary: ClearSilver extension for PHP
Summary(ja): PHP用ClearSilverモジュール
Name: php-ext-%{modname}
Version: 0.4
Release: 15%{_dist_release}
URL: http://www.geodata.soton.ac.uk/software/php_clearsilver/
Source: php-%{modname}-%{version}.tar.gz
Patch0: php-clearsilver-0.4-php5.6.0.patch
Patch2: php-clearsilver-0.4-php7.2.0.patch
License: The PHP License
Group: Development/Languages
BuildRequires: clearsilver, zlib-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-root

Vendor: Project Vine
Distribution: Vine Linux
Packager: tomop

%description
This module adds ClearSilver functions to PHP.

%description -l ja
このモジュールはPHPにClearSilverテンプレート機能を追加します。

%if %{with php5}
%package -n php5-ext-%{modname}
Summary: ClearSilver extension for PHP-5.6.x
Summary(ja): PHP-5.6用ClearSilverモジュール
Group: Development/Languages
BuildRequires: php5-devel
%if "%{?req_php5_api}" != ""
Requires: %{req_php5_api}
%endif
Obsoletes: php-ext-clearsilver < 0.4-7

%description -n php5-ext-%{modname}
This module adds ClearSilver functions to PHP.

%description -n php5-ext-%{modname} -l ja
このモジュールはPHPにClearSilverテンプレート機能を追加します。

%endif

%if %{with php74}
%package -n php74-ext-%{modname}
Summary: ClearSilver extension for PHP-7.4
Summary(ja): PHP-7.4用ClearSilverモジュール
Group: Development/Languages
BuildRequires: php74-devel
%if "%{?req_php74_api}" != ""
Requires: %{req_php74_api}
%endif

%description -n php74-ext-%{modname}
This module adds ClearSilver functions to PHP.

%description -n php74-ext-%{modname} -l ja
このモジュールはPHPにClearSilverテンプレート機能を追加します。

%endif

%if %{with php73}
%package -n php73-ext-%{modname}
Summary: ClearSilver extension for PHP-7.3
Summary(ja): PHP-7.3用ClearSilverモジュール
Group: Development/Languages
BuildRequires: php73-devel
%if "%{?req_php73_api}" != ""
Requires: %{req_php73_api}
%endif

%description -n php73-ext-%{modname}
This module adds ClearSilver functions to PHP.

%description -n php73-ext-%{modname} -l ja
このモジュールはPHPにClearSilverテンプレート機能を追加します。

%endif

%prep
%setup -q -c -n php-%{modname}-%{version}

cp -a php-%{modname}-%{version}/{CREDITS,INSTALL,LICENSE,README,doc} ./

%if %{with php5}
cp -a php-clearsilver-%{version} php-clearsilver-%{version}-php5
pushd php-clearsilver-%{version}-php5
%patch0 -p1 -b .php56
popd
%endif

%if %{with php74}
cp -a php-clearsilver-%{version} php-clearsilver-%{version}-php74
pushd php-clearsilver-%{version}-php74
%patch0 -p1 -b .php56
%patch2 -p1 -b .php72
popd
%endif

%if %{with php73}
cp -a php-clearsilver-%{version} php-clearsilver-%{version}-php73
pushd php-clearsilver-%{version}-php73
%patch0 -p1 -b .php56
%patch2 -p1 -b .php72
popd
%endif

%build
%if %{with php5}
pushd php-clearsilver-%{version}-php5
phpize5
aclocal
autoreconf -vif
%configure --with-php-config=/usr/bin/php-config5
%__make %{_smp_mflags}
popd
%endif

%if %{with php74}
pushd php-clearsilver-%{version}-php74
phpize74
aclocal
%configure --with-php-config=/usr/bin/php-config74
%__make %{_smp_mflags}
popd
%endif

%if %{with php73}
pushd php-clearsilver-%{version}-php73
phpize73
aclocal
%configure --with-php-config=/usr/bin/php-config73
%__make %{_smp_mflags}
popd
%endif

%install
rm -rf %{buildroot}
%if %{with php5}
pushd php-clearsilver-%{version}-php5
mkdir -p %{buildroot}%{_libdir}/php5/
mkdir -p %{buildroot}%{_sysconfdir}/php5/php.d

install -m644 modules/%{modname}.so %{buildroot}%{_libdir}/php5/

cat > %{buildroot}%{_sysconfdir}/php5/php.d/%{modname}.ini <<EOF
; Enable %{modname} extension module
extension=%{modname}.so
EOF
popd
%endif

%if %{with php74}
pushd php-clearsilver-%{version}-php74
mkdir -p %{buildroot}%{_libdir}/php74/
mkdir -p %{buildroot}%{_sysconfdir}/php74/php.d

install -m644 modules/%{modname}.so %{buildroot}%{_libdir}/php74/

cat > %{buildroot}%{_sysconfdir}/php74/php.d/%{modname}.ini <<EOF
; Enable %{modname} extension module
extension=%{modname}.so
EOF
popd
%endif

%if %{with php73}
pushd php-clearsilver-%{version}-php73
mkdir -p %{buildroot}%{_libdir}/php73/
mkdir -p %{buildroot}%{_sysconfdir}/php73/php.d

install -m644 modules/%{modname}.so %{buildroot}%{_libdir}/php73/

cat > %{buildroot}%{_sysconfdir}/php73/php.d/%{modname}.ini <<EOF
; Enable %{modname} extension module
extension=%{modname}.so
EOF
popd
%endif

%check

%if %{with php5}
pushd php-clearsilver-%{version}-php5
make test NO_INTERACTION=1
popd
%endif

%if %{with php74}
pushd php-clearsilver-%{version}-php74
make test TEST_PHPDBG_EXECUTABLE=/usr/bin/phpdbg74 NO_INTERACTION=1
popd
%endif

%if %{with php73}
pushd php-clearsilver-%{version}-php73
make test TEST_PHPDBG_EXECUTABLE=/usr/bin/phpdbg73 NO_INTERACTION=1
popd
%endif

%clean
rm -rf %{buildroot}

%if %{with php5}
%files -n php5-ext-%{modname}
%defattr(-,root,root)
%doc CREDITS INSTALL LICENSE README doc
%{_libdir}/php5/*
%{_sysconfdir}/php5/php.d/*
%endif

%if %{with php74}
%files -n php74-ext-%{modname}
%defattr(-,root,root)
%doc CREDITS INSTALL LICENSE README doc
%{_libdir}/php74/*
%{_sysconfdir}/php74/php.d/*
%endif

%if %{with php73}
%files -n php73-ext-%{modname}
%defattr(-,root,root)
%doc CREDITS INSTALL LICENSE README doc
%{_libdir}/php73/*
%{_sysconfdir}/php73/php.d/*
%endif

%changelog
* Thu Dec 19 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-15
- added php74 support.

* Wed Sep 04 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-14
- disabled php5/php72 support.

* Sat Dec 08 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-13
- added php73 support.

* Fri Dec 22 2017 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-12
- updated Patch0.
- updated Patch2.
- dropped Patch1: included in Patch0.
- enabled %%check.

* Thu Dec 21 2017 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-11
- updated Patch2.

* Tue Dec 19 2017 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-10
- dropped support for php71.
- added support for php72.

* Thu Mar 16 2017 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-9
- added support for php71.

* Thu Nov  5 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-8
- fixed summary.
- fixed php70 stuff.

* Thu Nov  5 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-7
- added CGI functions.
- added support for php70.

* Fri Apr 10 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-6
- rebuilt with php5-5.6.7.

* Thu Jan 09 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-5
- rebuilt with current environment.

* Tue Jun 25 2013 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-4
- added a patch for PHP 5.5.0.

* Sun Apr 29 2012 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-3
- converted encoding to UTF-8.

* Sat Apr 28 2012 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-2
- added an API version macro to "Requires:".

* Sat Dec 12 2009 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.4-1
- new upstream release.
 
* Fri Jul 10 2009 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.1-2
- fixed for php-5.3.0.

* Mon Apr 28 2008 Tomohiro 'Tomo-p' KATO <tomop@teamgedoh.net> 0.1-1
- initial build.