File php5-pear-phpunit-PHP_CodeBrowser.spec of Package php5-pear-phpunit-PHP_CodeBrowser
#
# spec file for package php5-pear-phpunit-PHP_CodeBrowser
#
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: php5-pear-phpunit-PHP_CodeBrowser
%define pear_name PHP_CodeBrowser
%define pear_sname php_codebrowser
Summary: Integration in Hudson and CruiseControl
License: BSD-3-Clause and AGPL-3.0
Group: Development/Libraries/PHP
Version: 1.0.2
Release: 0
Source0: http://pear.phpunit.de/get/%{pear_name}-%{version}.tgz
Url: http://pear.phpunit.de/
Requires: php5-pear-channel-phpunit
BuildRequires: php-macros
BuildRequires: php5-pear
BuildRequires: php5-pear-channel-phpunit
BuildArch: noarch
# Fix for renaming (package convention)
Provides: pear-%{pear_name}
Provides: pear-%{pear_sname} = %{version}
Provides: php-pear-%{pear_name}
Provides: php-pear-%{pear_sname} = %{version}
Provides: php5-pear-%{pear_sname} = %{version}
Obsoletes: pear-%{pear_sname} < %{version}
Obsoletes: php-pear-%{pear_sname} < %{version}
Obsoletes: php5-pear-%{pear_sname} < %{version}
%description
PHP_CodeBrowser generates a html view for code browsing with higlighted and colored errors, parsed from xml reports generated from codesniffer or phpunit.
%prep
%setup -c
%build
%install
%{__mv} package*.xml %{pear_name}-%{version}
cd %{pear_name}-%{version}
PHP_PEAR_PHP_BIN="$(which php) -d memory_limit=50m"
%{__mkdir_p} %{buildroot}%{php_peardir}/.channels/
%{__cp} %{php_peardir}/.channels/pear.*.reg \
%{buildroot}%{php_peardir}/.channels/
%{__pear} -v \
-d doc_dir=/%{_docdir} \
-d bin_dir=%{_bindir} \
-d data_dir=%{php_peardir}/data \
install --offline --nodeps -R "%{buildroot}" package.xml
## the install script writes static paths into the files which are broken when actually deploying the rpm
## this is a dirty workaround and should be fixed inside the xml itself
sed -i -e "s@%{buildroot}@@g" %{buildroot}/%{_bindir}/phpcb
sed -i -e "s@%{buildroot}@@g" %{buildroot}/%{php_peardir}/%{pear_name}/CLIController.php
%{__install} -D -m 0644 package.xml %{buildroot}%{php_pearxmldir}/%{pear_name}.xml
%{__rm} -rf %{buildroot}/{doc,tmp}
%{__rm} -rf "%{buildroot}"/%{php_peardir}/.{filemap,lock,registry,channels,depdb,depdblock}
cd ..
%php_pear_gen_filelist
%post
# on `rpm -ivh` PARAM is 1
# on `rpm -Uvh` PARAM is 2
if [ "$1" = "1" ]; then
%{__pear} install --nodeps --soft --force --register-only %{php_pearxmldir}/%{pear_name}.xml
fi
if [ "$1" = "2" ]; then
%{__pear} upgrade --offline --register-only %{php_pearxmldir}/%{pear_name}.xml
fi
%postun
# on `rpm -e` PARAM is 0
if [ "$1" = "0" ]; then
%{__pear} uninstall --nodeps --ignore-errors --register-only pear.phpunit.de/%{pear_name}
fi
%clean
%{__rm} -rf %{buildroot}
%files -f %{name}.files
%defattr(-,root,root)
%doc %{_docdir}/%{pear_name}
%{_bindir}/phpcb
%changelog