From 4cf8a2f74892c75ceb847683157a88a3e9c114b6 Mon Sep 17 00:00:00 2001 From: Elan Ruusamäe Date: Wed, 14 May 2014 19:26:32 +0300 Subject: check required php extensions early, before PEAR monstrocity gives uninformative errors diff --git a/ext-check.patch b/ext-check.patch new file mode 100644 index 0000000..440c847 --- /dev/null +++ b/ext-check.patch @@ -0,0 +1,19 @@ +--- PEAR-1.9.4/usr/share/pear/pearcmd.php~ 2014-05-14 19:21:49.000000000 +0300 ++++ PEAR-1.9.4/usr/share/pear/pearcmd.php 2014-05-14 19:21:53.064418441 +0300 +@@ -45,6 +45,16 @@ + + $pear_package_version = "1.9.4"; + ++// before trying anything deep, ensure base extensions are present ++// this avoids debugging problems with bogus error messages, which really are ++// caused by missing extension ++foreach (array('pcre', 'zlib', 'xml2') as $ext) { ++ if (!extension_loaded($ext)) { ++ error_log("$argv[0] requires PHP extension $ext."); ++ exit(1); ++ } ++} ++ + require_once 'PEAR.php'; + require_once 'PEAR/Frontend.php'; + require_once 'PEAR/Config.php'; diff --git a/php-pear-PEAR.spec b/php-pear-PEAR.spec index 5ee4188..f665ce7 100644 --- a/php-pear-PEAR.spec +++ b/php-pear-PEAR.spec @@ -12,7 +12,7 @@ Summary: PEAR Base System Summary(pl.UTF-8): Podstawowy system PEAR Name: php-pear-%{_pearname} Version: 1.9.4 -Release: 4 +Release: 5 Epoch: 1 License: New BSD License Group: Development/Languages/PHP @@ -23,7 +23,8 @@ Source1: http://pear.php.net/get/Console_Getopt-1.2.3.tgz Source2: http://pear.php.net/get/Structures_Graph-1.0.3.tgz # Source2-md5: d2d8db74818be5cb0af7def3fc285bfc Patch0: %{name}-sysconfdir.patch -Patch5: %{name}-FHS.patch +Patch1: ext-check.patch +Patch2: %{name}-FHS.patch URL: http://pear.php.net/package/PEAR BuildRequires: /usr/bin/php BuildRequires: php-pcre @@ -118,7 +119,8 @@ oraz klasy dla PHP 5: %pear_package_setup -z -D -n %{_pearname}-%{version}%{?_rc} %patch0 -p1 -%{?with_FHS:%patch5 -p1} +%patch1 -p1 +%{?with_FHS:%patch2 -p1} find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v -- cgit v0.10.2