README for php-macros Author: Christian Wittmer Author: Johannes Weberhofer %php_pear_gen_filelist generates an rpmlint happy filelist of your installed files In most cases you only need to check the %doc part sometimes there is a "Changes" or "ChangeLog",.... Requirements for %php_pear_gen_filelist You have to define following parts inside your spec file Example: # # spec file for package php7-pear-Auth_SASL # # Copyright (c) 2017 SUSE LINUX 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/ # %define php_name php7 %define pear_name Auth_SASL Name: php7-pear-Auth_SASL Version: 1.1.0 Release: 0 Summary: Abstraction of various SASL mechanism responses License: BSD-3-Clause Group: Productivity/Networking/Web/Servers Url: http://pear.php.net/package/%{pear_name} Source: http://pear.php.net/get/%{pear_name}-%{version}.tgz BuildRequires: %{php_name}-devel BuildRequires: %{php_name}-pear >= 1.10.1 Requires: %{php_name}-pear >= 1.10.1 Provides: php-pear-%{pear_name} = %{version} Provides: php-pear(%{pear_name}) = %{version} Obsoletes: php5-pear-Auth_SASL BuildArch: noarch %if 0%{?suse_version} < 1330 BuildRequires: %{php_name}-macros BuildRequires: %{php_name}-pear-Archive_Tar Requires: %{php_name}-pear-Archive_Tar %endif %description Provides code to generate responses to common SASL mechanisms, including: - Digest-MD5 - CramMD5 - Plain - Anonymous - Login (Pseudo mechanism) %prep %setup -q %setup -q -n %{pear_name}-%{version} mv ../package.xml . %build %install %{__pear} install --nodeps --offline --packagingroot %{buildroot} package.xml install -D -m 0644 package.xml %{buildroot}%{pear_xmldir}/%{pear_name}.xml rm -rf %{buildroot}/{doc,tmp} rm -rf %{buildroot}/%{php_peardir}/.{filemap,lock,registry,channels,depdb,depdblock} %php_pear_gen_filelist %post if [ "$1" = "1" ]; then # on "rpm -ivh" %{__pear} install --nodeps --soft --force --register-only %{pear_xmldir}/%{pear_name}.xml fi if [ "$1" = "2" ]; then # on "rpm -Uvh" %{__pear} upgrade --offline --register-only %{pear_xmldir}/%{pear_name}.xml fi %postun if [ "$1" = "0" ]; then # on "rpm -e" %{__pear} uninstall --nodeps --ignore-errors --register-only pear.php.net/%{pear_name} fi %files -f %{name}.files %changelog ############################################################################# And here an Example of the generated filelist (does not match above package): /usr/share/php5/PEAR/Date.php %dir /usr/share/php5/PEAR/Date /usr/share/php5/PEAR/Date/Calc.php /usr/share/php5/PEAR/Date/Human.php /usr/share/php5/PEAR/Date/Span.php /usr/share/php5/PEAR/Date/TimeZone.php %dir /usr/share/php5/PEAR/test %dir /usr/share/php5/PEAR/test/Date %dir /usr/share/php5/PEAR/test/Date/tests /usr/share/php5/PEAR/test/Date/tests/test_date_methods_span.php /usr/share/php5/PEAR/test/Date/tests/testunit_date_span.php /usr/share/php5/PEAR/test/Date/tests/test_calc.php /usr/share/php5/PEAR/test/Date/tests/calc.php /usr/share/php5/PEAR/test/Date/tests/testunit_date.php /usr/share/php5/PEAR/test/Date/tests/testunit.php %dir /usr/share/php5/PEAR/test/Date/tests/bugs /usr/share/php5/PEAR/test/Date/tests/bugs/bug-727-1.phpt /usr/share/php5/PEAR/test/Date/tests/bugs/bug-727-2.phpt /usr/share/php5/PEAR/test/Date/tests/bugs/bug-727-3.phpt /usr/share/php5/PEAR/test/Date/tests/bugs/bug-727-4.phpt /usr/share/php5/PEAR/test/Date/tests/bugs/bug-674.phpt /usr/share/php5/PEAR/test/Date/tests/bugs/bug-9213.phpt /usr/share/php5/PEAR/test/Date/tests/bugs/bug-9414.phpt /usr/share/php5/PEAR/test/Date/tests/bugs/bug-8912.phpt /usr/share/php5/PEAR/test/Date/tests/bugs/bug-967.phpt /var/lib/pear/Date.xml