- move php macros and dep generators to rpm-build-macros
authorJan Rękorajski <baggins@pld-linux.org>
Thu, 2 Jan 2020 14:15:07 +0000 (23:15 +0900)
committerJan Rękorajski <baggins@pld-linux.org>
Thu, 2 Jan 2020 14:15:07 +0000 (23:15 +0900)
rpm-php-macros.patch [deleted file]
rpm-php-provides [deleted file]
rpm-php-requires [deleted file]
rpm-php-requires.php [deleted file]
rpm.spec

diff --git a/rpm-php-macros.patch b/rpm-php-macros.patch
deleted file mode 100644 (file)
index b66cc7e..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
---- rpm-5.3.1/configure.ac.wiget       2010-05-30 16:43:06.000000000 +0200
-+++ rpm-5.3.1/configure.ac     2010-05-30 16:43:38.482725491 +0200
-@@ -2199,6 +2199,7 @@ AC_CONFIG_FILES([ po/Makefile.in
-     tools/Makefile
-     scripts/Makefile
-     scripts/perl.req scripts/perl.prov
-+    scripts/php.req scripts/php.prov
-     rpmdb/DB_CONFIG
-     macros/macros macros/macros.rpmbuild
-     macros/java macros/libtool macros/mono macros/perl 
---- rpm-5.4.10/macros/php.in   2012-09-05 18:12:29.474278958 +0200
-+++ rpm-5.4.15/macros/php.in   2015-09-03 11:16:04.928898067 +0300
-@@ -5,12 +5,9 @@
--%__php                @__PHP@
--
- # Path to scripts to autogenerate php package dependencies,
- #
- # Note: Used iff _use_internal_dependency_generator is non-zero. The
- # helpers are also used by %{_rpmhome}/rpmdeps {--provides|--requires}.
- #%__php_provides      %{_rpmhome}/phpdeps.sh --provides
- #%__php_requires      %{_rpmhome}/phpdeps.sh --requires
--#%__php_provides              %{_rpmhome}/php.prov
--#%__php_requires              %{_rpmhome}/php.req
--
--%php_pear_dir %{_datadir}/pear
-+%__php_provides               %{_rpmhome}/php.prov
-+# define 'php_req_new' in ~/.rpmmacros to use php version of req finder
-+%__php_requires               env PHP_MIN_VERSION=%{?php_min_version} %{_rpmhome}/php.req%{?php_req_new:.php}
diff --git a/rpm-php-provides b/rpm-php-provides
deleted file mode 100644 (file)
index a094cba..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/usr/bin/perl
-#####################################################################
-#                                                                   #
-# Check system dependences between php-pear modules                 #
-#                                                                   #
-# Pawe³ Go³aszewski <blues@ds.pg.gda.pl>                            #
-# Micha³ Moskal <malekith@pld-linux.org>                            #
-# ------------------------------------------------------------------#
-# TODO:                                                             #
-#####################################################################
-
-$pear = "/usr/share/pear";
-
-foreach (@ARGV ? @ARGV : <>) {
-       chomp;
-       $f = $_;
-       next unless ($f =~ /$pear.*\.php$/);
-       $f =~ s/.*$pear\///;
-       print "pear($f)\n";
-}
diff --git a/rpm-php-requires b/rpm-php-requires
deleted file mode 100644 (file)
index 2a3fb60..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-#!/usr/bin/perl
-#####################################################################
-#                                                                   #
-# Check system dependences between php-pear modules                 #
-#                                                                   #
-# Pawe³ Go³aszewski <blues@ds.pg.gda.pl>                            #
-# Micha³ Moskal <malekith@pld-linux.org>                            #
-# ------------------------------------------------------------------#
-# TODO:                                                             #
-# - extension_loaded - dependencies.                                #
-# - some clean-up...                                                #
-#####################################################################
-
-$pear = "/usr/share/pear";
-
-@files = ();
-%req = ();
-
-foreach (@ARGV ? $ARGV : <> ) {
-       chomp;
-       $f = $_;
-       push @files, $f;
-       # skip non-php files
-       next unless ($f =~ /\.php$/);
-       open(F, "< $f") or die;
-
-       if ($f =~ /$pear/) {
-               $file_dir = $f;
-               $file_dir =~ s|.*$pear/||;
-               $file_dir =~ s|/[^/]*$||;
-       } else {
-               $file_dir = undef;
-       }
-
-       while (<F>) {
-               # skip comments
-               next if (/^\s*(#|\/\/|\*|\/\*)/);
-
-               while (/(\W|^)(require|include)(_once)?
-                         \s* \(? \s* ("([^"]*)"|'([^']*)') 
-                         \s* \)? \s* ;/xg) {
-                       if ($5 ne "") {
-                               $x = $5;
-                       } elsif ($6 ne "") {
-                               $x = $6;
-                       } else {
-                               next;
-                       }
-
-                       next if ($x =~ m|^\./| or $x =~ /\$/);
-                       next unless ($x =~ /\.php$/);
-                       $req{$x} = 1;
-               }
-
-               next unless (defined $file_dir);
-
-               while (/(\W|^)(require|include)(_once)?
-                         \s* \(? \s* dirname \s* \( \s* __FILE__ \s* \) \s* \. \s*
-                         ("([^"]*)"|'([^']*)') 
-                         \s* \)? \s* ;/xg) {
-                       if ($5 ne "") {
-                               $x = $5;
-                       } elsif ($6 ne "") {
-                               $x = $6;
-                       } else {
-                               next;
-                       }
-
-                       next if ($x =~ /\$/);
-                       next unless ($x =~ /\.php$/);
-
-                       $x = "$file_dir/$x";
-                       $x =~ s|/+|/|g;
-                       $req{$x} = 1;
-               }
-       }
-}
-
-f: for $f (keys %req) {
-       for $g (@files) { next f if ($g =~ /\Q$f\E$/); }
-       print "pear($f)\n";
-}
diff --git a/rpm-php-requires.php b/rpm-php-requires.php
deleted file mode 100644 (file)
index b398029..0000000
+++ /dev/null
@@ -1,174 +0,0 @@
-#!/usr/bin/php
-<?php
-/*
- * minify.spec does not see these: pear(HTTP/ConditionalGet.php) pear(HTTP/Encoder.php)
- * perl version does
- */
-/**
- *
- * Check system dependences between php-pear modules.
- *
- * Paweł Gołaszewski <blues@pld-linux.org> (Perl version)
- * Michał Moskal <malekith@pld-linux.org> (Perl version)
- * Elan Ruusamäe <glen@pld-linux.org>
- *
- * URL: <http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/rpm/rpm-php-requires.php>
- *
- * Requires: php-pear-PHP_CompatInfo
- * Requires: php-pcre
- */
-
-/**
- * Produce pear(Path/To/File.php) deps
- * Ported to PHP from Perl version of rpm-php-requires.
- *
- * @TODO: use tokenizer to parse php files.
- */
-function peardeps($files) {
-       // files inside php_pear_dir have this prefix
-       $prefix = RPM_BUILD_ROOT. PHP_PEAR_DIR . DIRECTORY_SEPARATOR;
-       $length = strlen($prefix);
-
-       $req = array();
-       foreach ($files as $f) {
-               // skip non-php files
-               if (substr($f, -4) != '.php') {
-                       continue;
-               }
-
-               // subdir inside php_pear_dir
-               if (substr($f, 0, $length) == $prefix) {
-                       $file_dir = dirname(substr($f, $length));
-               } else {
-                       $file_dir = null;
-               }
-
-               foreach (file($f) as $line) {
-                       // skip comments -- not perfect, matches "*" at start of line (very rare altho)
-                       if (preg_match('/^\s*(#|\/\/|\*|\/\*)/', $line)) {
-                               continue;
-                       }
-
-                       if (preg_match("/(\W|^)(require|include)(_once)?
-                                       \s* \(? \s*
-                                       (\"([^\"]*)\"|'([^']*)')
-                                       \s* \)? \s* ;/x", $line, $m)) {
-
-                               if ($m[5]) {
-                                       $x = $m[5];
-                               } else if ($m[6]) {
-                                       $x = $m[6];
-                               } else {
-                                       continue 2;
-                               }
-
-                               if (substr($x, 0, 2) == './' || substr($x, -1) == '$') {  # XXX must be: CONTAINS DOLLAR
-                                       continue 2;
-                               }
-
-                               if (substr($x, -4) != '.php') {
-                                       continue 2;
-                               }
-                               $req[$x] = 1;
-                               continue 2;
-                       }
-
-                       if (is_null($file_dir)) {
-                               continue;
-                       }
-
-                       if (preg_match("/(\W|^)(require|include)(_once)?
-                                       \s* \(? \s* dirname \s* \( \s* __FILE__ \s* \) \s* \. \s*
-                                       (\"([^\"]*)\"|'([^']*)')
-                                       \s* \)? \s* ;/x", $line, $m)) {
-
-                               if ($m[5]) {
-                                       $x = $m[5];
-                               } else if ($m[6]) {
-                                       $x = $m[6];
-                               } else {
-                                       continue 2;
-                               }
-
-                               if (substr($x, -1) == '$') { # XXX must be: CONTAINS DOLLAR
-                                       continue 2;
-                               }
-                               if (substr($x, -4) != '.php') {
-                                       continue 2;
-                               }
-
-                               $x = "$file_dir/$x";
-                               // remove double slashes
-                               // TODO: resolve simpletest/test/../socket.php -> simpletest/socket.php
-                               $x = str_replace("//", "/", $x);
-                               $req[$x] = 1;
-                               continue;
-                       }
-               }
-       }
-
-       foreach (array_keys($req) as $f) {
-               // skip self deps
-               if (array_key_exists($f, $files)) {
-                       continue;
-               }
-               echo "pear($f)\n";
-       }
-}
-
-/**
- * Produce dependencies for extensions using PEAR PHP_CompatInfo package.
- */
-function extdeps($files) {
-       require_once 'PHP/CompatInfo.php';
-
-       $info = new PHP_CompatInfo('null');
-       $res = $info->parseData($files);
-
-       // minimum php version we accept
-       // "%define php_min_version 5.1.2" in spec to minimum version to be 5.1.2
-       $version = max(PHP_MIN_VERSION, $res['version']);
-
-       if (version_compare($version, '5.0.0', 'ge')) {
-               # force php-<name> only deps when php5
-               # XXX what about php-pecl-<name> virtual provides?
-               $fmt = 'php-%s';
-               $epoch = 4;
-       } else {
-               $fmt = 'php(%s)';
-               $epoch = 3;
-       }
-       echo "php-common >= ", $epoch, ":", $version, "\n";
-
-       // process extensions
-       foreach ($res['extensions'] as $ext) {
-               // bz2 ext is in php-bzip2 package
-               if ($ext == 'bz2') {
-                       $ext = 'bzip2';
-               }
-               // libxml ext is in php-xml package
-               if ($ext == 'libxml') {
-                       $ext = 'xml';
-               }
-
-               // these need to be lowercased
-               if (in_array($ext, array('SPL', 'PDO', 'SQLite', 'Reflection', 'SimpleXML'))) {
-                       $ext = strtolower($ext);
-               }
-
-               printf("$fmt\n", $ext);
-       }
-}
-
-define('RPM_BUILD_ROOT', getenv('RPM_BUILD_ROOT'));
-define('PHP_PEAR_DIR', '/usr/share/pear');
-define('PHP_MIN_VERSION', getenv('PHP_MIN_VERSION'));
-
-if ($argc > 1) {
-       $files = array_splice($argv, 1);
-} else {
-       $files = explode(PHP_EOL, trim(file_get_contents('php://stdin')));
-}
-
-peardeps($files);
-extdeps($files);
index 5da2947181cf395a9265f530d2ab55aef885b54c..1db810f25c31877724b32dc0748923d8bc53dc00 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -63,8 +63,6 @@ Source4:      %{name}-find-spec-bcond
 Source5:       %{name}-hrmib-cache
 Source6:       %{name}-groups-po.awk
 Source7:       %{name}-compress-doc
-Source8:       %{name}-php-provides
-Source9:       %{name}-php-requires
 Source10:      %{name}.sysinfo
 Source11:      perl.prov
 Source12:      %{name}-user_group.sh
@@ -80,7 +78,6 @@ Source20:     %{name}.noautoprov
 Source21:      %{name}.noautoprovfiles
 Source22:      %{name}.noautoreq
 Source24:      %{name}.noautoreqfiles
-Source25:      %{name}-php-requires.php
 Source26:      %{name}db_checkversion.c
 Source27:      macros.lang
 Source28:      %{name}db_reset.c
@@ -92,7 +89,6 @@ Patch3:               %{name}-nosetproctitle.patch
 Patch4:                %{name}-perl-macros.patch
 Patch5:                %{name}-perl-req-perlfile.patch
 Patch6:                %{name}-scripts-closefds.patch
-Patch7:                %{name}-php-macros.patch
 Patch8:                %{name}-gettext-in-header.patch
 Patch9:                %{name}-lua.patch
 Patch10:       %{name}-php-deps.patch
@@ -759,22 +755,6 @@ software.
 Makra ułatwiające tworzenie pakietów RPM z programami napisanymi w
 Pythonie.
 
-%package php-pearprov
-Summary:       Additional utilities for checking PHP PEAR provides/requires in RPM packages
-Summary(pl.UTF-8):     Dodatkowe narzędzia do sprawdzania zależności skryptów php w RPM
-Group:         Applications/File
-Requires:      %{name} = %{version}-%{release}
-Requires:      sed >= 4.0
-Suggests:      php-pear-PHP_CompatInfo
-
-%description php-pearprov
-Additional utilities for checking PHP PEAR provides/requires in RPM
-packages.
-
-%description php-pearprov -l pl.UTF-8
-Dodatkowe narzędzia do sprawdzenia zależności skryptów PHP PEAR w
-pakietach RPM.
-
 %package -n python-rpm
 Summary:       Python interface to RPM library
 Summary(pl.UTF-8):     Pythonowy interfejs do biblioteki RPM-a
@@ -837,7 +817,6 @@ cd -
 %patch4 -p1
 %patch5 -p1
 %patch6 -p1
-%patch7 -p1
 %patch8 -p1
 %{?with_system_lua:%patch9 -p1}
 %patch10 -p1
@@ -984,8 +963,6 @@ cd -
 %patch1050 -p1
 
 install %{SOURCE2} macros/pld.in
-install %{SOURCE8} scripts/php.prov.in
-install %{SOURCE9} scripts/php.req.in
 install %{SOURCE11} scripts/perl.prov.in
 
 rm scripts/find-php*
@@ -1230,8 +1207,6 @@ install %{SOURCE3} $RPM_BUILD_ROOT%{_rpmlibdir}/install-build-tree
 install %{SOURCE4} $RPM_BUILD_ROOT%{_rpmlibdir}/find-spec-bcond
 install %{SOURCE7} $RPM_BUILD_ROOT%{_rpmlibdir}/compress-doc
 install %{SOURCE12} $RPM_BUILD_ROOT%{_rpmlibdir}/user_group.sh
-install scripts/php.{prov,req} $RPM_BUILD_ROOT%{_rpmlibdir}
-cp -p %{SOURCE25} $RPM_BUILD_ROOT%{_rpmlibdir}/php.req.php
 install %{SOURCE17} $RPM_BUILD_ROOT%{_rpmlibdir}/mimetypedeps.sh
 install %{SOURCE5} $RPM_BUILD_ROOT%{_rpmlibdir}/hrmib-cache
 install %{SOURCE13} $RPM_BUILD_ROOT/etc/sysconfig/rpm
@@ -1260,7 +1235,7 @@ install tools/rpmdb_reset $RPM_BUILD_ROOT%{_rpmlibdir}/bin
 install %{SOURCE29} $RPM_BUILD_ROOT%{_rpmlibdir}/bin/dbupgrade.sh
 
 # create macro loading wrappers for backward compatibility
-for m in gstreamer mono perl php python; do
+for m in gstreamer mono perl python; do
        echo "%%{load:%{_rpmlibdir}/macros.d/$m}" >$RPM_BUILD_ROOT%{_rpmlibdir}/macros.$m
 done
 
@@ -1548,7 +1523,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %{_rpmlibdir}/macros.d/libtool
 %{_rpmlibdir}/macros.d/mono
 %{_rpmlibdir}/macros.d/perl
-%{_rpmlibdir}/macros.d/php
 %{_rpmlibdir}/macros.d/pkgconfig
 %{_rpmlibdir}/macros.d/python
 %{_rpmlibdir}/macros.d/selinux
@@ -1558,7 +1532,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %{_rpmlibdir}/macros.gstreamer
 %{_rpmlibdir}/macros.mono
 %{_rpmlibdir}/macros.perl
-%{_rpmlibdir}/macros.php
 %{_rpmlibdir}/macros.python
 
 %attr(755,root,root) %{_rpmlibdir}/gstreamer.sh
@@ -1587,12 +1560,6 @@ find %{_rpmlibdir} -name '*-linux' -type l | xargs rm -f
 %attr(755,root,root) %{_rpmlibdir}/pythoneggs.py
 %attr(755,root,root) %{_rpmlibdir}/pythondeps.sh
 
-%files php-pearprov
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_rpmlibdir}/php.prov
-%attr(755,root,root) %{_rpmlibdir}/php.req
-%attr(755,root,root) %{_rpmlibdir}/php.req.php
-
 %if %{with python}
 %files -n python-rpm
 %defattr(644,root,root,755)
This page took 0.917346 seconds and 4 git commands to generate.